@charset "UTF-8";.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;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.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{max-width:none!important;max-height:none!important;width:auto;padding:0}.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:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.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{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.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;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;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{-webkit-transition:none;-moz-transition:none;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{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 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-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.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-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.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{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;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:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;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{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.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{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.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{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.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{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;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{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;font-weight:400;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","cv11"}body{margin:0;min-width:320px;min-height:100vh;overscroll-behavior:none;overflow-x:hidden}html{overflow-x:hidden}#root{width:100%;height:100vh;height:100dvh;overflow:auto}.park-marker-wrap{background:none!important;border:none!important;filter:drop-shadow(0 2px 3px rgba(0,0,0,.25));transition:transform .15s ease}.park-marker-wrap:hover{transform:translateY(-2px)}button{border-radius:4px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#606c38;color:#fff;cursor:pointer;transition:background-color .2s}button:hover{background-color:#283618}button:focus,button:focus-visible{outline:2px solid #606c38;outline-offset:2px}.layer-toggle-group{position:absolute;top:16px;right:16px;z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.layer-toggle-btn{display:flex;align-items:center;overflow:hidden;background-color:#283618;background-image:repeating-linear-gradient(105deg,transparent 0px,transparent 2px,rgba(180,230,120,.07) 2px,rgba(180,230,120,.07) 3px,transparent 3px,transparent 9px,rgba(0,0,0,.06) 9px,rgba(0,0,0,.06) 10px,transparent 10px,transparent 20px),linear-gradient(160deg,#354524,#283618 40%,#2f3f1c,#1e2c12);border:none;border-radius:8px;padding:6px 10px;cursor:pointer;color:#fff;box-shadow:0 4px 16px #0000004d;opacity:.5;transition:opacity .25s ease}.layer-toggle-btn.active{opacity:1}.toggle-emoji{font-size:1.1rem;line-height:1;flex-shrink:0}.toggle-label{max-width:0;overflow:hidden;white-space:nowrap;font-size:.9rem;font-weight:600;opacity:0;margin-left:0;transition:max-width .35s cubic-bezier(.4,0,.2,1),opacity .2s ease .08s,margin-left .35s cubic-bezier(.4,0,.2,1)}.layer-toggle-btn.fan-out .toggle-label{max-width:140px;opacity:1;margin-left:7px}@media(max-width:768px){.layer-toggle-group{z-index:800}}.sidebar{width:260px;flex-shrink:0;height:100%;background-color:#c9a87c;background-image:repeating-linear-gradient(42deg,transparent 0px,transparent 3px,rgba(0,0,0,.03) 3px,rgba(0,0,0,.03) 4px,transparent 4px,transparent 10px,rgba(0,0,0,.015) 10px,rgba(0,0,0,.015) 11px,transparent 11px,transparent 18px),repeating-linear-gradient(-48deg,transparent 0px,transparent 6px,rgba(0,0,0,.02) 6px,rgba(0,0,0,.02) 7px,transparent 7px,transparent 14px),linear-gradient(160deg,#d4b48a,#c9a87c,#c0a070);border:none;border-right:1px solid rgba(0,0,0,.12);border-radius:0;box-shadow:2px 0 8px #0000001f;display:flex;flex-direction:column;overflow:hidden;z-index:500}.sidebar-header{padding:1rem 1rem 1.25rem;background-color:#283618;background-image:repeating-linear-gradient(105deg,transparent 0px,transparent 2px,rgba(180,230,120,.07) 2px,rgba(180,230,120,.07) 3px,transparent 3px,transparent 9px,rgba(0,0,0,.06) 9px,rgba(0,0,0,.06) 10px,transparent 10px,transparent 20px),repeating-linear-gradient(100deg,transparent 0px,transparent 25px,rgba(0,0,0,.03) 25px,rgba(0,0,0,.03) 28px,transparent 28px,transparent 55px),linear-gradient(160deg,#354524,#283618 40%,#2f3f1c,#1e2c12);color:#fff;border-bottom:1px solid #1a2810;box-shadow:0 2px 8px #00000040}.header-content{display:flex;align-items:center;justify-content:space-between;gap:1rem}.sidebar-header h2{margin:0;font-size:.95rem;font-weight:600}.sidebar-stats{display:flex;align-items:baseline;gap:.2rem;font-size:1.1rem;font-weight:600;white-space:nowrap}.stats-visited{color:#ffe0a0}.stats-separator{color:#ffffffb3;font-size:.9rem}.stats-total{color:#ffffffe6}.stats-label{margin-left:.3rem;font-size:.75rem;font-weight:400;color:#fffc}.progress-container{margin-top:.75rem}.progress-bar{width:100%;height:8px;background-color:#fff3;border-radius:10px;overflow:hidden;box-shadow:inset 0 1px 3px #0003}.progress-fill{height:100%;transition:width .6s ease,background .3s ease;border-radius:10px;display:flex;align-items:center;justify-content:flex-end;padding-right:8px;position:relative;box-shadow:0 1px 3px #0003}.progress-text{font-size:.65rem;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3);min-width:35px;text-align:right}.completion-badge{margin-top:.5rem;padding:.4rem .8rem;background:linear-gradient(135deg,gold,#ffed4e);color:#283618;font-size:.8rem;font-weight:700;text-align:center;border-radius:6px;box-shadow:0 2px 8px #ffd7004d;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.sidebar-search{padding:.75rem 1rem;background-color:#fff;border-bottom:1px solid #e0e0e0}.search-input{width:100%;padding:.5rem;font-size:15px;font-weight:600;color:#283618;border:1.5px solid #bbb;border-radius:4px;outline:none;transition:border-color .2s;box-sizing:border-box}.search-input::placeholder{color:#283618;opacity:1;font-size:15px}.search-input:focus{border-color:#606c38;box-shadow:0 0 0 2px #606c381a}.state-dropdown{position:relative;margin-top:.3rem}.state-dropdown-trigger{width:100%;height:36px;padding:.5rem;font-size:15px;font-weight:600;color:#283618;background-color:#fff;border:1.5px solid #bbb;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;-webkit-user-select:none;user-select:none}.state-dropdown-trigger.open{border-color:#606c38;border-radius:4px 4px 0 0;box-shadow:0 0 0 2px #606c381a}.state-dropdown-arrow{font-size:10px;flex-shrink:0;margin-left:4px}.state-dropdown-list{position:absolute;top:100%;left:0;right:0;background-color:#fff;border:1px solid #606c38;border-top:none;border-radius:0 0 4px 4px;max-height:220px;overflow-y:auto;z-index:100;box-shadow:0 4px 12px #0000001f}.state-dropdown-option{padding:.4rem .5rem;font-size:15px;font-weight:600;color:#283618;cursor:pointer}.state-dropdown-option:hover{background-color:#e8f0d0}.state-dropdown-option.selected{background-color:#d4e4a8}.visit-filter-toggle{display:flex;margin-top:.4rem;border:1.5px solid #bbb;border-radius:4px;overflow:hidden}.visit-filter-btn{flex:1;padding:5px 0;font-size:.75rem;font-weight:600;color:#606c38;background:#fff;border:none;border-right:1px solid #bbb;cursor:pointer;transition:background .15s,color .15s}.visit-filter-btn:last-child{border-right:none}.visit-filter-btn:hover:not(.active){background:#f0f4e8}.visit-filter-btn.active{background:#606c38;color:#fff}.sidebar-content{flex:1;min-height:0;overflow-y:auto;padding-bottom:1rem;background-color:#fff}.sidebar-loading,.no-results{padding:2rem;text-align:center;color:#666}.sidebar .parks-list{list-style:none;margin:0;padding:.4rem .5rem;display:flex;flex-direction:column;gap:3px;animation:slideInList .4s ease-out}@keyframes slideInList{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.park-item{display:flex;align-items:center;gap:.6rem;padding:.75rem .6rem;margin:0;border-radius:8px;background-color:#fff;border:1.5px solid #e8e8e8;transition:all .3s ease;box-shadow:0 1px 3px #0000000d;cursor:pointer}.park-item:hover{background-color:#3a86c612;border-color:#3a86c6;transform:translate(4px);box-shadow:0 4px 12px #3a86c61a}.park-item.visited{background:linear-gradient(135deg,#eff3e4,#e6edda);border-color:#606c38}.park-item.visited:hover{background:linear-gradient(135deg,#e6edda,#dae3c8);border-color:#4a5a28;box-shadow:0 4px 12px #606c3833}.park-info{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;cursor:pointer}.park-item .park-name{font-size:.85rem;font-weight:600;color:#333;line-height:1.3;flex:1;display:flex;align-items:center;margin:0}.park-item.visited .park-name{color:#4a5a28;font-weight:700}.park-state{font-size:.68rem;color:#888;font-weight:600;letter-spacing:.4px;flex-shrink:0}.park-item.selected{background:linear-gradient(135deg,#e5eff9,#b5d4f0);border-color:#3a86c6;box-shadow:0 2px 8px #3a86c633}.park-item.selected:hover{background:linear-gradient(135deg,#b5d4f0,#90c0f0);border-color:#2a6bab;box-shadow:0 4px 12px #3a86c64d}.park-item.selected .park-name{color:#2a6bab;font-weight:700}.park-edit-btn{padding:.3rem .6rem;background:#2196f31a;border:none;border-radius:6px;font-size:1.1rem;cursor:pointer;opacity:.7;transition:all .3s ease;flex-shrink:0}.park-edit-btn:hover{opacity:1;background:#2196f333;transform:scale(1.15)}.sidebar-content::-webkit-scrollbar{width:8px}.sidebar-content::-webkit-scrollbar-track{background:#f1f1f1}.sidebar-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.sidebar-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.sidebar-mobile-trigger,.sidebar-close-btn{display:none}@media(max-width:768px){.sidebar{position:fixed;inset:auto 0 0;width:100%;height:75vh;border-radius:16px 16px 0 0;transform:translateY(110%);transition:transform .35s cubic-bezier(.4,0,.2,1);z-index:1200}.sidebar.mobile-open{transform:translateY(0)}.sidebar-header{border-radius:16px 16px 0 0;cursor:pointer;position:relative;touch-action:none}.sidebar-close-btn{display:flex;position:absolute;top:.6rem;right:.75rem;width:26px;height:26px;background:#ffffff2e;border:none;border-radius:50%;color:#fff;font-size:.75rem;cursor:pointer;align-items:center;justify-content:center;z-index:1;flex-shrink:0}.sidebar-header:before{content:"";display:block;width:36px;height:4px;background:#fff6;border-radius:2px;margin:0 auto .6rem}.sidebar-mobile-trigger{display:flex;position:fixed;bottom:20px;left:16px;height:44px;padding:0 16px 0 12px;border-radius:22px;background:#283618;color:#fff;border:none;font-size:1rem;font-weight:600;cursor:pointer;z-index:1050;align-items:center;justify-content:center;gap:6px;box-shadow:0 4px 12px #0000004d;touch-action:none;-webkit-user-select:none;user-select:none}.sidebar-mobile-backdrop{position:fixed;inset:0;background:#0006;z-index:1190}}.friends-container{position:absolute;bottom:0;left:0;right:0;display:flex;flex-direction:column;z-index:10}.friends-section{flex:1;overflow-y:auto;background-color:#fff}.friends-section::-webkit-scrollbar{width:8px}.friends-section::-webkit-scrollbar-track{background:#f1f1f1}.friends-section::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.friends-section::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.route-calculator{padding:1rem;background-color:#f9f9f9}.route-calculator-description{margin:0 0 .75rem;font-size:.75rem;color:#666}.route-calculator-controls{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.waypoint-row{display:flex;flex-direction:column;gap:.5rem}.waypoint-label{font-size:.9rem;font-weight:500;color:#333}.waypoint-select-row{display:flex;gap:.5rem;align-items:center}.waypoint-select-row .drag-handle{display:flex;align-items:center;justify-content:center;width:32px;padding:.5rem 0;font-size:1.2rem;color:#999;cursor:grab;-webkit-user-select:none;user-select:none;transition:color .2s}.waypoint-select-row .drag-handle:hover{color:#606c38}.waypoint-select-row .drag-handle:active{cursor:grabbing}.park-select{flex:1;padding:.5rem;font-size:.95rem;border:1px solid #ddd;border-radius:4px;background-color:#fff;cursor:pointer;transition:border-color .2s}.park-select:hover:not(:disabled){border-color:#606c38}.park-select:focus{outline:none;border-color:#606c38;box-shadow:0 0 0 2px #2e7d321a}.park-select:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.remove-waypoint-btn{padding:.5rem .75rem;font-size:1.5rem;line-height:1;background-color:#ffebee;color:#c62828;border:1px solid #ef9a9a;border-radius:4px;cursor:pointer;transition:all .2s;font-weight:700}.remove-waypoint-btn:hover:not(:disabled){background-color:#ffcdd2;border-color:#e57373}.remove-waypoint-btn:disabled{opacity:.5;cursor:not-allowed}.add-waypoint-btn{padding:.75rem 1rem;font-size:.95rem;background-color:#e8f5e9;color:#606c38;border:1px solid #a5d6a7;border-radius:4px;cursor:pointer;transition:all .2s;font-weight:500;align-self:flex-start}.add-waypoint-btn:hover:not(:disabled){background-color:#c8e6c9;border-color:#81c784}.add-waypoint-btn:disabled{opacity:.5;cursor:not-allowed}.route-calculator-actions{display:flex;gap:.5rem}.calculate-btn,.clear-btn{padding:.75rem 1rem;font-size:.95rem;border:none;border-radius:4px;cursor:pointer;transition:all .2s;font-weight:500}.calculate-btn{flex:1;background-color:#606c38;color:#fff}.calculate-btn:hover:not(:disabled){background-color:#283618}.calculate-btn:disabled{background-color:#ccc;cursor:not-allowed}.clear-btn{background-color:#f5f5f5;color:#666;border:1px solid #ddd}.clear-btn:hover{background-color:#e0e0e0;border-color:#bbb}.trip-error{margin-top:1rem;padding:.75rem;background-color:#ffebee;color:#c62828;border-radius:4px;font-size:.9rem}.trip-results{margin-top:1.5rem;padding:1rem;background-color:#f1f8e9;border-radius:4px;border:1px solid #c5e1a5}.trip-results h4{margin:0 0 1rem;font-size:1rem;color:#606c38}.route-info{display:flex;flex-direction:column;gap:.75rem}.route-segment{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background-color:#fff;border-radius:4px}.route-segment.highlight{background-color:#606c38;color:#fff;font-weight:600}.route-label{font-size:.9rem;color:inherit}.route-segment.highlight .route-label{color:#ffffffe6}.route-value{font-size:1rem;font-weight:500}.route-note{margin:1rem 0 0;font-size:.8rem;color:#666;font-style:italic}.legs-breakdown{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.route-leg{padding:.75rem;background-color:#fff;border-radius:4px;border-left:3px solid #606c38}.leg-header{font-size:.95rem;color:#333;margin-bottom:.5rem}.leg-stats{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#666}.leg-separator{color:#999}.route-divider{height:2px;background:linear-gradient(to right,#606c38,#81c784,#606c38);margin:1rem 0;border-radius:1px}.route-calculator::-webkit-scrollbar{width:8px}.route-calculator::-webkit-scrollbar-track{background:#f1f1f1}.route-calculator::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.route-calculator::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9000}.modal-content{background:#fff;border-radius:12px;padding:32px;max-width:450px;width:90%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 4px 20px #00000026}.modal-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:32px;cursor:pointer;color:#666;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.modal-close:hover{background-color:#f0f0f0}.auth-form{width:100%}.auth-form h2{margin:0 0 24px;font-size:24px;text-align:center;color:#333}.auth-error{background-color:#fee;color:#c33;padding:12px;border-radius:6px;margin-bottom:16px;font-size:14px;white-space:pre-line}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#333;font-size:14px}.form-group input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#606c38}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.btn-primary{width:100%;padding:12px;background-color:#606c38;color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s;margin-top:8px}.btn-primary:hover:not(:disabled){background-color:#4d6230}.btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.auth-divider{text-align:center;margin:24px 0;position:relative}.auth-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background-color:#ddd}.auth-divider span{position:relative;background-color:#fff;padding:0 12px;color:#666;font-size:14px}.social-auth{display:flex;flex-direction:column;gap:12px}.btn-social{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;background-color:#fff}.btn-social:hover:not(:disabled){background-color:#f4f7ee;border-color:#606c38;box-shadow:0 2px 4px #0000001a}.btn-social:disabled{opacity:.5;cursor:not-allowed}.btn-google{color:#333}.btn-github{color:#24292e}.auth-switch{text-align:center;margin-top:24px;font-size:14px;color:#666}.link-button{background:none;border:none;color:#606c38;cursor:pointer;font-size:14px;text-decoration:underline;padding:0}.link-button:hover:not(:disabled){color:#283618;background:none}.link-button:disabled{opacity:.5;cursor:not-allowed}.friend-request-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.friend-request-card{background:#fff;border-radius:16px;padding:40px;max-width:450px;width:100%;text-align:center;box-shadow:0 10px 40px #0003}.friend-icon,.error-icon{font-size:64px;margin-bottom:16px}.friend-request-card h2{margin:0 0 16px;font-size:28px;color:#333}.request-message{font-size:16px;color:#555;margin-bottom:24px;line-height:1.5}.request-message strong{color:#333}.user-details{background-color:#f5f5f5;padding:16px;border-radius:8px;margin-bottom:24px}.user-email{font-size:14px;color:#666;margin:0 0 8px}.user-parks{font-size:14px;color:#606c38;font-weight:500;margin:0}.btn-accept{width:100%;padding:14px;background-color:#606c38;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:12px}.btn-accept:hover:not(:disabled){background-color:#45a049;transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.btn-accept:disabled{background-color:#ccc;cursor:not-allowed;transform:none}.guest-note{font-size:13px;color:#666;margin:8px 0 16px;font-style:italic}.btn-secondary{width:100%;padding:12px;background-color:transparent;color:#666;border:1px solid #ddd;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s}.btn-secondary:hover{background-color:#f5f5f5;border-color:#999}.loading-spinner{padding:40px;font-size:18px;color:#666}.error-message{color:#d32f2f;margin-bottom:24px;font-size:15px}.shared-trip-header{margin-bottom:32px}.shared-dates{color:#666;font-size:.95rem;margin-bottom:8px}.shared-description{color:#444;font-size:.95rem;margin-top:8px}.shared-section{margin-bottom:40px}.shared-section-title{font-size:1.2rem;font-weight:600;color:#606c38;margin-bottom:12px;padding-bottom:6px;border-bottom:2px solid #c8e6c9}.shared-state{font-weight:400;color:#666}.shared-sub-list{margin-top:10px;padding-top:10px;border-top:1px solid #f0f0f0}.shared-sub-title{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:#888;margin-bottom:6px}.shared-sub-item{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.85rem;color:#555;padding:4px 0;border-bottom:1px dotted #eee}.shared-sub-item:last-child{border-bottom:none}.shared-sub-name{font-weight:500;color:#333}.shared-page{min-height:100vh;background:#f8f9fa;font-family:inherit}.shared-header{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:#fff;border-bottom:1px solid #e0e0e0;position:sticky;top:0;z-index:10}.shared-header-brand a{font-size:1.25rem;font-weight:700;color:#606c38;text-decoration:none}.shared-header-nav{display:flex;gap:16px}.shared-header-nav a{color:#555;text-decoration:none;font-size:.9rem}.shared-header-nav a:hover{color:#606c38}.shared-loading,.shared-error{max-width:600px;margin:80px auto;text-align:center;color:#555}.shared-error h2{font-size:1.4rem;margin-bottom:8px;color:#333}.shared-main{max-width:800px;margin:0 auto;padding:32px 24px 64px}.shared-trip-header{margin-bottom:24px}.shared-trip-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.shared-trip-header h1{font-size:1.8rem;font-weight:700;color:#1a1a1a;margin-bottom:4px}.shared-dates{color:#666;font-size:.95rem;margin-bottom:4px}.shared-parks-line{color:#555;font-size:.9rem;margin-bottom:4px}.shared-rating{color:#f59e0b;font-size:1.1rem;letter-spacing:2px;margin-bottom:4px}.shared-park-thumb{width:100px;height:70px;object-fit:cover;border-radius:6px;flex-shrink:0}.shared-highlights{color:#444;font-size:.95rem;line-height:1.5;margin-top:8px}.shared-import-banner{background:#f0f4e8;border:1px solid #c8d9a0;border-radius:8px;padding:14px 18px;margin-bottom:28px}.shared-import-text{color:#555;font-size:.9rem;margin:0}.shared-import-text a{color:#606c38;font-weight:600;text-decoration:none}.shared-import-text a:hover{text-decoration:underline}.btn-import-plan{background:#606c38;color:#fff;border:none;font-size:.9rem;font-weight:600;padding:8px 18px;border-radius:6px;cursor:pointer}.btn-import-plan:hover{background:#283618}.btn-import-plan:disabled{opacity:.6;cursor:default}.shared-section{margin-bottom:36px}.shared-section-title{font-size:1.1rem;font-weight:600;color:#606c38;margin-bottom:12px;padding-bottom:6px;border-bottom:2px solid #c8e6c9}.shared-section-content{display:flex;flex-direction:column;gap:10px}.shared-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:14px 16px}.shared-card-title{font-weight:600;font-size:1rem;color:#1a1a1a;margin-bottom:6px}.shared-card-details{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.875rem;color:#555}.shared-notes{font-style:italic;color:#777;width:100%}.shared-experience-item{width:100%;display:flex;flex-direction:column;gap:2px;padding:6px 0;border-bottom:1px dotted #eee}.shared-experience-item:last-child{border-bottom:none}.shared-experience-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#888;font-weight:600}.shared-photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.shared-photo-item img{width:100%;height:140px;object-fit:cover;border-radius:6px;display:block}.shared-photo-caption{font-size:.8rem;color:#666;margin-top:4px;text-align:center}.shared-pin-item{width:100%;display:flex;flex-direction:column;gap:2px;padding:4px 0;border-bottom:1px dotted #eee}.shared-pin-item:last-child{border-bottom:none}.shared-sub-name{font-weight:500;color:#333;font-size:.9rem}.parks-table-container{padding:12px 20px 40px;max-width:1400px;margin:0 auto;width:100%;flex:1;overflow-y:auto}.parks-table-subtitle{text-align:center;margin:0 0 1.5rem;font-size:1rem;color:#888;font-style:italic}.parks-table-loading{text-align:center;padding:3rem;font-size:1.2rem;color:#666}.parks-table-wrapper{overflow-x:auto;box-shadow:0 2px 8px #0000001a;border-radius:8px;background-color:#fff}.parks-table{width:100%;border-collapse:collapse;font-size:.9rem}.parks-table thead{background-color:#606c38;color:#fff;position:sticky;top:0;z-index:10}.parks-table th{padding:1rem;text-align:left;font-weight:600;border-bottom:2px solid #283618}.parks-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.parks-table th.sortable:hover{background-color:#283618}.parks-table td{padding:.75rem 1rem;border-bottom:1px solid #e0e0e0}.parks-table tbody tr{transition:background-color .2s}.parks-table tbody tr:hover{background-color:#f5f5f5}.parks-table tbody tr.visited{background-color:#eff3e4}.parks-table tbody tr.visited:hover{background-color:#e6edda}.parks-table .park-name{font-weight:500;color:#333}.parks-table .nps-site-cell{text-align:center;white-space:nowrap}.parks-table .nps-link{font-size:.78rem;color:#606c38;text-decoration:none;font-weight:500}.parks-table .nps-link:hover{text-decoration:underline}.parks-table tbody tr.visited .park-name{color:#606c38}.parks-table .year{font-variant-numeric:tabular-nums}.parks-table .airport,.parks-table .town{color:#666}.parks-table .checkbox-cell{text-align:center;width:60px;color:#606c38;font-weight:600}.parks-table .latest-visit-cell{min-width:180px}.visit-date{color:#333;font-size:.9rem}.trip-count{font-size:.75rem;color:#606c38;font-weight:500;margin-left:.5rem}.parks-table-footer{margin-top:1.5rem;display:flex;gap:2rem;font-size:.95rem;color:#666}.parks-table-footer p{margin:0}.best-months-cell{font-size:.82rem;color:#555}.timezone-cell{font-size:.82rem;color:#555;white-space:nowrap}.coord-cell{font-family:monospace;font-size:.85rem;white-space:nowrap;color:#555}@media(max-width:1024px){.parks-table{font-size:.85rem}.parks-table th,.parks-table td{padding:.5rem}}.trips-gallery{display:flex;flex-direction:column;height:100%;overflow:hidden;background:#fff}.gallery-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:2px solid #e8e8e8;flex-shrink:0}.gallery-header h2{margin:0;font-size:1.3rem;color:#606c38}.gallery-close-btn{background:none;border:none;font-size:2rem;cursor:pointer;color:#666;line-height:1;padding:0;width:32px;height:32px;transition:color .2s}.gallery-close-btn:hover{color:#333}.gallery-content{flex:1;overflow-y:auto;padding:1.5rem}.gallery-section{margin-bottom:1.75rem}.gallery-section-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#aaa;margin-bottom:.85rem}.gallery-row{display:flex;gap:1rem;flex-wrap:wrap}.gallery-polaroid{width:120px;background:#fff;padding:.5rem .5rem 1rem;box-shadow:0 4px 10px #00000026;border-radius:3px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.gallery-polaroid:hover{transform:translateY(-5px) rotate(.8deg);box-shadow:0 10px 24px #00000038}.gallery-polaroid-photo{width:100%;aspect-ratio:4 / 3;overflow:hidden;border-radius:2px;margin-bottom:.5rem}.gallery-polaroid-photo img{width:100%;height:100%;object-fit:cover;display:block}.gallery-polaroid-gradient{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#ffffffd9;font-weight:700;font-size:.65rem;letter-spacing:1px}.gallery-plan-photo{display:flex;align-items:center;justify-content:center}.gallery-plan-icon{font-size:1.8rem}.gallery-polaroid-caption{text-align:center}.gallery-polaroid-name{font-size:.78rem;font-weight:600;color:#333;line-height:1.3}.gallery-polaroid-rating{font-size:.6rem;color:#f59e0b;margin-top:.2rem;letter-spacing:1px}.gallery-polaroid-date{font-size:.68rem;color:#888;margin-top:.15rem}.gallery-plan-badge{font-size:.65rem;font-weight:600;text-transform:lowercase;margin-top:.25rem}.gallery-plan-badge.went{color:#606c38}.gallery-plan-badge.planning{color:#3a86c6}.gallery-record-badge{color:#8b6914}.gallery-empty{color:#999;font-style:italic;font-size:.9rem;padding:1rem 0}.gallery-actions{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e8e8e8;flex-shrink:0}.gallery-btn{flex:1;padding:.6rem 1rem;border-radius:6px;border:none;cursor:pointer;font-size:.88rem;font-weight:500;font-family:inherit;transition:background .2s}.gallery-btn-record{background:#f5f5f5;color:#555;border:1.5px solid #ccc}.gallery-btn-record:hover:not(:disabled){background:#ebebeb}.gallery-btn-record:disabled{color:#aaa;cursor:not-allowed}.gallery-btn-plan{background:#606c38;color:#fff}.gallery-btn-plan:hover{background:#283618}.log-page{padding:12px 20px 40px;flex:1}.log-page-header{text-align:center;margin-bottom:20px}.log-page-header h1{color:#606c38;font-size:36px;font-weight:700;margin:0 0 8px}.log-subnav{display:flex;gap:6px;justify-content:center;margin-bottom:36px;position:sticky;top:0;z-index:10;background:#fff;padding:10px 0 12px;box-shadow:0 6px 16px #fffffff2}.log-subnav-btn{display:flex;align-items:center;gap:6px;padding:6px 16px;border:1.5px solid #ccc;border-radius:20px;background:#fff;font-size:.85rem;font-weight:500;color:#444;cursor:pointer;transition:border-color .15s,background .15s,color .15s;text-transform:lowercase}.log-subnav-btn:hover{border-color:#606c38;color:#606c38;background:#f4f7ee}.log-subnav-count{font-size:.75rem;color:#aaa;font-weight:400}.log-section{margin-bottom:2.5rem;scroll-margin-top:80px}.log-section-heading{font-size:1rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;margin:0 0 1rem;padding-bottom:.4rem;border-bottom:2px solid currentColor}.log-section-heading--visited{color:#606c38}.log-section-heading--planning{color:#dda15e}.log-section-heading--rest{color:#bbb}.loading{text-align:center;padding:4rem;font-size:1.2rem;color:#666}.log-grid{display:grid;grid-template-columns:repeat(11,1fr);gap:.85rem;max-width:1800px;margin:0 auto}.polaroid-card{background:#fff;padding:.4rem .4rem .6rem;box-shadow:0 2px 6px #00000026;border-radius:3px;transition:all .3s ease;cursor:default;opacity:1;position:relative}.polaroid-card:hover:not(.animating){box-shadow:0 6px 16px #0000002e}.polaroid-card.unvisited .polaroid-photo,.polaroid-card.unvisited .polaroid-caption{opacity:.4;transition:opacity .3s ease}.polaroid-card.unvisited:hover .polaroid-photo,.polaroid-card.unvisited:hover .polaroid-caption{opacity:.6}.polaroid-card.animating{position:fixed;top:var(--start-y);left:var(--start-x);width:var(--start-width);height:var(--start-height);z-index:10001;cursor:default;transform-style:preserve-3d;perspective:1000px;animation:moveFlipExpand 1.2s cubic-bezier(.4,0,.2,1) forwards}.polaroid-card.animating.closing{animation:contractFlipReturn 1.2s cubic-bezier(.4,0,.2,1) forwards}.park-rank-badge{position:absolute;top:4px;left:4px;width:16px;height:16px;border-radius:50%;background:#fff;color:#606c38;font-size:.45rem;font-weight:700;display:flex;align-items:center;justify-content:center;z-index:1;line-height:1;box-shadow:0 1px 3px #0003}.polaroid-photo{width:100%;aspect-ratio:4 / 3;overflow:hidden;background-color:#e0e0e0;margin-bottom:.3rem}.polaroid-photo img{width:100%;height:100%;object-fit:cover;display:block}.park-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.placeholder-text{font-size:.7rem;font-weight:700;color:#ffffffe6;text-shadow:0 1px 2px rgba(0,0,0,.3);letter-spacing:1px}.polaroid-caption{text-align:center;padding:.15rem 0;position:relative}.polaroid-caption .park-name{font-size:.8rem;font-weight:600;color:#333;margin-bottom:.1rem;line-height:1.2;text-align:center}.park-established{font-size:.7rem;color:#666;font-style:italic}.nps-link-card{display:block;margin-top:2px;font-size:.5rem;color:#606c38;text-decoration:none;font-weight:500}.nps-link-card:hover{text-decoration:underline}.card-actions{position:absolute;bottom:0;left:0;right:0;padding:.5rem;display:grid;grid-template-columns:1fr 1fr 1fr;gap:.3rem}.card-action-btn{border:1.5px solid;background:transparent;padding:.3rem .2rem;border-radius:3px;font-size:.65rem;font-weight:500;cursor:pointer;transition:background .15s ease;text-transform:lowercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.plan-btn{border-color:#3a86c6;color:#3a86c6}.plan-btn:hover{background:#e3f2fd}.continue-btn{border-color:#dda15e;color:#dda15e}.continue-btn:hover{background:#fff3e0}.view-btn{border-color:#606c38;color:#606c38}.view-btn:hover{background:#e8f5e9}.continue-planning-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10002}.continue-planning-picker{background:#fff;border-radius:12px;padding:1.5rem;max-width:90vw;box-shadow:0 20px 60px #0000004d}.continue-planning-picker h3{margin:0 0 1rem;font-size:1rem;color:#333;font-weight:600}.continue-planning-cards{display:flex;gap:1rem;overflow-x:auto}.continue-planning-card{min-width:140px;background:#f8f8f8;border:2px solid #e0e0e0;border-radius:8px;padding:1rem;cursor:pointer;transition:all .2s ease;flex-shrink:0}.continue-planning-card:hover{border-color:#dda15e;background:#fff8f0}.continue-planning-card-name{font-size:.9rem;font-weight:600;color:#333}.continue-planning-card-date{font-size:.8rem;color:#888;margin-top:.3rem}.card-expand-overlay{position:fixed;inset:0;background:#000000b3;z-index:10000;animation:fadeIn .3s ease-out}@keyframes moveFlipExpand{0%{top:var(--start-y);left:var(--start-x);width:var(--start-width);height:var(--start-height);transform:rotateY(0)}40%{top:50%;left:50%;width:var(--start-width);height:var(--start-height);transform:translate(-50%,-50%) rotateY(0)}70%{top:50%;left:50%;width:var(--start-width);height:var(--start-height);transform:translate(-50%,-50%) rotateY(180deg)}to{top:50%;left:50%;width:90vw;height:90vh;transform:translate(-50%,-50%) rotateY(180deg)}}@keyframes contractFlipReturn{0%{top:50%;left:50%;width:90vw;height:90vh;transform:translate(-50%,-50%) rotateY(180deg)}30%{top:50%;left:50%;width:var(--start-width);height:var(--start-height);transform:translate(-50%,-50%) rotateY(180deg)}60%{top:50%;left:50%;width:var(--start-width);height:var(--start-height);transform:translate(-50%,-50%) rotateY(0)}to{top:var(--start-y);left:var(--start-x);width:var(--start-width);height:var(--start-height);transform:rotateY(0)}}.polaroid-card.animating .card-face{position:absolute;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;top:0;left:0}.polaroid-card:not(.animating) .card-front{position:static}.card-front{display:flex;flex-direction:column}.polaroid-card.animating .card-front{padding:1rem 1rem 1.5rem}.card-back{transform:rotateY(180deg);overflow:hidden}.expanded-content{display:flex;align-items:stretch;justify-content:center;gap:2rem;width:100%;height:100%;padding:2rem}.mini-card{flex-shrink:0;width:250px;background:#fff;padding:1rem 1rem 1.5rem;border-radius:4px;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;align-self:flex-start}.mini-card .polaroid-photo{width:100%;aspect-ratio:4 / 3;overflow:hidden;background-color:#e0e0e0;margin-bottom:.75rem}.mini-card .polaroid-photo img{width:100%;height:100%;object-fit:cover;display:block}.panel-container{flex:1;overflow:hidden;min-height:0}.create-plan-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.create-plan-modal{background:#fff;border-radius:12px;padding:2rem;width:480px;max-width:90vw;box-shadow:0 20px 60px #0000004d}.create-plan-modal h2{margin:0 0 1.5rem;color:#606c38;font-size:1.4rem}.create-plan-modal .form-group{margin-bottom:1.2rem}.create-plan-modal .form-group label{display:block;margin-bottom:.4rem;font-weight:600;font-size:.9rem;color:#555}.create-plan-modal .form-group input,.create-plan-modal .form-group textarea{width:100%;padding:.6rem .8rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem;box-sizing:border-box;font-family:inherit}.create-plan-modal .form-group textarea{resize:vertical}.create-plan-modal .form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.create-plan-modal .form-actions button{padding:.55rem 1.2rem;border-radius:6px;border:1px solid #ddd;background:#fff;cursor:pointer;font-size:.9rem}.create-plan-modal .form-actions button.primary{background:#606c38;color:#fff;border-color:#606c38}.create-plan-modal .form-actions button.primary:hover{background:#3d6b1f}.plan-parks-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.plan-park-chip{display:inline-flex;align-items:center;gap:4px;background:#e8f5e9;border:1px solid #a5d6a7;color:#606c38;border-radius:20px;padding:3px 10px 3px 12px;font-size:.85rem;font-weight:500}.plan-park-chip-remove{background:none;border:none;cursor:pointer;color:#5a7a3a;font-size:1rem;line-height:1;padding:0;margin-left:2px}.plan-park-chip-remove:hover{color:#c0392b}.plan-park-search{width:100%;padding:.6rem .8rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem;box-sizing:border-box;font-family:inherit}.plan-park-results{border:1px solid #ddd;border-top:none;border-radius:0 0 6px 6px;max-height:180px;overflow-y:auto;background:#fff}.plan-park-option{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;cursor:pointer;font-size:.9rem}.plan-park-option:hover{background:#f0f7eb}.plan-park-option-name{font-weight:500;color:#222}.plan-park-option-state{font-size:.8rem;color:#888}.plan-park-no-results{padding:10px 12px;color:#999;font-size:.85rem}.plan-parks-hint{margin:6px 0 0;font-size:.8rem;color:#999}@media(max-width:1600px){.log-grid{grid-template-columns:repeat(9,1fr)}}@media(max-width:1400px){.log-grid{grid-template-columns:repeat(8,1fr)}}@media(max-width:1200px){.log-grid{grid-template-columns:repeat(6,1fr)}}@media(max-width:900px){.log-grid{grid-template-columns:repeat(5,1fr);gap:.5rem}}@media(max-width:600px){.log-grid{grid-template-columns:repeat(4,1fr);gap:.5rem}.log-page{padding:1rem}}@media(max-width:480px){.log-page{padding:1rem}.log-page-header{margin-bottom:1.5rem}.log-page-header h1{font-size:1.5rem}.log-grid{grid-template-columns:repeat(3,1fr);gap:.4rem}}.trip-plans-page{flex:1;padding:12px 20px 40px}.trip-plans-inner{max-width:1400px;margin:0 auto}.trip-plans-loading,.trip-plans-error{text-align:center;padding:60px 20px}.trip-plans-header{text-align:center;margin-bottom:24px}.trip-plans-header h1{color:#606c38;font-size:36px;margin:0 0 8px}.tp-subtitle{color:#666;font-size:18px;margin:0 0 24px}.create-button{background:#606c38;color:#fff;border:none;padding:12px 32px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s}.create-button:hover{background:#283618}.create-form-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.create-form-modal{background:#fff;padding:32px;border-radius:12px;max-width:500px;width:90%;box-shadow:0 4px 20px #0003}.create-form-modal h2{color:#606c38;margin:0 0 24px}.form-group label{display:block;font-weight:600;color:#606c38;margin-bottom:8px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.form-actions button{padding:10px 24px;border-radius:6px;font-size:16px;cursor:pointer;border:none;font-weight:500}.form-actions button[type=button]{background:#f5f5f5;color:#333}.form-actions button[type=button]:hover{background:#e0e0e0}.form-actions button.primary{background:#606c38;color:#fff}.form-actions button.primary:hover{background:#283618}.trip-plans-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:2rem;max-width:1800px;margin:0 auto}.trip-plan-card{background:#fff;padding:1rem 1rem 1.5rem;box-shadow:0 4px 12px #00000026;border-radius:4px;cursor:pointer;transition:all .3s ease;position:relative}.plan-status-pill{position:absolute;top:8px;right:8px;padding:2px 8px;border-radius:12px;font-size:.65rem;font-weight:600;text-transform:lowercase;z-index:1}.plan-status-pill--planning{background:#fff3e0;color:#c76b00}.plan-status-pill--went{background:#e8f5e9;color:#2e7d32}.plan-status-pill--inprogress{background:#e3f2fd;color:#1565c0}.trip-plan-card:hover{transform:translateY(-8px) rotate(.5deg);box-shadow:0 12px 24px #00000040}.tp-subnav{display:flex;gap:6px;justify-content:center;margin-bottom:36px;position:sticky;top:0;z-index:10;background:#fff;padding:10px 0 12px;box-shadow:0 6px 16px #fffffff2}.tp-subnav-btn{display:flex;align-items:center;gap:6px;padding:6px 16px;border:1.5px solid #ccc;border-radius:20px;background:#fff;font-size:.85rem;font-weight:500;color:#444;cursor:pointer;transition:border-color .15s,background .15s,color .15s;text-transform:lowercase}.tp-subnav-btn:hover{border-color:#606c38;color:#606c38;background:#f4f7ee}.tp-subnav-count{font-size:.75rem;color:#aaa;font-weight:400}.trip-plans-section{margin-bottom:2.5rem;scroll-margin-top:80px}.section-heading{font-size:1rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;margin:0 0 1rem;padding-bottom:.4rem;border-bottom:2px solid currentColor}.section-heading--inprogress{color:#0288d1}.section-heading--planning{color:#555}.section-heading--went{color:#606c38}.trip-plan-card .polaroid-photo{width:100%;aspect-ratio:4 / 3;overflow:hidden;background-color:#e0e0e0;margin-bottom:.75rem}.plan-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.plan-photo-collage{width:100%;height:100%;position:relative;display:grid;overflow:hidden}.plan-photo-collage.collage-1{grid-template-columns:1fr;grid-template-rows:1fr}.plan-photo-collage.collage-2{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.plan-photo-collage.collage-3{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.plan-photo-collage.collage-3 .collage-img:first-child{grid-row:1 / 3}.plan-photo-collage.collage-4{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.collage-img{width:100%;height:100%;object-fit:cover;display:block}.plan-status-badge{position:absolute;top:8px;right:8px;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:capitalize;background:#ffffffd9}.plan-status-badge.planning{color:#856404}.plan-status-badge.finalized{color:#155724}.plan-status-badge.archived{color:#721c24}.trip-plan-card .polaroid-caption{text-align:center;padding:.5rem 0}.plan-name{font-size:1.05rem;font-weight:600;color:#333;margin-bottom:.35rem;line-height:1.3}.plan-date{font-size:.85rem;color:#666;margin-bottom:.35rem}.plan-parks{font-size:.78rem;color:#555;margin-bottom:.5rem;line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.plan-stats{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem;font-size:.85rem;color:#888;margin-top:.5rem}.plan-cost{color:#606c38;font-weight:600}.trip-plan-card .trip-button{position:absolute;bottom:.75rem;right:.75rem;background:#606c38;color:#fff;border:none;padding:.4rem .8rem;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-transform:lowercase;box-shadow:0 2px 4px #0000001a}.trip-plan-card .trip-button:hover{background:#3d6b1f;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.no-plans{grid-column:1 / -1;text-align:center;padding:104px 20px 80px}.no-plans h3{color:#606c38;font-size:24px;margin:0 0 12px}.no-plans p{color:#666;font-size:1.1rem;margin:0}.no-plans button{background:#606c38;color:#fff;border:none;padding:12px 32px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer}.no-plans button:hover{background:#283618}@media(max-width:600px){.trip-plans-page{padding:20px 12px}.trip-plans-header{margin-bottom:1.5rem}.trip-plans-header h1{font-size:1.6rem}.trip-plans-grid{grid-template-columns:1fr;gap:1.25rem}}@media(max-width:480px){.trip-plans-page{padding:16px 10px}}.add-park-modal{max-width:600px;max-height:80vh;overflow-y:auto}.search-input{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:16px;margin-bottom:0}.parks-list-modal{max-height:400px;overflow-y:auto;border:1px solid #e0e0e0;border-radius:6px}.park-option{padding:12px 16px;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background .2s}.park-option:last-child{border-bottom:none}.park-option:hover{background:#f5f5f5}.park-option h4{margin:0 0 4px;color:#606c38;font-size:16px}.park-option p{margin:0;color:#666;font-size:14px}.no-results{text-align:center;padding:40px;color:#999;font-style:italic}.selected-park-info{background:#f5f5f5;padding:16px;border-radius:6px;margin-bottom:24px}.selected-park-info h3{margin:0 0 4px;color:#606c38}.selected-park-info p{margin:0 0 12px;color:#666}.change-park-btn{background:none;border:1px solid #606c38;color:#606c38;padding:6px 16px;border-radius:4px;cursor:pointer;font-size:14px}.change-park-btn:hover{background:#606c38;color:#fff}.form-group{margin-bottom:20px}.form-group input,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:16px;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#606c38}.modal-actions button{padding:10px 24px;border-radius:6px;font-size:16px;cursor:pointer;border:none;font-weight:500}.add-member-modal{max-width:600px;max-height:80vh;overflow-y:auto}.tabs{display:flex;gap:8px;margin-bottom:20px;border-bottom:2px solid #e0e0e0}.tabs button{background:none;border:none;padding:12px 24px;cursor:pointer;font-size:15px;color:#666;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s}.tabs button:hover{color:#606c38}.tabs button.active{color:#606c38;font-weight:600;border-bottom-color:#606c38}.tab-content{min-height:300px}.loading-text{text-align:center;padding:40px;color:#999}.search-box{display:flex;gap:12px;margin-bottom:20px}.search-box input{flex:1;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:16px}.search-box input:focus{outline:none;border-color:#606c38}.search-box button{padding:10px 20px;background:#606c38;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:15px;font-weight:500}.search-box button:hover:not(:disabled){background:#283618}.search-box button:disabled{opacity:.6;cursor:not-allowed}.users-list{display:flex;flex-direction:column;gap:12px}.user-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#f9f9f9;border-radius:8px;border:1px solid #e0e0e0}.user-info h4{margin:0 0 4px;color:#606c38;font-size:16px}.user-info p{margin:0;color:#666;font-size:14px}.add-btn{background:#606c38;color:#fff;border:none;padding:8px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.add-btn:hover{background:#283618}.empty-state{text-align:center;padding:60px 20px}.empty-state p{margin:0 0 8px;color:#999}.empty-state .hint{font-size:14px;font-style:italic}.modal-footer{margin-top:24px;padding-top:16px;border-top:1px solid #e0e0e0;text-align:right}.cancel-btn{background:#f5f5f5;color:#333;border:none;padding:10px 24px;border-radius:6px;cursor:pointer;font-size:15px}.cancel-btn:hover{background:#e0e0e0}.pending-user-name{font-size:1rem;font-weight:600;color:#606c38;margin:0 0 20px}.permission-select-group{display:flex;flex-direction:column;gap:12px;margin-bottom:8px}.permission-option{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:border-color .15s}.permission-option:has(input:checked){border-color:#606c38;background:#f4f8f0}.permission-option input[type=radio]{margin-top:3px;width:16px;height:16px;cursor:pointer;accent-color:#606c38;flex-shrink:0}.permission-option div{display:flex;flex-direction:column;gap:2px}.permission-option strong{font-size:.95rem;color:#1a1a1a}.permission-option p{margin:0;font-size:.82rem;color:#666}.modal-footer{display:flex;justify-content:flex-end;gap:8px}.collaborative-map-container{display:flex;flex-direction:column;gap:20px;height:780px}.collaborative-map-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px}.map-legend{background:#fff;padding:16px;border-radius:8px;border:1px solid #e0e0e0}.map-legend h4{margin:0 0 12px;color:#606c38;font-size:16px}.legend-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:12px}.legend-item{display:flex;align-items:center;gap:8px}.legend-marker{width:16px;height:16px;border-radius:50%;border:2px solid #333}.legend-marker.green{background:#22c55e}.legend-marker.yellow{background:#ffc107}.legend-marker.gray{background:#9ca3af}.legend-marker.blue{background:#2196f3}.legend-item span{font-size:14px;color:#666}.legend-hint{margin:0;padding:8px;background:#fff3cd;border-left:4px solid #ffc107;color:#856404;font-size:14px;border-radius:4px}.map-wrapper{flex:1;background:#f5f5f5;border-radius:8px;overflow:hidden;border:1px solid #e0e0e0}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{overflow:visible;text-transform:none;-webkit-appearance:button;-moz-appearance:button;appearance:button;cursor:pointer}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-calendar{-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar *:before,.rbc-calendar *:after{-webkit-box-sizing:inherit;box-sizing:inherit}.rbc-abs-full,.rbc-row-bg{overflow:hidden;position:absolute;inset:0}.rbc-ellipsis,.rbc-show-more,.rbc-row-segment .rbc-event-content,.rbc-event-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-off-range-bg{background:#e6e6e6}.rbc-header{overflow:hidden;-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;text-overflow:ellipsis;white-space:nowrap;padding:0 3px;text-align:center;vertical-align:middle;font-weight:700;font-size:90%;min-height:0;border-bottom:1px solid #ddd}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{color:inherit;background:none;margin:0;padding:0;border:none;cursor:pointer;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.rbc-row-content{position:relative;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;z-index:4}.rbc-row-content-scrollable{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%}.rbc-row-content-scrollable .rbc-row-content-scroll-container{height:100%;overflow-y:scroll;-ms-overflow-style:none;scrollbar-width:none}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-today{background-color:#eaf6ff}.rbc-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;font-size:16px}.rbc-toolbar .rbc-toolbar-label{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding:0 10px;text-align:center}.rbc-toolbar button{color:#373a3c;display:inline-block;margin:0;text-align:center;vertical-align:middle;background:none;background-image:none;border:1px solid #ccc;padding:.375rem 1rem;border-radius:4px;line-height:normal;white-space:nowrap}.rbc-toolbar button:active,.rbc-toolbar button.rbc-active{background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px #00000020;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button.rbc-active:focus{color:#373a3c;background-color:#d4d4d4;border-color:#8c8c8c}.rbc-toolbar button:focus{color:#373a3c;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:hover{color:#373a3c;cursor:pointer;background-color:#e6e6e6;border-color:#adadad}.rbc-btn-group{display:inline-block;white-space:nowrap}.rbc-btn-group>button:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:0 4px 4px 0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px 0 0 4px}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media(max-width:767px){.rbc-toolbar{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.rbc-event,.rbc-day-slot .rbc-background-event{border:none;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:none;box-shadow:none;margin:0;padding:2px 5px;background-color:#3174ad;border-radius:5px;color:#fff;cursor:pointer;width:100%;text-align:left}.rbc-slot-selecting .rbc-event,.rbc-slot-selecting .rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-slot-selecting .rbc-background-event{cursor:inherit;pointer-events:none}.rbc-event.rbc-selected,.rbc-day-slot .rbc-selected.rbc-background-event{background-color:#265985}.rbc-event:focus,.rbc-day-slot .rbc-background-event:focus{outline:5px auto #3b99fc}.rbc-event-label{font-size:80%}.rbc-event-overlaps{-webkit-box-shadow:-1px 1px 5px 0px rgba(51,51,51,.5);box-shadow:-1px 1px 5px #33333380}.rbc-event-continues-prior{border-top-left-radius:0;border-bottom-left-radius:0}.rbc-event-continues-after{border-top-right-radius:0;border-bottom-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-left-radius:0;border-bottom-right-radius:0}.rbc-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-row-segment{padding:0 1px 1px}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{background-color:#ffffff4d;z-index:4;font-weight:700;font-size:85%;height:auto;line-height:normal;color:#3174ad}.rbc-show-more:hover,.rbc-show-more:focus{color:#265985}.rbc-month-view{position:relative;border:1px solid #ddd;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;width:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;height:100%}.rbc-month-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-month-row{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-ms-flex-preferred-size:0px;flex-basis:0px;overflow:hidden;height:100%}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;min-width:0;padding-right:5px;text-align:right}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;overflow:hidden;right:1px}.rbc-day-bg{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{position:absolute;z-index:5;border:1px solid #e5e5e5;background-color:#fff;-webkit-box-shadow:0 5px 15px rgba(0,0,0,.25);box-shadow:0 5px 15px #00000040;padding:10px}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{width:100%;border:1px solid #ddd;border-spacing:0;border-collapse:collapse}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{padding:5px 10px;vertical-align:top}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{padding-left:15px;padding-right:15px;text-transform:lowercase}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{padding:3px 5px;text-align:left;border-bottom:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-height:100%}.rbc-time-column .rbc-timeslot-group{-webkit-box-flex:1;-ms-flex:1;flex:1}.rbc-timeslot-group{border-bottom:1px solid #ddd;min-height:40px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap}.rbc-time-gutter,.rbc-header-gutter{-webkit-box-flex:0;-ms-flex:none;flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{inset:0;position:absolute;margin-right:10px}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-event,.rbc-day-slot .rbc-background-event{border:1px solid #265985;display:-webkit-box;display:-ms-flexbox;display:flex;max-height:100%;min-height:20px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column wrap;flex-flow:column wrap;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;overflow:hidden;position:absolute}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{-webkit-box-flex:0;-ms-flex:none;flex:none;padding-right:5px;width:auto}.rbc-day-slot .rbc-event-content{width:100%;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;word-wrap:break-word;line-height:1;height:100%;min-height:1em}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{position:sticky;left:0;background-color:#fff;border-right:1px solid #ddd;z-index:10;margin-right:-1px}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{min-width:auto;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-ms-flex-preferred-size:0px;flex-basis:0px}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-header,.rbc-time-view-resources .rbc-day-bg{width:140px;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;-ms-flex-preferred-size:0 px;flex-basis:0 px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{z-index:10;position:absolute;background-color:#00000080;color:#fff;font-size:75%;width:100%;padding:3px}.rbc-slot-selecting{cursor:move}.rbc-time-view{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1;flex:1;width:100%;border:1px solid #ddd;min-height:0}.rbc-time-view .rbc-time-gutter{white-space:nowrap;text-align:right}.rbc-time-view .rbc-allday-cell{-webkit-box-sizing:content-box;box-sizing:content-box;width:100%;height:100%;position:relative}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{position:relative;z-index:4}.rbc-time-view .rbc-row{-webkit-box-sizing:border-box;box-sizing:border-box;min-height:20px}.rbc-time-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-right-width:0;border-left:1px solid #ddd}.rbc-time-header>.rbc-row:first-child{border-bottom:1px solid #ddd}.rbc-time-header>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;min-width:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-left:1px solid #ddd}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;-ms-flex-negative:0;flex-shrink:0}.rbc-time-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;width:100%;border-top:2px solid #ddd;overflow-y:auto;position:relative}.rbc-time-content>.rbc-time-gutter{-webkit-box-flex:0;-ms-flex:none;flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{width:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none}.rbc-current-time-indicator{position:absolute;z-index:3;left:0;right:0;height:1px;background-color:#74ad31;pointer-events:none}.rbc-resource-grouping.rbc-time-header-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.rbc-addons-dnd .rbc-addons-dnd-row-body{position:relative}.rbc-addons-dnd .rbc-addons-dnd-drag-row{position:absolute;top:0;left:0;right:0}.rbc-addons-dnd .rbc-addons-dnd-over{background-color:#0000004d}.rbc-addons-dnd .rbc-event{transition:opacity .15s}.rbc-addons-dnd .rbc-event:hover .rbc-addons-dnd-resize-ns-icon,.rbc-addons-dnd .rbc-event:hover .rbc-addons-dnd-resize-ew-icon{display:block}.rbc-addons-dnd .rbc-addons-dnd-dragged-event{opacity:0}.rbc-addons-dnd.rbc-addons-dnd-is-dragging .rbc-event:not(.rbc-addons-dnd-dragged-event):not(.rbc-addons-dnd-drag-preview){opacity:.5}.rbc-addons-dnd .rbc-addons-dnd-resizable{position:relative;width:100%;height:100%}.rbc-addons-dnd .rbc-addons-dnd-resize-ns-anchor{width:100%;text-align:center;position:absolute}.rbc-addons-dnd .rbc-addons-dnd-resize-ns-anchor:first-child{top:0}.rbc-addons-dnd .rbc-addons-dnd-resize-ns-anchor:last-child{bottom:0}.rbc-addons-dnd .rbc-addons-dnd-resize-ns-anchor .rbc-addons-dnd-resize-ns-icon{display:none;border-top:3px double;margin:0 auto;width:10px;cursor:ns-resize}.rbc-addons-dnd .rbc-addons-dnd-resize-ew-anchor{position:absolute;top:4px;bottom:0}.rbc-addons-dnd .rbc-addons-dnd-resize-ew-anchor:first-child{left:0}.rbc-addons-dnd .rbc-addons-dnd-resize-ew-anchor:last-child{right:0}.rbc-addons-dnd .rbc-addons-dnd-resize-ew-anchor .rbc-addons-dnd-resize-ew-icon{display:none;border-left:3px double;margin-top:auto;margin-bottom:auto;height:10px;cursor:ew-resize}.trip-calendar-container{background:#fff;border-radius:8px;padding:20px;border:1px solid #e0e0e0}.calendar-swipe-wrapper{overflow:hidden;position:relative;width:100%}.calendar-carousel{display:flex;width:300%;position:relative}.calendar-slide{flex:0 0 33.333%;width:33.333%;min-width:0}.calendar-legend{display:flex;gap:24px;margin-bottom:20px;padding:12px;background:#f9f9f9;border-radius:6px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:8px;font-size:14px;color:#666}.legend-color{width:20px;height:20px;border-radius:4px}.legend-color.park{background:#606c38}.legend-color.activity{background:#dda15e}.legend-color.flight{background:#2196f3}.legend-color.accommodation{background:#9c27b0}.legend-color.car-rental{background:#009688}.legend-color.city-stop{background:#3f51b5}.legend-color.city-activity{background:#e91e63}.legend-color.dawn{background:#3c005073}.legend-color.dusk{background:#001e5073}.edp-overlay{position:fixed;inset:0;background:#00000059;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px}.edp-popup{background:#fff;border-radius:10px;box-shadow:0 8px 32px #0003;width:100%;max-width:380px;max-height:85vh;overflow-y:auto;position:relative}.edp-close{position:absolute;top:10px;right:12px;background:none;border:none;font-size:22px;line-height:1;color:#999;cursor:pointer;padding:2px 6px;border-radius:4px;z-index:1}.edp-close:hover{background:#f0f0f0;color:#333}.edp-header{display:flex;align-items:flex-start;gap:12px;padding:18px 44px 14px 18px;border-left:4px solid #ccc;border-radius:10px 10px 0 0;background:#fafafa}.edp-icon{font-size:24px;line-height:1;margin-top:2px;flex-shrink:0}.edp-titles{min-width:0}.edp-type-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}.edp-title{font-size:17px;font-weight:700;color:#1a1a1a;margin:0 0 2px;line-height:1.25}.edp-subtitle{font-size:13px;color:#666}.edp-body{padding:14px 18px 18px}.edp-row{display:flex;align-items:baseline;gap:8px;padding:5px 0;border-bottom:1px solid #f0f0f0}.edp-row:last-of-type{border-bottom:none}.edp-label{font-size:12px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;min-width:72px}.edp-value{font-size:14px;color:#222;word-break:break-word}.edp-value a{color:#2196f3;text-decoration:none;font-weight:500}.edp-value a:hover{text-decoration:underline}.edp-notes{margin:10px 0 0;padding:10px 12px;background:#f5f5f5;border-radius:6px;font-size:13px;color:#555;line-height:1.5}.type-picker-panel{position:absolute;top:calc(100% + 4px);right:0;z-index:9999;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #00000026;padding:6px;display:flex;flex-direction:column;gap:2px;min-width:160px}.type-card{display:flex;align-items:center;gap:8px;padding:8px 10px;border:none;border-left:3px solid transparent;background:none;border-radius:4px;cursor:pointer;font-size:14px;text-align:left;transition:background .15s}.type-card:hover{background:#f5f5f5}.type-card-icon{font-size:16px;width:20px;text-align:center}.type-card-label{font-weight:500;color:#333}.rbc-add-event-btn{font-size:20px!important;font-weight:400!important;line-height:1;padding:4px 12px!important;color:#606c38!important;border-color:#606c38!important}.rbc-add-event-btn:hover{background:#e8f5e9!important}.per-day-bank{margin-top:0;border:1px solid #e0e0e0;border-top:none;border-radius:0 0 6px 6px;overflow:hidden}.per-day-bank-gutter{background:#fafafa;border-right:1px solid #e0e0e0}.per-day-bank-col{padding:4px 4px 6px;border-left:1px solid #e0e0e0;min-height:40px;display:flex;flex-direction:column;gap:3px;background:#fff;transition:background .15s}.per-day-bank-col.drag-over{background:#e3f2fd}.per-day-bank-col-label{font-size:11px;font-weight:600;color:#888;padding:2px 2px 4px;white-space:nowrap}.global-bank{display:flex;align-items:flex-start;gap:10px;margin-top:8px;padding:10px 12px;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;overflow-x:auto}.global-bank-label{font-size:12px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding-top:4px;flex-shrink:0}.global-bank-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start}.bank-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:12px;color:#fff;font-size:12px;font-weight:500;cursor:grab;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;opacity:.92;transition:opacity .15s,transform .1s;flex-shrink:0}.bank-chip:hover{opacity:1;transform:translateY(-1px)}.bank-chip:active{cursor:grabbing}.bank-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edp-footer{display:flex;gap:8px;padding:10px 18px 14px;border-top:1px solid #f0f0f0}.edp-edit-btn{background:none;border:1px solid #ddd;font-size:13px;font-weight:500;color:#555;cursor:pointer;padding:5px 12px;border-radius:4px}.edp-edit-btn:hover{background:#f0f0f0;color:#333}.edp-unschedule-btn{background:none;border:1px solid #d32f2f;color:#d32f2f;border-radius:4px;padding:5px 12px;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap}.edp-unschedule-btn:hover{background:#fde8e8}.edp-delete-btn{margin-left:auto;background:none;border:1px solid #d32f2f;color:#d32f2f;border-radius:4px;padding:5px 12px;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap}.edp-delete-btn:hover{background:#d32f2f;color:#fff}.rbc-calendar{font-family:inherit}.rbc-header{padding:12px 4px;font-weight:600;color:#606c38;border-bottom:2px solid #e8f5e9}.rbc-today{background-color:#f0f7ff}.rbc-off-range-bg{background:#fafafa}.outside-trip-range{background-color:#f5f5f5!important;color:#999!important}.outside-trip-range .rbc-button-link{color:#999!important}.outside-trip-range.rbc-today{background-color:#e8e8e8!important}.rbc-event{padding:4px 6px;font-size:13px;font-weight:500}.rbc-event:focus{outline:2px solid #606c38}.rbc-toolbar{margin-bottom:20px;padding:12px;background:#f9f9f9;border-radius:6px;display:flex;justify-content:space-between;align-items:center}.rbc-toolbar-label{display:flex;align-items:center;gap:12px}.rbc-toolbar-date-label{font-size:16px;font-weight:600;color:#606c38;min-width:200px;text-align:center}.rbc-btn-nav{padding:6px 14px!important;font-size:24px;line-height:1;font-weight:600;min-width:40px}.rbc-btn-nav:hover{background:#e8f5e9!important;border-color:#606c38!important;color:#606c38!important}.rbc-btn-group{display:flex;gap:4px}.rbc-toolbar button{padding:8px 16px;border:1px solid #ddd;background:#fff;color:#333;border-radius:4px;font-weight:500;cursor:pointer;transition:all .2s}.rbc-toolbar button:hover{background:#e8f5e9;border-color:#606c38;color:#606c38}.rbc-toolbar button.rbc-active{background:#606c38;color:#fff;border-color:#606c38}.rbc-toolbar button.rbc-active:hover{background:#283618}.rbc-month-view,.rbc-time-view,.rbc-agenda-view{border:1px solid #e0e0e0;border-radius:6px;overflow:hidden}.calendar-slide .rbc-time-view{flex:none;height:auto}.calendar-slide .rbc-time-content{flex:none;overflow-y:visible}.calendar-slide .rbc-timeslot-group{min-height:26px}.rbc-month-row,.rbc-day-bg,.rbc-time-slot{border-color:#e0e0e0}.rbc-time-view .rbc-event.rbc-event-continues-after,.rbc-time-view .rbc-event.rbc-event-continues-prior{border-radius:0}.dawn-shade,.dusk-shade{position:absolute;left:0;right:0;pointer-events:none}.dawn-shade{background:#3c005024}.dusk-shade{background:#00144624}.rbc-time-slot-group{position:relative}@media(max-width:768px){.trip-calendar-container{padding:12px}.edp-overlay{align-items:flex-end;padding:0}.edp-popup{max-width:none!important;width:100%!important;border-radius:16px 16px 0 0;max-height:80vh;inset:auto 0 0!important;position:relative}.global-bank{overflow-x:auto;flex-wrap:nowrap}.global-bank-chips{flex-wrap:nowrap}.per-day-bank-row{overflow-x:auto}.calendar-legend{gap:12px;font-size:.8rem}.rbc-btn-group button{min-height:36px}.rbc-toolbar{flex-wrap:wrap;gap:6px}.type-picker-panel{left:0;right:0;min-width:unset}}@media(max-width:480px){.trip-calendar-container{padding:8px}.rbc-toolbar-date-label{font-size:.9rem;min-width:unset}}.trip-cost-breakdown{padding:1.5rem}.trip-cost-breakdown h3{margin:0 0 1.5rem;font-size:1.25rem;color:#333}.trip-cost-breakdown h4{margin:0 0 1rem;font-size:1.1rem;color:#333}.no-cost-data{text-align:center;padding:2.5rem 1rem;color:#999;font-style:italic;line-height:1.6}.tpcb-summary-card{background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #e0e0e0;border-radius:12px;padding:1.5rem;margin-bottom:2rem}.tpcb-total-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.tpcb-label{font-size:1.1rem;font-weight:600;color:#333}.tpcb-amount{font-size:1.75rem;font-weight:700;color:#606c38}.tpcb-bar{display:flex;width:100%;height:32px;border-radius:8px;overflow:hidden;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000001a}.tpcb-bar-seg{height:100%;transition:opacity .2s;cursor:help}.tpcb-bar-seg:hover{opacity:.8}.tpcb-bar-seg.flights{background:linear-gradient(135deg,#64b5f6,#3a86c6)}.tpcb-bar-seg.rentals{background:linear-gradient(135deg,#81c784,#388e3c)}.tpcb-bar-seg.accommodations{background:linear-gradient(135deg,#ce93d8,#7b1fa2)}.tpcb-bar-seg.park-activities{background:linear-gradient(135deg,#ffcc80,#ef6c00)}.tpcb-bar-seg.city-activities{background:linear-gradient(135deg,#80cbc4,#00695c)}.tpcb-categories{display:flex;flex-direction:column;gap:.6rem}.tpcb-category-row{display:grid;grid-template-columns:1fr auto auto;gap:1rem;align-items:center;padding:.65rem 1rem;background:#fff;border-radius:8px;border:1px solid #e0e0e0}.tpcb-cat-label{display:flex;align-items:center;gap:.65rem;font-weight:500;color:#555}.tpcb-dot{width:14px;height:14px;border-radius:3px;flex-shrink:0}.tpcb-dot.flights{background:linear-gradient(135deg,#64b5f6,#3a86c6)}.tpcb-dot.rentals{background:linear-gradient(135deg,#81c784,#388e3c)}.tpcb-dot.accommodations{background:linear-gradient(135deg,#ce93d8,#7b1fa2)}.tpcb-dot.park-activities{background:linear-gradient(135deg,#ffcc80,#ef6c00)}.tpcb-dot.city-activities{background:linear-gradient(135deg,#80cbc4,#00695c)}.tpcb-cat-amount{font-weight:600;color:#333;font-size:1.05rem}.tpcb-cat-pct{color:#666;font-size:.875rem;min-width:48px;text-align:right}.tpcb-stops{margin-top:2rem;padding-top:2rem;border-top:2px solid #e0e0e0}.tpcb-stop-list{display:grid;gap:.85rem}.tpcb-stop-card{background:#f8f9fa;border:2px solid #e0e0e0;border-radius:8px;padding:1rem;transition:border-color .2s,box-shadow .2s}.tpcb-stop-card:hover{border-color:#606c38;box-shadow:0 4px 12px #00000012}.tpcb-stop-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e0e0e0}.tpcb-stop-title{display:flex;align-items:center;gap:.75rem}.tpcb-stop-num{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:#fff;flex-shrink:0}.tpcb-stop-num.park{background:#ef6c00}.tpcb-stop-num.city{background:#00695c}.tpcb-stop-info{display:flex;flex-direction:column;gap:.2rem}.tpcb-stop-name{font-weight:600;color:#333;font-size:.95rem}.tpcb-stop-type{font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:.04em}.tpcb-stop-total{font-weight:700;color:#606c38;font-size:1.15rem}.tpcb-stop-details{display:flex;flex-direction:column;gap:.3rem}.tpcb-detail-row{display:flex;justify-content:space-between;align-items:center;padding:.35rem .65rem;background:#fff;border-radius:5px;font-size:.875rem}.tpcb-detail-label{color:#666;font-weight:500}.tpcb-detail-value{color:#333;font-weight:600}@media(max-width:768px){.trip-cost-breakdown,.tpcb-summary-card{padding:1rem}.tpcb-total-row{flex-direction:column;align-items:flex-start;gap:.4rem}.tpcb-amount{font-size:1.5rem}.tpcb-category-row{grid-template-columns:1fr;gap:.4rem}.tpcb-cat-amount,.tpcb-cat-pct{text-align:left}.tpcb-stop-header{flex-direction:column;align-items:flex-start;gap:.5rem}}.tl-tab{display:flex;flex-direction:column;gap:0;font-family:inherit}.tl-empty{padding:48px 24px;text-align:center;color:#888;font-style:italic}.tl-header{display:flex;align-items:center;padding:4px 0 2px;border-bottom:1px solid #e0d6c8;position:sticky;top:0;background:#faf7f2;z-index:2}.tl-hour-labels{position:relative;height:20px;width:100%}.tl-hour-label{position:absolute;transform:translate(-50%);font-size:11px;color:#aaa;font-weight:500;letter-spacing:.02em;-webkit-user-select:none;user-select:none}.tl-left-col{flex:0 0 100px;min-width:100px;padding:0 12px 0 4px;display:flex;flex-direction:column;gap:1px}.tl-right-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.tl-row{display:flex;align-items:flex-start;padding:8px 0;border-bottom:2px solid #c8b490}.tl-row--park{background:#8b691408}.tl-row--city{background:#3c5a8208}.tl-weekday{font-size:11px;font-weight:700;color:#8b6914;text-transform:uppercase;letter-spacing:.06em}.tl-date{font-size:13px;color:#3c3020;font-weight:600}.tl-location{font-size:11px;color:#7a7060;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:88px}.tl-track{position:relative;height:28px;background:#e8e2d8;border-radius:4px;overflow:visible}.tl-tick{position:absolute;top:0;bottom:0;width:1px;background:#ffffff8c;pointer-events:none}.tl-daylight{position:absolute;top:0;bottom:0;background:linear-gradient(90deg,#f8d97a,#faedb2 40%,#f8d97a);border-radius:3px;opacity:.75;pointer-events:none}.tl-sunrise-marker,.tl-sunset-marker{position:absolute;top:0;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;z-index:3;pointer-events:none}.tl-sunrise-marker:before,.tl-sunset-marker:before{content:"";display:block;width:13px;height:13px;border-radius:50%;background:#ffe033;box-shadow:0 0 0 2px #fffc,0 0 8px 3px #ffd200b3;margin-top:7px;flex-shrink:0}.tl-sunset-marker:before{background:#ff7a20;box-shadow:0 0 0 2px #fffc,0 0 8px 3px #ff6e14a6}.tl-sun-stem{display:block;width:1px;height:12px;background:#c8a040;flex-shrink:0}.tl-sunset-marker .tl-sun-stem{background:#c06820}.tl-sun-label{font-size:9px;color:#7a5a10;white-space:nowrap;line-height:1;margin-top:2px}.tl-act-bar{position:absolute;top:20%;height:60%;border-radius:3px;pointer-events:none;z-index:1}.tl-act-bar--park{background:#5a7a3a66}.tl-act-bar--city{background:#3c5a9066}.tl-act-bar--flight{background:#1e5ab459}.tl-marker-stem{display:block;width:1px;background:#0000002e;flex-shrink:0}.tl-track-act{position:absolute;top:0;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;z-index:2;cursor:pointer}.tl-track-act--open{z-index:10}.tl-track-act:before{content:"";display:block;width:8px;height:8px;border-radius:50%;background:#5a7a3a;border:2px solid #fff;box-shadow:0 1px 3px #0003;margin-bottom:2px;flex-shrink:0}.tl-track-act--city:before{background:#3c5a90}.tl-track-act--accom:before{content:"🏨";background:none;box-shadow:none;border:none;border-radius:0;width:auto;height:auto;font-size:13px;line-height:1;margin-bottom:1px}.tl-track-act--flight:before{content:"✈️";background:none;box-shadow:none;border:none;border-radius:0;width:auto;height:auto;font-size:13px;line-height:1;margin-bottom:1px}.tl-track-act--car:before{content:"🚗";background:none;box-shadow:none;border:none;border-radius:0;width:auto;height:auto;font-size:13px;line-height:1;margin-bottom:1px}.tl-track-act-time{font-size:9px;color:#666;white-space:nowrap;line-height:1}.tl-track-act-name{font-size:10px;color:#3c3020;white-space:nowrap;font-weight:600;line-height:1.2;max-width:80px;overflow:hidden;text-overflow:ellipsis}.tl-act-popover{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);background:#fff;border:1px solid #d0c4a8;border-radius:8px;padding:10px 12px;box-shadow:0 4px 16px #00000024;z-index:20;min-width:160px;max-width:240px;white-space:normal;text-align:left;pointer-events:auto}.tl-act-popover-name{font-size:13px;font-weight:700;color:#2a2010;margin-bottom:2px}.tl-act-popover-time{font-size:11px;color:#8b7040;margin-bottom:6px}.tl-act-popover-notes{font-size:12px;color:#4a4030;margin-bottom:4px;line-height:1.4}.tl-act-popover-meta{font-size:11px;color:#888;margin-top:4px}.tl-act-popover-booking{font-size:11px;color:#c0392b;margin-top:4px}.tl-act-popover-booking a{color:#2980b9}.tl-untimed{display:flex;flex-wrap:wrap;gap:4px}.tl-chip{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;background:#eee8dc;color:#5a4a28;border:1px solid #d8ccb4}.tl-chip--city{background:#dde5f0;color:#2a3e68;border-color:#b8c8e4}.tl-chip--car{background:#e8e8e8;color:#3a3a3a;border-color:#c8c8c8}.tl-chip--flight{background:#e8eef8;color:#1a3a68;border-color:#b8cce8}.tl-chip--accom{background:#f0eaf8;color:#3a1a68;border-color:#ccb8e8}.wizard-nav{display:flex;align-items:flex-start;padding:12px 24px;border-bottom:1px solid #e0e0e0;background:#fff;flex-wrap:wrap;gap:8px}.wizard-steps{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;overflow-x:auto}.wizard-step-container{display:flex;flex-direction:row;align-items:center}.wizard-step{display:flex;flex-direction:column;align-items:center;cursor:pointer;flex-shrink:0}.wizard-bead{width:32px;height:32px;border-radius:50%;border:2px solid #ccc;font-size:14px;font-weight:600;color:#aaa;display:flex;align-items:center;justify-content:center;background:#fff;transition:all .15s;flex-shrink:0}.wizard-bead--active{background:#606c38;border-color:#606c38;color:#fff}.wizard-step:hover .wizard-bead:not(.wizard-bead--active){border-color:#606c38;color:#606c38}.wizard-label{font-size:.68rem;color:#aaa;margin-top:4px;text-align:center;max-width:54px;line-height:1.2;white-space:nowrap}.wizard-label--active{color:#606c38;font-weight:600}.wizard-step:hover .wizard-label:not(.wizard-label--active){color:#606c38}.wizard-connector{height:2px;width:24px;min-width:12px;max-width:40px;background:#e0e0e0;margin-bottom:18px;flex-shrink:1}.wizard-extras{margin-left:auto;display:flex;gap:6px;align-items:center;padding-left:16px;border-left:1px solid #e0e0e0;flex-shrink:0}.wizard-extra-pill{padding:6px 14px;border:1px solid #ccc;border-radius:20px;background:#fff;color:#555;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.wizard-extra-pill:hover{border-color:#606c38;color:#606c38}.wizard-extra-pill--active{background:#606c38;border-color:#606c38;color:#fff}.wizard-extra-pill--active:hover{background:#283618;border-color:#283618;color:#fff}@media(max-width:768px){.wizard-nav{padding:10px 12px}.wizard-label{display:none}.wizard-connector{width:16px;min-width:8px}.wizard-extras{padding-left:10px}}.when-where-step{max-width:900px;margin:0 auto}.when-where-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}@media(max-width:640px){.when-where-grid{grid-template-columns:1fr;gap:24px}}.when-column h3,.where-column h3{margin:0 0 16px;color:#606c38;font-size:20px;font-weight:700;padding-bottom:8px;border-bottom:2px solid #eff3e4}.range-calendar{background:#fff;border:1px solid #e0e0e0;border-radius:10px;overflow:hidden;margin-bottom:16px;-webkit-user-select:none;user-select:none}.range-calendar-nav{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#fafafa;border-bottom:1px solid #e8e8e8}.cal-nav-btn{background:none;border:none;font-size:20px;line-height:1;color:#606c38;cursor:pointer;padding:2px 8px;border-radius:4px;transition:background .15s}.cal-nav-btn:hover{background:#eff3e4}.cal-month-label{font-size:15px;font-weight:700;color:#222}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);padding:8px;gap:2px}.cal-day-header{text-align:center;font-size:11px;font-weight:700;color:#aaa;padding:4px 0;text-transform:uppercase;letter-spacing:.04em}.cal-cell{height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:13px;border-radius:6px;transition:background .1s,color .1s;line-height:1.2}.cal-today-label{font-size:8px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.75;line-height:1}.cal-cell--empty{pointer-events:none}.cal-cell--day{cursor:pointer;color:#333}.cal-cell--day:hover{background:#eff3e4;color:#606c38}.cal-cell--today{font-weight:700;color:#606c38;box-shadow:inset 0 0 0 1px #606c38}.cal-cell--start,.cal-cell--end{background:#606c38;color:#fff;font-weight:700;border-radius:6px}.cal-cell--start:hover,.cal-cell--end:hover{background:#283618;color:#fff}.cal-cell--range{background:#eff3e4;color:#2d4a1e;border-radius:0}.cal-cell--start+.cal-cell--range,.cal-cell--range:first-of-type{border-radius:0}.when-date-inputs{display:flex;gap:12px;margin-bottom:8px}.when-date-inputs .date-field{flex:1;margin-bottom:0}.date-field label{display:block;font-size:11px;font-weight:700;color:#888;margin-bottom:5px;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:color .15s}.date-field--active label{color:#606c38}.date-field input[type=date]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;color:#333;background:#fff;box-sizing:border-box;cursor:pointer;transition:border-color .15s}.date-field--active input[type=date]{border-color:#606c38;outline:none}.date-field input[type=date]:focus{outline:none;border-color:#606c38}.when-where-hint{font-size:13px;color:#999;font-style:italic;margin:8px 0 0}.when-past-warning{font-size:13px;color:#b45309;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;padding:6px 10px;margin:6px 0 0}.stops-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.stop-row{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f9f9f9;border-radius:6px;border:1px solid #e5e5e5}.stop-type-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 6px;border-radius:3px;flex-shrink:0}.stop-name{flex:1;font-size:14px;font-weight:500;color:#333}.stop-edit-btn{background:none;border:none;cursor:pointer;color:#aaa;font-size:13px;line-height:1;padding:2px 4px;border-radius:3px;flex-shrink:0;transition:color .15s}.stop-edit-btn:hover{color:#606c38}.stop-remove-btn{background:none;border:none;cursor:pointer;color:#aaa;font-size:18px;line-height:1;padding:2px 4px;border-radius:3px;flex-shrink:0;transition:color .15s}.stop-remove-btn:hover{color:#dc3545}.add-stop-buttons{display:flex;flex-direction:column;gap:8px}.add-stop-btn{background:none;border:1px solid #606c38;color:#606c38;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;text-align:left}.add-stop-btn:hover{background:#606c38;color:#fff}.journal-step-prompt,.journal-step-card{max-width:480px;margin:40px auto;text-align:center;padding:40px 32px;background:#fafafa;border-radius:12px;border:1px solid #e0e0e0}.journal-step-icon{font-size:48px;margin-bottom:16px}.journal-step-prompt p,.journal-step-card p{font-size:16px;color:#333;margin:0 0 12px;line-height:1.5}.journal-step-hint{font-size:14px!important;color:#888!important}.journal-step-btn{background:#606c38;color:#fff;border:none;padding:12px 28px;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;margin-top:8px;transition:background .2s}.journal-step-btn:hover{background:#283618}.airport-input-wrapper{position:relative}.airport-input{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;color:#333;background:#fff;box-sizing:border-box;text-transform:uppercase;letter-spacing:.03em;transition:border-color .15s}.airport-input:focus{outline:none;border-color:#606c38}.airport-dropdown{position:absolute;top:calc(100% + 4px);min-width:100%;width:max-content;max-width:420px;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 16px #0000001f;list-style:none;margin:0;padding:4px 0;z-index:1000;max-height:280px;overflow-y:auto}.airport-dropdown--left{left:0}.airport-dropdown--right{right:0}.airport-option{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;transition:background .1s}.airport-option:hover,.airport-option--highlighted{background:#f4f7ee}.airport-option-code{font-size:15px;font-weight:700;color:#606c38;min-width:38px;letter-spacing:.04em}.airport-option-info{display:flex;flex-direction:column;min-width:0}.airport-option-name{font-size:13px;color:#333;white-space:nowrap}.airport-option-city{font-size:11px;color:#888;white-space:nowrap}.trip-plan-page{flex:1;display:flex;flex-direction:column;overflow:hidden}.trip-plan-loading,.trip-plan-error{text-align:center;padding:60px 20px}.spinner{border:4px solid #f3f3f3;border-top:4px solid #606c38;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 20px}.trip-plan-header{background:#fff;padding:14px 40px;border-bottom:1px solid #e0e0e0}.header-row{display:flex;align-items:center;position:relative}.header-center{position:absolute;left:50%;transform:translate(-50%);text-align:center;pointer-events:none}.header-title-row{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.trip-plan-header h1{margin:0;color:#606c38;font-size:20px;font-weight:700}.trip-plan-title-editable{margin:0;color:#606c38;font-size:20px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;pointer-events:all}.trip-plan-title-edit-icon{font-size:14px;opacity:.5;display:inline-block;transform:scaleX(-1)}.trip-plan-title-editable:hover .trip-plan-title-edit-icon{opacity:1}.trip-plan-title-input{font-size:20px;font-weight:700;color:#606c38;border:none;border-bottom:2px solid #606c38;outline:none;background:transparent;padding:0 2px;min-width:160px;width:auto;pointer-events:all}.header-dates{font-size:14px;color:#666;white-space:nowrap}.status-badge{padding:3px 10px;border-radius:10px;background:#eff3e4;color:#606c38;font-size:13px;font-weight:500;text-transform:capitalize}.header-meta{display:flex;flex-wrap:wrap;gap:.25rem 1.5rem;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid #eee;font-size:13px;color:#555}.header-meta-label{font-weight:600;color:#333}.header-meta-dates{cursor:pointer;border-radius:4px;padding:1px 4px;margin:-1px -4px;transition:background .15s}.header-meta-dates:hover{background:#f0f0f0}.header-meta-edit{margin-left:4px;opacity:0;font-size:11px;color:#888;transition:opacity .15s}.header-meta-dates:hover .header-meta-edit{opacity:1}.last-edited{font-style:italic}.back-button{background:none;border:none;color:#606c38;font-size:14px;cursor:pointer;padding:0;white-space:nowrap}.back-button:hover{text-decoration:underline}.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.went-button{background:#606c38;border:1px solid #606c38;color:#fff;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.went-button:hover{background:#283618;border-color:#283618}.went-button--undo{background:none;border:1px solid #aaa;color:#777}.went-button--undo:hover{background:#f0f0f0;border-color:#666;color:#333}.share-trip-button{background:none;border:1px solid #606c38;color:#606c38;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.share-trip-button:hover{color:#283618;border-color:#283618}.delete-trip-button{background:none;border:1px solid #dc3545;color:#dc3545;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.delete-trip-button:hover{background:#dc3545;color:#fff}.trip-plan-wizard-content{flex:1;overflow-y:auto;padding:24px 40px;max-width:1400px;margin:0 auto;width:100%;box-sizing:border-box}.share-step{max-width:480px;margin:40px auto;text-align:center;padding:40px 32px;background:#fafafa;border-radius:12px;border:1px solid #e0e0e0}.share-step h2{color:#606c38;margin-top:0;margin-bottom:12px;font-size:24px;border:none;padding:0}.share-step p{color:#666;margin-bottom:24px;font-size:15px}.section{width:100%;max-width:900px;margin:0 auto 60px;padding-top:20px;scroll-margin-top:20px}#trip{width:100%;max-width:900px;margin:0 auto}.section h2,.content-section-title{color:#606c38;margin-top:0;margin-bottom:20px;font-size:26px;border-bottom:2px solid #eff3e4;padding-bottom:12px}.content-section-title{padding-top:20px}.section h3{color:#606c38;margin-top:16px;margin-bottom:12px;font-size:18px}.section h4{color:#606c38;margin-top:12px;margin-bottom:8px;font-size:16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:12px;border-bottom:2px solid #eff3e4}.section-header h2{margin:0;border:none;padding:0}.section-description{margin-bottom:20px;color:#666;font-size:15px;line-height:1.6}.section-note{margin-top:24px;padding:12px;background:#fff3cd;border-left:4px solid #ffc107;color:#856404;font-size:14px}.add-button{background:#606c38;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.add-button:hover{background:#283618}.empty-state{text-align:center;padding:60px 20px;color:#999;font-size:15px}.overview-content{display:grid;gap:16px;margin-bottom:32px}.overview-item label{display:block;font-weight:600;color:#606c38;margin-bottom:4px}.overview-item p{margin:0;color:#333}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px}.stat-card{background:#f5f5f5;padding:20px;border-radius:8px;text-align:center}.stat-value{display:block;font-size:32px;font-weight:700;color:#606c38;margin-bottom:8px}.stat-label{display:block;font-size:14px;color:#666}.members-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.member-card{padding:16px;background:#f9f9f9;border-radius:8px;border-left:4px solid #606c38;position:relative}.member-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.member-info h3{margin:0;font-size:16px}.permission-badge{padding:4px 8px;border-radius:4px;font-size:12px;text-transform:capitalize;border:none;font-family:inherit}.permission-badge--owner{background:#fef5e8;color:#a05c20}.permission-badge--editor{background:#eff3e4;color:#606c38}.permission-badge--viewer{background:#e5eff9;color:#3a86c6}.permission-badge--clickable{cursor:pointer}.permission-badge--clickable:hover{filter:brightness(.88)}.permission-badge-wrap{position:relative}.permission-popup{position:absolute;top:calc(100% + 6px);right:0;z-index:100;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #0000001f;padding:14px 16px;min-width:260px}.permission-popup-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#888;margin:0 0 10px}.permission-popup-option{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;margin-bottom:8px;transition:border-color .15s}.permission-popup-option:has(input:checked){border-color:#606c38;background:#f0f5e6}.permission-popup-option input[type=radio]{margin-top:3px;accent-color:#606c38;flex-shrink:0}.permission-popup-option strong{display:block;font-size:.875rem;color:#1a1a1a}.permission-popup-option p{margin:2px 0 0;font-size:.775rem;color:#666}.permission-popup-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.permission-popup-cancel{padding:6px 14px;background:none;border:1px solid #ccc;border-radius:6px;font-size:.85rem;cursor:pointer;color:#555}.permission-popup-cancel:hover{background:#f5f5f5}.permission-popup-save{padding:6px 14px;background:#606c38;color:#fff;border:none;border-radius:6px;font-size:.85rem;cursor:pointer;font-weight:500}.permission-popup-save:hover:not(:disabled){background:#283618}.permission-popup-save:disabled{opacity:.6;cursor:not-allowed}.member-stats{display:flex;flex-direction:column;gap:4px;font-size:14px;color:#666}.join-date{font-size:13px;color:#999;font-style:italic}.parks-visited-btn{background:none;border:none;padding:0;font-size:14px;color:#2d6a4f;cursor:pointer;text-align:left;text-decoration:underline dotted;text-underline-offset:3px}.parks-visited-btn:hover{color:#1b4332}.parks-popup-overlay{position:fixed;inset:0;background:#0006;z-index:3000;display:flex;align-items:center;justify-content:center}.parks-popup{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;width:360px;max-width:90vw;max-height:70vh;display:flex;flex-direction:column;overflow:hidden}.parks-popup-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem .5rem;border-bottom:1px solid #e0e0e0}.parks-popup-header h3{margin:0;font-size:1rem;font-weight:700;color:#333}.parks-popup-close{background:none;border:none;font-size:1.1rem;cursor:pointer;color:#999;padding:.2rem .4rem;border-radius:4px}.parks-popup-close:hover{background:#f0f0f0;color:#333}.parks-popup-subtitle{margin:0;padding:.4rem 1.25rem .6rem;font-size:.8rem;color:#888}.parks-popup-list{list-style:none;margin:0;padding:.5rem 0;overflow-y:auto}.parks-popup-list li{display:flex;justify-content:space-between;align-items:center;padding:.45rem 1.25rem;border-bottom:1px solid #f0f0f0}.parks-popup-list li:last-child{border-bottom:none}.parks-popup-park-name{font-size:.88rem;color:#333;font-weight:500}.parks-popup-park-state{font-size:.78rem;color:#888;flex-shrink:0;margin-left:.5rem}.parks-popup-empty{padding:1.5rem 1.25rem;color:#999;font-size:.9rem;text-align:center;margin:0}.dates-header-actions{display:flex;align-items:center;gap:12px}.dates-range-display{font-size:26px;font-weight:700;color:#606c38}.dates-editor{background:#f9f9f9;padding:20px;border-radius:8px;margin-bottom:24px}.dates-display{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin-bottom:16px}.date-item label{display:block;font-weight:600;color:#606c38;margin-bottom:4px;font-size:14px}.date-item p{margin:0;font-size:16px;color:#333}.edit-dates-btn{background:#606c38;color:#fff;border:none;padding:10px 24px;border-radius:6px;cursor:pointer;font-size:15px;font-weight:500}.edit-dates-btn:hover{background:#283618}.dates-form .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:16px}.dates-form .form-group label{display:block;font-weight:600;color:#606c38;margin-bottom:8px;font-size:14px}.dates-form input[type=date]{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:15px}.dates-form input[type=date]:focus{outline:none;border-color:#606c38}.dates-form .form-actions{display:flex;gap:12px;justify-content:flex-end}.dates-form .form-actions button{padding:10px 24px;border-radius:6px;cursor:pointer;font-size:15px;font-weight:500;border:none}.dates-form .form-actions button:first-child{background:#f5f5f5;color:#333}.dates-form .form-actions button.primary{background:#606c38;color:#fff}.seasonal-info{margin-bottom:24px}.seasonal-info h3{margin:0 0 12px;color:#606c38;font-size:16px}.months-list{display:flex;flex-wrap:wrap;gap:8px}.month-badge{background:#eff3e4;color:#606c38;padding:6px 14px;border-radius:16px;font-size:14px;font-weight:500}.park-compatibility{padding:16px;border-radius:8px;margin-bottom:16px}.park-compatibility.good{background:#eff3e4;border-left:4px solid #606c38}.park-compatibility.warning{background:#fff3cd;border-left:4px solid #ffc107}.park-compatibility h3{margin:0 0 12px;font-size:16px;color:#606c38}.park-compatibility ul{list-style:none;padding:0;margin:0}.park-compatibility li{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(0,0,0,.1)}.park-compatibility li:last-child{border-bottom:none}.park-compatibility .best-months{font-size:13px;color:#666;font-style:italic}.dates-hint{padding:16px;background:#e5eff9;border-left:4px solid #3a86c6;border-radius:8px}.dates-hint p{margin:0;color:#3a86c6;font-size:14px}.map-section .section-description{margin-bottom:20px;color:#666;font-size:15px;line-height:1.5}.remove-member-btn{position:absolute;bottom:12px;right:12px;background:#dc3545;color:#fff;border:none;padding:4px 10px;border-radius:4px;font-size:13px;cursor:pointer;line-height:1}.remove-member-btn:hover{background:#c82333}.parks-list{display:grid;gap:24px}.park-card{border:1px solid #e0e0e0;border-radius:8px;padding:20px;background:#fafafa}.park-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:16px}.park-header h3{margin:0 0 4px;color:#606c38}.park-state{font-size:14px;color:#666}.nps-link{display:inline-block;margin-top:4px;font-size:.8rem;color:#606c38;text-decoration:none;font-weight:500}.order-badge{background:#606c38;color:#fff;padding:4px 12px;border-radius:12px;font-size:14px;font-weight:600}.park-details{display:grid;gap:8px;margin-bottom:16px}.detail-row{display:flex;gap:8px;font-size:14px}.detail-row label{font-weight:600;color:#606c38}.park-notes{padding:12px;background:#fff;border-radius:6px;margin-bottom:16px}.park-notes p{margin:0;font-size:14px;color:#666}.park-activities h4{font-size:16px;margin:0 0 12px;color:#606c38}.activity-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#fff;border-radius:6px;margin-bottom:6px}.activity-name{font-size:14px}.selected-badge{background:#606c38;color:#fff;padding:2px 8px;border-radius:4px;font-size:12px}.activities-by-park{display:grid;gap:24px}.park-activities-group h3{color:#606c38;margin-bottom:16px}.activities-list{display:grid;gap:12px}.activity-card{padding:16px;background:#f9f9f9;border-radius:8px;border-left:4px solid #606c38}.activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.activity-header h4{margin:0;font-size:16px}.activity-details{display:flex;gap:16px;font-size:14px;color:#666;margin-bottom:8px}.activity-notes{font-size:14px;color:#666;margin:8px 0 0}.no-activities{text-align:center;color:#999;padding:20px;font-style:italic}.suggested-airports{margin-bottom:24px}.suggested-airports-heading{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#aaa;margin:0 0 10px}.suggested-airports-empty{font-size:13px;color:#aaa;font-style:italic;margin:0}.suggested-airports-list{display:flex;flex-wrap:wrap;gap:8px}.suggested-airport-chip{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#fff;border:1px solid #e5e5e5;border-radius:8px}.suggested-airport-code{font-size:15px;font-weight:700;color:#606c38;letter-spacing:.04em;flex-shrink:0}.suggested-airport-info{display:flex;flex-direction:column}.suggested-airport-name{font-size:13px;color:#333}.suggested-airport-meta{font-size:11px;color:#888}.flights-list{display:grid;gap:16px}.flight-card{background:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:14px 16px}.flight-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.flight-card-route{font-size:15px;font-weight:700;color:#606c38;letter-spacing:.02em}.flight-card-actions{display:flex;gap:4px;align-items:center;flex-shrink:0}.flight-card-details{display:flex;flex-wrap:wrap;gap:6px 20px}.flight-detail{font-size:13px;color:#555}.flight-detail-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#aaa;margin-right:4px}.flight-detail-link{font-size:13px;color:#606c38;text-decoration:none}.flight-detail-link:hover{text-decoration:underline}.accommodation-card,.car-rental-card{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:14px 18px;background:#f9f9f9;border-radius:8px}.accommodation-card{border-left:4px solid #dda15e}.car-rental-card{border-left:4px solid #009688}.card-row-icon{font-size:1rem;flex-shrink:0}.card-row-main{flex:1;min-width:120px;font-weight:600;font-size:.95rem;color:#222}.card-row-sub{font-size:.82rem;color:#777;flex-shrink:0}.card-row-date{font-size:.82rem;color:#555;flex-shrink:0}.card-row-cost{font-weight:600;color:#606c38;font-size:.9rem;flex-shrink:0}.card-row-link{font-size:.9rem;text-decoration:none;color:#606c38;flex-shrink:0}.card-row-link:hover{text-decoration:underline}.card-row-actions{display:flex;gap:4px;align-items:center;flex-shrink:0}.flight-route{display:flex;align-items:center;gap:12px;margin-bottom:12px;font-size:18px;font-weight:600}.airport{color:#606c38}.arrow{color:#3a86c6}.flight-airline-info{font-size:14px;color:#666;margin-bottom:8px;font-weight:500}.flight-details{display:flex;gap:16px;font-size:14px;color:#666;margin-bottom:8px}.price{font-weight:600;color:#606c38}.booking-link{margin-bottom:12px}.booking-link a{color:#3a86c6;text-decoration:none;font-size:14px;display:inline-flex;align-items:center;gap:4px}.booking-link a:hover{text-decoration:underline}.no-flights{text-align:center;color:#999;padding:40px;font-style:italic}.accommodations-list{display:grid;gap:16px}.accommodation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.accommodation-header h3{margin:0;font-size:18px}.accommodation-header .header-actions{display:flex;gap:8px;align-items:center}.accommodation-header .edit-btn{background:none;border:none;font-size:16px;cursor:pointer;padding:4px 8px;line-height:1;transition:opacity .2s}.accommodation-header .edit-btn:hover{opacity:.7}.accommodation-details{display:flex;gap:12px;margin-bottom:8px;font-size:14px}.type-badge{background:#dda15e;color:#fff;padding:2px 8px;border-radius:4px;font-size:12px;text-transform:capitalize}.accommodation-dates{display:flex;gap:16px;font-size:14px;color:#666;margin-bottom:8px}.accommodation-price{font-weight:600;color:#606c38}.accommodation-park{font-size:14px;color:#666;margin-top:8px}.no-accommodations{text-align:center;color:#999;padding:40px;font-style:italic}.car-rentals-list{display:grid;gap:16px}.car-rental-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:10px}.car-rental-header h3{margin:0 0 4px;font-size:18px}.vehicle-type-badge{background:#009688;color:#fff;padding:2px 8px;border-radius:4px;font-size:12px}.car-rental-route{font-size:15px;color:#333;margin-bottom:8px}.car-rental-dates{display:flex;gap:16px;font-size:14px;color:#666;margin-bottom:8px}.finalize-info h3{margin-top:0}.finalize-info p{color:#666;line-height:1.6}.finalize-summary{background:#f5f5f5;padding:16px;border-radius:8px;margin:24px 0}.finalize-summary h4{margin:0 0 12px;color:#606c38}.finalize-summary ul{margin:0;padding-left:20px}.finalize-summary li{margin-bottom:8px;color:#666}.finalize-button{background:#606c38;color:#fff;border:none;padding:12px 32px;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;margin-top:16px}.finalize-button:hover{background:#283618}.already-went{background:#eff3e4;padding:20px;border-radius:8px;text-align:center;margin-top:24px}.already-went p{margin:8px 0;color:#606c38;font-weight:500}.already-went .visited-actions{justify-content:center;flex-wrap:wrap;gap:10px}.no-permission{text-align:center;color:#999;padding:24px;font-style:italic}.modal-content{background:#fff;padding:32px;border-radius:8px;max-width:500px;width:92vw;box-shadow:0 4px 12px #0003;max-height:90vh;overflow-y:auto}.flight-search-modal{max-width:1100px;width:96vw;padding:28px 36px 24px}.flight-columns{display:grid;grid-template-columns:1fr auto 1fr;align-items:start}.flight-column{min-width:0}.flight-column-divider{width:1px;background:#e8e8e8;margin:32px 20px 0;align-self:stretch}.flight-column-heading{font-size:15px;font-weight:700;color:#606c38;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #eff3e4}.flight-column-optional{font-size:12px;font-weight:400;color:#999}.flight-column-actions{margin-top:16px}.flight-column-actions .primary{width:100%}.modal-content h3{margin-top:0;color:#606c38}.modal-content p{color:#666;line-height:1.6}.modal-content .visited-stars{margin:16px 0 12px;justify-content:center}.modal-content .visited-notes-input{margin-bottom:0}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.modal-actions button{padding:10px 24px;border-radius:6px;font-size:16px;cursor:pointer;border:none}.modal-actions button:first-child{background:#f5f5f5;color:#333}.modal-actions button:first-child:hover{background:#e0e0e0}.modal-actions button.primary{background:#606c38;color:#fff}.modal-actions button.primary:hover{background:#283618}.confirm-button{background:#606c38!important;color:#fff!important}.confirm-button:hover{background:#283618!important}.add-activity-btn{background:none;border:1px solid #606c38;color:#606c38;padding:6px 12px;border-radius:4px;font-size:13px;cursor:pointer;font-weight:500}.add-activity-btn:hover{color:#283618;border-color:#283618}.delete-btn{background:#dc3545;color:#fff;border:none;padding:4px 12px;border-radius:4px;font-size:20px;cursor:pointer;line-height:1}.delete-btn:hover{background:#c82333}.delete-btn-small{background:#dc3545;color:#fff;border:none;padding:2px 8px;border-radius:4px;font-size:16px;cursor:pointer;line-height:1}.delete-btn-small:hover{background:#c82333}.edit-btn-small{background:none;border:none;font-size:16px;cursor:pointer;padding:2px 8px;line-height:1;transition:opacity .2s}.edit-btn-small:hover{opacity:.7}.select-btn{background:#f5f5f5;border:1px solid #ddd;padding:6px 16px;border-radius:4px;cursor:pointer;font-size:14px;margin-top:8px}.select-btn:hover{background:#e0e0e0}.select-btn.selected{background:#606c38;color:#fff;border-color:#606c38}.select-btn.selected:hover{background:#4a5a28}.park-header-actions{display:flex;gap:12px;align-items:center}.activities-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.activity-actions{display:flex;gap:8px;align-items:center}.flight-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:12px}.flight-header-actions{display:flex;gap:8px;align-items:center}.flight-route-heading{margin:0;font-size:18px;display:flex;align-items:center;gap:10px}.flight-route-arrow{color:#3a86c6}.flight-badge{background:#3a86c6}.car-rental-badge{background:#009688}.form-group{margin-bottom:16px}.form-group label{display:block;font-weight:600;color:#606c38;margin-bottom:8px;font-size:14px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:15px;font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#606c38}.form-group textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:16px;font-family:inherit;background:#fff}select:focus{outline:none;border-color:#606c38}.direction-tabs{display:flex;gap:8px;margin-bottom:24px;background:#f5f5f5;padding:4px;border-radius:6px}.direction-tabs button{flex:1;padding:10px 16px;border:none;background:transparent;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;color:#666}.direction-tabs button.active{background:#fff;color:#606c38;box-shadow:0 1px 3px #0000001a}.direction-tabs button:hover:not(.active){color:#606c38}.search-results{margin-top:24px;padding-top:24px;border-top:1px solid #e0e0e0}.search-results h3{margin:0 0 16px;color:#606c38}.results-info{margin:0 0 16px;padding:12px;background:#eff3e4;border-radius:6px;color:#606c38;font-size:14px;line-height:1.5}.flight-section{margin-bottom:32px}.flight-section h4{margin:0 0 16px;color:#606c38;font-size:16px;padding-bottom:8px;border-bottom:2px solid #eff3e4}.flight-options{display:grid;gap:12px;max-height:400px;overflow-y:auto;margin-bottom:16px}.flight-option{padding:16px;border:1px solid #e0e0e0;border-radius:8px;background:#fafafa;transition:border-color .2s}.flight-option:hover{border-color:#606c38}.flight-option-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.flight-option .flight-route{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600}.flight-option .airport{color:#606c38}.flight-option .arrow{color:#3a86c6}.flight-id{font-size:14px;font-weight:600;color:#666}.flight-price{font-size:18px;font-weight:700;color:#606c38}.flight-time-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#fff;border-radius:6px;margin-bottom:12px}.flight-time-row .time-info{color:#333;font-weight:500;font-size:15px}.flight-time-row .date-info{color:#666;font-size:13px}.flight-option-details{display:flex;gap:16px;font-size:14px;color:#666;margin-bottom:12px}.flight-airline{font-size:14px;color:#666;margin-bottom:12px;font-weight:500}.flight-times{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;padding:12px;background:#fff;border-radius:6px}.flight-leg{display:flex;gap:12px;align-items:center;font-size:14px}.leg-label{font-weight:600;color:#606c38;min-width:80px}.time-info{color:#333;font-weight:500}.date-info{color:#666;font-size:13px}.add-flight-btn{width:100%;background:#606c38;color:#fff;border:none;padding:10px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.add-flight-btn:hover:not(:disabled){background:#283618}.add-flight-btn:disabled{background:#ccc;cursor:not-allowed}@media(max-width:968px){.trip-plan-header{padding:10px 16px}.trip-plan-header h1{font-size:17px}.header-row{gap:12px}.header-dates{display:none}.trip-plan-wizard-content{padding:20px}}@media(max-width:600px){.trip-plan-header{padding:8px 12px}.trip-plan-header h1{font-size:15px}.header-dates{display:none}.went-button,.share-trip-button,.delete-trip-button{padding:5px 10px;font-size:12px}.trip-plan-wizard-content{padding:16px 12px}.member-card{padding:12px}.members-list{grid-template-columns:1fr}.splits-member-cards{grid-template-columns:1fr 1fr}}@media(max-width:480px){.trip-plan-header{padding:6px 10px}.trip-plan-wizard-content{padding:12px 8px}.splits-member-cards{grid-template-columns:1fr}}.activity-log-section{margin-top:0}.changes-log-meta{display:flex;gap:.5rem;font-size:.85rem;color:#888;margin-bottom:1.25rem}.activity-log{display:flex;flex-direction:column;gap:0;max-height:480px;overflow-y:auto;border:1px solid #e0e0e0;border-radius:8px;background:#fff}.log-entry{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid #f0f0f0;flex-wrap:wrap}.log-entry:last-child{border-bottom:none}.log-action-badge{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:13px;font-weight:700;flex-shrink:0}.log-action-added{background:#eff3e4;color:#606c38}.log-action-updated{background:#e5eff9;color:#3a86c6}.log-action-deleted{background:#fce4ec;color:#c62828}.log-item-type{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;flex-shrink:0}.log-type-park{background:#eff3e4;color:#606c38}.log-type-activity{background:#fff8e1;color:#f57f17}.log-type-flight{background:#e5eff9;color:#3a86c6}.log-type-car-rental{background:#fce4ec;color:#880e4f}.log-type-accommodation{background:#ede7f6;color:#4527a0}.log-type-member{background:#e0f2f1;color:#00695c}.log-type-trip-info{background:#f3e5f5;color:#6a1b9a}.log-description{flex:1;font-size:13px;color:#333;min-width:0}.log-meta{font-size:11px;color:#999;white-space:nowrap;margin-left:auto;flex-shrink:0}.no-log-entries{padding:24px;text-align:center;color:#999;font-style:italic}.re-finalize-button{display:inline-block;margin-top:12px;padding:10px 20px;background:#3a86c6;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.re-finalize-button:hover{background:#2a6bab}.re-finalize-button:disabled{background:#90a4ae;cursor:not-allowed}.city-stop-card{border-left:4px solid #00897b}.stop-type-badge{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 6px;border-radius:3px;margin-bottom:4px}.stop-type-park{background:#eff3e4;color:#606c38}.stop-type-city{background:#e0f2f1;color:#00695c}.city-stop-activities{border-top:1px solid #e0f7fa}.city-activity-item,.city-activity-card{border-left:2px solid #80cbc4}.city-activities-group h3{color:#00695c}.group-type-badge{display:inline-block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:1px 5px;border-radius:3px;margin-left:6px;background:#eff3e4;color:#606c38;vertical-align:middle}.group-type-city{background:#e0f2f1;color:#00695c}.booking-badge{display:inline-block;font-size:11px;background:#fef5e8;color:#a05c20;padding:2px 6px;border-radius:3px}.stop-type-picker{max-width:400px}.stop-type-picker h3{margin:0 0 20px;font-size:18px}.stop-type-options{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.stop-type-option{display:flex;flex-direction:column;align-items:flex-start;padding:16px;border:2px solid #e0e0e0;border-radius:8px;background:#fff;cursor:pointer;text-align:left;transition:border-color .2s,background .2s;width:100%}.stop-type-option:hover{border-color:#606c38;background:#f8fff4}.stop-type-option-city:hover{border-color:#00897b;background:#f0fdf9}.stop-type-icon{font-size:24px;margin-bottom:6px}.stop-type-label{font-size:16px;font-weight:600;color:#222;margin-bottom:2px}.stop-type-desc{font-size:13px;color:#666}.cancel-link{background:none;border:none;color:#999;font-size:13px;cursor:pointer;display:block;text-align:center;width:100%;padding:4px}.cancel-link:hover{color:#555}.log-type-city-stop{background:#e0f2f1;color:#00695c}.log-type-city-activity{background:#b2dfdb;color:#004d40}.share-modal-body{padding:0 24px 24px}.share-section-subtitle{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:#888;margin:10px 0 6px}.btn-copy{padding:7px 14px;background:#606c38;color:#fff;border:none;border-radius:6px;font-size:.85rem;cursor:pointer;white-space:nowrap;transition:background .2s}.bookings-section{padding:24px}.bookings-section h2{margin:0 0 8px;color:#606c38;font-size:1.5rem}.bookings-description{color:#666;margin:0 0 24px;font-size:14px}.bookings-empty{padding:32px;background:#f8f9fa;border-radius:8px;text-align:center;color:#666}.booking-category{margin-bottom:32px}.booking-category-title{font-size:1rem;font-weight:600;color:#444;margin:0 0 12px;padding-bottom:6px;border-bottom:1px solid #e0e0e0;text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.booking-row{border:1px solid #e0e0e0;border-radius:8px;padding:12px 16px;margin-bottom:10px;background:#fff;transition:border-color .15s}.booking-row--booked{border-color:#606c38;background:#f9fff9}.booking-row-main{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.booking-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;flex:1;min-width:180px}.booking-checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.booking-event-icon{font-size:1.1rem}.booking-event-label{font-size:14px;font-weight:500;color:#222}.booking-cost-area{display:flex;align-items:center;gap:6px;min-width:120px}.booking-cost{font-size:14px;font-weight:600;color:#606c38}.cost-edit-btn{background:none;border:none;cursor:pointer;padding:2px 4px;font-size:13px;opacity:.6}.cost-edit-btn:hover{opacity:1}.cost-input{width:80px;padding:3px 6px;border:1px solid #ccc;border-radius:4px;font-size:14px}.cost-prefix{font-size:14px;color:#444}.cost-accept-btn,.cost-cancel-btn{background:none;border:none;cursor:pointer;font-size:14px;padding:2px 5px;border-radius:4px}.cost-accept-btn{color:#606c38}.cost-accept-btn:hover{background:#eff3e4}.cost-cancel-btn{color:#c62828}.cost-cancel-btn:hover{background:#ffebee}.booking-booked-by{display:flex;align-items:center;gap:8px;font-size:14px}.booked-by-label{color:#666;white-space:nowrap}.booked-by-select{padding:4px 8px;border:1px solid #ccc;border-radius:4px;font-size:13px;background:#fff;cursor:pointer}.booking-split-row{display:flex;align-items:center;gap:16px;margin-top:10px;padding-top:10px;border-top:1px solid #f0f0f0;flex-wrap:wrap}.split-label{font-size:13px;color:#666;font-weight:500}.split-option{display:flex;align-items:center;gap:5px;font-size:13px;color:#333;cursor:pointer}.split-option input[type=radio]{cursor:pointer}.split-subset-checklist,.split-custom-inputs{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px;width:100%;padding-left:8px}.split-member-check{display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}.split-member-check input[type=checkbox]{cursor:pointer}.split-custom-input-row{display:flex;align-items:center;gap:6px;font-size:13px}.custom-amount-input{width:70px;padding:3px 6px;border:1px solid #ccc;border-radius:4px;font-size:13px}.no-booking-dismiss{margin-left:auto;background:none;border:1px solid #ccc;border-radius:4px;padding:3px 10px;font-size:12px;color:#888;cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s}.no-booking-dismiss:hover{color:#555;border-color:#999}.no-booking-section{margin-top:32px;padding-top:24px;border-top:2px dashed #e0e0e0}.no-booking-section-title{color:#999!important}.no-booking-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:6px;background:#fafafa;border:1px solid #eeeeee;margin-bottom:8px}.no-booking-icon{font-size:1rem;flex-shrink:0}.no-booking-label{flex:1;font-size:14px;color:#666}.no-booking-cost{font-size:13px;color:#999;font-weight:500}.requires-booking-toggle{background:none;border:1px solid #b0bec5;border-radius:4px;padding:3px 10px;font-size:12px;color:#546e7a;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.requires-booking-toggle:hover{background:#eceff1;color:#37474f}.splits-description{color:#666;margin:0 0 24px;font-size:14px}.splits-member-card.owed{border-left-color:#606c38}.splits-member-card.owes{border-left-color:#ef9a9a}.splits-member-card.settled{border-left-color:#b0bec5}.splits-balance-badge{font-size:12px;font-weight:600;padding:3px 8px;border-radius:4px}.splits-balance-badge--owed{color:#606c38;background:#eff3e4}.splits-balance-badge--owes{color:#c62828;background:#ffebee}.splits-balance-badge--settled{color:#666;background:#f0f0f0}.splits-debts{margin-top:8px}.splits-debts h3{font-size:1rem;color:#444;margin:0 0 16px}.splits-settled{font-size:1.1rem;color:#606c38;font-weight:600;padding:20px;background:#eff3e4;border-radius:8px;text-align:center}.splits-debt-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.splits-debt-item{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:12px 16px;font-size:14px}.debt-debtor{font-weight:600;color:#c62828}.debt-arrow{color:#666}.debt-creditor{font-weight:600;color:#606c38}.debt-amount{font-weight:700;color:#333}.parks-tab-section{width:100%;max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:20px;padding:20px 0 60px}.parks-tab-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:2px solid #eff3e4}.parks-tab-header h2{margin:0;color:#606c38;font-size:26px;font-weight:700}.park-banner-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.park-info-card{background:#fff;border:1px solid #d4e6b5;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.city-info-card{border-color:#c8d8f0}.park-info-banner{position:relative;height:150px;overflow:hidden;flex-shrink:0}.park-info-banner img{width:100%;height:100%;object-fit:cover;display:block}.park-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.placeholder-text{font-size:36px;font-weight:800;color:#ffffffa6;letter-spacing:3px}.park-banner-overlay{position:absolute;bottom:0;left:0;right:0;padding:12px 16px;background:linear-gradient(to top,rgba(0,0,0,.65) 0%,transparent 100%)}.park-banner-name{margin:0;font-size:18px;font-weight:700;color:#fff;line-height:1.2}.park-banner-state{font-size:12px;color:#fffc}.city-banner{height:72px;display:flex;align-items:center;padding:0 16px;gap:10px;background:linear-gradient(135deg,#3b6ea5,#5b8fc9)}.city-banner-name{margin:0;font-size:18px;font-weight:700;color:#fff}.city-banner-badge{font-size:11px;font-weight:600;color:#fffc;background:#fff3;border-radius:8px;padding:2px 8px}.park-info-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:14px}.park-dates-row{display:flex;gap:16px}.park-date-field{display:flex;flex-direction:column;gap:4px}.park-date-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.park-date-input{border:1px solid #e5e7eb;border-radius:6px;padding:5px 8px;font-size:13px;color:#374151;background:#f9fafb;cursor:pointer;font-family:inherit}.park-date-input:focus{outline:none;border-color:#6b9e3f;background:#fff}.park-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px}.park-meta-chip{font-size:12px;color:#4b5563;background:#f3f4f6;border-radius:12px;padding:3px 10px;white-space:nowrap}.park-meta-chip--months{color:#606c38;background:#eef3e6}.park-meta-notes{font-size:13px;color:#6b7280;font-style:italic;margin:0;width:100%}.park-info-links-row{display:flex;gap:8px;flex-wrap:wrap}.park-info-link-btn{font-size:12px;font-weight:500;color:#606c38;background:#f0f7e8;border:1px solid #c5dfa0;border-radius:14px;padding:4px 12px;text-decoration:none;transition:background .15s}.park-info-link-btn:hover{background:#dff0c8}.park-info-section{display:flex;flex-direction:column;gap:8px}.park-info-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.park-info-section-header{display:flex;align-items:center;justify-content:space-between}.planned-activities-chips{display:flex;flex-wrap:wrap;gap:8px}.planned-activity-chip{display:inline-flex;align-items:stretch;border:1px solid #606c38;border-radius:20px;overflow:hidden;background:#fff;transition:box-shadow .15s}.planned-activity-chip.selected{background:#606c38;border-color:#4a5a28}.planned-activity-chip.selected .nps-chip-title{color:#fff}.planned-activity-chip.selected .nps-chip-meta{color:#c4e8a0}.chip-main{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 8px 6px 12px;background:none;border:none;cursor:pointer;color:inherit}.chip-actions{display:flex;align-items:center;gap:0;padding:0 6px 0 2px}.chip-edit,.chip-delete{background:none;border:none;cursor:pointer;padding:3px 4px;border-radius:4px;font-size:11px;line-height:1;opacity:.5;transition:opacity .1s,background .1s}.chip-edit:hover,.chip-delete:hover{opacity:1;background:#00000014}.planned-activity-chip.selected .chip-edit:hover,.planned-activity-chip.selected .chip-delete:hover{background:#fff3}.nps-activities-browse{border-bottom:1px solid #e8f0e0;padding-bottom:16px;margin-bottom:16px}.nps-browse-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:13px;font-weight:600;color:#4a5568}.nps-browse-link{font-size:12px;font-weight:400;color:#606c38;text-decoration:none}.nps-browse-link:hover{text-decoration:underline}.nps-activities-list{display:flex;flex-direction:row;gap:8px;overflow-x:auto;padding-bottom:4px}.nps-activity-chip{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 10px;background:#fff;border:1px solid #606c38;border-radius:20px;cursor:pointer;color:#1a2e0f;transition:background .15s,color .15s}.nps-activity-chip:hover{background:#606c38;color:#fff}.nps-chip-title{font-size:12px;font-weight:600;white-space:nowrap}.nps-chip-meta{font-size:11px;color:#6b7280;white-space:nowrap}.nps-activity-chip:hover .nps-chip-meta{color:#d4edbc}.overview-itinerary{display:flex;flex-direction:row;align-items:center;gap:0;overflow-x:auto;padding:.5rem 0 1.25rem;margin-bottom:1.25rem;border-bottom:1px solid #e8e8e8}.overview-itinerary::-webkit-scrollbar{height:5px}.overview-itinerary::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:3px}.overview-stop-container{display:flex;flex-direction:row;align-items:center;flex-shrink:0}.overview-stop-card{position:relative;width:180px;background:#fff;border:1px solid #e0e0e0;border-radius:6px;box-shadow:0 2px 8px #0000001a;overflow:hidden;flex-shrink:0}.overview-stop-number{position:absolute;top:8px;left:8px;background:#0000008c;color:#fff;font-size:.72rem;font-weight:700;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:1}.overview-stop-photo{width:100%;height:115px;overflow:hidden;background:#eee}.overview-stop-photo img{width:100%;height:100%;object-fit:cover;display:block}.overview-stop-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.overview-stop-placeholder span{font-size:.75rem;font-weight:700;color:#ffffffd9;letter-spacing:.5px}.overview-stop-photo.city{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e8f4f8,#d0e8f0)}.overview-city-icon{font-size:2.6rem}.overview-stop-caption{padding:.5rem .6rem .25rem}.overview-stop-name{font-size:.82rem;font-weight:700;color:#222;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overview-stop-sub{font-size:.72rem;color:#888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overview-stop-details{padding:.3rem .6rem .6rem;display:flex;align-items:center;justify-content:space-between;gap:.25rem;font-size:.72rem;color:#666}.overview-stop-tbd{color:#bbb;font-style:italic}.overview-stop-duration{background:#f0f0f0;border-radius:4px;padding:1px 5px;font-weight:600;color:#555;flex-shrink:0}.overview-stop-arrow{font-size:1rem;color:#ccc;padding:0 6px;flex-shrink:0;margin-bottom:20px}.overview-meta-lines{display:flex;flex-direction:column;gap:.4rem}.overview-meta-line{font-size:.875rem;color:#444;line-height:1.5}.overview-meta-label{font-weight:600;color:#222}.visited-section h2{margin-top:0}.visited-prompt{color:#666;margin:0 0 1.25rem}.visited-date{color:#606c38;font-weight:600;margin:0 0 1rem}.visited-stars{display:flex;gap:4px;margin-bottom:1rem}.star-btn{background:none;border:none;font-size:1.8rem;cursor:pointer;color:#ddd;padding:0;line-height:1;transition:color .1s}.visited-notes{color:#444;background:#f9f9f9;border-radius:6px;padding:.75rem 1rem;margin:0 0 1.25rem;white-space:pre-wrap}.visited-notes-input{width:100%;border:1px solid #ddd;border-radius:6px;padding:.6rem .75rem;font-size:.95rem;font-family:inherit;resize:vertical;box-sizing:border-box;margin-bottom:1.25rem}.visited-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.visited-save-btn{background:#606c38;color:#fff;border:2px solid #606c38;padding:.6rem 1.6rem;border-radius:6px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s}.visited-save-btn:hover:not(:disabled){background:#283618;border-color:#283618}.visited-save-btn:disabled{background:#aaa;border-color:#aaa;cursor:not-allowed}.visited-save-btn.outline{background:#fff;color:#606c38}.visited-save-btn.outline:hover:not(:disabled){background:#606c38;color:#fff}.visited-undo-btn{background:none;border:none;color:#999;cursor:pointer;font-size:.9rem;padding:0}.visited-undo-btn:hover:not(:disabled){color:#555}.visited-undo-btn:disabled{opacity:.5;cursor:not-allowed}.trip-review-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.trip-review-modal{background:#fff;border-radius:14px;padding:2rem;width:520px;max-width:92vw;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #00000040}.trip-review-modal h2{margin:0 0 .4rem;color:#606c38;font-size:1.4rem}.trip-review-subtitle{color:#666;font-size:.95rem;margin:0 0 1.5rem}.trip-review-list{display:flex;flex-direction:column;gap:1.25rem}.trip-review-item{border:1px solid #e0e0e0;border-radius:10px;padding:1rem 1.2rem}.trip-review-item-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.75rem}.trip-review-name{font-weight:600;font-size:1rem;color:#222}.trip-review-date{font-size:.8rem;color:#999}.trip-review-buttons{display:flex;gap:.6rem}.trip-review-btn{flex:1;padding:.5rem;border-radius:6px;border:1.5px solid #ddd;background:#fff;color:#333;font-size:.9rem;cursor:pointer;transition:all .15s;font-weight:500}.trip-review-btn.yes.selected{background:#e8f5e9;border-color:#606c38;color:#606c38}.trip-review-btn.no.selected{background:#fafafa;border-color:#999;color:#555}.trip-review-btn:hover:not(.selected){background:#f5f5f5}.trip-review-details{margin-top:.9rem;display:flex;flex-direction:column;gap:.6rem}.trip-review-stars{display:flex;gap:4px}.star-btn{background:none;border:none;font-size:1.6rem;cursor:pointer;color:#ddd;padding:0;line-height:1;transition:color .1s}.star-btn.filled,.star-btn:hover{color:#f9a825}.trip-review-parks{margin-top:1.2rem;border-top:1px solid #f0f0f0;padding-top:1rem}.trip-review-parks-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#999;margin:0 0 .6rem}.trip-review-park-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.3rem 0}.trip-review-park-name{font-size:.9rem;color:#333;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-review-park-stars{display:flex;gap:2px;flex-shrink:0}.star-btn--sm{font-size:1.15rem}.trip-review-notes{width:100%;border:1px solid #ddd;border-radius:6px;padding:.5rem .7rem;font-size:.9rem;font-family:inherit;resize:vertical;box-sizing:border-box}.trip-review-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #f0f0f0}.trip-review-skip{background:none;border:none;color:#999;cursor:pointer;font-size:.9rem;font-family:inherit;padding:0}.trip-review-skip:hover{color:#555}.trip-review-submit{background:#606c38;color:#fff;border:none;padding:.65rem 1.8rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.trip-review-submit:hover:not(:disabled){background:#283618}.trip-review-submit:disabled{background:#aaa;cursor:not-allowed}.trip-records-page{flex:1;padding:12px 20px 40px}.trip-records-inner{max-width:1400px;margin:0 auto}.trip-records-header{text-align:center;margin-bottom:24px}.trip-records-header h1{color:#606c38;font-size:36px;margin:0 0 8px}.tr-subtitle{color:#666;font-size:18px;margin:0 0 24px}.create-button:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:#606c38;color:#fff;border:none;padding:10px 24px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-primary:hover:not(:disabled){background:#283618}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.tr-loading{display:flex;justify-content:center;padding:60px 0}.tr-empty{text-align:center;padding:80px 20px;color:#666}.tr-empty p{font-size:1.1rem}.tr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.5rem}.tr-card{background:#fff;border-radius:4px;box-shadow:0 4px 12px #00000026;cursor:pointer;transition:all .25s ease;overflow:hidden}.tr-card:hover{transform:translateY(-6px) rotate(.4deg);box-shadow:0 10px 24px #00000038}.tr-card-photo{width:100%;aspect-ratio:4 / 3;overflow:hidden;background:#e8e4dc}.tr-card-photo img{width:100%;height:100%;object-fit:cover;display:block}.tr-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;background:#f0ebe0}.tr-card-body{padding:.75rem 1rem 1rem}.tr-card-title{font-size:1rem;font-weight:600;color:#333;margin-bottom:.25rem;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.tr-card-parks{font-size:.8rem;color:#666;margin-bottom:.2rem;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.tr-card-date{font-size:.8rem;color:#888;margin-bottom:.2rem}.tr-card-rating{font-size:.85rem;color:#e8a000;letter-spacing:1px}.guest-upsell{text-align:center;padding:80px 20px;max-width:480px;margin:0 auto}.guest-upsell-icon{font-size:4rem;margin-bottom:16px}.guest-upsell h2{color:#606c38;font-size:1.8rem;margin:0 0 12px}.guest-upsell p{color:#666;font-size:1rem;margin:0 0 28px;line-height:1.6}@media(max-width:600px){.trip-records-page{padding:20px 12px}.trip-records-header{margin-bottom:24px}.trip-records-header h1{font-size:1.5rem}.tr-grid{grid-template-columns:1fr}}.trip-record-page{flex:1;overflow-y:auto;padding:0;background:#f7f5f0}.tr-topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:#fff;border-bottom:1px solid #e0ddd6;position:sticky;top:0;z-index:10}.tr-topbar-right{display:flex;align-items:center;gap:12px}.btn-back{background:none;border:none;color:#606c38;font-size:14px;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:4px}.btn-back:hover{background:#f0ebe0}.tr-saving{font-size:12px;color:#999;font-style:italic}.tr-saved{font-size:12px;color:#606c38;font-weight:600}.btn-save{background:#606c38;color:#fff;border:none;font-size:13px;font-weight:600;padding:5px 16px;border-radius:4px;cursor:pointer}.btn-save:hover{background:#283618}.btn-save:disabled{opacity:.6;cursor:default}.btn-share{background:none;border:1px solid #606c38;color:#606c38;font-size:13px;font-weight:600;padding:4px 12px;border-radius:4px;cursor:pointer}.btn-share:hover{background:#f0ebe0}.btn-delete{background:none;border:1px solid #d32f2f;color:#d32f2f;font-size:13px;padding:4px 12px;border-radius:4px;cursor:pointer}.btn-delete:hover{background:#fdecea}.tr-content{max-width:760px;margin:0 auto;padding:24px 16px 60px}.tr-section{background:#fff;border-radius:8px;box-shadow:0 1px 4px #00000014;margin-bottom:12px;overflow:hidden}.tr-section-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px 18px;background:none;border:none;cursor:pointer;font-size:1rem;font-weight:700;color:#606c38;text-align:left;letter-spacing:.3px}.tr-section-header:hover{background:#f7f5f0}.tr-section-chevron{font-size:.9rem;color:#aaa}.tr-section-body{padding:4px 18px 20px;border-top:1px solid #f0ede7}.tr-field{margin-bottom:16px}.tr-field label{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#888;margin-bottom:6px}.tr-field input[type=text],.tr-field input[type=date],.tr-field input[type=number],.tr-field select,.tr-field textarea{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;background:#fafaf8;box-sizing:border-box;transition:border-color .15s}.tr-field input:focus,.tr-field select:focus,.tr-field textarea:focus{outline:none;border-color:#606c38;background:#fff}.tr-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tr-row .tr-field{margin-bottom:0}.tr-park-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.tr-park-chip{display:flex;align-items:center;gap:5px;padding:4px 8px 4px 12px;background:#e8f0d8;border:1px solid #606c38;border-radius:20px;font-size:13px;color:#283618}.tr-park-chip button{background:none;border:none;color:#606c38;font-size:15px;cursor:pointer;padding:0;line-height:1}.tr-park-chip button:hover{color:#d32f2f}.tr-park-search{position:relative}.tr-park-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px #0000001f;z-index:100;max-height:220px;overflow-y:auto}.tr-park-result{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;padding:8px 12px;border:none;background:none;font-size:13px;cursor:pointer;border-bottom:1px solid #f0ede7}.tr-park-result:last-child{border-bottom:none}.tr-park-result:hover{background:#f7f5f0}.tr-park-result-name{font-weight:500;color:#333}.tr-park-result-state{font-size:12px;color:#999}.tr-check-pill{display:flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid #ddd;border-radius:20px;font-size:13px;cursor:pointer;background:#fafaf8;transition:all .15s;white-space:nowrap}.tr-check-pill:has(input:checked){background:#e8f0d8;border-color:#606c38;color:#283618}.tr-check-pill input{display:none}.tr-companions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.tr-companion-row{display:flex;align-items:center;gap:2px}.btn-companion-delete{background:none;border:none;color:#bbb;font-size:15px;cursor:pointer;padding:0 3px;line-height:1}.btn-companion-delete:hover{color:#d32f2f}.tr-add-companion{display:flex;gap:4px}.tr-add-companion input{padding:4px 8px;border:1px solid #ddd;border-radius:20px;font-size:13px;width:140px}.tr-add-companion button{background:#606c38;color:#fff;border:none;border-radius:50%;width:26px;height:26px;cursor:pointer;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center}.star-rating{display:flex;gap:4px}.star-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#ddd;padding:0;line-height:1;transition:color .1s}.star-btn.filled{color:#e8a000}.tr-booking-toggle{display:flex;align-items:center;gap:7px;font-size:13px;color:#555;cursor:pointer;-webkit-user-select:none;user-select:none}.tr-booking-toggle input[type=checkbox]{width:15px;height:15px;cursor:pointer;accent-color:#606c38}.tr-transport-pills{display:flex;flex-wrap:wrap;gap:6px}.tr-transport-pill{display:flex;align-items:center;gap:5px;padding:6px 14px;border:1px solid #ddd;border-radius:20px;font-size:13px;cursor:pointer;background:#fafaf8;transition:all .15s}.tr-transport-pill.selected{background:#e8f0d8;border-color:#606c38;color:#283618;font-weight:600}.tr-transport-pill input{display:none}.tr-accommodation{border:1px solid #e8e4dc;border-radius:8px;padding:12px;margin-bottom:12px;background:#fafaf8;display:flex;flex-direction:column;gap:8px}.tr-accommodation-header{display:flex;justify-content:space-between;align-items:center}.tr-accommodation select{border:1px solid #ddd;border-radius:6px;padding:6px 8px;font-size:13px;background:#fff}.tr-accommodation input,.tr-accommodation textarea{border:1px solid #ddd;border-radius:6px;padding:6px 8px;font-size:13px;font-family:inherit;background:#fff;width:100%;box-sizing:border-box}.btn-remove{background:none;border:none;color:#999;font-size:18px;cursor:pointer;padding:0 4px}.btn-add-item{background:none;border:1px dashed #aaa;color:#666;font-size:13px;padding:6px 16px;border-radius:6px;cursor:pointer;transition:all .15s}.btn-add-item:hover{border-color:#606c38;color:#606c38}.tr-map-hint{font-size:12px;color:#999;margin-bottom:6px;font-style:italic}.tr-map-wrap{border-radius:8px;overflow:hidden;margin-bottom:12px}.tr-geo-search{position:relative;margin-bottom:8px}.tr-geo-search input{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box}.tr-geo-spinner{font-size:12px;color:#aaa;position:absolute;right:10px;top:10px}.tr-geo-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px #0000001f;z-index:2000;max-height:200px;overflow-y:auto}.tr-geo-result{display:block;width:100%;text-align:left;padding:8px 12px;border:none;background:none;color:#333;font-size:13px;cursor:pointer;border-bottom:1px solid #f0ede7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tr-geo-result:hover{background:#f7f5f0}.tr-pin-form{background:#f7f5f0;border:1px solid #ddd;border-radius:8px;padding:12px;margin-bottom:12px}.tr-pin-form h4{margin:0 0 10px;font-size:13px;color:#555}.tr-pin-form input,.tr-pin-form textarea{width:100%;padding:7px 9px;border:1px solid #ddd;border-radius:6px;font-size:13px;font-family:inherit;margin-bottom:8px;box-sizing:border-box}.tr-pin-form-actions{display:flex;gap:8px}.btn-primary-sm{background:#606c38;color:#fff;border:none;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer}.btn-primary-sm:hover{background:#283618}.tr-pin-form-actions button:not(.btn-primary-sm){background:none;border:1px solid #ddd;padding:6px 14px;border-radius:6px;font-size:13px;cursor:pointer;color:#333}.pin-edit-form{display:flex;flex-direction:column;gap:6px;min-width:180px}.pin-edit-form input,.pin-edit-form textarea{padding:5px 7px;border:1px solid #ddd;border-radius:4px;font-size:13px;font-family:inherit}.pin-edit-actions{display:flex;gap:6px;flex-wrap:wrap}.pin-edit-actions button{font-size:12px;padding:4px 8px;border:1px solid #ddd;border-radius:4px;cursor:pointer;background:#fff;color:#333}.tr-photos{margin-top:16px}.tr-photos-header{display:flex;align-items:center;gap:12px;margin-bottom:12px;font-size:13px;font-weight:700;color:#555;text-transform:uppercase;letter-spacing:.5px}.btn-add-photo{background:#606c38;color:#fff;border:none;padding:5px 14px;border-radius:6px;font-size:13px;cursor:pointer}.btn-add-photo:disabled{opacity:.6}.tr-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.tr-photo-item{position:relative;border-radius:6px;overflow:hidden;background:#e8e4dc}.tr-photo-item img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.tr-photo-delete{position:absolute;top:4px;right:4px;background:#0000008c;color:#fff;border:none;border-radius:50%;width:22px;height:22px;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.tr-photo-caption{padding:4px 6px;font-size:11px;color:#555;background:#ffffffd9}.tr-photos-empty{color:#aaa;font-size:13px;font-style:italic}.tr-loading{display:flex;justify-content:center;padding:60px}.spinner{border:4px solid #f3f3f3;border-top:4px solid #606c38;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tr-error{text-align:center;color:#d32f2f;padding:40px}@media(max-width:600px){.tr-content{padding:12px 8px 40px}.tr-row{grid-template-columns:1fr}.tr-topbar{padding:10px 14px}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;padding:32px;border-radius:8px;max-width:500px;width:100%;box-shadow:0 4px 12px #0003;max-height:90vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.modal-header h2{font-size:1.1rem;font-weight:600;color:#1a1a1a;margin:0}.modal-close{background:none;border:none;font-size:1rem;color:#888;cursor:pointer;padding:4px;border-radius:4px}.modal-close:hover{background:#f0f0f0;color:#333}.share-modal{width:480px;max-width:95vw}.share-modal-body{padding:0 0 8px}.share-section{margin-bottom:24px}.share-section h3{font-size:1rem;font-weight:600;color:#1a1a1a;margin-bottom:12px}.share-toggle-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.9rem;color:#333}.share-toggle-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.share-url-row{display:flex;gap:8px;margin-top:12px}.share-url-input{flex:1;padding:7px 10px;border:1px solid #ccc;border-radius:6px;font-size:.85rem;color:#555;background:#f8f8f8;min-width:0}.btn-copy{padding:7px 14px;background:#606c38;color:#fff;border:none;border-radius:6px;font-size:.85rem;cursor:pointer;white-space:nowrap}.btn-copy:hover{background:#283618}.share-checkboxes{display:flex;flex-direction:column;gap:6px}.share-checkbox-label{display:flex;align-items:center;gap:8px;font-size:.875rem;color:#333;cursor:pointer}.share-checkbox-label input[type=checkbox]{width:15px;height:15px;cursor:pointer}.friends-panel{display:flex;flex-direction:column;gap:1rem}.add-friend-section{margin-bottom:12px}.btn-generate-link{width:100%;padding:8px;background-color:#606c38;color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-generate-link:hover:not(:disabled){background-color:#45a049}.btn-generate-link:disabled{background-color:#ccc;cursor:not-allowed}.link-copied-message{margin-top:12px;padding:10px;background-color:#d4edda;color:#155724;border-radius:6px;text-align:center;font-size:14px}.friend-link{margin-top:12px}.friend-link input{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:12px;font-family:monospace;background-color:#f5f5f5}.search-section{margin-bottom:12px;position:relative}.search-input{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:.8rem;box-sizing:border-box}.search-input:focus{outline:none;border-color:#606c38}.search-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-top:none;border-radius:0 0 6px 6px;max-height:200px;overflow-y:auto;z-index:100;box-shadow:0 2px 8px #0000001a}.search-result-item{padding:10px 12px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f0f0f0;transition:background-color .2s}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background-color:#f5f5f5}.user-info{display:flex;flex-direction:column;gap:4px}.user-name{font-size:14px;font-weight:500;color:#333}.user-email{font-size:12px;color:#666}.btn-add-small{padding:6px 12px;background-color:#606c38;color:#fff;border:none;border-radius:4px;font-size:12px;cursor:pointer;transition:background-color .2s}.btn-add-small:hover{background-color:#45a049}.friends-list{display:flex;flex-direction:column;gap:8px}.loading,.empty-state{padding:20px;text-align:center;color:#666;font-size:14px}.friend-item{padding:8px 10px;background-color:#f9f9f9;border-radius:6px;display:flex;justify-content:space-between;align-items:center;transition:background-color .2s}.friend-item:hover{background-color:#f0f0f0}.friend-info{flex:1;display:flex;flex-direction:column;gap:2px}.friend-name{font-size:.8rem;font-weight:500;color:#333}.friend-parks-progress{display:flex;align-items:center;gap:6px}.friend-parks-bar-track{flex:1;height:6px;background-color:#e0e0e0;border-radius:3px;overflow:hidden}.friend-parks-bar-fill{height:100%;background-color:#606c38;border-radius:3px;transition:width .3s ease}.friend-parks{font-size:.7rem;color:#666;white-space:nowrap}.btn-remove{background:none;border:none;color:#999;font-size:24px;cursor:pointer;padding:0 8px;transition:color .2s}.btn-remove:hover{color:#d32f2f}.settings-page{height:100%;overflow-y:auto;background:#fff}.settings-layout{display:flex;min-height:100%;max-width:860px;margin:0 auto;gap:0}.settings-sidebar{width:200px;flex-shrink:0;padding:2rem 1.5rem;border-right:1px solid #e0e0e0;background:#fff}.settings-sidebar h2{font-size:1.1rem;font-weight:700;color:#333;margin:0 0 1.5rem}.settings-nav{display:flex;flex-direction:column;gap:.25rem}.settings-nav a{display:block;padding:.5rem .75rem;border-radius:6px;font-size:.9rem;color:#555;cursor:pointer;transition:background .15s,color .15s;text-decoration:none}.settings-nav a:hover{background:#f0f0f0;color:#222}.settings-nav a.active{background:#eff3e4;color:#606c38;font-weight:600}.settings-content{flex:1;padding:2rem;background:#fff}.settings-section h3{font-size:1.15rem;font-weight:700;color:#222;margin:0 0 1.5rem;padding-bottom:.75rem;border-bottom:2px solid #e0e0e0}.account-info{display:flex;flex-direction:column;gap:1rem;max-width:400px}.account-field{display:flex;flex-direction:column;gap:.25rem}.account-field label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#888}.account-field span{font-size:1rem;color:#222;padding:.5rem .75rem;background:#f8f8f8;border:1px solid #e0e0e0;border-radius:6px}.stats-loading{color:#999;font-style:italic}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.stat-card{display:flex;flex-direction:column;align-items:center;padding:1.25rem .75rem;border-radius:12px;box-shadow:0 2px 8px #00000012;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px #0000001f}.stat-card-primary{background:linear-gradient(135deg,#eff3e4,#c8e6c9);border:1.5px solid #606c38}.stat-card-secondary{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:1.5px solid #2196f3}.stat-card-accent{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border:1.5px solid #dda15e}.stat-icon{font-size:2rem;margin-bottom:.5rem}.stat-content{text-align:center}.stat-value{font-size:1.6rem;font-weight:700;color:#283618;line-height:1;margin-bottom:.3rem}.stat-total{font-size:1rem;font-weight:500;color:#555}.stat-card-secondary .stat-value{color:#0d47a1}.stat-card-accent .stat-value{color:#e65100}.stat-label{font-size:.7rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.05em}.stats-progress{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.stats-progress-bar{flex:1;height:10px;background:#e0e0e0;border-radius:10px;overflow:hidden}.stats-progress-fill{height:100%;border-radius:10px;transition:width .6s ease}.stats-progress-label{font-size:.85rem;color:#666;white-space:nowrap}.stats-completion-badge{display:inline-block;padding:.5rem 1rem;background:linear-gradient(135deg,gold,#ffed4e);color:#283618;font-size:.9rem;font-weight:700;border-radius:8px;box-shadow:0 2px 8px #ffd70059}.onboarding-return{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.onboarding-return h4{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#606c38;margin:0 0 .5rem}.onboarding-return p{font-size:.9rem;color:#666;margin:0 0 1rem;line-height:1.5}.btn-return-onboarding{background:none;border:1.5px solid #606c38;color:#606c38;padding:.5rem 1.2rem;border-radius:7px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .15s,color .15s;font-family:inherit}.btn-return-onboarding:hover{color:#283618;border-color:#283618}.danger-zone{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid #fecaca}.danger-zone h4{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#b91c1c;margin:0 0 1rem}.btn-delete-account{background:none;border:1.5px solid #dc2626;color:#dc2626;padding:.5rem 1.25rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.btn-delete-account:hover{background:#dc2626;color:#fff}.delete-confirm{background:#fff5f5;border:1.5px solid #fca5a5;border-radius:8px;padding:1rem 1.25rem;max-width:420px}.delete-confirm p{font-size:.9rem;color:#374151;margin:0 0 1rem;line-height:1.5}.delete-error{color:#b91c1c!important;font-weight:500}.delete-confirm-actions{display:flex;gap:.75rem}.btn-delete-confirm{background:#dc2626;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-delete-confirm:hover{background:#b91c1c}.btn-delete-cancel{background:#fff;color:#555;border:1px solid #d1d5db;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;cursor:pointer;transition:background .15s}.btn-delete-cancel:hover{background:#f3f4f6}@media(max-width:768px){.settings-layout{flex-direction:column}.settings-sidebar{width:100%;box-sizing:border-box;border-right:none;border-bottom:1px solid #e0e0e0;padding:1rem 1rem .75rem}.settings-sidebar h2{margin-bottom:.75rem}.settings-nav{flex-direction:row;flex-wrap:wrap;gap:.5rem}.settings-nav a{border-radius:20px;border:1px solid #e0e0e0;padding:.35rem .85rem;font-size:.85rem}.settings-nav a.active{border-color:#606c38}.settings-content{padding:1.5rem 1rem}.stats-grid{grid-template-columns:1fr}}@media(max-width:480px){.settings-sidebar{padding:.75rem .75rem .5rem}.settings-content{padding:1rem .75rem}.settings-section h3{font-size:1rem}}.park-info-float{display:flex;flex-direction:column;align-items:flex-end;width:340px}.park-info-bubble{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.1rem;background-color:#283618;background-image:repeating-linear-gradient(105deg,transparent 0px,transparent 2px,rgba(180,230,120,.07) 2px,rgba(180,230,120,.07) 3px,transparent 3px,transparent 9px,rgba(0,0,0,.06) 9px,rgba(0,0,0,.06) 10px,transparent 10px,transparent 20px),linear-gradient(160deg,#354524,#283618 40%,#2f3f1c,#1e2c12);color:#fff;border-radius:8px;font-size:.9rem;font-weight:600;box-shadow:0 4px 16px #0000004d;white-space:nowrap;width:100%;box-sizing:border-box;transition:border-radius .25s ease}.park-info-bubble.active{background-color:#1e2c12;background-image:repeating-linear-gradient(105deg,transparent 0px,transparent 2px,rgba(160,210,100,.08) 2px,rgba(160,210,100,.08) 3px,transparent 3px,transparent 9px,rgba(0,0,0,.08) 9px,rgba(0,0,0,.08) 10px,transparent 10px,transparent 20px),linear-gradient(160deg,#283618,#1e2c12 40%,#253014,#161e0c);border-radius:8px 8px 0 0}.bubble-icon{flex-shrink:0;display:block}.bubble-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.bubble-close-btn{flex-shrink:0;background:#fff3;border:none;color:#fff;width:22px;height:22px;border-radius:50%;cursor:pointer;font-size:.72rem;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.bubble-close-btn:hover{background:#ffffff61}.park-info-panel{width:340px;max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1);border:1px solid #d0d0d0;border-top:none;border-radius:0 0 10px 10px;box-shadow:0 6px 20px #00000026}.park-info-panel.open{max-height:60vh}.park-info-panel-inner{background:#fff;padding:1rem 1.25rem 1.25rem;overflow-y:auto;max-height:60vh;border-radius:0 0 10px 10px}.park-info-panel-inner::-webkit-scrollbar{width:6px}.park-info-panel-inner::-webkit-scrollbar-track{background:#f1f1f1}.park-info-panel-inner::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.park-info-image{width:100%;height:auto;border-radius:8px;display:block;margin-bottom:.85rem}.park-info-meta{display:flex;align-items:center;gap:.6rem;margin-bottom:.85rem;font-size:.82rem}.park-info-state{font-weight:700;color:#444}.park-info-year{color:#999}.park-info-nps-link{margin-left:auto;font-size:.78rem;color:#606c38;text-decoration:none;font-weight:600;white-space:nowrap}.park-info-nps-link:hover{text-decoration:underline}.park-status-line{margin-bottom:.5rem}.park-status{font-size:.8rem;font-weight:700;letter-spacing:.3px}.park-status--visited{color:#606c38}.park-status--planning{color:#c17a3a}.park-status--none{color:#9e9e9e}.park-action-boxes{display:flex;gap:.5rem;margin-bottom:.75rem}.park-action-box{flex:1;padding:.6rem .5rem;border-radius:8px;font-size:.82rem;font-weight:600;text-align:center;line-height:1.3}.view-trips-box{border:2px solid #3a86c6;background:#fff;color:#3a86c6;cursor:pointer;transition:background .2s}.view-trips-box:hover{background:#e5eff9}.plan-box{border:2px solid #3a86c6;background:#fff;color:#3a86c6;cursor:pointer;transition:background .2s}.plan-box:hover{background:#e5eff9}.continue-planning-box{border:2px solid #dda15e;background:#fff;color:#c17a3a;cursor:pointer;transition:background .2s}.continue-planning-box:hover{background:#fef5e8}.add-details-popup{background:#fff;border-radius:12px;padding:1.25rem 1.5rem 1.5rem;width:300px;max-width:90vw;box-shadow:0 20px 60px #0000004d}.add-details-popup h3{margin:0 0 1rem;font-size:1rem;color:#333;font-weight:700}.add-details-field{display:flex;flex-direction:column;gap:4px;margin-bottom:.85rem}.add-details-field label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#6b7280}.add-details-field input[type=date],.add-details-field input[type=text],.add-details-field textarea{border:1px solid #e5e7eb;border-radius:6px;padding:6px 8px;font-size:.88rem;font-family:inherit;color:#374151;background:#f9fafb}.add-details-field input[type=date]:focus,.add-details-field input[type=text]:focus,.add-details-field textarea:focus{outline:none;border-color:#606c38;background:#fff}.add-details-field textarea{resize:vertical}.add-details-partial{margin-top:4px;font-size:.78rem!important;color:#9ca3af!important;padding:4px 6px!important}.add-details-stars{display:flex;gap:4px}.star-btn{background:none;border:none;font-size:1.4rem;color:#d1d5db;cursor:pointer;padding:0;line-height:1;transition:color .1s}.star-btn.filled,.star-btn:hover{color:#f59e0b}.add-details-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.1rem}.add-details-actions button{padding:.45rem 1rem;border-radius:6px;border:1px solid #ddd;background:#fff;font-size:.88rem;cursor:pointer;font-family:inherit}.add-details-actions button.primary{background:#606c38;color:#fff;border-color:#606c38}.add-details-actions button.primary:hover{background:#4a5a28}.plan-picker-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:10003}.plan-picker-popup{background:#fff;border-radius:12px;padding:1.25rem;max-width:90vw;box-shadow:0 20px 60px #0000004d}.gallery-float-modal{width:400px;height:540px;max-width:92vw;max-height:85vh;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px #0000004d}.plan-picker-cards{display:flex;gap:.75rem;overflow-x:auto}.plan-picker-card{min-width:130px;background:#f8f8f8;border:2px solid #e0e0e0;border-radius:8px;padding:.85rem;cursor:pointer;transition:all .2s ease;flex-shrink:0}.plan-picker-card:hover{border-color:#dda15e;background:#fef5e8}.plan-picker-new{border-style:dashed;color:#888}.plan-picker-new:hover{border-color:#606c38;background:#eff3e4;color:#606c38}.plan-picker-card-name{font-size:.88rem;font-weight:600;color:inherit}.plan-picker-card-date{font-size:.78rem;color:#888;margin-top:.25rem}.park-info-section{margin-top:.85rem}.park-info-section h4{font-size:.82rem;font-weight:700;color:#333;margin:0 0 .45rem}.park-info-description{font-size:.83rem;color:#555;line-height:1.55;margin:0}.park-info-section ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.3rem}.park-info-section li{font-size:.8rem;color:#555;padding:.35rem .65rem;background:#f8f8f8;border-radius:6px;border-left:3px solid #e0e0e0;line-height:1.4}.airport-dist{color:#999;font-size:.76rem}.park-info-tags{display:flex;flex-wrap:wrap;gap:.4rem}.park-info-tag{padding:.3rem .7rem;border-radius:20px;font-size:.78rem;font-weight:600;background:linear-gradient(135deg,#e5eff9,#b5d4f0);color:#1a5a9a;border:1px solid #90c0f0}.park-info-grid{display:flex;flex-direction:column;gap:.4rem}.park-info-grid-item{padding:.45rem .7rem;background:#f8f8f8;border-radius:6px;display:flex;flex-direction:column;gap:.1rem}.park-info-grid-label{font-size:.7rem;font-weight:700;color:#999;text-transform:uppercase;letter-spacing:.4px}.park-info-grid-value{font-size:.83rem;color:#333;font-weight:600}.nps-link{display:inline-block;margin-top:10px;font-size:.8rem;color:#606c38;text-decoration:none;font-weight:500}.nps-link:hover{text-decoration:underline}@media(max-width:768px){.park-info-float:not(.has-park){display:none}.park-info-float{width:100%;align-items:stretch}.park-info-bubble{border-radius:16px 16px 0 0;white-space:normal;position:relative}.park-info-bubble:before{content:"";display:block;position:absolute;top:7px;left:50%;transform:translate(-50%);width:36px;height:4px;background:#ffffff59;border-radius:2px}.park-info-bubble.active{border-radius:16px 16px 0 0}.park-info-panel{width:100%}.park-info-panel.open,.park-info-panel-inner{max-height:calc(50dvh - 44px)}.gallery-float-modal{width:100%;max-width:100%;border-radius:12px}}.trip-log-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:flex-start;justify-content:center;padding-top:5vh;z-index:1000;animation:fadeIn .2s ease-out;overflow-y:auto}.trip-log-panel{background:#fff;border-radius:12px;width:90%;max-width:800px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 40px #0000004d;animation:slideUp .3s ease-out;margin-bottom:5vh}.trip-log-panel.embedded{width:100%;max-width:none;max-height:none;height:100%;border-radius:0;box-shadow:none;animation:none;overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.trip-log-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:2px solid #e8e8e8;flex-shrink:0}.trip-log-header h2{margin:0;font-size:1.5rem;color:#606c38}.close-btn{background:none;border:none;font-size:2rem;cursor:pointer;color:#666;line-height:1;padding:0;width:32px;height:32px;transition:color .2s}.close-btn:hover{color:#333}.trip-selector{padding:1rem 1.5rem;border-bottom:1px solid #e8e8e8;background-color:#fafafa;flex-shrink:0}.trip-list{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.trip-item{background:#fff;border:2px solid #e8e8e8;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;color:#666;transition:all .2s;display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.trip-item:hover{border-color:#606c38;background-color:#f9fdf9}.trip-item.active{background-color:#606c38;color:#fff;border-color:#606c38}.trip-item .trip-date{font-size:.75rem;font-weight:400;opacity:.8}.overview-actions{display:flex;gap:1rem;align-items:center}.delete-trip-group{display:flex;align-items:center;gap:.75rem}.trip-delete-btn{background:#c62828;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;cursor:pointer;transition:background .2s;font-weight:500}.trip-delete-btn:hover:not(:disabled){background:#b71c1c}.trip-delete-btn:disabled{background:#e57373;opacity:.5;cursor:not-allowed}.voyage-link-note{font-size:.9rem;color:#555}.voyage-link-btn{background:none;border:none;color:#3a86c6;font-size:.9rem;cursor:pointer;padding:0;text-decoration:underline;font-family:inherit}.voyage-link-btn:hover{color:#0d47a1}.add-trip-btn{background:transparent;border:2px dashed #606c38;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;color:#606c38;transition:all .2s}.add-trip-btn:hover{background-color:#f9fdf9;border-color:#283618;color:#283618}.panel-trip-plans{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.6rem 1.5rem;border-bottom:1px solid #e8e8e8;background:#f7f7f7}.panel-trip-plans-label{font-size:.8rem;color:#999;font-weight:500;flex-shrink:0}.panel-trip-plan-chip{background:none;border:1.5px solid;border-radius:20px;padding:.2rem .75rem;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit}.panel-trip-plan-chip.went{border-color:#606c38;color:#606c38}.panel-trip-plan-chip.went:hover{background:#606c38;color:#fff}.panel-trip-plan-chip.planning{border-color:#3a86c6;color:#3a86c6}.panel-trip-plan-chip.planning:hover{background:#3a86c6;color:#fff}.trip-log-tabs{display:flex;border-bottom:1px solid #e8e8e8;padding:0 1.5rem;background-color:#f9f9f9;flex-shrink:0}.trip-log-tabs button{background:none;border:none;padding:1rem 1.5rem;font-size:1rem;cursor:pointer;border-bottom:3px solid transparent;transition:all .2s;color:#666}.trip-log-tabs button:hover{color:#606c38;background-color:#2e7d320d}.trip-log-tabs button.active{color:#606c38;border-bottom-color:#606c38;font-weight:600;background-color:#fff}.trip-log-content{flex:1;overflow-y:auto;padding:1.5rem}.overview-tab{max-width:600px}.form-section{margin-bottom:2rem}.form-section h3{margin:0 0 1rem;font-size:1.1rem;color:#333}.form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:500;color:#555;font-size:.9rem}.form-field input,.form-field textarea,.form-field select,.form-section textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .2s}.form-field input:focus,.form-field textarea:focus,.form-field select:focus,.form-section textarea:focus{outline:none;border-color:#606c38;box-shadow:0 0 0 3px #2e7d321a}.date-partial-input{margin-top:.35rem;font-size:.82rem!important;color:#777!important;padding:.4rem .6rem!important}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.photo-upload{display:flex;flex-direction:column;gap:1rem}.trip-photo{max-width:300px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.photo-upload input[type=file]{padding:.5rem}.rating-input{display:flex;gap:.5rem}.star-btn{background:none;border:none;font-size:2rem;cursor:pointer;color:#ddd;transition:all .2s;padding:0}.star-btn:hover{color:#ffb300;transform:scale(1.1)}.star-btn.active{color:gold}.save-btn,.add-btn{background:#606c38;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;cursor:pointer;transition:background .2s;font-weight:500}.save-btn:hover,.add-btn:hover{background:#283618}.save-btn:disabled,.add-btn:disabled{background:#ccc;cursor:not-allowed}.save-btn.success{background:#606c38;cursor:default}.error-message{margin-top:1rem;padding:.75rem;background-color:#ffebee;color:#c62828;border-radius:6px;font-size:.9rem}.accommodations-tab,.hikes-tab{max-width:700px}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.tab-header h3{margin:0;font-size:1.2rem;color:#333}.empty-state{text-align:center;color:#999;padding:3rem 1rem;font-size:1rem}.accommodations-list,.hikes-list{display:flex;flex-direction:column;gap:1rem}.accommodation-card,.hike-card{border:1px solid #e8e8e8;border-radius:8px;padding:1rem;display:flex;justify-content:space-between;align-items:start;background-color:#fafafa;transition:box-shadow .2s}.accommodation-card:hover,.hike-card:hover{box-shadow:0 2px 8px #0000001a}.accommodation-info,.hike-info{flex:1}.accommodation-info h4,.hike-info h4{margin:0 0 .5rem;font-size:1.1rem;color:#333}.accommodation-info p,.hike-info p{margin:.25rem 0;color:#666;font-size:.9rem}.accommodation-info .type,.hike-info .stats{color:#606c38;font-weight:500}.accommodation-info .address,.hike-info .address{font-size:.85rem;color:#777}.accommodation-info .dates,.hike-info .timing{font-weight:500;color:#555}.accommodation-info .notes,.hike-info .notes{font-style:italic;color:#888;margin-top:.5rem}.accommodation-actions,.hike-actions{display:flex;gap:.5rem;flex-shrink:0;margin-left:1rem}.accommodation-actions button,.hike-actions button{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s;font-weight:500}.accommodation-actions button:first-child,.hike-actions button:first-child{background:#ffe0b2;color:#e65100}.accommodation-actions button:first-child:hover,.hike-actions button:first-child:hover{background:#ffcc80}.accommodation-actions button:last-child,.hike-actions button:last-child{background:#ffcdd2;color:#c62828}.accommodation-actions button:last-child:hover,.hike-actions button:last-child:hover{background:#ef9a9a}.accommodation-form,.hike-form{border:2px solid #606c38;border-radius:8px;padding:1rem;background-color:#f9fdf9;display:flex;flex-direction:column;gap:.75rem}.accommodation-form input,.accommodation-form textarea,.accommodation-form select,.hike-form input,.hike-form textarea,.hike-form select{padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem;font-family:inherit}.accommodation-form input:focus,.accommodation-form textarea:focus,.accommodation-form select:focus,.hike-form input:focus,.hike-form textarea:focus,.hike-form select:focus{outline:none;border-color:#606c38;box-shadow:0 0 0 3px #2e7d321a}.date-row,.stats-row,.timing-row{display:grid;gap:.5rem;align-items:center}.date-row{grid-template-columns:1fr auto 1fr}.stats-row{grid-template-columns:1fr 1fr 1fr}.timing-row{grid-template-columns:1fr 1fr}.date-row span{color:#666;font-weight:500}.form-actions{display:flex;gap:.5rem;margin-top:.5rem}.form-actions button{flex:1;padding:.75rem;border-radius:6px;font-size:.95rem;cursor:pointer;transition:all .2s;font-weight:500}.form-actions button[type=submit]{background:#606c38;color:#fff;border:none}.form-actions button[type=submit]:hover{background:#283618}.form-actions button[type=submit]:disabled{background:#ccc;cursor:not-allowed}.form-actions button[type=button]{background:#fff;color:#666;border:1px solid #ddd}.form-actions button[type=button]:hover{background:#f5f5f5;border-color:#bbb}.trip-log-content::-webkit-scrollbar{width:8px}.trip-log-content::-webkit-scrollbar-track{background:#f1f1f1}.trip-log-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.trip-log-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.cost-summary{background:#f9fdf9;border:1px solid #c8e6c9;border-radius:8px;padding:1.5rem}.cost-line{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #e8f5e9}.cost-line:last-child{border-bottom:none}.cost-line.total{margin-top:1rem;padding-top:1rem;border-top:2px solid #606c38;border-bottom:none;font-weight:600;font-size:1.1rem;color:#606c38}.cost-value{font-weight:500;color:#606c38}.no-costs{color:#666;font-style:italic;margin:0}.travel-tab{max-width:700px}.travel-section{margin-bottom:3rem}.travel-section:last-child{margin-bottom:0}.travel-list{display:flex;flex-direction:column;gap:1rem}.travel-card{border:1px solid #e8e8e8;border-radius:8px;padding:1rem;display:flex;justify-content:space-between;align-items:start;background-color:#fafafa;transition:box-shadow .2s}.travel-card:hover{box-shadow:0 2px 8px #0000001a}.travel-info{flex:1}.travel-info h4{margin:0 0 .5rem;font-size:1.1rem;color:#333}.travel-info .travel-detail{margin:.25rem 0;color:#666;font-size:.9rem}.travel-info .cost{color:#606c38;font-weight:500;margin:.5rem 0 0}.travel-info .notes{font-style:italic;color:#888;margin-top:.5rem;font-size:.9rem}.travel-actions{display:flex;gap:.5rem;flex-shrink:0;margin-left:1rem}.travel-actions button{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s;font-weight:500}.travel-actions button:first-child{background:#ffe0b2;color:#e65100}.travel-actions button:first-child:hover{background:#ffcc80}.travel-actions button:last-child{background:#ffcdd2;color:#c62828}.travel-actions button:last-child:hover{background:#ef9a9a}.travel-form{border:2px solid #606c38;border-radius:8px;padding:1rem;background-color:#f9fdf9;display:flex;flex-direction:column;gap:.75rem}.travel-form input,.travel-form textarea,.travel-form select{padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem;font-family:inherit}.travel-form input:focus,.travel-form textarea:focus,.travel-form select:focus{outline:none;border-color:#606c38;box-shadow:0 0 0 3px #2e7d321a}.checkbox-row{display:flex;align-items:center;gap:.5rem}.checkbox-row label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;color:#666}.checkbox-row input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:#606c38}@media(max-width:768px){.trip-log-panel{width:95%;max-height:95vh}.trip-log-header{padding:1rem}.trip-log-tabs{padding:0 1rem}.trip-log-tabs button{padding:.75rem 1rem;font-size:.9rem}.trip-log-content{padding:1rem}.form-row,.stats-row,.timing-row,.date-row{grid-template-columns:1fr}.date-row span{display:none}.accommodation-card,.hike-card{flex-direction:column;gap:1rem}.accommodation-actions,.hike-actions{margin-left:0;width:100%}.accommodation-actions button,.hike-actions button,.travel-actions button{flex:1}.travel-card{flex-direction:column;gap:1rem}.travel-actions{margin-left:0;width:100%}}@media(max-width:480px){.trip-log-panel{width:100%;max-height:100vh;border-radius:0}.trip-log-header{padding:.75rem}.trip-log-header h2{font-size:1.2rem}.trip-selector{padding:.75rem}.trip-log-tabs{padding:0 .5rem}.trip-log-tabs button{padding:.65rem .75rem;font-size:.85rem}.trip-log-content{padding:.75rem}}.voyage-logistics-section{background:#fff3e0;border-left:4px solid #dda15e;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.voyage-logistics-header h3{margin:0 0 .5rem;font-size:1.1rem;color:#e65100}.voyage-logistics-notice{margin:0 0 1.5rem;color:#666;font-size:.9rem;line-height:1.5}.voyage-subsection{margin-bottom:1.5rem}.voyage-subsection:last-child{margin-bottom:0}.voyage-subsection h4{margin:0 0 .75rem;font-size:1rem;color:#333;font-weight:600}.voyage-items-list{display:flex;flex-direction:column;gap:.75rem}.voyage-item{display:flex;gap:1rem;padding:1rem;background:#fff;border:2px solid #ffcc80;border-radius:8px;align-items:flex-start}.voyage-item.readonly{cursor:not-allowed;opacity:.9}.voyage-item-icon{font-size:1.5rem;flex-shrink:0}.voyage-item-details{flex:1}.voyage-item-main{font-weight:600;color:#333;margin-bottom:.25rem}.flight-number{font-weight:400;color:#666;font-size:.9rem}.voyage-item-meta{font-size:.85rem;color:#666;margin-bottom:.25rem}.voyage-item-meta:last-child{margin-bottom:0}.voyage-item-meta .cost{color:#e65100;font-weight:600}.section-explainer{font-size:.85rem;color:#666;margin:.25rem 0 0;font-style:italic}.home-page{flex:1;overflow-y:auto;display:flex;flex-direction:column;background:#f8f6f0}.home-hero{background-color:#283618;background-image:repeating-linear-gradient(105deg,transparent 0px,transparent 2px,rgba(180,230,120,.07) 2px,rgba(180,230,120,.07) 3px,transparent 3px,transparent 9px,rgba(0,0,0,.06) 9px,rgba(0,0,0,.06) 10px,transparent 10px,transparent 20px),linear-gradient(160deg,#354524,#283618 40%,#2f3f1c,#1e2c12);color:#fff;padding:5rem 2rem 4rem;text-align:center}.home-hero-inner{max-width:640px;margin:0 auto}.home-hero-tree{margin-bottom:1rem;opacity:.9}.home-title{font-size:4rem;font-weight:800;letter-spacing:-2px;margin:0 0 .5rem;text-shadow:0 3px 8px rgba(0,0,0,.3)}.home-subtitle{font-size:1.5rem;color:#ffffffbf;margin:0 0 .5rem;font-weight:500;letter-spacing:.2px}.home-tagline{font-size:1.25rem;color:#ffffffd9;margin:0 0 2.5rem;font-weight:400;line-height:1.5}.home-hero-ctas{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.home-cta-primary{padding:.8rem 2rem;background:#dda15e;color:#1e2c12;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block;transition:background .2s,transform .1s}.home-cta-primary:hover{background:#c8893e;transform:translateY(-1px)}.home-cta-secondary{padding:.8rem 2rem;background:#ffffff26;color:#fff;border:1.5px solid rgba(255,255,255,.5);border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block;transition:background .2s,transform .1s}.home-cta-secondary:hover{background:#ffffff40;transform:translateY(-1px)}.home-features{padding:4rem 2rem;max-width:1100px;margin:0 auto;width:100%;box-sizing:border-box}.home-section-title{text-align:center;font-size:1.6rem;font-weight:700;color:#283618;margin:0 0 2.5rem}.home-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.home-feature-card{background:#fff;border-radius:12px;padding:1.75rem 1.5rem;box-shadow:0 2px 12px #00000012;border:1px solid #e8e4da;transition:transform .2s,box-shadow .2s}.home-feature-card:hover{transform:translateY(-3px);box-shadow:0 6px 20px #0000001a}.home-feature-icon{font-size:2rem;margin-bottom:.75rem}.home-feature-card h3{font-size:1rem;font-weight:700;color:#283618;margin:0 0 .6rem}.home-feature-card p{font-size:.88rem;color:#555;line-height:1.6;margin:0}.home-stats{background:#606c38;color:#fff;display:flex;align-items:center;justify-content:center;gap:3rem;padding:2.5rem 2rem;flex-wrap:wrap}.home-stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.home-stat-number{font-size:2.5rem;font-weight:800;line-height:1;color:#dda15e}.home-stat-label{font-size:.85rem;color:#ffffffd9;font-weight:500}.home-stat-divider{width:1px;height:48px;background:#ffffff40}.home-signup-section{text-align:center;padding:4rem 2rem;background:#f0ede4;margin-top:auto}.home-signup-section h2{font-size:1.6rem;font-weight:700;color:#283618;margin:0 0 .75rem}.home-signup-section p{font-size:1rem;color:#555;margin:0 0 1.75rem}@media(max-width:768px){.home-hero{padding:3rem 1.25rem 2.5rem}.home-title{font-size:2.75rem}.home-tagline{font-size:1.05rem}.home-feature-grid{grid-template-columns:1fr 1fr}.home-section-title{font-size:1.3rem}.home-stats{gap:1.5rem}.home-stat-divider{display:none}}@media(max-width:480px){.home-feature-grid{grid-template-columns:1fr}}.ob-welcome-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:3000}.ob-welcome-modal{background:#fff;border-radius:12px;padding:36px 32px 28px;max-width:420px;width:calc(100% - 48px);text-align:center;box-shadow:0 8px 32px #0000002e}.ob-welcome-modal h2{margin:0 0 10px;font-size:1.5rem;color:#283618}.ob-welcome-modal p{margin:0 0 24px;color:#555;font-size:.95rem;line-height:1.5}.ob-mode-buttons{display:flex;gap:12px;justify-content:center;margin-bottom:18px}.ob-mode-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 12px;border:2px solid #ccc;border-radius:10px;background:#fafafa;cursor:pointer;transition:border-color .15s,background .15s;font-size:.9rem}.ob-mode-btn:hover{border-color:#606c38;background:#f4f7ee}.ob-mode-icon{font-size:1.5rem;line-height:1}.ob-mode-btn strong{font-size:.95rem;color:#283618}.ob-mode-desc{font-size:.78rem;color:#777}.ob-skip-btn{background:none;border:none;color:#999;font-size:.82rem;cursor:pointer;text-decoration:underline;padding:4px}.ob-skip-btn:hover{color:#555}.ob-marking-banner{position:fixed;top:52px;left:0;right:0;height:44px;background:#283618;color:#fff;display:flex;align-items:center;justify-content:center;gap:16px;z-index:2500;padding:0 16px;font-size:.9rem}.ob-banner-text{flex:1;text-align:center}.ob-banner-count{font-weight:600;white-space:nowrap;background:#ffffff26;padding:2px 10px;border-radius:20px;font-size:.85rem}.ob-done-btn{background:#606c38;color:#fff;border:none;border-radius:6px;padding:6px 18px;font-size:.88rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}.ob-done-btn:hover{background:#4a5228}.ob-park-list-panel{position:fixed;top:96px;right:0;width:280px;bottom:0;background:#fff;border-left:1px solid #ddd;display:flex;flex-direction:column;z-index:2400;box-shadow:-4px 0 16px #0000001a}.ob-park-list-header{padding:10px 12px;border-bottom:1px solid #eee}.ob-park-search{width:100%;box-sizing:border-box;padding:7px 10px;border:1.5px solid #ddd;border-radius:6px;font-size:.88rem;outline:none;background:#fafafa}.ob-park-search:focus{border-color:#606c38}.ob-park-list-body{flex:1;overflow-y:auto;padding:4px 0}.ob-park-list-loading{padding:16px 12px;font-size:.85rem;color:#999}.ob-park-list-item{width:100%;display:flex;align-items:center;gap:8px;padding:8px 12px;background:none;border:none;text-align:left;cursor:pointer;font-size:.875rem;color:#222;transition:background .1s}.ob-park-list-item:hover{background:#f4f7ee}.ob-park-list-item.marked{color:#888}.ob-park-list-check{width:16px;flex-shrink:0;color:#606c38;font-weight:700;font-size:.8rem}.ob-park-list-name{flex:1;line-height:1.3}.ob-park-list-state{font-size:.78rem;color:#999;flex-shrink:0}.ob-modal-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:3500}.ob-park-form{background:#fff;border-radius:12px;width:min(480px,calc(100vw - 32px));max-height:calc(100vh - 80px);display:flex;flex-direction:column;box-shadow:0 8px 32px #0000002e;overflow:hidden}.ob-park-form-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 14px;border-bottom:1px solid #eee}.ob-park-form-header h2{margin:0;font-size:1.1rem;color:#283618;line-height:1.3}.ob-close-btn{background:none;border:none;font-size:1rem;color:#888;cursor:pointer;padding:4px 6px;line-height:1;border-radius:4px}.ob-close-btn:hover{background:#f0f0f0}.ob-form-body{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:14px}.ob-field{display:flex;flex-direction:column;gap:5px}.ob-field label{font-size:.8rem;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.04em}.ob-field select,.ob-field input[type=date],.ob-field input[type=number],.ob-field input[type=text]{border:1.5px solid #ddd;border-radius:6px;padding:7px 10px;font-size:.9rem;color:#222;background:#fafafa;outline:none;transition:border-color .15s}.ob-field select:focus,.ob-field input:focus{border-color:#606c38}.ob-field textarea{border:1.5px solid #ddd;border-radius:6px;padding:8px 10px;font-size:.9rem;color:#222;background:#fafafa;resize:vertical;outline:none;font-family:inherit;transition:border-color .15s}.ob-field textarea:focus{border-color:#606c38}.ob-field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ob-stars{display:flex;gap:4px}.ob-star-btn{background:none;border:none;font-size:1.5rem;color:#ccc;cursor:pointer;padding:0;line-height:1;transition:color .1s}.ob-star-btn.active,.ob-star-btn:hover{color:#f0a500}.ob-companion-input{display:flex;gap:6px}.ob-companion-input input{flex:1;border:1.5px solid #ddd;border-radius:6px;padding:7px 10px;font-size:.9rem;background:#fafafa;outline:none}.ob-companion-input input:focus{border-color:#606c38}.ob-companion-input button{background:#606c38;color:#fff;border:none;border-radius:6px;padding:7px 14px;font-size:.85rem;cursor:pointer;font-weight:600;white-space:nowrap}.ob-companion-input button:hover{background:#4a5228}.ob-companion-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.ob-companion-chip{display:flex;align-items:center;gap:5px;background:#eef1e6;border-radius:20px;padding:3px 10px 3px 12px;font-size:.82rem;color:#283618}.ob-companion-chip button{background:none;border:none;color:#888;cursor:pointer;font-size:.7rem;padding:0;line-height:1}.ob-companion-chip button:hover{color:#d32f2f}.ob-park-form-actions{padding:14px 20px;border-top:1px solid #eee;display:flex;gap:10px}.ob-btn-save{flex:1;background:#606c38;color:#fff;border:none;border-radius:7px;padding:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s}.ob-btn-save:hover{background:#4a5228}.ob-btn-mark{flex:1;background:#f5f5f5;color:#555;border:1.5px solid #ddd;border-radius:7px;padding:10px;font-size:.9rem;cursor:pointer;transition:background .15s,border-color .15s}.ob-btn-mark:hover{background:#eee;border-color:#bbb}@media(max-width:480px){.ob-mode-buttons{flex-direction:column}.ob-field-row{grid-template-columns:1fr}.ob-marking-banner{font-size:.8rem;gap:10px}}.app{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden;animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.app-header{background-color:#283618;background-image:repeating-linear-gradient(105deg,transparent 0px,transparent 2px,rgba(180,230,120,.07) 2px,rgba(180,230,120,.07) 3px,transparent 3px,transparent 9px,rgba(0,0,0,.06) 9px,rgba(0,0,0,.06) 10px,transparent 10px,transparent 20px),repeating-linear-gradient(100deg,transparent 0px,transparent 25px,rgba(0,0,0,.03) 25px,rgba(0,0,0,.03) 28px,transparent 28px,transparent 55px),linear-gradient(160deg,#354524,#283618 40%,#2f3f1c,#1e2c12);color:#fff;padding:.75rem 2rem;box-shadow:0 4px 20px #0000004d,0 1px 3px #00000026;display:flex;justify-content:space-between;align-items:center;z-index:2001;position:sticky;top:0}.header-left{display:flex;align-items:center;gap:2rem}.header-title-link{text-decoration:none;color:inherit}.header-title-link:hover h1{opacity:.85}.app-header h1{margin:0;font-size:1.4rem;font-weight:700;letter-spacing:-.5px;text-shadow:0 2px 4px rgba(0,0,0,.2)}.nav-links{display:flex;gap:.5rem}.nav-links a{padding:.6rem 1.2rem;color:#fff;text-decoration:none;border-radius:8px;font-weight:500;transition:all .3s ease;position:relative}.nav-links a:hover{background-color:#ffffff26;transform:translateY(-1px)}.nav-links a.active{background-color:#ffffff40;box-shadow:0 2px 8px #00000026}.controls{display:flex;gap:1rem;align-items:center}.state-filter{padding:.6rem 1rem;font-size:1rem;border:2px solid rgba(255,255,255,.3);border-radius:8px;background-color:#fffffff2;cursor:pointer;min-width:160px;font-weight:500;transition:all .3s ease;box-shadow:0 2px 8px #0000001a}.state-filter:hover{border-color:#fff9;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.state-filter:focus{outline:2px solid rgba(255,255,255,.8);outline-offset:2px;border-color:#fff}.auth-controls{display:flex;align-items:center;gap:1rem}.btn-auth{padding:.6rem 1.8rem;background-color:#fff;color:#283618;border:2px solid white;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #00000026}.btn-auth:hover{background-color:#f0f5e8;color:#283618;border-color:#f0f5e8;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.user-menu{display:flex;align-items:center;gap:1rem}.btn-settings{padding:.6rem .8rem;background-color:transparent;color:#fff;border:none;font-size:1.9rem;line-height:1;border-radius:8px;font-family:inherit;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none}.btn-settings:hover{background-color:#ffffff26;transform:translateY(-1px)}.btn-settings.active{background-color:#ffffff40;box-shadow:0 2px 8px #00000026}.btn-logout{padding:.5rem 1.2rem;background-color:#ffffff1a;color:#fff;border:1.5px solid rgba(255,255,255,.4);border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-logout:hover{background-color:#fff3;border-color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.app-content{flex:1;position:relative;overflow-y:auto;display:flex;flex-direction:column}.app-content--map{display:flex;flex-direction:row;overflow:hidden}.map-container{flex:1;min-width:0;position:relative;height:100%;overflow:hidden;background:#aad3df}.parks-content-container{flex:1;min-width:0;display:flex;flex-direction:column;overflow-y:auto}.new-item-card{border:2px dashed #ccc;border-radius:4px;cursor:pointer;display:flex;flex-direction:column;background:transparent;transition:border-color .2s,background .2s}.new-item-card:hover{border-color:#606c38;background:#f8fbf4}.new-item-card-photo{width:100%;aspect-ratio:4 / 3;display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:300;color:#ccc;transition:color .2s}.new-item-card:hover .new-item-card-photo{color:#606c38}.new-item-card-label{text-align:center;padding:.75rem 0;font-size:.85rem;color:#aaa;transition:color .2s}.new-item-card:hover .new-item-card-label{color:#606c38}.log-page-header{text-align:center;margin-bottom:12px;flex-shrink:0}.log-page-subtitle{margin:0;font-size:18px;color:#666}.logs-toggle-bar{display:flex;justify-content:center;flex-shrink:0}.parks-view-toggle{display:flex;background:#fff;border-radius:22px;padding:3px;gap:0;align-self:center;margin:12px 0 4px;flex-shrink:0;box-shadow:0 1px 6px #00000021}.parks-view-toggle--overlay{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:1000;margin:0;box-shadow:0 2px 8px #0000002e}.parks-view-btn{padding:5px 18px;font-size:13px;font-weight:500;border:none;outline:none;background:transparent;color:#555;cursor:pointer;border-radius:18px;transition:background .15s,color .15s}.parks-view-btn:focus{outline:none}.parks-view-btn--active{background:#606c38;color:#fff;font-weight:600}.right-float-column{position:fixed;bottom:16px;right:16px;z-index:900;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.route-calculator-section{display:flex;flex-direction:column;align-items:flex-end;gap:0}.route-calculator-toggle{padding:.6rem 1.1rem;width:340px;box-sizing:border-box;display:flex;align-items:center;gap:.5rem;background-color:#283618;background-image:repeating-linear-gradient(105deg,transparent 0px,transparent 2px,rgba(180,230,120,.07) 2px,rgba(180,230,120,.07) 3px,transparent 3px,transparent 9px,rgba(0,0,0,.06) 9px,rgba(0,0,0,.06) 10px,transparent 10px,transparent 20px),linear-gradient(160deg,#354524,#283618 40%,#2f3f1c,#1e2c12);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;box-shadow:0 4px 16px #0000004d;transition:filter .2s,box-shadow .2s,border-radius .15s;white-space:nowrap}.route-calculator-toggle.open{border-radius:8px 8px 0 0;box-shadow:none}.route-calculator-toggle:not(.open):hover{filter:brightness(.88);box-shadow:0 6px 20px #00000059}.route-calculator-panel{width:340px;max-height:70vh;overflow-y:auto;background:#fff;border-radius:0 0 10px 10px;box-shadow:0 6px 20px #0000002e;border:1px solid #e0e0e0;border-top:none}.route-calculator-panel .route-calculator{padding-bottom:1.5rem}.route-calculator-panel::-webkit-scrollbar{width:6px}.route-calculator-panel::-webkit-scrollbar-track{background:#f1f1f1}.route-calculator-panel::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.map-banners{position:absolute;top:62px;left:50%;transform:translate(-50%);z-index:500;display:flex;flex-direction:column;align-items:center;gap:6px}.guest-map-banner{background:#fff;border-radius:999px;padding:.5rem 1rem .5rem 1.2rem;box-shadow:0 4px 16px #0000002e;display:flex;align-items:center;gap:.75rem;font-size:.9rem;color:#333;white-space:nowrap}@media(max-width:768px){.map-banners{width:calc(100% - 160px)}.guest-map-banner{white-space:normal;text-align:center;border-radius:14px;width:100%;box-sizing:border-box;justify-content:space-between;font-size:.82rem}}.guest-map-banner-link{background:none;border:none;padding:0;font-size:inherit;font-family:inherit;color:#606c38;font-weight:700;cursor:pointer;text-decoration:underline}.guest-map-banner-link:hover{color:#283618;background:none}.guest-map-banner-close{background:none;border:none;padding:.1rem .2rem;font-size:1.1rem;color:#aaa;cursor:pointer;line-height:1;display:flex;align-items:center}.guest-map-banner-close:hover{color:#555}.guest-upsell{max-width:480px;margin:5rem auto 2rem;padding:2.5rem 2rem;text-align:center}.guest-upsell-icon{font-size:3rem;margin-bottom:1rem}.guest-upsell h1{font-size:2rem;color:#283618;margin:0 0 .75rem}.guest-upsell>p{color:#555;font-size:1.05rem;line-height:1.6;margin:0 0 1.5rem}.upsell-features{list-style:none;padding:0;margin:0 0 2rem;text-align:left;display:flex;flex-direction:column;gap:.6rem}.upsell-features li{padding:.5rem .75rem;background:#f4f6ee;border-radius:8px;color:#333;font-size:.95rem}.upsell-features li:before{content:"✓  ";color:#606c38;font-weight:700}.upsell-cta{background:#606c38;color:#fff;border:none;padding:.8rem 2.5rem;border-radius:10px;font-size:1.05rem;font-weight:600;cursor:pointer;transition:background .2s;font-family:inherit}.upsell-cta:hover{background:#283618}.hamburger-btn{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.25rem .5rem;line-height:1;flex-shrink:0}.header-right{display:flex;align-items:center;gap:1rem;flex-shrink:0}.mobile-nav,.mobile-nav-backdrop{display:none}@media(max-width:768px){.app-header{padding:.4rem .75rem;position:fixed;left:0;right:0;top:0}.app-content{padding-top:48px}.app-header h1{font-size:1rem}.header-left{gap:.25rem}.header-left .nav-links{display:flex}.header-right{display:flex;flex-shrink:0}.btn-logout-username{display:none}.mobile-nav-backdrop{display:block;position:fixed;inset:0;background:#0006;z-index:1999}.mobile-nav{display:flex;position:fixed;top:52px;left:0;right:0;flex-direction:column;align-items:stretch;background-color:#283618;padding:.75rem 1rem;z-index:2000;box-shadow:0 6px 20px #0000004d;gap:0;visibility:hidden;opacity:0;transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s;pointer-events:none}.mobile-nav.open{visibility:visible;opacity:1;transform:translateY(0);transition:opacity .2s ease,transform .2s ease;pointer-events:auto}.nav-links{flex-direction:row;gap:0}.nav-links a{padding:.4rem .6rem;font-size:.85rem}.user-menu{flex-direction:row;align-items:center;gap:.25rem}.btn-settings{padding:.4rem .5rem;font-size:1.9rem;line-height:1}.btn-logout,.btn-auth{padding:.4rem .6rem;font-size:.85rem}.route-calculator-toggle,.header-center{display:none}.right-float-column{left:0;right:0;bottom:0;width:100%;align-items:stretch;gap:0;padding:0;max-height:calc(100dvh - 52px);overflow:hidden}.map-zoom-controls{left:16px!important;z-index:800!important}.parks-view-toggle--overlay{top:60px}}.leaflet-popup-content-wrapper{border-radius:8px}.leaflet-popup-content{margin:12px}
