@import"https://cdn.jsdelivr.net/npm/vazir-font@30.1.0/dist/font-face.css";.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}}.qr-code-container{display:flex;justify-content:center;align-items:center;padding:0;width:100%;height:100%}.qr-code-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:0;background:transparent;border-radius:0;box-shadow:none;transition:all .3s ease;position:relative;z-index:1;width:auto;height:auto}.qr-code-wrapper svg{width:auto!important;height:auto!important;max-width:100%;max-height:100%;display:block}.qr-code-wrapper:hover{transform:scale(1.05)}.qr-code-label{color:#555;font-size:.85rem;font-weight:600;margin:0;text-align:center}@media (max-width: 768px){.qr-code-wrapper{padding:10px}.qr-code-wrapper svg{max-width:100%;height:auto}.qr-code-label{font-size:.75rem}}@media (max-width: 480px){.qr-code-wrapper{padding:5px}}.services-section{margin-top:30px}.services-header{background:#fff;border-radius:15px;padding:25px;margin-bottom:25px;text-align:center;box-shadow:0 4px 15px #0000001a}.services-header h2{color:#333;font-size:2rem;margin-bottom:10px}.services-header p{color:#666;font-size:1.1rem}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-bottom:30px}.service-card{background:#fff;border-radius:15px;padding:25px;box-shadow:0 4px 15px #0000001a;transition:all .3s ease;cursor:pointer;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}.service-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #0003}.service-card.service-disabled{opacity:.6;cursor:not-allowed;background:#f5f5f5}.service-card.service-disabled:hover{transform:none;box-shadow:0 4px 15px #0000001a}.service-card.service-disabled .service-content h3,.service-card.service-disabled .service-content p{color:#999}.service-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.service-content h3{color:#333;font-size:1.3rem;margin-bottom:10px}.service-content p{color:#666;font-size:.95rem;margin-bottom:15px;line-height:1.6}.service-button{padding:10px 25px;color:#fff;border:none;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95rem}.service-button:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #0003}.service-button:disabled{cursor:not-allowed;opacity:.7}.disabled-tooltip{position:absolute;top:10px;left:10px;background:#000000d9;color:#fff;padding:6px 12px;border-radius:6px;font-size:.8rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:1000;font-family:Vazir,sans-serif}.service-card.service-disabled:hover .disabled-tooltip{opacity:1}.info-notice{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.notice-card{background:#fff;border-radius:15px;padding:25px;box-shadow:0 4px 15px #0000001a}.notice-card h3{color:#333;font-size:1.3rem;margin-bottom:15px;display:flex;align-items:center;gap:10px}.notice-card p{color:#666;line-height:1.8;font-size:1rem}.property-info-summary{background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:12px;padding:20px;margin-bottom:25px;border-right:4px solid #667eea}.property-info-summary p{margin:8px 0;color:#555;font-size:.95rem}.property-info-summary strong{color:#333;font-weight:700}.request-form{margin-top:20px}.request-form label{display:block;margin-bottom:10px;color:#333;font-weight:600;font-size:1rem}.request-textarea{width:100%;padding:15px;border:2px solid #e0e0e0;border-radius:12px;font-size:1rem;font-family:Vazir,sans-serif;resize:vertical;transition:all .3s ease;min-height:150px}.request-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}@media (max-width: 768px){.services-grid,.info-notice{grid-template-columns:1fr}.modal-content{max-width:100%;margin:10px}.modal-header,.modal-body,.modal-footer{padding:20px}.modal-footer{flex-direction:column-reverse}.btn-cancel,.btn-submit{width:100%}}.feature-content{width:100%}.feature-description{text-align:center;margin-bottom:30px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}.feature-description p{color:#666;font-size:1rem;margin:0}.last-update{font-size:.85rem;color:#999;margin-top:5px}.emergency-contacts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.emergency-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;padding:25px;text-align:center;box-shadow:0 4px 12px #667eea4d;transition:transform .3s}.emergency-card:hover{transform:translateY(-5px)}.emergency-card.police{background:linear-gradient(135deg,#2196f3,#1976d2)}.emergency-card.fire{background:linear-gradient(135deg,#f44336,#d32f2f)}.emergency-card.ambulance{background:linear-gradient(135deg,#4caf50,#388e3c)}.emergency-card.local{background:linear-gradient(135deg,#ff9800,#f57c00)}.emergency-icon{font-size:3rem;margin-bottom:10px}.emergency-card h3{margin:10px 0;font-size:1.2rem}.emergency-number{font-size:1.5rem;font-weight:600;margin:15px 0;display:block}.call-button{background:#fff3;color:#fff;border:2px solid white;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s;width:100%;margin-top:10px}.call-button:hover{background:#fff;color:#667eea}.info-note{background:#e3f2fd;padding:15px;border-radius:8px;text-align:center;color:#1976d2}.filter-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.filter-buttons button{padding:8px 16px;border:2px solid #e0e0e0;background:#fff;border-radius:6px;cursor:pointer;transition:all .3s;font-size:.9rem}.filter-buttons button:hover{border-color:#667eea}.filter-buttons .filter-active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea}.places-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.place-card{background:#f9f9f9;border-radius:12px;padding:20px;border:1px solid #e0e0e0;transition:transform .3s}.place-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px #0000001a}.place-icon{font-size:2rem;margin-bottom:10px}.place-card h3{margin:0 0 5px;color:#333;font-size:1.1rem}.place-type{color:#667eea;font-size:.9rem;font-weight:500;margin:5px 0}.place-address{color:#666;font-size:.9rem;margin:10px 0}.place-distance{color:#999;font-size:.85rem;margin-top:10px}.place-phone{display:inline-block;margin-top:10px;color:#667eea;text-decoration:none;font-weight:500}.place-phone:hover{text-decoration:underline}.transport-section{margin-bottom:30px}.transport-section h3{color:#333;margin-bottom:15px;font-size:1.3rem}.transport-list{display:flex;flex-direction:column;gap:15px}.transport-card{background:#f9f9f9;border-radius:12px;padding:20px;border:1px solid #e0e0e0}.transport-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.transport-header h4{margin:0;color:#333}.transport-distance{background:#667eea;color:#fff;padding:4px 12px;border-radius:6px;font-size:.9rem;font-weight:500}.transport-details{color:#666;font-size:.95rem}.transport-lines{margin-top:10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.line-badge{background:#e3f2fd;color:#1976d2;padding:4px 10px;border-radius:6px;font-size:.85rem;font-weight:500}.transport-phone{color:#667eea;text-decoration:none;font-weight:500}.transport-phone:hover{text-decoration:underline}.weather-current{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;padding:30px;text-align:center;margin-bottom:30px}.weather-main{display:flex;justify-content:center;align-items:center;gap:20px;margin-bottom:15px}.weather-icon-large{font-size:4rem}.weather-temp{display:flex;align-items:flex-start}.temp-value{font-size:3rem;font-weight:600}.temp-unit{font-size:1.5rem;margin-top:5px}.weather-condition{font-size:1.2rem;margin-bottom:20px}.weather-details{display:flex;justify-content:center;gap:30px;flex-wrap:wrap}.weather-detail-item{display:flex;flex-direction:column;gap:5px}.weather-detail-item span{font-size:.9rem;opacity:.9}.weather-detail-item strong{font-size:1.1rem}.weather-forecast{margin-bottom:30px}.weather-forecast h3{color:#333;margin-bottom:15px}.forecast-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.forecast-item{background:#f9f9f9;border-radius:12px;padding:20px;text-align:center;border:1px solid #e0e0e0}.forecast-icon{font-size:2.5rem;margin-bottom:10px}.forecast-day{font-weight:600;color:#333;margin-bottom:5px}.forecast-temp{font-size:1.3rem;font-weight:600;color:#667eea;margin:10px 0}.forecast-condition{color:#666;font-size:.9rem}.weather-alerts{background:#fff3cd;border:1px solid #ffc107;border-radius:12px;padding:20px}.weather-alerts h3{color:#856404;margin-bottom:10px}.alert-item{color:#856404;padding:10px;background:#fff;border-radius:6px;margin-bottom:8px}.events-list{display:flex;flex-direction:column;gap:15px}.event-card{background:#f9f9f9;border-radius:12px;padding:20px;border-left:4px solid #667eea}.event-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:10px}.event-header h3{margin:0;color:#333}.event-date{background:#667eea;color:#fff;padding:4px 12px;border-radius:6px;font-size:.9rem;font-weight:500}.event-location{color:#666;margin:5px 0}.event-description{color:#666;line-height:1.6;margin-top:10px}.complaints-intro{text-align:center;padding:40px 20px}.complaints-intro p{color:#666;margin-bottom:20px;line-height:1.6}.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 30px;border-radius:8px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:transform .2s}.submit-button:hover{transform:translateY(-2px)}.complaint-form{background:#f9f9f9;padding:25px;border-radius:12px}.form-info{background:#fff;padding:15px;border-radius:8px;margin:20px 0;border:1px solid #e0e0e0}.form-info p{margin:5px 0;color:#666}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.success-message{background:#c8e6c9;color:#2e7d32;padding:15px;border-radius:8px;margin-bottom:20px;text-align:center}.history-section{margin-bottom:30px}.history-section h3{color:#333;margin-bottom:15px;font-size:1.3rem}.history-card{background:#f9f9f9;border-radius:12px;padding:20px;border:1px solid #e0e0e0;line-height:1.8;color:#666}.history-year{margin-top:15px;padding-top:15px;border-top:1px solid #e0e0e0;color:#333}.landmarks-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px}.landmark-card{background:#f9f9f9;border-radius:12px;padding:20px;border:1px solid #e0e0e0}.landmark-card h4{margin:0 0 10px;color:#333}.landmark-description{color:#666;margin-top:10px;line-height:1.6}.neighbors-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.neighbor-card{background:#f9f9f9;border-radius:12px;padding:20px;border:1px solid #e0e0e0}.neighbor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.neighbor-header h3{margin:0;color:#333}.neighbor-type{padding:4px 12px;border-radius:6px;font-size:.85rem;font-weight:500}.neighbor-type.owner{background:#e3f2fd;color:#1976d2}.neighbor-type.tenant{background:#fff3e0;color:#f57c00}.neighbor-info{color:#666}.neighbor-info p{margin:8px 0}.neighbor-phone{color:#667eea;font-weight:500}.auth-required{text-align:center;padding:40px 20px;background:#fff3cd;border:1px solid #ffc107;border-radius:12px;color:#856404}.utilities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.utility-card{background:#f9f9f9;border-radius:12px;padding:25px;text-align:center;border:1px solid #e0e0e0}.utility-icon{font-size:3rem;margin-bottom:10px}.utility-card h3{margin:10px 0;color:#333}.utility-status{display:flex;flex-direction:column;align-items:center;gap:5px;margin:15px 0;font-weight:600}.status-icon{font-size:2rem}.status-label{font-size:1rem}.utility-alert{background:#fff3cd;color:#856404;padding:8px;border-radius:6px;font-size:.85rem;margin-top:10px}.utilities-info{background:#e3f2fd;padding:15px;border-radius:8px;text-align:center;color:#1976d2;font-size:.9rem}.empty-state,.loading-state{text-align:center;padding:40px 20px;color:#999}.consumption-actions{margin-bottom:20px;text-align:center}.consumption-history{margin-top:20px}.consumption-history h3{margin-bottom:15px;color:#333;font-size:1.2rem}.consumption-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.consumption-header{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1.5fr;gap:10px;padding:15px;background:#f5f5f5;font-weight:600;color:#333;border-bottom:2px solid #e0e0e0}.consumption-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1.5fr;gap:10px;padding:15px;border-bottom:1px solid #e0e0e0;align-items:center}.consumption-row:hover{background:#f9f9f9}.consumption-type{display:flex;align-items:center;gap:8px;font-weight:500}.type-icon{font-size:1.2rem}.submit-small-button{background:#4caf50;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .3s}.submit-small-button:hover{background:#45a049}.submitted-info{color:#666;font-size:.85rem}.consumption-form{max-width:600px;margin:0 auto}@media (max-width: 768px){.emergency-contacts-grid,.places-grid,.utilities-grid,.neighbors-list{grid-template-columns:1fr}.forecast-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.consumption-header,.consumption-row{grid-template-columns:1fr;gap:5px}.consumption-header span,.consumption-row span{padding:5px 0}}.unread-count-notice{color:#f44336;font-weight:600;margin-top:10px}.inbox-simple{display:flex;flex-direction:column;gap:15px}.inbox-message-card{background:#f9f9f9;border-radius:8px;padding:15px;border:1px solid #e0e0e0;cursor:pointer;transition:all .3s}.inbox-message-card:hover{background:#f0f0f0;border-color:#667eea}.inbox-message-card.unread{background:#e3f2fd;border-color:#2196f3;font-weight:500}.inbox-message-card.selected{background:#667eea;color:#fff;border-color:#667eea}.message-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.message-card-header h4{margin:0;font-size:1.1rem;color:inherit}.priority-badge-small{padding:3px 8px;border-radius:4px;font-size:.7rem;font-weight:600;color:#fff}.message-card-from{color:#666;font-size:.9rem;margin:5px 0}.message-card-preview{color:#333;font-size:.95rem;margin:10px 0;line-height:1.6}.message-card-date{color:#999;font-size:.85rem;margin:5px 0 0}.message-detail-modal{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:80vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d;position:relative;z-index:1001}.message-detail-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0}.message-detail-header h3{margin:0;color:#333}.message-detail-header button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.message-detail-body{padding:20px}.message-detail-from{color:#666;margin:10px 0}.message-detail-date{color:#999;font-size:.9rem;margin:5px 0 20px}.message-detail-content{line-height:1.8;color:#333;font-size:1rem}.property-features-tabs{margin-top:40px;padding:30px 0;border-top:2px solid #e0e0e0}.features-header{text-align:center;margin-bottom:30px}.features-header h2{color:#333;font-size:1.8rem;margin-bottom:10px}.features-header p{color:#666;font-size:1rem}.features-tabs-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.features-tabs-list{display:flex;flex-wrap:wrap;gap:10px;padding:20px;background:#f9f9f9;border-bottom:2px solid #e0e0e0;overflow-x:auto}.feature-tab{display:flex;align-items:center;gap:8px;padding:12px 20px;border:2px solid #e0e0e0;background:#fff;border-radius:8px;cursor:pointer;transition:all .3s;font-size:1rem;color:#333;white-space:nowrap}.feature-tab:hover{border-color:#667eea;background:#f5f7fa}.feature-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea}.tab-icon{font-size:1.2rem}.tab-label{font-weight:500}.features-tab-content{padding:30px;min-height:300px}@media (max-width: 768px){.property-features-tabs{margin-top:20px;padding:20px 0}.features-header h2{font-size:1.5rem}.features-tabs-list{flex-direction:column;padding:15px;gap:8px}.feature-tab{width:100%;justify-content:center;min-height:44px;padding:12px 16px;font-size:.95rem;-webkit-tap-highlight-color:rgba(102,126,234,.2)}.features-tab-content{padding:15px;min-height:200px}}@media (max-width: 480px){.features-header h2{font-size:1.3rem}.features-tabs-list{padding:10px}.feature-tab{font-size:.9rem;padding:10px 14px}.features-tab-content{padding:12px}}.property-detail{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;position:relative;overflow-x:hidden}.property-detail:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.1) 0%,transparent 50%);pointer-events:none}.property-detail-container{max-width:1400px;margin:0 auto;position:relative;z-index:1}.header-buttons{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.dashboard-button{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:#fff3;color:#fff;text-decoration:none;border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-weight:600;border:2px solid rgba(255,255,255,.3);font-size:1rem;min-height:44px;-webkit-tap-highlight-color:rgba(255,255,255,.2)}.dashboard-button:hover{background:#ffffff4d;transform:translateY(-2px);box-shadow:0 8px 20px #0003}.back-button{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:#ffffff26;color:#fff;text-decoration:none;border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-weight:600;border:2px solid rgba(255,255,255,.2);box-shadow:0 4px 20px #0000001a;font-size:1rem;min-height:44px;-webkit-tap-highlight-color:rgba(255,255,255,.2)}.edit-button{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;cursor:pointer;transition:all .3s ease;font-weight:600;font-size:1rem;font-family:Vazir,sans-serif;box-shadow:0 4px 20px #667eea4d;min-height:44px;-webkit-tap-highlight-color:rgba(102,126,234,.3)}.edit-button:hover{transform:translateY(-2px);box-shadow:0 6px 25px #667eea66}.back-button:hover{background:#ffffff40;transform:translate(-8px) translateY(-2px);box-shadow:0 8px 30px #0003;border-color:#fff6}.property-header{background:#fffffffa;border-radius:clamp(16px,2vw,24px);padding:clamp(20px,3vw,40px);margin-bottom:30px;box-shadow:0 20px 60px #00000026,0 0 0 1px #ffffff80;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:slideDown .6s ease-out;position:relative;overflow:hidden}.property-header:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2,#667eea);background-size:200% 100%;animation:shimmer 3s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.header-top{display:flex;align-items:stretch;justify-content:space-between;gap:clamp(12px,2vw,30px);margin-bottom:clamp(25px,3vw,35px);flex-wrap:nowrap}.plaque-display{flex:1 1 0;animation:scaleIn .5s ease-out .2s both;min-width:0;display:flex}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.municipality-logo{flex:1 1 0;animation:scaleIn .5s ease-out .25s both;min-width:0;display:flex;align-items:stretch}.logo-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(5px,.8vw,8px);padding:clamp(10px,1.2vw,15px) clamp(12px,1.5vw,18px);background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:clamp(12px,1.5vw,16px);box-shadow:0 10px 40px #0000001a,0 0 0 2px #1976d21a;transition:all .3s ease;width:100%;height:100%;flex:1 1 0;min-height:160px;max-height:200px}.logo-container:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 15px 50px #00000026,0 0 0 2px #1976d233}.logo-container svg,.logo-container img{filter:drop-shadow(0 4px 8px rgba(0,0,0,.15))}.municipality-logo-img{width:clamp(70px,8vw,90px);height:clamp(70px,8vw,90px);object-fit:contain;display:block;margin:0 auto}.municipality-logo-svg{width:120px;height:120px;display:block;margin:0 auto}.logo-text{color:#1976d2;font-size:clamp(.8rem,1.2vw,.9rem);font-weight:700;letter-spacing:.3px;text-align:center;line-height:1.3}.qr-display-header{flex:1 1 0;animation:scaleIn .5s ease-out .3s both;min-width:0;display:flex;align-items:stretch}.qr-header-card{background:linear-gradient(135deg,#1976d2,#1565c0);border-radius:clamp(12px,1.5vw,16px);padding:clamp(12px,1.5vw,18px);text-align:center;width:100%;height:100%;flex:1 1 0;box-shadow:0 10px 40px #1976d266,0 0 0 1px #ffffff1a inset;transition:all .3s ease;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:160px;max-height:200px}.qr-header-card:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);animation:rotate 10s linear infinite}.qr-header-card:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 15px 50px #1976d280,0 0 0 1px #fff3 inset}.plaque-blue{background:linear-gradient(135deg,#1976d2,#1565c0);color:#fff;padding:clamp(15px,2vw,20px) clamp(20px,2.5vw,30px);border-radius:clamp(12px,1.5vw,16px);text-align:center;box-shadow:0 10px 40px #1976d266,0 0 0 1px #ffffff1a inset;width:100%;height:100%;flex:1 1 0;position:relative;overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:160px;max-height:200px}.plaque-blue:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);animation:rotate 10s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.plaque-blue:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 15px 50px #1976d280,0 0 0 1px #fff3 inset}.plaque-label{display:block;font-size:clamp(.75rem,1.1vw,.85rem);opacity:.95;margin-bottom:clamp(8px,1vw,10px);font-weight:600;letter-spacing:.3px;position:relative;z-index:1}.plaque-number{display:block;font-size:clamp(2rem,3.5vw,3rem);font-weight:800;letter-spacing:clamp(1px,.8vw,3px);line-height:1.1;text-shadow:0 2px 10px rgba(0,0,0,.2);position:relative;z-index:1}.property-title{width:100%;border-top:2px solid rgba(102,126,234,.1);padding-top:25px;position:relative}.property-title:before{content:"";position:absolute;top:-2px;right:0;width:100px;height:2px;background:linear-gradient(90deg,transparent,#667eea)}.property-title h1{color:#1a1a1a;font-size:clamp(1.5rem,3vw,2.2rem);margin-bottom:12px;font-weight:800;background:linear-gradient(135deg,#333,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.property-address-main{color:#555;font-size:clamp(.95rem,2vw,1.15rem);line-height:1.8;font-weight:500}.property-content{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-bottom:30px}.property-info-section,.property-map-section{display:flex;flex-direction:column;gap:25px}.info-card{background:#fffffffa;border-radius:20px;padding:30px;box-shadow:0 10px 40px #0000001a,0 0 0 1px #0000000d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:all .3s cubic-bezier(.4,0,.2,1);animation:fadeInUp .6s ease-out both;position:relative;overflow:hidden}.info-card:before{content:"";position:absolute;top:0;right:0;width:4px;height:100%;background:linear-gradient(180deg,#667eea,#764ba2);opacity:0;transition:opacity .3s ease}.info-card:hover{transform:translateY(-5px);box-shadow:0 15px 50px #00000026,0 0 0 1px #667eea1a}.info-card:hover:before{opacity:1}.info-card:nth-child(1){animation-delay:.1s}.info-card:nth-child(2){animation-delay:.2s}.info-card:nth-child(3){animation-delay:.3s}.info-card h2{color:#1a1a1a;font-size:1.6rem;margin-bottom:25px;padding-bottom:18px;border-bottom:3px solid;border-image:linear-gradient(90deg,#667eea,#764ba2) 1;font-weight:700;display:flex;align-items:center;gap:12px;position:relative}.info-card h2:before{content:"";width:6px;height:24px;background:linear-gradient(180deg,#667eea,#764ba2);border-radius:3px}.info-tooltip{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;font-size:.85rem;cursor:help;position:relative;margin-right:8px;transition:all .3s ease}.info-tooltip:hover{transform:scale(1.1);box-shadow:0 4px 12px #667eea66}.info-tooltip:before{content:attr(title);position:absolute;bottom:calc(100% + 10px);right:50%;transform:translate(50%);background:#000000e6;color:#fff;padding:8px 12px;border-radius:8px;font-size:.8rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:1000;font-family:Vazir,sans-serif}.info-tooltip:hover:before{opacity:1}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.info-item{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;gap:15px;padding:14px 18px;background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:12px;border-right:3px solid transparent;transition:all .3s ease;position:relative;cursor:pointer}.info-item:after{content:"برای کپی کلیک کنید";position:absolute;top:-35px;right:50%;transform:translate(50%);background:#000000d9;color:#fff;padding:6px 12px;border-radius:6px;font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:1000}.info-item:hover:after{opacity:1}.info-item:before{content:"";position:absolute;right:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#667eea,#764ba2);border-radius:0 12px 12px 0;opacity:0;transition:opacity .3s ease}.info-item:hover{transform:translate(-5px);box-shadow:0 4px 15px #667eea26;border-right-color:#667eea;background:linear-gradient(135deg,#e8f0fe,#fff)}.info-item:active{transform:translate(-3px) scale(.98)}.info-item:hover:before{opacity:1}.info-label{color:#666;font-size:.95rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;order:2}.info-value{color:#1a1a1a;font-size:1.2rem;font-weight:700;text-align:right;order:1}.units-list{display:flex;flex-direction:column;gap:15px}.unit-item{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:20px;background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:12px;border-right:4px solid #667eea;transition:all .3s ease;box-shadow:0 2px 8px #0000000d;position:relative}.unit-item:after{content:"برای کپی کد پستی کلیک کنید";position:absolute;top:-35px;right:50%;transform:translate(50%);background:#000000d9;color:#fff;padding:6px 12px;border-radius:6px;font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:1000}.unit-item:hover:after{opacity:1}.unit-item:hover{transform:translate(-8px);box-shadow:0 6px 20px #667eea33;border-right-width:5px}.unit-item span:first-child{font-weight:600;color:#333;font-size:1.05rem}.unit-postal{color:#666;font-size:.95rem;font-weight:500}.property-not-found{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;gap:25px}.property-not-found h2{font-size:2.5rem;font-weight:700}.property-not-found a{color:#fff;text-decoration:underline;font-weight:600}@media (max-width: 1024px){.property-content{grid-template-columns:1fr}.info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.header-top{gap:15px}.plaque-blue{padding:20px 30px;min-width:150px}.logo-container{padding:12px 18px;min-width:130px}.qr-header-card{padding:15px;min-width:130px}}@media (max-width: 900px){.header-top{gap:10px}.plaque-blue{min-width:130px;padding:16px 22px}.logo-container{min-width:110px;padding:10px 12px}.municipality-logo-img{width:clamp(70px,10vw,100px);height:clamp(70px,10vw,100px)}.qr-header-card{min-width:110px;padding:10px}}@media (max-width: 768px){.property-detail{padding:15px}.property-header{padding:clamp(15px,2.5vw,25px)}.header-top{flex-wrap:nowrap;gap:clamp(8px,1.5vw,12px);justify-content:space-between}.plaque-blue{flex:1 1 auto;min-width:0;max-width:none;width:100%;padding:clamp(12px,1.8vw,18px) clamp(15px,2vw,22px)}.plaque-number{font-size:clamp(2rem,6vw,3rem)}.municipality-logo{flex:1 1 0;min-width:0;max-width:none}.logo-container{width:100%;min-width:0;max-width:none;padding:clamp(8px,1.2vw,12px)}.municipality-logo-img{width:clamp(60px,10vw,90px);height:clamp(60px,10vw,90px)}.logo-text{font-size:clamp(.75rem,2vw,.9rem)}.qr-header-card{flex:1 1 auto;min-width:0;max-width:none;width:100%;padding:clamp(10px,1.5vw,15px)}.info-grid{grid-template-columns:1fr}.property-title{padding-top:clamp(15px,2vw,20px)}.info-card{padding:clamp(18px,2.5vw,25px)}.info-card h2{font-size:clamp(1.2rem,3vw,1.5rem)}}@media (max-width: 480px){.property-detail{padding:10px}.property-header{padding:clamp(12px,2vw,15px)}.header-top{flex-wrap:nowrap;gap:clamp(6px,1.2vw,10px);justify-content:space-between}.plaque-blue{flex:1 1 auto;min-width:0;max-width:none;width:100%;padding:clamp(10px,1.5vw,14px) clamp(12px,1.8vw,18px)}.plaque-label{font-size:clamp(.7rem,2vw,.85rem);margin-bottom:clamp(6px,1vw,10px)}.plaque-number{font-size:clamp(1.8rem,7vw,2.5rem);letter-spacing:clamp(1px,.5vw,3px)}.municipality-logo{flex:1 1 0;min-width:0;max-width:none}.logo-container{padding:clamp(6px,1vw,10px)}.municipality-logo-img{width:clamp(50px,9vw,80px);height:clamp(50px,9vw,80px)}.logo-text{font-size:clamp(.65rem,1.8vw,.8rem);line-height:1.3}.qr-header-card{flex:1 1 auto;min-width:0;max-width:none;width:100%;padding:clamp(8px,1.2vw,12px)}.header-actions{flex-direction:column;align-items:stretch;gap:10px}.back-button,.dashboard-button,.edit-button{width:100%;min-height:44px;padding:14px 20px;font-size:.95rem}.info-card{padding:15px}.info-card h2{font-size:1.1rem}.property-title{font-size:1.3rem}.qr-display-header{padding:15px}}.auth-description{color:#555;font-size:1rem;margin-bottom:25px;line-height:1.8;text-align:center}.auth-form{margin-top:20px}.auth-form label{display:block;margin-bottom:10px;color:#333;font-weight:600;font-size:1rem}.phone-input{width:100%;padding:15px;border:2px solid #e0e0e0;border-radius:12px;font-size:1rem;font-family:Vazir,sans-serif;transition:all .3s ease}.phone-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.edit-form{display:flex;flex-direction:column;gap:20px}.form-group label{color:#333;font-weight:600;font-size:.95rem}.form-group input,.form-group select{padding:12px 15px;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;font-family:Vazir,sans-serif;transition:all .3s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}@media (max-width: 768px){.modal-content{max-width:100%;margin:10px}.modal-header,.modal-body,.modal-footer{padding:20px}.modal-footer{flex-direction:column-reverse}.btn-cancel,.btn-submit{width:100%}.scroll-to-top{width:50px;height:50px;font-size:1.2rem;bottom:20px;left:20px}}.carousel-wrapper{position:relative;padding:0 50px;margin:20px 0}.carousel-container{overflow:hidden;border-radius:16px;position:relative}.carousel-track{display:flex;gap:20px;transition:transform .6s cubic-bezier(.4,0,.2,1);will-change:transform}.carousel-item{flex:0 0 auto;min-width:0}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);width:45px;height:45px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:50%;font-size:1.5rem;font-weight:700;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d;-webkit-user-select:none;user-select:none}.carousel-btn:hover{transform:translateY(-50%) scale(1.1);box-shadow:0 6px 20px #667eea80}.carousel-btn:active{transform:translateY(-50%) scale(.95)}.carousel-btn-prev{right:0}.carousel-btn-next{left:0}.carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:20px}.carousel-dot{width:10px;height:10px;border-radius:50%;border:none;background:#e0e0e0;cursor:pointer;transition:all .3s ease;padding:0}.carousel-dot:hover{background:#667eea;transform:scale(1.2)}.carousel-dot.active{background:linear-gradient(135deg,#667eea,#764ba2);width:30px;border-radius:5px}@media (max-width: 768px){.carousel-wrapper{padding:0 50px}.carousel-btn{width:44px;height:44px;font-size:1.2rem;-webkit-tap-highlight-color:rgba(102,126,234,.3)}.carousel-btn-prev{right:5px}.carousel-btn-next{left:5px}.carousel-track{gap:15px}.carousel-dot{width:10px;height:10px;min-width:10px;min-height:10px}}@media (max-width: 480px){.carousel-wrapper{padding:0 50px}.carousel-btn{width:44px;height:44px;font-size:1.1rem}}.business-directory-section{padding:80px 20px;background:#fff;min-height:auto}.directory-container{max-width:1400px;margin:0 auto}.directory-header{text-align:center;margin-bottom:40px}.directory-header .section-title{font-size:2.5rem;font-weight:800;color:#1a1a1a;margin-bottom:15px;background:linear-gradient(135deg,#333,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.directory-subtitle{font-size:1.2rem;color:#666;line-height:1.6}.search-bar-container{margin-bottom:30px}.search-bar{display:flex;align-items:center;gap:15px;background:linear-gradient(135deg,#f8f9fa,#fff);padding:20px;border-radius:16px;box-shadow:0 4px 15px #0000001a;border:2px solid #e9ecef}.search-input{flex:1;padding:14px 20px;border:2px solid #e0e0e0;border-radius:12px;font-size:1.1rem;font-family:Vazir,sans-serif;transition:all .3s ease}.filter-toggle{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif;white-space:nowrap}.filter-toggle:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.filters-panel{margin-top:20px;padding:20px;background:#f8f9fa;border-radius:12px;display:flex;gap:20px;flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:10px}.filter-group label{font-weight:600;color:#333;font-size:.95rem}.filter-select{padding:10px 15px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-family:Vazir,sans-serif;background:#fff;cursor:pointer;transition:all .3s ease}.filter-select:focus{outline:none;border-color:#667eea}.categories-quick-access{margin-bottom:30px}.categories-quick-access h3{font-size:1.3rem;font-weight:700;color:#1a1a1a;margin-bottom:15px}.categories-grid{display:flex;flex-wrap:wrap;gap:12px}.categories-carousel-container{position:relative;overflow:hidden;padding:10px 0}.categories-carousel{display:flex;gap:12px;transition:transform .5s cubic-bezier(.4,0,.2,1);will-change:transform}.categories-carousel .category-chip{flex-shrink:0;min-width:fit-content}.category-chip{padding:12px 24px;background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #e9ecef;border-radius:25px;font-size:1rem;font-weight:600;color:#666;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding:15px 20px;background:#f8f9fa;border-radius:12px}.shops-container{display:grid;gap:25px;margin-bottom:40px}.shops-container.grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.shops-container.list{grid-template-columns:1fr}.shop-card-wrapper{display:flex;flex-direction:column}.shop-card{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 4px 15px #0000001a;transition:all .3s ease;border:2px solid transparent;display:flex;flex-direction:column;flex:1}.directory-map-view{height:600px;border-radius:16px;overflow:hidden;box-shadow:0 4px 15px #0000001a;margin-bottom:40px}.promotions-section{margin-top:50px;padding-top:40px;border-top:3px solid #f0f0f0}.promotions-section h3{font-size:1.8rem;font-weight:700;color:#1a1a1a;margin-bottom:25px;text-align:center}.promotions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.promotions-carousel .promotion-card{height:100%}.promotion-card{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-radius:16px;padding:25px;text-decoration:none;color:inherit;position:relative;overflow:hidden;border:2px solid #ffc107;transition:all .3s ease;display:flex;flex-direction:column;height:100%}.promotion-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #ffc1074d}.promotion-badge{position:absolute;top:15px;left:15px;background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:700;box-shadow:0 2px 8px #ff6b6b4d;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}.business-directory-section,.business-directory-section *{font-family:Vazir,Tahoma,Arial,sans-serif!important;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.promotion-card h4{font-size:1.3rem;font-weight:700;color:#1a1a1a;margin:30px 0 10px}.promotion-card p{color:#666;font-size:1rem;margin:0 0 10px}.promotion-shop-info{margin-top:auto;padding-top:15px;border-top:1px solid rgba(0,0,0,.1);font-size:.9rem;color:#555;font-weight:600}.no-results{text-align:center;padding:60px 20px;color:#666}@media (max-width: 768px){.directory-container{padding:10px}.directory-header .section-title{font-size:1.8rem}.search-bar{flex-direction:column;gap:10px}.search-input{width:100%;min-height:44px;font-size:16px}.search-button{width:100%;min-height:44px}.filters-panel{flex-direction:column;gap:10px}.filter-button{min-height:44px;padding:12px 16px}.view-toggle button{min-height:44px;min-width:44px}.shops-container.grid{grid-template-columns:1fr;gap:15px}.shop-card{min-height:auto}.shop-card.list{flex-direction:column}.shop-card.list .shop-card-image{width:100%;height:200px}.shop-market{min-height:44px;padding:12px 16px}.results-header{flex-direction:column;gap:15px;align-items:stretch}.directory-map-view{height:400px}.promotions-carousel-wrapper{padding:0 40px}.promotions-carousel .promotion-card{flex:0 0 calc(100% - 10px)}.carousel-btn{width:44px;height:44px;font-size:1.2rem}.carousel-btn-prev{right:5px}.carousel-btn-next{left:5px}.categories-carousel{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.categories-carousel::-webkit-scrollbar{display:none}.categories-carousel .category-chip{scroll-snap-align:start;min-height:44px;padding:10px 16px}}@media (max-width: 480px){.directory-container{padding:8px}.directory-header .section-title{font-size:1.5rem}}@media (max-width: 1024px) and (min-width: 769px){.promotions-carousel .promotion-card{flex:0 0 calc(50% - 10px)}}.home-landing{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:0;scroll-behavior:smooth}.section-page{min-height:100vh;display:flex;flex-direction:column;justify-content:flex-start;padding-top:0;scroll-margin-top:0;padding-bottom:50px;box-sizing:border-box}.home-nav-menu,.property-nav-menu{position:fixed;top:20px;left:20px;z-index:9999;background:#fffffff2;border-radius:15px;box-shadow:0 10px 40px #0003;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.nav-menu-toggle{display:flex;flex-direction:column;gap:5px;padding:15px;background:none;border:none;cursor:pointer;transition:all .3s ease}.nav-menu-toggle span{width:25px;height:3px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:3px;transition:all .3s ease}.nav-menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.nav-menu-toggle.active span:nth-child(2){opacity:0}.nav-menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.nav-menu-list{list-style:none;margin:0;padding:0;max-height:0;overflow:hidden;transition:max-height .3s ease}.nav-menu-list.show{max-height:500px}.nav-menu-list li{border-bottom:1px solid #f0f0f0}.nav-menu-list li:last-child{border-bottom:none}.nav-menu-list button{width:100%;padding:15px 25px;background:none;border:none;text-align:right;color:#333;font-size:1rem;font-weight:600;font-family:Vazir,sans-serif;cursor:pointer;transition:all .3s ease;position:relative}.nav-menu-list button:hover{background:linear-gradient(135deg,#667eea10,#764ba210);color:#667eea;padding-right:30px}.nav-menu-list button.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.nav-menu-list button.active:before{content:"";position:absolute;right:0;top:0;bottom:0;width:4px;background:#fff;border-radius:0 15px 15px 0}.landing-container{max-width:1200px;margin:0 auto;padding:0 20px}.hero-section{padding:80px 20px;text-align:center;color:#fff}.hero-content{max-width:800px;margin:0 auto}.hero-badge{display:inline-block;padding:10px 25px;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:30px;margin-bottom:30px;font-size:.95rem;font-weight:600}.hero-title{font-size:3.5rem;font-weight:800;margin-bottom:20px;line-height:1.2}.hero-subtitle{font-size:1.3rem;opacity:.95;margin-bottom:40px;line-height:1.6}.hero-cta{margin-top:50px}.qr-demo{display:inline-flex;flex-direction:column;align-items:center;gap:15px;padding:30px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:2px solid rgba(255,255,255,.3)}.qr-placeholder{background:#fff;padding:15px;border-radius:15px;box-shadow:0 8px 32px #0003}.qr-demo p{font-size:1.1rem;font-weight:600;margin:0}.features-section{padding:80px 20px;background:#fff;border-radius:40px 40px 0 0;margin-top:-40px;position:relative;z-index:1}.section-title{text-align:center;font-size:2.5rem;color:#333;margin-bottom:50px;font-weight:700}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-top:40px}.feature-card{padding:30px;background:#f8f9fa;border-radius:20px;text-align:center;transition:all .3s ease;border:2px solid transparent}.feature-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #667eea33;border-color:#667eea}.feature-icon{font-size:3.5rem;margin-bottom:20px;display:block}.feature-card h3{font-size:1.4rem;color:#333;margin-bottom:15px;font-weight:700}.feature-card p{color:#666;line-height:1.8;font-size:1rem}.how-it-works-section{padding:80px 20px;background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.steps-container{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:30px;max-width:1000px;margin:0 auto}.step-item{flex:1;min-width:250px;max-width:300px;text-align:center}.step-number{width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:700;margin:0 auto 20px;box-shadow:0 4px 15px #667eea66}.step-content h3{font-size:1.3rem;color:#333;margin-bottom:10px;font-weight:700}.step-content p{color:#666;line-height:1.6;font-size:1rem}.step-arrow{font-size:2.5rem;color:#667eea;font-weight:700}.benefits-section{padding:80px 20px;background:#fff}.benefits-list{max-width:800px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.benefit-item{display:flex;align-items:center;gap:15px;padding:20px;background:#f8f9fa;border-radius:15px;border-right:4px solid #667eea;font-size:1.1rem;color:#333}.benefit-check{width:30px;height:30px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.services-preview-section{padding:80px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.services-preview{display:flex;justify-content:center;flex-wrap:wrap;gap:30px;max-width:900px;margin:0 auto}.service-preview-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;padding:25px 35px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:2px solid rgba(255,255,255,.3);flex:1;min-width:150px;min-height:150px;transition:all .3s ease}.service-preview-item:hover{transform:translateY(-5px);background:#ffffff40}.service-icon{font-size:2.5rem}.service-preview-item span:last-child{font-size:1.1rem;font-weight:600}.landing-footer{padding:40px 20px;text-align:center;color:#fff;background:#0003}.landing-footer p{margin:10px 0;font-size:1rem}.footer-note{opacity:.8;font-size:.95rem}@media (max-width: 768px){.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.section-title{font-size:2rem}.features-grid{grid-template-columns:1fr}.steps-container{flex-direction:column}.step-arrow{transform:rotate(90deg)}.benefits-list{grid-template-columns:1fr}.services-preview{gap:15px}.service-preview-item{min-width:120px;min-height:120px;padding:20px 25px}.home-nav-menu{top:10px;left:10px}.nav-menu-list button{padding:12px 20px;font-size:.9rem;min-height:44px;-webkit-tap-highlight-color:rgba(102,126,234,.2)}.service-preview-item{min-height:44px;-webkit-tap-highlight-color:rgba(102,126,234,.2)}.section-page{padding-top:0;scroll-margin-top:0}.scroll-to-top{width:50px;height:50px;font-size:1.2rem;bottom:20px;left:20px;-webkit-tap-highlight-color:rgba(102,126,234,.3)}}@media (max-width: 480px){.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.section-title{font-size:1.5rem}}.scroll-to-top{position:fixed;bottom:30px;left:30px;width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;box-shadow:0 8px 25px #667eea66;z-index:9998;display:flex;align-items:center;justify-content:center;transition:all .3s ease;animation:fadeInUp .3s ease-out}.scroll-to-top:hover{transform:translateY(-5px);box-shadow:0 12px 35px #667eea80;background:linear-gradient(135deg,#764ba2,#667eea)}.scroll-to-top:active{transform:translateY(-2px)}.scroll-to-top span{display:block;line-height:1;font-weight:700}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-page{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-container{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000001a;padding:40px;width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:30px}.login-header h1{color:#333;font-size:1.8rem;margin-bottom:10px}.login-header p{color:#666;font-size:1rem}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#333;font-weight:500;font-size:.95rem}.form-group input{padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#667eea}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{background-color:#fee;color:#c33;padding:12px;border-radius:8px;text-align:center;font-size:.9rem}.login-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:14px;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-info{margin-top:20px;padding-top:20px;border-top:1px solid #e0e0e0;text-align:center}.login-info p{color:#666;font-size:.85rem;line-height:1.6}@media (max-width: 768px){.login-page{padding:15px}.login-container{padding:30px 20px}.login-header h1{font-size:1.5rem}.form-group input{min-height:44px;font-size:16px}.login-button{min-height:44px;font-size:1rem;-webkit-tap-highlight-color:rgba(102,126,234,.3)}}@media (max-width: 480px){.login-container{padding:25px 15px}.login-header h1{font-size:1.3rem}}.dashboard-sidebar{width:250px;background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a;height:fit-content;position:sticky;top:20px}.sidebar-nav{display:flex;flex-direction:column;gap:8px}.sidebar-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border:none;background:transparent;border-radius:8px;cursor:pointer;transition:all .3s;text-align:right;font-size:1rem;color:#333}.sidebar-item:hover{background:#f5f7fa}.sidebar-item.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.sidebar-icon{font-size:1.2rem}.sidebar-label{font-weight:500}@media (max-width: 768px){.dashboard-sidebar{width:100%;position:static}.sidebar-nav{flex-direction:row;overflow-x:auto;padding-bottom:10px}.sidebar-item{white-space:nowrap;min-width:fit-content}}.dashboard-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 0;box-shadow:0 2px 8px #0000001a}.header-content{max-width:1400px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;gap:20px}.header-left{display:flex;align-items:center;gap:20px;flex:1}.back-link{color:#fff;text-decoration:none;font-size:.95rem;opacity:.9;transition:opacity .3s}.back-link:hover{opacity:1}.dashboard-title{font-size:1.5rem;font-weight:600;margin:0}.building-name{font-size:1.2rem;opacity:.9;font-weight:400}.header-right{display:flex;align-items:center}.user-info{display:flex;align-items:center;gap:15px}.user-role{background:#fff3;padding:6px 12px;border-radius:6px;font-size:.9rem}.user-phone{font-size:.9rem;opacity:.9}.logout-button{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background .3s}.inbox-notification-button{position:relative;background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:8px 12px;border-radius:6px;cursor:pointer;font-size:1.2rem;transition:all .3s;display:flex;align-items:center;gap:5px}.inbox-notification-button:hover{background:#ffffff4d;transform:scale(1.05)}.inbox-badge{background:#f44336;color:#fff;border-radius:10px;padding:2px 6px;font-size:.7rem;font-weight:600;min-width:18px;text-align:center}@media (max-width: 768px){.header-content{flex-direction:column;align-items:flex-start}.dashboard-title{font-size:1.2rem}.building-name{display:block;font-size:1rem;margin-top:5px}.user-info{flex-wrap:wrap;width:100%}}.dashboard-section{width:100%}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.section-header h2{margin:0;color:#333;font-size:1.5rem}.units-info{display:flex;align-items:center;gap:15px}.units-count{color:#666;font-size:.95rem;font-weight:500}.units-full-message{color:#f57c00;font-size:.95rem;font-weight:500;padding:8px 16px;background:#fff3e0;border-radius:6px}.add-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:transform .2s}.add-button:hover{transform:translateY(-2px)}.residents-list{display:grid;gap:20px}.resident-card{background:#f9f9f9;border-radius:12px;padding:20px;display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid #e0e0e0;transition:all .3s}.resident-card.unit-empty{background:#f5f5f5;border:2px dashed #ccc;opacity:.8}.resident-info{flex:1}.resident-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.resident-header h3{margin:0;color:#333;font-size:1.2rem}.resident-type{padding:4px 12px;border-radius:6px;font-size:.85rem;font-weight:500}.resident-type.owner{background:#e3f2fd;color:#1976d2}.resident-type.tenant{background:#fff3e0;color:#f57c00}.unit-status{padding:4px 12px;border-radius:6px;font-size:.85rem;font-weight:500}.unit-status.empty{background:#e0e0e0;color:#666}.unit-empty-message{color:#999;font-style:italic;padding:10px 0}.unit-empty-message p{margin:0}.resident-details{display:flex;flex-direction:column;gap:5px}.resident-details p{margin:0;color:#666;font-size:.95rem}.meter-info-section{margin-top:15px;padding-top:15px;border-top:1px solid #e0e0e0}.meter-info-section h4{margin:0 0 10px;color:#667eea;font-size:1rem;font-weight:600}.meter-info{margin:8px 0;font-size:.9rem;color:#555}.meter-info strong{color:#333;margin-left:5px}.meter-info-display{background:#f5f5f5;padding:15px;border-radius:8px;border:1px solid #e0e0e0}.meter-info-display p{margin:8px 0;color:#333;font-size:.95rem}.meter-info-display strong{color:#667eea;margin-left:5px}.resident-actions{display:flex;gap:10px}.edit-button,.delete-button,.vacate-button,.add-unit-button{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .3s}.edit-button{background:#4caf50;color:#fff}.edit-button:hover{background:#45a049}.delete-button{background:#f44336;color:#fff}.delete-button:hover{background:#da190b}.vacate-button{background:#ff9800;color:#fff}.vacate-button:hover{background:#f57c00}.add-unit-button{background:#4caf50;color:#fff}.add-unit-button:hover{background:#45a049}.no-units-message{text-align:center;padding:40px 20px;color:#999}.no-units-message p{margin:0;font-size:1.1rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0}.modal-header h3{margin:0;color:#333}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.modal-body{padding:20px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #e0e0e0}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;color:#333;font-weight:500}.form-section-divider{margin:20px 0 15px;padding-top:20px;border-top:2px solid #e0e0e0}.form-section-divider h4{margin:0;color:#667eea;font-size:1.1rem;font-weight:600}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px;border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea}.form-group input:disabled,.form-group select:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.7}.form-group textarea{resize:vertical;min-height:100px}.btn-cancel,.btn-submit{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:1rem;transition:all .3s}.btn-cancel{background:#e0e0e0;color:#333}.btn-cancel:hover{background:#d0d0d0}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.tabs-container{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid #e0e0e0;padding-bottom:0}.tab-button{padding:12px 24px;border:none;background:none;cursor:pointer;font-size:1rem;font-weight:500;color:#666;border-bottom:3px solid transparent;transition:all .3s;margin-bottom:-2px}.tab-button:hover{color:#667eea;background:#f5f5f5}.tab-button.active{color:#667eea;border-bottom-color:#667eea;font-weight:600}.charges-list{display:flex;flex-direction:column;gap:20px}.charge-card{background:#f9f9f9;border-radius:12px;padding:20px;border:1px solid #e0e0e0}.charge-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.charge-header h3{margin:0;color:#333}.charge-amount{font-size:1.3rem;font-weight:600;color:#667eea}.payments-list{margin-top:15px;padding-top:15px;border-top:1px solid #e0e0e0}.payment-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background:#fff;border-radius:6px;margin-bottom:8px}.payment-status{padding:4px 12px;border-radius:6px;font-size:.85rem;font-weight:500}.payment-status.paid{background:#c8e6c9;color:#2e7d32}.payment-status.pending{background:#ffecb3;color:#f57c00}.expenses-list{display:flex;flex-direction:column;gap:20px}.expense-card{background:#f9f9f9;border-radius:12px;padding:20px;border:1px solid #e0e0e0}.expense-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:15px}.expense-header h3{margin:0 0 5px;color:#333;font-size:1.1rem}.expense-category{display:inline-block;padding:4px 12px;border-radius:6px;font-size:.85rem;font-weight:500;margin-top:5px}.expense-category.maintenance{background:#e3f2fd;color:#1976d2}.expense-category.utilities{background:#fff3e0;color:#f57c00}.expense-category.cleaning{background:#f3e5f5;color:#7b1fa2}.expense-category.security{background:#e8f5e9;color:#388e3c}.expense-category.other{background:#f5f5f5;color:#616161}.expense-amount{font-size:1.3rem;font-weight:600;color:#f44336}.expense-actions{display:flex;gap:10px;justify-content:flex-end}.balance-section{width:100%}.balance-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.balance-card{background:#f9f9f9;border-radius:12px;padding:20px;border:2px solid #e0e0e0;text-align:center}.balance-card h3{margin:0 0 15px;color:#333;font-size:1rem}.balance-amount{font-size:1.8rem;font-weight:700;margin:10px 0}.balance-card.income .balance-amount{color:#2196f3}.balance-card.received .balance-amount{color:#4caf50}.balance-card.expenses .balance-amount,.balance-card.remaining .balance-amount.negative{color:#f44336}.balance-card.remaining .balance-amount.positive{color:#4caf50}.balance-card.final.positive{border-color:#4caf50;background:#e8f5e9}.balance-card.final.negative{border-color:#f44336;background:#ffebee}.balance-card.final .balance-amount.positive{color:#2e7d32}.balance-card.final .balance-amount.negative{color:#c62828}.balance-description{color:#666;font-size:.85rem;margin:10px 0 0}.balance-details{background:#f9f9f9;border-radius:12px;padding:20px;border:1px solid #e0e0e0}.balance-details h3{margin:0 0 20px;color:#333;font-size:1.2rem}.balance-table{display:flex;flex-direction:column;gap:15px}.balance-row{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#fff;border-radius:8px;border:1px solid #e0e0e0}.balance-row.total{background:#f5f5f5;font-size:1.1rem;font-weight:600;border:2px solid #667eea}.balance-row span{color:#666}.balance-row strong{color:#333}.balance-row strong.positive{color:#4caf50}.balance-row strong.negative{color:#f44336}.no-data-message{text-align:center;padding:40px 20px;color:#999}.no-data-message p{margin:0;font-size:1.1rem}.consumption-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:30px}.stat-card{background:#f9f9f9;border-radius:8px;padding:15px;text-align:center;border:1px solid #e0e0e0}.stat-label{display:block;color:#666;font-size:.9rem;margin-bottom:8px}.stat-value{display:block;font-size:1.8rem;font-weight:700;color:#333}.consumption-filters{display:flex;gap:15px;margin-bottom:20px;padding:15px;background:#f5f5f5;border-radius:8px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:5px;min-width:150px}.filter-group label{font-size:.9rem;color:#666;font-weight:500}.filter-group select,.filter-group input{padding:8px;border:1px solid #e0e0e0;border-radius:6px;font-size:.9rem}.consumption-list{display:flex;flex-direction:column;gap:15px}.consumption-card{background:#f9f9f9;border-radius:12px;padding:20px;border:1px solid #e0e0e0}.consumption-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:15px}.consumption-header h3{margin:0 0 5px;color:#333;font-size:1.1rem;display:flex;align-items:center;gap:8px}.consumption-status{padding:6px 12px;border-radius:6px;font-size:.85rem;font-weight:600;background:#0000000d}.submission-info{background:#e3f2fd;padding:10px;border-radius:6px;margin-bottom:15px}.submission-info p{margin:0;color:#1976d2;font-size:.9rem}.consumption-actions{display:flex;gap:10px;flex-wrap:wrap}.submit-button{background:#4caf50;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .3s}.submit-button:hover{background:#45a049}.readonly-message{color:#999;font-size:.85rem;font-style:italic}.loading-state{text-align:center;padding:40px 20px;color:#666}.loading-state p{margin:0;font-size:1rem}.inbox-actions{display:flex;align-items:center;gap:15px}.unread-badge{background:#f44336;color:#fff;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:600}.mark-all-read-button{background:#2196f3;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .3s}.mark-all-read-button:hover{background:#1976d2}.inbox-filters{display:flex;gap:15px;margin-bottom:20px;padding:15px;background:#f5f5f5;border-radius:8px;flex-wrap:wrap}.inbox-container{display:grid;grid-template-columns:350px 1fr;gap:20px;height:calc(100vh - 300px);min-height:500px}.inbox-list{background:#fff;border-radius:8px;border:1px solid #e0e0e0;overflow-y:auto;padding:10px}.inbox-item{padding:15px;border-radius:8px;margin-bottom:10px;cursor:pointer;transition:all .3s;border:1px solid #e0e0e0;background:#f9f9f9}.inbox-item:hover{background:#f0f0f0;border-color:#667eea}.inbox-item.unread{background:#e3f2fd;border-color:#2196f3;font-weight:500}.inbox-item.selected{background:#667eea;color:#fff;border-color:#667eea}.inbox-item.selected .inbox-item-from,.inbox-item.selected .inbox-item-date,.inbox-item.selected .inbox-item-category{color:#ffffffe6}.inbox-item-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:8px}.inbox-item-info h4{margin:0 0 5px;font-size:1rem;color:inherit}.inbox-item-from{font-size:.85rem;color:#666;margin:0}.inbox-item-meta{display:flex;align-items:center;gap:8px}.priority-badge{padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:600;color:#fff}.unread-dot{width:10px;height:10px;background:#f44336;border-radius:50%;display:inline-block}.inbox-item-footer{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#999}.inbox-item-date,.inbox-item-category{color:inherit}.inbox-message-view{background:#fff;border-radius:8px;border:1px solid #e0e0e0;padding:20px;overflow-y:auto}.message-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e0e0e0}.message-header h3{margin:0 0 10px;color:#333;font-size:1.3rem}.message-from{color:#666;margin:5px 0}.message-date{color:#999;font-size:.9rem;margin:5px 0}.message-actions{display:flex;align-items:center;gap:10px}.reply-button{background:#4caf50;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .3s}.reply-button:hover{background:#45a049}.message-body{padding:20px 0;line-height:1.8;color:#333;font-size:1rem}.related-info{background:#f5f5f5;padding:10px;border-radius:6px;margin-top:15px;font-size:.9rem;color:#666}.reply-chain{background:#e3f2fd;padding:10px;border-radius:6px;margin-top:15px;font-size:.9rem;color:#1976d2}@media (max-width: 768px){.consumption-filters{flex-direction:column}.filter-group{width:100%}.consumption-header{flex-direction:column;gap:10px}.consumption-actions{width:100%;justify-content:flex-end}.inbox-container{grid-template-columns:1fr;height:auto}.inbox-list{max-height:400px}.message-header{flex-direction:column;gap:15px}.message-actions{width:100%;justify-content:flex-start}}.announcements-list{display:flex;flex-direction:column;gap:15px}.announcement-card{background:#f9f9f9;border-radius:12px;padding:20px;border-left:4px solid #667eea}.announcement-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:10px}.announcement-title{margin:0;color:#333;font-size:1.1rem}.announcement-priority{padding:4px 12px;border-radius:6px;font-size:.85rem;font-weight:500}.announcement-priority.high{background:#ffcdd2;color:#c62828}.announcement-priority.medium{background:#fff3e0;color:#f57c00}.announcement-priority.low{background:#e3f2fd;color:#1976d2}.announcement-content{color:#666;line-height:1.6;margin-bottom:10px}.announcement-date{color:#999;font-size:.85rem}.maintenance-list{display:flex;flex-direction:column;gap:15px}.maintenance-card{background:#f9f9f9;border-radius:12px;padding:20px;border:1px solid #e0e0e0}.maintenance-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:10px}.maintenance-title{margin:0;color:#333;font-size:1.1rem}.maintenance-status{padding:4px 12px;border-radius:6px;font-size:.85rem;font-weight:500}.maintenance-status.pending{background:#ffecb3;color:#f57c00}.maintenance-status.in_progress{background:#e1bee7;color:#7b1fa2}.maintenance-status.completed{background:#c8e6c9;color:#2e7d32}.maintenance-description{color:#666;margin-bottom:10px}.maintenance-unit{color:#999;font-size:.9rem}.meetings-list{display:flex;flex-direction:column;gap:20px}.meeting-card{background:#f9f9f9;border-radius:12px;padding:20px;border:1px solid #e0e0e0}.meeting-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:15px}.meeting-title{margin:0;color:#333;font-size:1.2rem}.meeting-status{padding:4px 12px;border-radius:6px;font-size:.85rem;font-weight:500}.meeting-status.scheduled{background:#e3f2fd;color:#1976d2}.meeting-status.completed{background:#c8e6c9;color:#2e7d32}.meeting-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-bottom:15px}.meeting-info-item{color:#666;font-size:.95rem}.meeting-agenda{margin-top:15px;padding-top:15px;border-top:1px solid #e0e0e0}.meeting-agenda h4{margin:0 0 10px;color:#333;font-size:1rem}.meeting-agenda ul{margin:0;padding-right:20px;color:#666}.image-preview-container{margin-top:15px;padding:15px;background:#f5f5f5;border-radius:8px;border:1px solid #e0e0e0}.image-preview{max-width:100%;max-height:300px;border-radius:8px;margin-bottom:10px;border:2px solid #e0e0e0;display:block}.image-metadata-info{background:#fff;padding:10px;border-radius:6px;font-size:.85rem;color:#666;margin-top:10px}.image-metadata-info p{margin:5px 0}.date-validation-warning{background:#fff3cd;border:1px solid #ffc107;color:#856404;padding:10px;border-radius:6px;margin-top:10px;font-size:.9rem}.consumption-image-info{background:#e3f2fd;padding:10px;border-radius:6px;margin:10px 0;display:flex;justify-content:space-between;align-items:center}.view-image-button{background:#2196f3;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .3s}.view-image-button:hover{background:#1976d2}.view-image-small-button{background:#2196f3;color:#fff;border:none;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:.8rem;margin-left:5px;transition:all .3s}.view-image-small-button:hover{background:#1976d2}@media (max-width: 768px){.resident-card{flex-direction:column;align-items:flex-start}.resident-actions{width:100%;justify-content:flex-end}.section-header{flex-direction:column;align-items:flex-start;gap:15px}}.building-dashboard{min-height:100vh;background-color:#f5f7fa}.dashboard-loading,.dashboard-error{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;gap:20px}.dashboard-content{display:flex;gap:20px;padding:20px;max-width:1400px;margin:0 auto}.dashboard-main{flex:1;background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a}@media (max-width: 768px){.dashboard-content{flex-direction:column;padding:10px}.dashboard-main{padding:20px}}.shop-header-component{background:#fffffffa;border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 20px 60px #00000026,0 0 0 1px #ffffff80;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:slideDown .6s ease-out}@media (max-width: 768px){.shop-header-top{flex-direction:column}.shop-stats-card{width:100%;justify-content:space-around}.shop-details{grid-template-columns:1fr}}.product-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:25px}.product-card{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;overflow:hidden;box-shadow:0 4px 15px #0000001a;transition:all .3s ease;border:1px solid #e9ecef}.product-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026}.product-image-container{position:relative;width:100%;height:250px;overflow:hidden;background:#f8f9fa}.product-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-card:hover .product-image{transform:scale(1.05)}.out-of-stock-badge{position:absolute;top:10px;left:10px;background:#000000b3;color:#fff;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:700}.product-info{padding:20px}.product-name{font-size:1.4rem;font-weight:700;color:#1a1a1a;margin-bottom:10px}.product-description{color:#666;font-size:.95rem;line-height:1.6;margin-bottom:15px}.product-variations{display:flex;flex-direction:column;gap:12px;margin-bottom:15px}.variation-group{display:flex;align-items:center;gap:10px}.variation-label{color:#666;font-weight:600;font-size:.9rem;min-width:60px}.variation-select{flex:1;padding:8px 12px;border:2px solid #e0e0e0;border-radius:8px;font-size:.9rem;font-family:Vazir,sans-serif;transition:all .3s ease}.variation-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.product-footer{display:flex;flex-direction:column;gap:12px;padding-top:15px;border-top:2px solid #f0f0f0}.product-price-section{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.product-price{font-size:1.5rem;font-weight:800;color:#667eea}.product-price-old{font-size:1.1rem;color:#999;text-decoration:line-through}.product-stock{color:#666;font-size:.9rem;font-weight:600}.product-actions{margin-top:10px}.basic-level-info{padding:12px;background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-radius:8px;color:#856404;font-size:.9rem;text-align:center;font-weight:600}.whatsapp-order-button,.add-to-cart-button{width:100%;padding:14px;background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif}.add-to-cart-button{background:linear-gradient(135deg,#667eea,#764ba2)}.whatsapp-order-button:hover,.add-to-cart-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.whatsapp-order-button:disabled,.add-to-cart-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.no-products{text-align:center;padding:60px 20px;color:#666;font-size:1.2rem}@media (max-width: 768px){.product-list{grid-template-columns:1fr}.product-image-container{height:200px}}.checkout-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10001;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.checkout-modal{background:#fff;border-radius:20px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:modalSlideIn .3s ease-out}.checkout-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;border-bottom:2px solid #f0f0f0;position:sticky;top:0;background:#fff;z-index:10}.checkout-header h2{color:#333;font-size:1.5rem;margin:0;font-weight:700}.checkout-close{background:none;border:none;font-size:2rem;color:#999;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;line-height:1}.checkout-close:hover{background:#f5f5f5;color:#333}.checkout-form{padding:30px}.checkout-items-summary{background:linear-gradient(135deg,#f8f9fa,#fff);padding:20px;border-radius:12px;margin-bottom:25px;border:1px solid #e9ecef}.checkout-items-summary h3{font-size:1.2rem;font-weight:700;color:#1a1a1a;margin-bottom:15px}.summary-items{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.summary-item{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e9ecef;font-size:.95rem}.summary-item:last-child{border-bottom:none}.summary-total{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#fff;border-radius:8px;border:2px solid #667eea;font-weight:700;font-size:1.2rem}.summary-total span:last-child{color:#667eea;font-size:1.4rem}.form-section{margin-bottom:30px}.form-section h3{font-size:1.2rem;font-weight:700;color:#1a1a1a;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:600;font-size:.95rem}.form-group input,.form-group textarea{width:100%;padding:12px 15px;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;font-family:Vazir,sans-serif;transition:all .3s ease;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group textarea{resize:vertical;min-height:80px}.payment-methods{display:flex;flex-direction:column;gap:12px}.payment-method{display:flex;align-items:center;gap:12px;padding:15px;background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:10px;border:2px solid #e0e0e0;cursor:pointer;transition:all .3s ease}.payment-method:hover{border-color:#667eea;background:linear-gradient(135deg,#e8f0fe,#fff)}.payment-method input[type=radio]{width:20px;height:20px;cursor:pointer}.payment-method input[type=radio]:checked+span{color:#667eea;font-weight:700}.payment-method span{font-size:1rem;font-weight:600;color:#1a1a1a}.checkout-footer{display:flex;gap:15px;padding-top:20px;border-top:2px solid #f0f0f0}.back-button,.submit-button{flex:1;padding:16px;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif}.back-button{background:#f5f5f5;color:#666}.back-button:hover{background:#e0e0e0}.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.submit-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.checkout-modal{max-width:100%;max-height:95vh}.checkout-form{padding:20px}.checkout-footer{flex-direction:column-reverse}.back-button,.submit-button{width:100%}}.cart-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cart-modal{background:#fff;border-radius:20px;width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:modalSlideIn .3s ease-out}.cart-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;border-bottom:2px solid #f0f0f0}.cart-header h2{color:#333;font-size:1.5rem;margin:0;font-weight:700}.cart-close{background:none;border:none;font-size:2rem;color:#999;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;line-height:1}.cart-close:hover{background:#f5f5f5;color:#333}.cart-items{flex:1;overflow-y:auto;padding:20px 30px}.cart-empty{padding:60px 30px;text-align:center;color:#666;font-size:1.2rem}.cart-item{display:flex;gap:15px;padding:20px;background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:12px;margin-bottom:15px;border:1px solid #e9ecef}.cart-item-image{width:100px;height:100px;border-radius:10px;overflow:hidden;background:#f0f0f0;flex-shrink:0}.cart-item-image img{width:100%;height:100%;object-fit:cover}.cart-item-info{flex:1;display:flex;flex-direction:column;gap:8px}.cart-item-name{font-size:1.1rem;font-weight:700;color:#1a1a1a;margin:0}.cart-item-variations{display:flex;gap:8px;flex-wrap:wrap}.variation-tag{padding:4px 10px;background:#e8f0fe;color:#667eea;border-radius:12px;font-size:.85rem;font-weight:600}.cart-item-price{color:#667eea;font-weight:700;font-size:1rem}.cart-item-controls{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.quantity-controls{display:flex;align-items:center;gap:10px;background:#f8f9fa;border-radius:8px;padding:5px}.quantity-btn{width:30px;height:30px;border:none;background:#fff;border-radius:6px;font-size:1.2rem;font-weight:700;color:#667eea;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.quantity-btn:hover{background:#667eea;color:#fff}.quantity-value{min-width:30px;text-align:center;font-weight:700;color:#1a1a1a}.cart-item-total{font-size:1.1rem;font-weight:800;color:#667eea}.remove-item-btn{background:#ff6b6b;color:#fff;border:none;border-radius:8px;padding:8px 12px;cursor:pointer;font-size:1rem;transition:all .3s ease}.remove-item-btn:hover{background:#ee5a6f;transform:scale(1.05)}.cart-footer{padding:25px 30px;border-top:2px solid #f0f0f0;background:linear-gradient(135deg,#f8f9fa,#fff)}.cart-total{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px;background:#fff;border-radius:12px;border:2px solid #667eea}.total-label{font-size:1.2rem;font-weight:700;color:#1a1a1a}.total-value{font-size:1.8rem;font-weight:800;color:#667eea}.checkout-button{width:100%;padding:16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif}.checkout-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}@media (max-width: 768px){.cart-modal{max-width:100%;max-height:95vh}.cart-item{flex-direction:column}.cart-item-image{width:100%;height:200px}.cart-item-controls{flex-direction:row;justify-content:space-between;align-items:center;width:100%}}.market-map-container{width:100%}.market-map-container h2{font-size:1.8rem;font-weight:700;color:#1a1a1a;margin-bottom:20px;background:linear-gradient(135deg,#333,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.market-map-wrapper{display:grid;grid-template-columns:1fr 300px;gap:25px}.market-map{position:relative;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-radius:12px;border:3px solid #4caf50;overflow:hidden;box-shadow:0 4px 15px #0000001a}.market-shop-marker{position:absolute;transform:translate(-50%,-50%);cursor:pointer;z-index:10}.marker-pin{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));transition:transform .3s ease}.market-shop-marker:hover .marker-pin{transform:scale(1.2)}.current-shop .marker-pin{animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.marker-label{position:absolute;top:-35px;left:50%;transform:translate(-50%);background:#000c;color:#fff;padding:4px 8px;border-radius:6px;font-size:.75rem;white-space:nowrap;font-weight:600}.map-legend{background:linear-gradient(135deg,#f8f9fa,#fff);padding:20px;border-radius:12px;border:1px solid #e9ecef}.map-legend h3{font-size:1.2rem;font-weight:700;color:#1a1a1a;margin-bottom:15px}.legend-items{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding-bottom:20px;border-bottom:2px solid #e9ecef}.legend-item{display:flex;align-items:center;gap:10px;font-size:.95rem;color:#666}.legend-icon{font-size:1.5rem}.shop-list h4{font-size:1rem;font-weight:700;color:#1a1a1a;margin-bottom:12px}.shop-list ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.shop-list li{padding:10px;background:#fff;border-radius:8px;border-right:3px solid #e9ecef;font-size:.9rem;color:#666;transition:all .3s ease}.shop-list li:hover{border-right-color:#667eea;background:#e8f0fe;transform:translate(-3px)}.shop-list li.current{background:linear-gradient(135deg,#e8f0fe,#fff);border-right-color:#667eea;font-weight:700;color:#667eea}@media (max-width: 768px){.market-map-wrapper{grid-template-columns:1fr}.market-map{width:100%!important;height:250px!important}}.shop-search-container{width:100%}.shop-search-container h2{font-size:1.8rem;font-weight:700;color:#1a1a1a;margin-bottom:20px;background:linear-gradient(135deg,#333,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.search-input-wrapper{position:relative;margin-bottom:25px}.shop-search-input{width:100%;padding:16px 50px 16px 20px;border:2px solid #e0e0e0;border-radius:12px;font-size:1.1rem;font-family:Vazir,sans-serif;transition:all .3s ease}.shop-search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.search-icon{position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:1.5rem;pointer-events:none}.search-results{background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:12px;padding:20px;border:1px solid #e9ecef}.results-header{margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e9ecef}.results-header h3{font-size:1.2rem;font-weight:700;color:#1a1a1a}.results-list{display:flex;flex-direction:column;gap:15px}.search-result-item{display:flex;gap:15px;padding:20px;background:#fff;border-radius:12px;border:1px solid #e9ecef;text-decoration:none;color:inherit;transition:all .3s ease}.search-result-item:hover{transform:translate(-5px);box-shadow:0 6px 20px #0000001a;border-color:#667eea}.result-shop-info{display:flex;flex-direction:column;gap:8px;min-width:150px;padding-right:15px;border-right:2px solid #f0f0f0}.result-shop-name{font-weight:700;color:#667eea;font-size:1rem}.result-shop-category{font-size:.85rem;color:#666;background:#f8f9fa;padding:4px 10px;border-radius:12px;display:inline-block;width:fit-content}.result-product-info{flex:1;display:flex;flex-direction:column;gap:8px}.result-product-name{font-size:1.2rem;font-weight:700;color:#1a1a1a;margin:0}.result-product-description{font-size:.9rem;color:#666;line-height:1.6;margin:0}.result-product-price{display:flex;align-items:center;gap:12px;margin-top:8px}.price-old{font-size:.9rem;color:#999;text-decoration:line-through}.price-new{font-size:1.3rem;font-weight:800;color:#667eea}.no-results{text-align:center;padding:40px 20px;color:#666;font-size:1.1rem}.search-suggestions{background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:12px;padding:25px;border:1px solid #e9ecef}.search-suggestions h3{font-size:1.2rem;font-weight:700;color:#1a1a1a;margin-bottom:15px}.suggestions-grid{display:flex;flex-wrap:wrap;gap:12px}.suggestion-tag{padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:20px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif}.suggestion-tag:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}@media (max-width: 768px){.search-result-item{flex-direction:column}.result-shop-info{border-right:none;border-bottom:2px solid #f0f0f0;padding-right:0;padding-bottom:15px}}.shop-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;position:relative;overflow-x:hidden}.shop-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.1) 0%,transparent 50%);pointer-events:none}.shop-page-container{max-width:1400px;margin:0 auto;position:relative;z-index:1}.back-button,.dashboard-button{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:#fff3;color:#fff;text-decoration:none;border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-weight:600;border:2px solid rgba(255,255,255,.3);font-size:1rem;min-height:44px;-webkit-tap-highlight-color:rgba(255,255,255,.2)}.back-button:hover,.dashboard-button:hover{background:#ffffff4d;transform:translateY(-2px);box-shadow:0 8px 20px #0003}.shop-header{background:#fffffffa;border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 20px 60px #00000026,0 0 0 1px #ffffff80;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:slideDown .6s ease-out}.shop-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:30px;padding-bottom:30px;border-bottom:2px solid #f0f0f0}.shop-info-card{flex:1}.shop-name{font-size:2.5rem;font-weight:800;color:#1a1a1a;margin-bottom:15px;background:linear-gradient(135deg,#333,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.shop-meta{display:flex;gap:20px;flex-wrap:wrap}.shop-category,.shop-unit{padding:8px 16px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:20px;font-size:.95rem;font-weight:600;color:#495057}.shop-stats-card{display:flex;gap:20px;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px 30px;border-radius:16px;box-shadow:0 10px 30px #667eea4d}.stat-item{display:flex;flex-direction:column;align-items:center;gap:8px}.stat-label{color:#ffffffe6;font-size:.9rem;font-weight:600}.stat-value{color:#fff;font-size:1.8rem;font-weight:800}.shop-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px}.detail-section{background:linear-gradient(135deg,#f8f9fa,#fff);padding:20px;border-radius:12px;border-right:4px solid #667eea}.detail-section h3{color:#1a1a1a;font-size:1.3rem;margin-bottom:15px;font-weight:700}.contact-info{display:flex;flex-direction:column;gap:12px}.contact-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #e9ecef}.contact-item:last-child{border-bottom:none}.contact-label{color:#666;font-weight:600;font-size:.95rem}.contact-value{color:#1a1a1a;font-weight:600;text-decoration:none;transition:color .3s ease}.contact-value:hover{color:#667eea}.whatsapp-link{color:#25d366!important}.working-hours{display:flex;flex-direction:column;gap:15px}.today-hours{display:flex;justify-content:space-between;align-items:center;padding:12px;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-radius:8px;font-weight:600}.hours-label{color:#2e7d32}.hours-value{color:#1b5e20;font-size:1.1rem}.all-hours{display:flex;flex-direction:column;gap:8px}.hours-item{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e9ecef}.hours-item:last-child{border-bottom:none}.day-name{color:#666;font-weight:600}.day-hours{color:#1a1a1a;font-weight:500}.social-links{display:flex;gap:15px;flex-wrap:wrap}.social-link{padding:12px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;text-decoration:none;border-radius:10px;font-weight:600;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px}.social-link:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.instagram{background:linear-gradient(135deg,#e4405f,#c13584)}.telegram{background:linear-gradient(135deg,#08c,#069)}.market-link-section{margin-bottom:30px;text-align:center}.market-link-button{display:inline-flex;align-items:center;gap:10px;padding:16px 32px;background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;text-decoration:none;border-radius:12px;font-weight:700;font-size:1.1rem;transition:all .3s ease;box-shadow:0 4px 15px #25d3664d}.market-link-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #25d36666}.market-map-section,.products-section{background:#fffffffa;border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 20px 60px #00000026,0 0 0 1px #ffffff80}.products-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;flex-wrap:wrap;gap:15px}.products-header h2{font-size:2rem;font-weight:800;color:#1a1a1a;background:linear-gradient(135deg,#333,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.products-controls{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.product-search-input{padding:12px 20px;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;font-family:Vazir,sans-serif;transition:all .3s ease;min-width:250px}.product-search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.cart-toggle-button{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif}.cart-toggle-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.shop-not-found{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;gap:25px}.shop-not-found h2{font-size:2.5rem;font-weight:700}.shop-not-found a{color:#fff;text-decoration:underline;font-weight:600}@media (max-width: 768px){.shop-page{padding:10px}.shop-header{padding:20px}.shop-header-top{flex-direction:column}.shop-name{font-size:1.8rem}.shop-stats-card{width:100%;justify-content:space-around;padding:15px 20px}.stat-value{font-size:1.4rem}.shop-details{grid-template-columns:1fr;gap:15px}.products-section{padding:20px}.products-header{flex-direction:column;align-items:stretch}.products-header h2{font-size:1.5rem}.products-controls{width:100%;flex-direction:column;gap:10px}.product-search-input{width:100%;min-width:0;min-height:44px}.cart-toggle-button,.back-button,.dashboard-button{width:100%;min-height:44px}.header-actions{flex-direction:column;gap:10px}.social-link{min-height:44px;padding:12px 16px}}@media (max-width: 480px){.shop-page{padding:8px}.shop-header{padding:15px}.shop-name{font-size:1.5rem}.stat-value{font-size:1.2rem}.products-section{padding:15px}}.shop-dashboard{min-height:100vh;background:#f5f5f5}.shop-dashboard-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 30px;box-shadow:0 4px 15px #0000001a}.header-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.header-left{display:flex;flex-direction:column;gap:10px}.back-link{color:#ffffffe6;text-decoration:none;font-size:.9rem;transition:color .3s ease}.back-link:hover{color:#fff}.dashboard-title{font-size:1.8rem;font-weight:700;margin:0}.shop-name{font-size:1.2rem;opacity:.9}.header-right{display:flex;align-items:center;gap:15px}.user-info{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.user-role,.user-phone{font-size:.95rem;opacity:.9}.logout-button{padding:8px 20px;background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3);border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease;font-family:Vazir,sans-serif}.logout-button:hover{background:#ffffff4d}.dashboard-content{max-width:1400px;margin:0 auto;padding:30px;display:grid;grid-template-columns:250px 1fr;gap:30px}.dashboard-sidebar{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 10px #0000000d;height:fit-content;position:sticky;top:20px}.sidebar-nav{display:flex;flex-direction:column;gap:10px}.nav-item{padding:15px;background:#f8f9fa;border:none;border-radius:10px;text-align:right;cursor:pointer;font-size:1rem;font-weight:600;color:#666;transition:all .3s ease;font-family:Vazir,sans-serif}.nav-item:hover{background:#e9ecef;transform:translate(-5px)}.nav-item.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.dashboard-main{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000000d}.management-section{width:100%}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}.section-header h2{font-size:1.8rem;font-weight:700;color:#1a1a1a;margin:0}.add-button{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif}.add-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.product-card-admin{background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:12px;padding:20px;border:1px solid #e9ecef;transition:all .3s ease}.product-card-admin:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-3px)}.product-image-admin{width:100%;height:200px;border-radius:8px;overflow:hidden;background:#f0f0f0;margin-bottom:15px}.product-image-admin img{width:100%;height:100%;object-fit:cover}.product-info-admin h3{font-size:1.2rem;font-weight:700;color:#1a1a1a;margin-bottom:10px}.product-info-admin p{color:#666;font-size:.9rem;margin-bottom:15px;line-height:1.6}.product-meta{display:flex;flex-direction:column;gap:8px;margin-bottom:15px;padding:12px;background:#f8f9fa;border-radius:8px}.product-meta span{font-size:.9rem;color:#666;font-weight:600}.product-actions-admin{display:flex;gap:10px}.edit-btn,.delete-btn{flex:1;padding:10px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif}.edit-btn{background:#667eea;color:#fff}.edit-btn:hover{background:#5568d3}.delete-btn{background:#ff6b6b;color:#fff}.delete-btn:hover{background:#ee5a6f}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.stat-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:30px;border-radius:12px;text-align:center;box-shadow:0 4px 15px #667eea4d}.stat-card h3{font-size:1rem;font-weight:600;margin-bottom:15px;opacity:.9}.stat-value{font-size:2.5rem;font-weight:800}.settings-form{max-width:600px}.settings-form .form-group{margin-bottom:20px}.settings-form label{display:block;margin-bottom:8px;color:#333;font-weight:600;font-size:.95rem}.settings-form input,.settings-form select{width:100%;padding:12px 15px;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;font-family:Vazir,sans-serif;transition:all .3s ease;box-sizing:border-box}.settings-form input:focus,.settings-form select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.save-button{padding:14px 30px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-weight:700;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif;font-size:1rem}.save-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.empty-state{text-align:center;padding:60px 20px;color:#666;font-size:1.1rem}.dashboard-loading,.dashboard-error{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px}.loading-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:20px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;border-bottom:2px solid #f0f0f0}.modal-header h2{color:#333;font-size:1.5rem;margin:0;font-weight:700}.modal-close{background:none;border:none;font-size:2rem;color:#999;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;line-height:1}.modal-close:hover{background:#f5f5f5;color:#333}.modal-body{padding:30px}.modal-footer{display:flex;justify-content:flex-end;gap:15px;padding:20px 30px;border-top:2px solid #f0f0f0}.btn-cancel,.btn-submit{padding:12px 30px;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif}.btn-cancel{background:#f5f5f5;color:#666}.btn-cancel:hover{background:#e0e0e0}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}@media (max-width: 1024px){.dashboard-content{grid-template-columns:200px 1fr}}@media (max-width: 768px){.dashboard-content{grid-template-columns:1fr}.dashboard-sidebar{position:static}.sidebar-nav{flex-direction:row;overflow-x:auto}.nav-item{white-space:nowrap}.products-grid{grid-template-columns:1fr}}.market-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;position:relative;overflow-x:hidden}.market-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.1) 0%,transparent 50%);pointer-events:none}.market-page-container{max-width:1400px;margin:0 auto;position:relative;z-index:1}.header-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:15px;flex-wrap:wrap}.back-button,.directory-button{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:#fff3;color:#fff;text-decoration:none;border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-weight:600;border:2px solid rgba(255,255,255,.3);font-size:1rem}.back-button:hover,.directory-button:hover{background:#ffffff4d;transform:translateY(-2px);box-shadow:0 8px 20px #0003}.market-header{background:#fffffffa;border-radius:20px;padding:40px;margin-bottom:30px;box-shadow:0 20px 60px #00000026,0 0 0 1px #ffffff80;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:slideDown .6s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.market-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;flex-wrap:wrap}.market-info{flex:1}.market-name{font-size:3rem;font-weight:800;color:#1a1a1a;margin-bottom:15px;background:linear-gradient(135deg,#333,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.market-location{font-size:1.2rem;color:#666;font-weight:600}.market-stats{display:flex;gap:20px;flex-wrap:wrap}.market-stat-item{display:flex;flex-direction:column;align-items:center;padding:20px 25px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 10px 30px #667eea4d;min-width:120px}.market-stat-item .stat-label{color:#ffffffe6;font-size:.9rem;font-weight:600;margin-bottom:8px}.market-stat-item .stat-value{color:#fff;font-size:2rem;font-weight:800}.market-search-section{background:#fffffffa;border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 20px 60px #00000026,0 0 0 1px #ffffff80}.search-bar{display:flex;align-items:center;gap:15px;margin-bottom:25px}.search-icon{font-size:1.5rem;color:#667eea}.search-input{flex:1;padding:16px 20px;border:2px solid #e0e0e0;border-radius:12px;font-size:1.1rem;font-family:Vazir,sans-serif;transition:all .3s ease}.search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.categories-filter{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.filter-label{font-weight:700;color:#1a1a1a;font-size:1rem}.categories-chips{display:flex;flex-wrap:wrap;gap:12px}.category-chip{padding:10px 20px;background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #e9ecef;border-radius:25px;font-size:.95rem;font-weight:600;color:#666;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif}.category-chip:hover{border-color:#667eea;color:#667eea;transform:translateY(-2px)}.category-chip.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding:15px 20px;background:#fffffffa;border-radius:12px;box-shadow:0 4px 15px #0000001a}.results-count{font-size:1.1rem;font-weight:700;color:#1a1a1a}.results-count span{color:#667eea;font-size:1.3rem}.view-mode-toggle{display:flex;gap:8px}.view-btn{width:40px;height:40px;border:2px solid #e0e0e0;background:#fff;border-radius:8px;font-size:1.2rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.view-btn:hover{border-color:#667eea;color:#667eea}.view-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent}.shops-grid{display:grid;gap:25px;margin-bottom:40px}.shops-grid.grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.shops-grid.list{grid-template-columns:1fr}.shop-card{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 4px 15px #0000001a;transition:all .3s ease;border:2px solid transparent;display:flex;flex-direction:column}.shop-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026;border-color:#667eea}.shop-card.list{flex-direction:row}.shop-card-image{position:relative;width:100%;height:200px;overflow:hidden;background:#f0f0f0}.shop-card.list .shop-card-image{width:250px;height:100%;flex-shrink:0}.shop-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.shop-card:hover .shop-card-image img{transform:scale(1.05)}.discount-badge{position:absolute;top:10px;right:10px;background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:700;box-shadow:0 4px 10px #ff6b6b66}.shop-card-info{padding:20px;flex:1;display:flex;flex-direction:column;gap:12px}.shop-card-name{font-size:1.4rem;font-weight:700;color:#1a1a1a;margin:0}.shop-card-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:.9rem;color:#666}.shop-card-meta span{padding:6px 12px;background:#f0f0f0;border-radius:12px;font-weight:600}.shop-card-description{color:#666;font-size:.95rem;margin:0}.shop-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:15px;border-top:2px solid #f0f0f0}.shop-stats{display:flex;gap:15px;font-size:.9rem;color:#666;font-weight:600}.shop-level-badge{padding:6px 12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;font-size:.85rem;font-weight:700}.market-map-view{height:600px;border-radius:16px;overflow:hidden;box-shadow:0 4px 15px #0000001a;margin-bottom:40px;background:#fff}.discounts-section{background:#fffffffa;border-radius:20px;padding:40px;margin-top:40px;box-shadow:0 20px 60px #00000026,0 0 0 1px #ffffff80}.discounts-section h2{font-size:2rem;font-weight:700;color:#1a1a1a;margin-bottom:25px;text-align:center;background:linear-gradient(135deg,#333,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.discounts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.discount-card{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-radius:16px;padding:25px;text-decoration:none;color:inherit;position:relative;overflow:hidden;border:2px solid #ffc107;transition:all .3s ease}.discount-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #ffc1074d}.discount-badge-large{position:absolute;top:15px;left:15px;background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff;padding:8px 14px;border-radius:20px;font-size:.9rem;font-weight:700}.discount-card h3{font-size:1.4rem;font-weight:700;color:#1a1a1a;margin:40px 0 10px}.discount-card p{color:#666;font-size:1rem;margin-bottom:15px}.discount-shop-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:15px}.discount-shop-meta span{padding:6px 12px;background:#fff;border-radius:12px;font-size:.85rem;font-weight:600;color:#666}.market-not-found{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;gap:25px;text-align:center}.market-not-found h2{font-size:2.5rem;font-weight:700}.market-not-found p{font-size:1.2rem;opacity:.9}.market-not-found a{color:#fff;text-decoration:underline;font-weight:600}.no-results{text-align:center;padding:60px 20px;color:#666;background:#fffffffa;border-radius:16px}.no-results p{font-size:1.3rem;margin-bottom:20px}.no-results button{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:Vazir,sans-serif}.no-results button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.scroll-to-top{position:fixed;bottom:30px;left:30px;width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;box-shadow:0 8px 25px #667eea66;z-index:9998;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.scroll-to-top:hover{transform:translateY(-5px);box-shadow:0 12px 35px #667eea80}.featured-products-section{background:#fffffffa;border-radius:20px;padding:40px;margin-top:40px;box-shadow:0 20px 60px #00000026,0 0 0 1px #ffffff80}.featured-products-section .section-title{font-size:2rem;font-weight:700;color:#1a1a1a;margin-bottom:10px;text-align:center;background:linear-gradient(135deg,#333,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.featured-products-section .section-subtitle{text-align:center;color:#666;font-size:1.1rem;margin-bottom:30px}.featured-products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:25px}.featured-products-carousel .featured-product-card{height:100%}.featured-product-card{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 4px 15px #0000001a;transition:all .3s ease;border:2px solid transparent;display:flex;flex-direction:column}.featured-product-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026;border-color:#667eea}.featured-product-image{position:relative;width:100%;height:200px;overflow:hidden;background:#f0f0f0}.featured-product-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.featured-product-card:hover .featured-product-image img{transform:scale(1.05)}.featured-product-discount-badge{position:absolute;top:10px;right:10px;background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:700;box-shadow:0 4px 10px #ff6b6b66}.featured-product-out-of-stock{position:absolute;top:10px;left:10px;background:#000000b3;color:#fff;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:700}.featured-product-info{padding:20px;flex:1;display:flex;flex-direction:column;gap:10px}.featured-product-name{font-size:1.2rem;font-weight:700;color:#1a1a1a;margin:0}.featured-product-shop{font-size:.9rem;color:#667eea;font-weight:600;margin:0}.featured-product-description{color:#666;font-size:.9rem;margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.featured-product-footer{margin-top:auto;padding-top:15px;border-top:2px solid #f0f0f0}.featured-product-price-section{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.featured-product-price{font-size:1.2rem;font-weight:700;color:#667eea}.featured-product-price-old{font-size:.9rem;color:#999;text-decoration:line-through}.featured-product-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:.85rem;color:#666}.featured-product-meta span{padding:4px 10px;background:#f0f0f0;border-radius:12px;font-weight:600}@media (max-width: 768px){.market-page{padding:10px}.market-header{padding:20px}.featured-products-grid{grid-template-columns:1fr}.market-header-top{flex-direction:column}.market-name{font-size:1.8rem}.market-stats{width:100%;justify-content:space-around;padding:15px 20px}.stat-value{font-size:1.4rem}.shops-grid.grid{grid-template-columns:1fr}.shop-card.list{flex-direction:column}.shop-card.list .shop-card-image{width:100%;height:200px}.results-header{flex-direction:column;gap:15px;align-items:stretch}.market-map-view{height:400px}.back-button{width:100%;min-height:44px}.header-actions{flex-direction:column;gap:10px}.shop-market{min-height:44px;padding:12px 16px}}@media (max-width: 480px){.market-page{padding:8px}.market-header{padding:15px}.market-name{font-size:1.5rem}.stat-value{font-size:1.2rem}}.app{min-height:100vh}*{margin:0;padding:0;box-sizing:border-box}@font-face{font-family:Vazir;font-style:normal;font-weight:400;src:url(https://cdn.jsdelivr.net/npm/vazir-font@30.1.0/dist/Vazir.woff2) format("woff2"),url(https://cdn.jsdelivr.net/npm/vazir-font@30.1.0/dist/Vazir.woff) format("woff");font-display:swap}body{font-family:Vazir,Tahoma,Arial,Segoe UI,sans-serif!important;direction:rtl;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{font-family:Vazir,Tahoma,Arial,Segoe UI,sans-serif!important}#root{min-height:100vh}@media (max-width: 768px){body{font-size:14px}button,a.button,.button{min-height:44px;-webkit-tap-highlight-color:rgba(0,0,0,.1)}input,select,textarea{font-size:16px!important}*{-webkit-overflow-scrolling:touch}}@media (max-width: 480px){body{font-size:13px}}
