@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}*,:before,:after{box-sizing:border-box}:root{color:var(--color-onBackground);background:var(--color-background);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Manrope,system-ui,-apple-system,sans-serif;font-weight:500;line-height:1.5}body{background:var(--color-background);min-height:100vh;margin:0}#root{min-height:100vh}a{color:var(--color-primary);text-decoration:none}button,input,textarea,select{font:inherit}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--color-secondary,#2563eb);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible),textarea:focus:not(:focus-visible),select:focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{grid-template-columns:292px minmax(0,1fr);gap:16px;min-height:100vh;padding:16px;display:grid}.app-shell__sidebar-toggle{background:color-mix(in srgb, var(--color-primary) 10%, transparent);width:32px;height:32px;color:var(--color-primary);cursor:pointer;border:0;border-radius:10px;flex-shrink:0;place-items:center;display:grid}.app-shell__sidebar--collapsed .app-shell__brand{text-align:center;font-size:18px}.app-shell__sidebar--collapsed .nav-link{justify-content:center;padding-inline:8px}.app-shell__sidebar--collapsed .nav-link__label{display:none}.notifications-menu{position:relative}.notifications-menu__trigger{background:var(--color-surfaceContainer);width:36px;height:36px;color:var(--color-onSurfaceVariant);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid;position:relative}.home-header__notifications .notifications-menu__trigger{background:var(--color-surfaceContainer)}.notifications-menu__badge{background:var(--color-error);min-width:18px;height:18px;color:var(--color-onError);border:2px solid var(--color-surface);border-radius:999px;place-items:center;padding:0 4px;font-size:10px;font-weight:800;display:grid;position:absolute;top:-4px;right:-4px}.notifications-menu__panel{z-index:50;background:#fffffffa;border:1px solid #24389c1f;border-radius:18px;flex-direction:column;width:min(360px,100vw - 24px);max-height:420px;display:flex;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 24px 50px #24389c33}.notifications-menu__header{border-bottom:1px solid #24389c14;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.notifications-menu__mark-all{color:var(--color-primary);cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:800}.notifications-menu__list{padding:8px;overflow-y:auto}.notifications-menu__item{background:color-mix(in srgb, var(--color-primary) 4%, white);border-radius:12px;margin-bottom:6px;padding:12px}.notifications-menu__item p{color:var(--color-onSurfaceVariant);margin:6px 0 0;font-size:13px;line-height:1.4}.notifications-menu__empty{text-align:center;color:var(--color-onSurfaceVariant);margin:0;padding:24px 16px;font-weight:600}.booking-flow__hero{background:var(--brand-gradient);color:#fff;box-shadow:none;border:0;border-radius:0;padding:22px 24px 28px;position:relative;overflow:hidden}.booking-flow__hero:after{content:"";pointer-events:none;background:radial-gradient(at 30% 40%,#93c5fd47,#0000 55%),radial-gradient(at 70% 70%,#60a5fa38,#0000 50%);position:absolute;inset:-20% -10% -30% 45%}.booking-flow__hero--success{background:linear-gradient(125deg,#1f7a4f,#2fbf71)}.booking-flow__panel{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-outlineVariant) 65%, transparent);box-shadow:0 14px 36px color-mix(in srgb, var(--color-primary) 8%, transparent);border-radius:22px;overflow:hidden}.booking-flow__body{padding:18px}.booking-flow__eyebrow{z-index:1;text-transform:uppercase;letter-spacing:.06em;color:#bfdbfe;background:#ffffff24;border-radius:999px;align-items:center;margin:0 0 10px;padding:5px 12px;font-size:11px;font-weight:800;display:inline-flex;position:relative}.booking-flow__title{z-index:1;letter-spacing:-.02em;color:#fff;margin:0;font-size:clamp(22px,3vw,30px);font-weight:800;position:relative}.booking-flow__subtitle{z-index:1;opacity:.92;color:#e2e8f0;margin:8px 0 0;font-weight:600;position:relative}.booking-flow__card{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 70%, transparent);background:var(--color-surface);box-shadow:0 8px 20px color-mix(in srgb, var(--color-primary) 5%, transparent);border-radius:18px;gap:18px;display:grid}.booking-flow__field{gap:8px;display:grid}.booking-flow__label{color:var(--color-onSurfaceVariant);align-items:center;gap:8px;font-size:13px;font-weight:800;display:flex}.booking-flow__input{background:#fffffff2;border:1px solid #24389c24;border-radius:12px;width:100%;min-height:46px;padding:0 14px}.booking-flow__slots{gap:10px;display:grid}.booking-flow__price{color:var(--color-primary);margin:0;font-size:24px;font-weight:800}.booking-flow__cta{width:100%;min-height:50px}.booking-flow__cta span{justify-content:center;align-items:center;gap:8px;display:inline-flex}.booking-flow__back{z-index:1;color:#fff;cursor:pointer;opacity:.95;background:0 0;border:0;align-items:center;gap:6px;margin-bottom:14px;font-weight:700;display:inline-flex;position:relative}.booking-flow__layout{grid-template-columns:minmax(240px,300px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.booking-flow__service{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 70%, transparent);background:var(--color-surface);box-shadow:0 8px 20px color-mix(in srgb, var(--color-primary) 5%, transparent);border-radius:18px;gap:14px;display:grid}.booking-flow__service-media{position:relative}.booking-flow__service-image{aspect-ratio:4/3;object-fit:cover;border-radius:14px;width:100%;display:block}.booking-flow__service-image--fallback{background:linear-gradient(145deg, color-mix(in srgb, var(--color-secondary) 18%, white), #e8eefc)}.booking-flow__favorite{width:36px;height:36px;color:var(--color-onSurfaceVariant);background:#fffffff2;border-radius:50%;place-items:center;display:grid;position:absolute;top:10px;right:10px;box-shadow:0 4px 12px #0f172a1f}.booking-flow__service-copy{gap:14px;display:grid}.booking-flow__service-title{color:var(--color-onSurface);margin:0;font-size:17px;font-weight:800}.booking-flow__service-rows{gap:10px;display:grid}.booking-flow__service-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.booking-flow__service-row-label{color:var(--color-onSurfaceVariant);align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.booking-flow__service-row strong{color:var(--color-secondary);font-weight:800}.booking-flow__service-meta{color:var(--color-onSurfaceVariant);margin:4px 0 0;font-weight:600}.booking-flow__service-tip{background:color-mix(in srgb, var(--color-secondary) 10%, white);border-radius:14px;align-items:flex-start;gap:10px;padding:12px;display:flex}.booking-flow__service-tip-icon{background:color-mix(in srgb, var(--color-secondary) 16%, white);width:28px;height:28px;color:var(--color-secondary);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.booking-flow__service-tip strong{color:var(--color-onSurface);margin-bottom:2px;font-size:13px;display:block}.booking-flow__service-tip p{color:var(--color-onSurfaceVariant);margin:0;font-size:12px;font-weight:600;line-height:1.4}.booking-flow__summary{gap:18px;display:grid}.booking-flow__summary-image{object-fit:cover;border-radius:14px;width:100%;max-height:220px}.booking-flow__summary-rows{background:color-mix(in srgb, var(--color-primary) 6%, transparent);border-radius:14px;gap:12px;padding:14px;display:grid}.booking-flow__summary-row{color:var(--color-onSurfaceVariant);justify-content:space-between;align-items:flex-start;gap:12px;font-weight:600;display:flex}.booking-flow__summary-row strong{color:var(--color-onSurface);text-align:right}.booking-flow__summary-actions{grid-template-columns:1fr 1.4fr;gap:10px;display:grid}.booking-flow__reference{color:var(--color-onSurfaceVariant);margin:0 0 16px;font-weight:600}.booking-reschedule__current{background:color-mix(in srgb, var(--color-primary) 6%, transparent);border-radius:14px;gap:6px;padding:14px;display:grid}.booking-slot-picker{gap:16px;display:grid}.booking-slot-picker__month{justify-content:space-between;align-items:center;gap:12px;display:flex}.booking-slot-picker__month-label{color:var(--color-secondary);align-items:center;gap:8px;display:inline-flex}.booking-slot-picker__month h3{text-transform:capitalize;color:var(--color-onSurface);margin:0;font-size:17px;font-weight:800}.booking-slot-picker__calendar{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 80%, transparent);background:var(--color-surface);cursor:pointer;border-radius:12px;align-items:center;min-height:40px;padding:0 12px;display:inline-flex;position:relative}.booking-slot-picker__calendar input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.booking-slot-picker__calendar-display{color:var(--color-onSurface);font-size:13px;font-weight:700}.booking-slot-picker__dates-wrap{align-items:center;gap:8px;display:flex;position:relative}.booking-slot-picker__dates{scroll-behavior:smooth;flex:1;gap:8px;min-width:0;padding-bottom:4px;display:flex;overflow-x:auto}.booking-slot-picker__dates-next{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 80%, transparent);background:var(--color-surface);width:36px;height:36px;color:var(--color-onSurfaceVariant);cursor:pointer;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.booking-slot-picker__date{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 80%, transparent);background:var(--color-surface);cursor:pointer;min-width:64px;color:var(--color-onSurface);border-radius:14px;justify-items:center;gap:2px;padding:10px 8px 12px;display:grid}.booking-slot-picker__date--active{background:var(--color-secondary);color:var(--color-onSecondary);box-shadow:0 10px 22px color-mix(in srgb, var(--color-secondary) 28%, transparent);border-color:#0000}.booking-slot-picker__date-dot{background:currentColor;border-radius:50%;width:5px;height:5px;margin-top:4px}.booking-slot-picker__weekday{opacity:.85;font-size:11px;font-weight:800}.booking-slot-picker__day{font-size:18px;font-weight:800}.booking-slot-picker__filters{gap:10px;display:grid}.booking-slot-picker__filters-label{color:var(--color-onSurfaceVariant);margin:0;font-size:13px;font-weight:700}.booking-slot-picker__filter-chips{flex-wrap:wrap;gap:8px;display:flex}.booking-slot-picker__filter{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 80%, transparent);background:var(--color-surface);min-height:38px;color:var(--color-onSurfaceVariant);cursor:pointer;border-radius:999px;padding:0 14px;font-size:13px;font-weight:700}.booking-slot-picker__filter--active{background:var(--color-secondary);color:var(--color-onSecondary);box-shadow:0 8px 18px color-mix(in srgb, var(--color-secondary) 24%, transparent);border-color:#0000}.booking-slot-picker__periods{gap:16px;display:grid}.booking-slot-picker__period-title{letter-spacing:.06em;color:var(--color-onSurfaceVariant);align-items:center;gap:8px;margin:0 0 10px;font-size:12px;font-weight:800;display:flex}.booking-slot-picker__grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;display:grid}.booking-slot-picker__slot{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 80%, transparent);background:var(--color-surface);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:6px;min-height:44px;font-weight:700;transition:transform .15s,box-shadow .15s;display:inline-flex}.booking-slot-picker__slot:hover{box-shadow:0 8px 18px color-mix(in srgb, var(--color-primary) 10%, transparent);transform:translateY(-1px)}.booking-slot-picker__slot--active{background:var(--color-secondary);color:var(--color-onSecondary);box-shadow:0 10px 22px color-mix(in srgb, var(--color-secondary) 28%, transparent);border-color:#0000}.booking-slot-picker__loading,.booking-slot-picker__state{color:var(--color-onSurfaceVariant);align-items:center;gap:10px;font-weight:600;display:flex}.booking-slot-picker__empty{border:1px dashed color-mix(in srgb, var(--color-outlineVariant) 85%, transparent);background:color-mix(in srgb, var(--color-secondary) 4%, white);border-radius:16px;margin:0;padding:36px 20px}.booking-slot-picker__spinner{border:2px solid #24389c2e;border-top-color:var(--color-primary);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite homeSpin}.booking-slot-picker__error{color:var(--color-error);margin:0;font-weight:600}.bookings-page__header{justify-content:space-between;align-items:center;display:flex}.bookings-page__hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.bookings-page__hero-text{flex:240px;min-width:min(100%,280px)}.bookings-page__title{letter-spacing:-.02em;color:var(--color-onSurface);margin:0;font-size:clamp(1.45rem,2.2vw,1.85rem);font-weight:800}.bookings-page__subtitle{max-width:42ch;color:var(--color-onSurfaceVariant);margin:6px 0 0;font-size:.95rem;font-weight:500;line-height:1.45}.bookings-page__stats{flex-shrink:0;gap:10px;display:flex}.bookings-page__stat{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-outlineVariant) 70%, transparent);min-width:92px;box-shadow:0 8px 18px color-mix(in srgb, var(--color-primary) 6%, transparent);text-align:center;border-radius:16px;justify-items:center;gap:4px;padding:12px 14px;display:grid}.bookings-page__stat-icon{border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.bookings-page__stat--upcoming .bookings-page__stat-icon{background:color-mix(in srgb, var(--color-secondary) 14%, transparent);color:var(--color-secondary)}.bookings-page__stat--history .bookings-page__stat-icon{color:#6b4ce0;background:#7c5cfc24}.bookings-page__stat-value{color:var(--color-onSurface);font-size:22px;font-weight:800;line-height:1}.bookings-page__stat-label{color:var(--color-onSurfaceVariant);font-size:12px;font-weight:700}.bookings-page__tabs{background:color-mix(in srgb, var(--color-surfaceContainerHighest) 70%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-outlineVariant) 55%, transparent);border-radius:14px;gap:4px;margin-top:2px;padding:4px}.bookings-page__tabs .tab{min-height:46px;color:var(--color-onSurfaceVariant);background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;font-weight:700;display:inline-flex}.bookings-page__tabs .tab__icon{place-items:center;display:inline-grid}.bookings-page__highlight{gap:10px;display:grid}.bookings-page__highlight-label{color:var(--color-onSurfaceVariant);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:8px;margin:0;font-size:12px;font-weight:800;display:inline-flex}.bookings-page__list{gap:14px;display:grid}.booking-card{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 70%, transparent);background:var(--color-surface);box-shadow:0 10px 24px color-mix(in srgb, var(--color-primary) 7%, transparent);border-radius:16px;gap:16px;padding:16px;display:grid}.booking-card--highlight{border-color:color-mix(in srgb, var(--color-secondary) 28%, transparent);box-shadow:0 12px 28px color-mix(in srgb, var(--color-primary) 10%, transparent)}.booking-card__top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.booking-card__identity{flex:1;gap:12px;min-width:0;display:flex}.booking-card__thumb{object-fit:cover;border-radius:14px;flex-shrink:0;width:56px;height:56px}.booking-card__thumb--fallback{background:color-mix(in srgb, var(--color-secondary) 14%, transparent);color:var(--color-secondary);place-items:center;display:grid}.booking-card__copy{gap:8px;min-width:0;display:grid}.booking-card__title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.booking-card__title{color:var(--color-onSurface);margin:0;font-size:17px;font-weight:800}.booking-card__badge{background:color-mix(in srgb, var(--color-secondary) 12%, transparent);max-width:100%;color:var(--color-secondary);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;padding:3px 9px;font-size:12px;font-weight:700;display:inline-flex;overflow:hidden}.booking-card__rating{color:#f5a623;align-items:center;gap:4px;font-size:13px;font-weight:700;display:inline-flex}.booking-card__aside{flex-shrink:0;align-content:start;justify-items:end;gap:12px;display:grid}.booking-card__status{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:11px;font-weight:800;display:inline-flex}.booking-card__status-dot{opacity:.85;background:currentColor;border-radius:50%;width:7px;height:7px}.booking-card__status--success{color:#1f7a4f;background:#2fbf7129}.booking-card__status--pending{background:color-mix(in srgb, var(--color-outlineVariant) 55%, transparent);color:var(--color-onSurfaceVariant)}.booking-card__status--cancelled{background:color-mix(in srgb, var(--color-error) 14%, transparent);color:var(--color-error)}.booking-card__status--muted{background:color-mix(in srgb, var(--color-outlineVariant) 45%, transparent);color:var(--color-onSurfaceVariant)}.booking-card__meta{gap:6px;display:grid}.booking-card__meta-row{color:var(--color-onSurfaceVariant);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.booking-card__meta-row svg{color:var(--color-secondary);flex-shrink:0}.booking-card__price{color:var(--color-onSurface);letter-spacing:-.02em;font-size:18px;font-weight:800}.booking-card__actions{border-top:1px solid color-mix(in srgb, var(--color-outlineVariant) 65%, transparent);flex-wrap:wrap;gap:10px;padding-top:14px;display:flex}.booking-card__actions .btn span{justify-content:center;align-items:center;gap:8px;display:inline-flex}.booking-card__link{color:var(--color-primary);cursor:pointer;background:0 0;border:0;min-height:44px;font-weight:700}@media (width<=720px){.bookings-page__hero{flex-direction:column}.bookings-page__stats{width:100%}.bookings-page__stat{flex:1}.booking-card__top{flex-direction:column}.booking-card__aside{grid-auto-flow:column;justify-content:space-between;align-items:center;width:100%}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell__sidebar{background:linear-gradient(140deg, #fffffff7, #eff4fff5), var(--color-surfaceContainerLowest);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #24389c1f;border-radius:24px;flex-direction:column;height:calc(100vh - 32px);padding:20px 12px 14px;display:flex;position:sticky;top:16px;box-shadow:0 28px 55px #24389c24}.app-shell__brand{letter-spacing:-.03em;background:linear-gradient(115deg, var(--color-primary), var(--color-secondary), var(--color-tertiary));color:#0000;-webkit-background-clip:text;background-clip:text;padding:4px 10px 0;font-size:30px;font-weight:800;line-height:1.1}.app-shell__brand-caption{color:var(--color-onSurfaceVariant);margin:8px 10px 18px;font-size:13px;font-weight:600}.app-logo{cursor:pointer;background:0 0;border:0;border-radius:14px;place-items:center;padding:4px;transition:transform .15s;display:grid}.app-logo:hover{transform:scale(1.05)}.app-logo__image{width:44px;height:44px;display:block}.app-logo--collapsed .app-logo__image{width:34px;height:34px}.app-shell__sidebar-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;padding:0 4px;display:flex}.app-shell__nav{flex-direction:column;flex:1;gap:6px;display:flex}.nav-link,.nav-link--button{text-align:left;width:100%;color:var(--color-onSurfaceVariant);cursor:pointer;background:0 0;border:0;border-radius:14px;align-items:center;gap:12px;padding:11px 12px;font-weight:700;transition:all .18s;display:flex}.nav-link__icon{background:color-mix(in srgb, var(--color-primary) 10%, transparent);border-radius:10px;place-items:center;width:30px;height:30px;display:grid}.nav-link__label{font-size:14px}.nav-link:hover,.nav-link--active,.nav-link--button:hover{color:var(--color-primary);background:linear-gradient(115deg,#24389c1f,#4c56af14);transform:translate(2px)}.nav-link:hover .nav-link__icon,.nav-link--active .nav-link__icon,.nav-link--button:hover .nav-link__icon{background:color-mix(in srgb, var(--color-primary) 18%, transparent)}.app-shell__main{flex-direction:column;width:100%;min-width:0;display:flex}.app-shell__topbar{z-index:20;background:linear-gradient(130deg, #fffffff2, #eff4ffe6), var(--color-surfaceContainerLowest);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid #24389c1a;border-radius:20px;justify-content:space-between;align-items:center;min-height:80px;padding:12px 16px;display:flex;position:sticky;top:16px;box-shadow:0 14px 38px #24389c1a}.app-shell__topbar-copy{align-items:center;gap:12px;min-width:0;display:flex}.app-shell__topbar-title{letter-spacing:-.02em;margin:0;font-size:clamp(20px,2.1vw,28px);line-height:1.1}.app-shell__topbar-subtitle{color:var(--color-onSurfaceVariant);margin:2px 0 0;font-size:12px;font-weight:700}.app-shell__topbar-actions{align-items:center;gap:8px;display:flex}.app-topbar__action,.app-topbar__notifications .notifications-menu__trigger{background:var(--color-surfaceContainer);width:38px;height:38px;color:var(--color-onSurfaceVariant);cursor:pointer;border:0;border-radius:50%;place-items:center;transition:transform .15s,background .15s;display:grid;position:relative}.app-topbar__action:hover,.app-topbar__notifications .notifications-menu__trigger:hover{background:color-mix(in srgb, var(--color-primary) 14%, var(--color-surfaceContainer));transform:scale(1.05)}.app-topbar__avatar{border:2px solid var(--color-primaryFixed);background:linear-gradient(135deg, var(--color-secondaryContainer), var(--color-tertiaryFixedDim));width:38px;height:38px;color:var(--color-onPrimaryFixed);cursor:pointer;border-radius:50%;place-items:center;padding:0;font-size:12px;font-weight:800;display:grid;overflow:hidden}.app-topbar__avatar-image{object-fit:cover;width:100%;height:100%}.page-back-link{color:var(--color-primary);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-weight:800;display:inline-flex}.page-content-title{letter-spacing:-.02em;margin:0;font-size:clamp(22px,2.5vw,28px);font-weight:800}.page-content-subtitle{color:var(--color-onSurfaceVariant);margin:-8px 0 0;font-weight:600}.page-toolbar{justify-content:flex-end;display:flex}.home-welcome__title{letter-spacing:-.03em;color:var(--color-onSurface);margin:0;font-size:clamp(20px,2vw,26px);font-weight:800;line-height:1.2}.app-shell__content{flex:1;width:100%;max-width:none;padding:14px 18px 24px}.app-shell__content>*{width:100%;max-width:none}.mobile-tabbar{display:none}.auth-layout{background:radial-gradient(circle at 0 0, #3f51b533, transparent 35%), radial-gradient(circle at 100% 100%, #959efd2e, transparent 35%), var(--color-surfaceContainerLow);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:linear-gradient(150deg, #fffffffa, #eff4fff2), var(--color-surfaceContainerLowest);border:1px solid #24389c2e;border-radius:30px;width:min(100%,500px);padding:clamp(24px,4vw,38px);box-shadow:0 28px 60px #24389c24}.page-grid{gap:18px;display:grid}.home-hero{background:linear-gradient(120deg, #24389cf0, #4c56afeb 58%, #55e4fddb), var(--color-primary);color:var(--color-onPrimary);border-radius:22px;gap:16px;padding:clamp(18px,3vw,28px);display:grid;box-shadow:0 20px 45px #24389c57}.home-hero__title{letter-spacing:-.03em;margin:0;font-size:clamp(24px,3.4vw,34px);line-height:1.1}.home-hero__subtitle{opacity:.92;margin:8px 0 0;font-weight:600}.home-hero__actions{flex-wrap:wrap;gap:10px;display:flex}.home-next-booking{background:linear-gradient(160deg, #fffffff7, #e2e1ff80), var(--color-surfaceContainerLowest)}.home-next-booking__title{margin:0;font-size:20px;font-weight:800}.home-next-booking__date{color:var(--color-onSurfaceVariant);margin-top:6px;margin-bottom:16px}.section-title{letter-spacing:-.02em;margin:0 0 12px;font-size:clamp(20px,2.3vw,26px);font-weight:800;line-height:1.12}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;display:grid}.service-card{background:linear-gradient(170deg,#fffffff7,#eff4ffeb);border:1px solid #24389c1f;border-radius:20px;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;overflow:hidden;box-shadow:0 10px 28px #24389c1f}.service-card--interactive{cursor:pointer}.service-card--interactive:hover{border-color:#24389c38;transform:translateY(-5px);box-shadow:0 22px 42px #24389c38}.service-card__media{position:relative}.service-card__image{aspect-ratio:16/10;object-fit:cover;background:var(--color-surfaceContainer);width:100%}.service-card__favorite{cursor:pointer;width:36px;height:36px;color:var(--color-primary);background:#ffffffe6;border:none;border-radius:999px;place-items:center;display:grid;position:absolute;top:10px;right:10px;box-shadow:0 8px 20px #24389c33}.service-card__title{letter-spacing:-.01em;margin:0;font-size:17px;font-weight:800;line-height:1.2}.service-card__subtitle{color:var(--color-onSurfaceVariant);margin:0;font-size:14px;font-weight:600}.service-card__meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.service-card__rating{color:var(--color-ratingColor);align-items:center;gap:4px;font-weight:700;display:inline-flex}.btn{cursor:pointer;letter-spacing:.01em;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 18px;font-size:14px;font-weight:800;transition:transform .15s,box-shadow .15s,opacity .15s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn--full{width:100%}.btn--primary{color:var(--color-onPrimary);background:linear-gradient(125deg, var(--color-primary), var(--color-secondary));box-shadow:0 12px 28px #24389c52}.btn--outline{color:var(--color-primary);background:#fffc;border:1px solid #24389c38}.btn--ghost{color:var(--color-primary);background:0 0}.btn--loading{pointer-events:none}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn__spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.input-field{gap:7px;margin-bottom:10px;display:grid}.input-field__label{color:var(--color-onSurfaceVariant);font-size:12px;font-weight:700}.input-field__control{background:var(--color-surfaceContainerLowest);border:1px solid #24389c1f;border-radius:14px;align-items:center;gap:8px;min-height:52px;padding:0 12px;transition:border-color .15s,box-shadow .15s;display:flex}.input-field__input{width:100%;min-height:48px;color:var(--color-onSurface);background:0 0;border:none;outline:none;flex:1}.input-field--error .input-field__control{border-color:var(--color-error)}.input-field__error{color:var(--color-error);margin:0;font-size:12px;font-weight:700}.auth-divider{color:var(--color-onSurfaceVariant);align-items:center;gap:12px;font-size:12px;font-weight:800;display:flex}.auth-divider__line{background:#24389c29;flex:1;height:1px}.social-button,.guest-button{cursor:pointer;background:#ffffffd6;border:1px solid #24389c29;border-radius:14px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:48px;font-weight:700;display:flex}.language-toggle{color:var(--color-primary);cursor:pointer;background:#ffffffe0;border:1px solid #24389c33;border-radius:999px;padding:6px 12px;font-weight:800}.otp-input__digits{justify-content:center;gap:10px;display:flex}.otp-input__digit{text-align:center;background:var(--color-surfaceContainerLowest);border:1px solid #24389c33;border-radius:12px;width:52px;height:56px;font-size:24px;font-weight:800}.otp-input--error .otp-input__digit{border-color:var(--color-error)}.otp-input__error{text-align:center;color:var(--color-error);margin:8px 0 0;font-size:12px;font-weight:700}.card{background:linear-gradient(165deg, #fffffff7, #eff4ffe6), var(--color-surfaceContainerLowest);border:1px solid #24389c1f;border-radius:20px;box-shadow:0 12px 30px #24389c1a}.card--padding-sm{padding:12px}.card--padding-md{padding:16px}.card--padding-lg{padding:24px}.card--interactive{cursor:pointer;transition:transform .16s,box-shadow .16s}.card--interactive:hover{transform:translateY(-3px);box-shadow:0 18px 38px #24389c2e}.screen-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;display:flex}.screen-header__left{align-items:center;gap:12px;display:flex}.screen-header__back{cursor:pointer;width:42px;height:42px;color:var(--color-onSurface);background:#ffffffd9;border:1px solid #24389c2b;border-radius:12px;place-items:center;display:grid}.screen-header__title{letter-spacing:-.02em;margin:0;font-size:clamp(22px,2.4vw,30px);line-height:1.12}.screen-header__subtitle{color:var(--color-onSurfaceVariant);margin:4px 0 0;font-weight:600}.empty-state{text-align:center;color:var(--color-onSurfaceVariant);border:1px solid color-mix(in srgb, var(--color-outlineVariant) 70%, transparent);background:color-mix(in srgb, var(--color-surface) 88%, transparent);border-radius:20px;justify-items:center;gap:8px;padding:52px 24px;display:grid}.empty-state__icon{width:56px;height:56px;color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 12%, transparent);border-radius:16px;place-items:center;margin-bottom:4px;display:grid}.empty-state__title{color:var(--color-onSurface);margin:0;font-size:1.15rem;font-weight:700}.empty-state__description{max-width:36ch;margin:0;line-height:1.5}.empty-state__action{margin-top:12px}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-header__title{letter-spacing:-.02em;color:var(--color-onSurface);margin:0;font-size:clamp(1.4rem,2vw,1.75rem);font-weight:800}.page-header__subtitle{color:var(--color-onSurfaceVariant);margin:6px 0 0;font-weight:500}.page-header__actions{flex-shrink:0;gap:8px;display:flex}.icon-btn{cursor:pointer;color:var(--color-onSurface);background:0 0;border:none;border-radius:12px;place-items:center;transition:background .15s,color .15s;display:inline-grid}.icon-btn:disabled{opacity:.45;cursor:not-allowed}.icon-btn--sm{width:32px;height:32px}.icon-btn--md{width:40px;height:40px}.icon-btn--lg{width:48px;height:48px}.icon-btn--ghost:hover{background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.icon-btn--outline{border:1px solid var(--color-outlineVariant);background:var(--color-surface)}.icon-btn--filled{background:var(--color-primary);color:var(--color-onPrimary,#fff)}.icon-btn--filled:hover:not(:disabled){filter:brightness(1.05)}.status-badge{background:color-mix(in srgb, var(--color-onSurfaceVariant) 14%, transparent);color:var(--color-onSurfaceVariant);border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:700;line-height:1.2;display:inline-flex}.status-badge--success{background:color-mix(in srgb, var(--color-success) 16%, transparent);color:var(--color-success)}.status-badge--warning{background:color-mix(in srgb, var(--color-warning) 16%, transparent);color:var(--color-warning)}.status-badge--error{background:color-mix(in srgb, var(--color-error) 16%, transparent);color:var(--color-error)}.status-badge--info{background:color-mix(in srgb, var(--color-secondary) 16%, transparent);color:var(--color-secondary)}.inline-message{border-radius:12px;margin:0;padding:12px 14px;font-weight:600}.inline-message--error{background:color-mix(in srgb, var(--color-error) 12%, transparent);color:var(--color-error)}.inline-message--success{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success)}.inline-message--info{background:color-mix(in srgb, var(--color-secondary) 12%, transparent);color:var(--color-secondary)}.inline-message--warning{background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning)}.modal-card__body{color:var(--color-onSurfaceVariant);margin-top:8px}.modal-card__body p{margin:0}.modal-card__actions{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.modal-card__actions .btn{flex:1;min-width:120px}.chat-list-item__row{justify-content:space-between;align-items:center;gap:8px;display:flex}.chat-list-item__preview{color:var(--color-onSurfaceVariant);margin:4px 0 0;font-size:.92rem}.chat-input{border:1px solid var(--color-outlineVariant);background:var(--color-surface);min-height:44px;color:var(--color-onSurface);border-radius:12px;flex:1;padding:0 12px}.chat-input:focus-visible{outline:2px solid var(--color-secondary,#2563eb);outline-offset:1px}.promo-list{gap:12px;display:grid}.promo-card__row{justify-content:space-between;align-items:center;gap:12px;display:flex}.promo-card__subtitle{color:var(--color-onSurfaceVariant);margin:8px 0 0}.onboarding-card{width:min(100%,560px)}.onboarding-card__progress{color:var(--color-onSurfaceVariant);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.85rem;font-weight:700}.onboarding-card__title{letter-spacing:-.02em;margin:0;font-size:clamp(1.5rem,3vw,2rem);font-weight:800}.onboarding-card__subtitle{color:var(--color-onSurfaceVariant);margin:0;line-height:1.55}.onboarding-card__dots{gap:8px;display:flex}.onboarding-card__dot{background:var(--color-outlineVariant);border-radius:999px;flex:1;height:4px}.onboarding-card__dot--active{background:var(--color-primary)}.onboarding-card__actions{align-items:center;gap:12px;display:flex}.profile-hero__row{align-items:center;gap:16px;display:flex}.profile-hero__name{margin:0;font-size:1.25rem}.profile-hero__email{color:var(--color-onSurfaceVariant);margin:4px 0 0}.profile-menu__section{letter-spacing:.06em;color:var(--color-onSurfaceVariant);margin:0 8px 4px;font-size:.75rem;font-weight:700}.profile-menu .drawer-item{align-items:center;gap:10px;display:flex}.profile-theme-field{justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex}.profile-theme-field__select{border:1px solid var(--color-outlineVariant);background:var(--color-surface);min-height:40px;color:var(--color-onSurface);border-radius:10px;padding:0 10px}.profile-edit-actions{flex-wrap:wrap;gap:12px;display:flex}.company-card__subtitle{color:var(--color-onSurfaceVariant);margin:8px 0 0}.company-details__phone{color:var(--color-onSurfaceVariant);align-items:center;gap:8px;margin:12px 0 0;display:inline-flex}.company-details__actions,.service-details__actions{flex-wrap:wrap;gap:8px;display:flex}.service-details__image{object-fit:cover;border-radius:16px;width:100%;max-height:320px}.service-details__price{color:var(--color-primary);margin:12px 0;font-size:1.25rem;font-weight:800}.booking-flow-shell__eyebrow{color:var(--color-onSurfaceVariant);text-transform:uppercase;letter-spacing:.04em;margin:0 0 4px;font-size:.85rem;font-weight:700}.loading-spinner{flex-direction:column;align-items:center;gap:12px;padding:32px;display:flex}.loading-spinner__circle{border:3px solid #24389c38;border-top-color:var(--color-primary);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin}.skeleton{background:linear-gradient(100deg,#3f51b524 25%,#3f51b545 50%,#3f51b524 75%) 0 0/200% 100%;border-radius:10px;animation:1.15s linear infinite shimmer}.skeleton--image{height:140px}.skeleton--text{height:14px;margin:8px 12px}.skeleton--short{width:60%}.chips-row{gap:8px;padding-bottom:3px;display:flex;overflow-x:auto}.chip{color:var(--color-onSurface);white-space:nowrap;cursor:pointer;background:#ffffffd1;border:1px solid #24389c2e;border-radius:999px;padding:8px 14px;font-weight:700}.chip--active{background:linear-gradient(125deg, var(--color-primary), var(--color-secondary));color:var(--color-onPrimary);border-color:#0000;box-shadow:0 8px 22px #24389c38}.tabs{gap:8px;margin-bottom:6px;display:flex}.tab{cursor:pointer;background:#ffffffd9;border:1px solid #24389c2e;border-radius:12px;flex:1;min-height:44px;font-weight:700}.tab--active{background:linear-gradient(125deg, var(--color-primary), var(--color-secondary));color:var(--color-onPrimary);border-color:#0000}.drawer-overlay{z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0b1c3075;position:fixed;inset:0}.drawer-panel{z-index:50;background:linear-gradient(155deg, #fffffff5, #eff4ffed), var(--color-surfaceContainerLowest);border-right:1px solid #24389c24;flex-direction:column;width:min(360px,85vw);display:flex;position:fixed;top:0;bottom:0;left:0;box-shadow:10px 0 42px #24389c38}.drawer-header{border-bottom:1px solid #24389c24;align-items:center;gap:12px;padding:24px 20px;display:flex}.drawer-items{gap:4px;padding:12px;display:grid;overflow:auto}.drawer-item{cursor:pointer;text-align:left;width:100%;color:var(--color-onSurface);background:0 0;border:none;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;font-weight:700;display:flex}.drawer-item:hover,.drawer-item--active{color:var(--color-primary);background:#24389c1a}.avatar{background:var(--color-surfaceContainer);color:var(--color-primary);border:2px solid #24389c59;border-radius:50%;place-items:center;font-weight:800;display:grid;overflow:hidden}.avatar--sm{width:36px;height:36px;font-size:12px}.avatar--md{width:48px;height:48px}.avatar--lg{width:64px;height:64px;font-size:20px}.avatar__image{object-fit:cover;width:100%;height:100%}.badge{background:var(--color-error);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:800;display:inline-grid}.search-bar{background:#ffffffdb;border:1px solid #24389c29;border-radius:16px;align-items:center;gap:10px;min-height:52px;padding:0 14px;display:flex;box-shadow:0 8px 22px #24389c14}.search-bar input{width:100%;color:var(--color-onSurface);background:0 0;border:none;outline:none}.modal-backdrop{z-index:60;background:#0b1c3080;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-card{background:#fffffff5;border-radius:20px;width:min(100%,430px);padding:24px}.chat-layout{grid-template-columns:320px 1fr;gap:16px;min-height:60vh;display:grid}.chat-list,.chat-thread{background:#ffffffeb;border:1px solid #24389c24;border-radius:16px;overflow:hidden}.chat-list-item{text-align:left;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #24389c1a;width:100%;padding:14px 16px}.chat-list-item--active{background:#24389c1a}.chat-messages{flex-direction:column;gap:10px;max-height:50vh;padding:16px;display:flex;overflow:auto}.chat-bubble{border-radius:16px;max-width:75%;padding:10px 14px;font-size:14px;font-weight:600}.chat-bubble--mine{color:var(--color-onPrimary);background:linear-gradient(130deg, var(--color-primary), var(--color-secondary));align-self:flex-end}.chat-bubble--theirs{background:var(--color-surfaceContainer);align-self:flex-start}.chat-input-row{border-top:1px solid #24389c1f;gap:8px;padding:12px;display:flex}.map-placeholder{min-height:420px;color:var(--color-onSurfaceVariant);background:#ffffffa8;border:1px dashed #24389c4d;border-radius:16px;place-items:center;display:grid}.explore-map{background:#e8edf8;border:1px solid #24389c1f;border-radius:18px;width:100%;position:relative;overflow:hidden;box-shadow:0 16px 36px #24389c1f}.explore-map__canvas{z-index:1;width:100%;height:100%}.explore-map .leaflet-container{width:100%;height:100%;font-family:inherit}.explore-map__user-marker{background:0 0;border:0}.explore-map__user-marker span{background:#2563eb;border:3px solid #fff;border-radius:50%;width:18px;height:18px;display:block;box-shadow:0 0 0 2px #2563eb73}.explore-map__locate{z-index:500;width:42px;height:42px;color:var(--color-primary);cursor:pointer;background:#fff;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:14px;right:14px;box-shadow:0 10px 24px #24389c33}.explore-map__overlay{z-index:450;text-align:center;pointer-events:none;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.explore-map__overlay--empty{background:#ffffff8c}.explore-map__overlay--empty p{color:var(--color-onSurface);margin:0 0 12px;font-weight:700}.explore-map__overlay--empty .btn{pointer-events:auto}.explore-map__overlay--loading{background:#ffffff6b}.explore-map__card{z-index:500;background:#fffffff5;border:1px solid #24389c1a;border-radius:16px;gap:12px;padding:14px;display:grid;position:absolute;bottom:12px;left:12px;right:12px;box-shadow:0 14px 30px #24389c29}.explore-map__card-meta{color:var(--color-onSurfaceVariant);margin:4px 0 0;font-size:13px}.explore-map__card-actions{flex-wrap:wrap;gap:8px;display:flex}.explore-map__hint{color:var(--color-onSurfaceVariant);margin:0;font-weight:600}.page-grid--map{gap:12px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (width<=1120px){.app-shell{grid-template-columns:260px minmax(0,1fr);gap:10px;padding:10px}}@media (width<=960px){.app-shell{padding:12px 12px 82px;display:block}.app-shell__sidebar{display:none}.app-shell__topbar{top:12px}.app-shell__content{padding:12px 12px 24px}.mobile-tabbar{z-index:35;padding:8px 8px calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;border-top:1px solid #24389c2b;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-tabbar .nav-link{border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:68px;padding:8px 6px}.mobile-tabbar .nav-link__icon{border-radius:8px;width:24px;height:24px}.mobile-tabbar .nav-link__label{font-size:11px;font-weight:700}.chat-layout{grid-template-columns:1fr}}.home-feed{flex-direction:column;min-height:100%;animation:.35s homeFadeIn;display:flex}@keyframes homeFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.home-feed__toolbar{justify-content:flex-end;padding:10px 16px 0;display:flex}.home-feed__refresh{background:color-mix(in srgb, var(--color-primary) 12%, transparent);width:36px;height:36px;color:var(--color-primary);cursor:pointer;border:0;border-radius:50%;font-size:18px;transition:transform .2s,background .2s}.home-feed__refresh:hover{background:color-mix(in srgb, var(--color-primary) 20%, transparent)}.home-feed__refresh--spinning{animation:.8s linear infinite homeSpin}@keyframes homeSpin{to{transform:rotate(360deg)}}.home-feed__content{isolation:isolate;gap:18px;padding:0 0 20px;display:grid}.home-header{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#fffffffa 0%,#ffffffe0 100%);border-bottom:1px solid #24389c14;grid-template-columns:auto 1fr auto;align-items:start;gap:10px;padding:4px 16px 14px;display:grid;position:sticky;top:0}.home-header__menu{background:color-mix(in srgb, var(--color-primary) 10%, transparent);width:36px;height:36px;color:var(--color-primary);cursor:pointer;border:0;border-radius:12px;place-items:center;display:grid}.home-header__copy{min-width:0}.home-header__title{letter-spacing:-.02em;margin:0;font-size:clamp(17px,2.2vw,22px);font-weight:800;line-height:1.2}.home-header__subtitle{color:var(--color-onSurfaceVariant);margin:4px 0 0;font-size:13px;font-weight:600}.home-header__actions{align-items:center;gap:8px;display:flex}.home-header__action{background:var(--color-surfaceContainer);width:36px;height:36px;color:var(--color-onSurfaceVariant);cursor:pointer;border:0;border-radius:50%;place-items:center;transition:transform .15s,background .15s;display:grid;position:relative}.home-header__action:hover{background:color-mix(in srgb, var(--color-primary) 14%, var(--color-surfaceContainer));transform:scale(1.05)}.home-header__badge{background:var(--color-error);min-width:18px;height:18px;color:var(--color-onError);border:2px solid var(--color-surface);border-radius:999px;place-items:center;padding:0 4px;font-size:10px;font-weight:800;display:grid;position:absolute;top:-4px;right:-4px}.home-header__avatar{border:2px solid var(--color-primaryFixed);background:linear-gradient(135deg, var(--color-secondaryContainer), var(--color-tertiaryFixedDim));width:38px;height:38px;color:var(--color-onPrimaryFixed);cursor:pointer;border-radius:50%;place-items:center;padding:0;font-size:12px;font-weight:800;display:grid;overflow:hidden}.home-header__avatar-image{object-fit:cover;width:100%;height:100%}.home-header__auth-actions{gap:10px;margin-top:16px;display:flex}.home-search-row{align-items:center;gap:8px;display:flex}.home-search{background:#fffffff2;border:1px solid #24389c1f;border-radius:14px;flex:1;align-items:center;gap:10px;min-height:46px;padding:0 14px;display:flex;box-shadow:0 8px 24px #24389c14}.home-search input{background:0 0;border:0;outline:none;flex:1;min-width:0;font-weight:600}.home-search svg{color:var(--color-primary);flex-shrink:0}.home-search__filter{background:linear-gradient(135deg, var(--color-primary), var(--color-secondary));width:46px;height:46px;color:var(--color-onPrimary);cursor:pointer;border:0;border-radius:14px;place-items:center;display:grid;box-shadow:0 10px 24px #24389c47}.home-quick-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.home-quick-action{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 65%, transparent);cursor:pointer;text-align:left;background:var(--color-surface);box-shadow:0 4px 14px color-mix(in srgb, var(--color-primary) 5%, transparent);border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:62px;padding:10px 12px;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid}.home-quick-action:hover{box-shadow:0 8px 20px color-mix(in srgb, var(--color-primary) 10%, transparent);border-color:color-mix(in srgb, var(--color-secondary) 35%, transparent);transform:translateY(-1px)}.home-quick-action__icon{border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.home-quick-action--primary .home-quick-action__icon{background:color-mix(in srgb, var(--color-primary) 14%, transparent);color:var(--color-primary)}.home-quick-action--secondary .home-quick-action__icon{background:color-mix(in srgb, var(--color-secondary) 16%, transparent);color:var(--color-secondary)}.home-quick-action--tertiary .home-quick-action__icon{color:#7c3aed;background:#7c3aed24}.home-quick-action--neutral .home-quick-action__icon{background:color-mix(in srgb, var(--color-ratingColor) 16%, transparent);color:#d97706}.home-quick-action__copy{gap:2px;min-width:0;display:grid}.home-quick-action__label{color:var(--color-onSurface);font-size:13px;font-weight:800;line-height:1.2}.home-quick-action__hint{color:var(--color-onSurfaceVariant);-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:11px;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.home-quick-action__chevron{color:var(--color-onSurfaceVariant);opacity:.65;flex-shrink:0;width:14px;height:14px}.home-upcoming{background:var(--brand-gradient);color:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;min-height:0;padding:14px 16px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 28px #1a2b4b38}.home-upcoming:after{content:"";pointer-events:none;background:radial-gradient(circle at 92% 20%,#ffffff2e,#0000 42%),radial-gradient(circle at 8% 90%,#2563eb59,#0000 40%);position:absolute;inset:0}.home-upcoming__content{z-index:1;flex:1;align-items:center;gap:16px;min-width:0;display:flex;position:relative}.home-upcoming__image{object-fit:cover;border-radius:12px;flex-shrink:0;width:44px;height:44px}.home-upcoming__image--fallback{background:#ffffff29;place-items:center;display:grid}.home-upcoming__text{min-width:0}.home-upcoming__eyebrow{letter-spacing:.08em;text-transform:uppercase;opacity:.8;margin:0 0 2px;font-size:10px;font-weight:800}.home-upcoming__title{letter-spacing:-.02em;margin:0;font-size:16px;font-weight:800}.home-upcoming__subtitle{opacity:.88;margin:4px 0 0;font-size:12px;font-weight:500}.home-upcoming__time{opacity:.95;align-items:center;gap:6px;margin:6px 0 0;font-size:12px;font-weight:700;display:inline-flex}.home-upcoming__actions{z-index:1;flex-shrink:0;gap:8px;display:flex;position:relative}.home-upcoming__btn{cursor:pointer;white-space:nowrap;border:0;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:8px 14px;font-size:12px;font-weight:800;display:inline-flex}.home-upcoming__btn--primary{color:var(--color-primary);background:#fff}.home-upcoming__btn--ghost{color:#fff;background:#ffffff1f;border:1px solid #ffffff47}.home-section-header{justify-content:space-between;align-items:center;gap:12px;margin:0;display:flex}.home-section-header__title{letter-spacing:-.02em;margin:0;font-size:clamp(15px,1.5vw,17px);font-weight:800}.home-section-header__action{color:var(--color-secondary);cursor:pointer;background:0 0;border:0;padding:4px;font-size:13px;font-weight:700}.home-categories{scrollbar-width:none;flex-wrap:nowrap;align-items:flex-start;gap:12px;padding-bottom:2px;display:flex;overflow-x:auto}.home-categories::-webkit-scrollbar{display:none}.home-category{cursor:pointer;min-width:64px;max-width:76px;color:var(--color-onSurfaceVariant);background:0 0;border:0;flex-direction:column;flex-shrink:0;align-items:center;gap:6px;padding:0;display:flex}.home-category__icon{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-outlineVariant) 75%, transparent);width:52px;height:52px;box-shadow:0 4px 12px color-mix(in srgb, var(--color-primary) 5%, transparent);color:var(--color-secondary);border-radius:50%;place-items:center;font-weight:800;display:grid;overflow:hidden}.home-category__icon img{object-fit:cover;width:100%;height:100%}.home-category__icon--all{background:color-mix(in srgb, var(--color-secondary) 12%, var(--color-surface));border-color:color-mix(in srgb, var(--color-secondary) 35%, transparent);font-size:18px;line-height:1}.home-category--active .home-category__icon{background:var(--color-secondary);border-color:var(--color-secondary);color:#fff;box-shadow:0 8px 18px color-mix(in srgb, var(--color-secondary) 28%, transparent)}.home-category--active .home-category__label{color:var(--color-secondary)}.home-category__label{text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;font-weight:700;overflow:hidden}.home-category--skeleton .home-category__icon,.home-category--skeleton .home-category__label{background:color-mix(in srgb, var(--color-outlineVariant) 35%, transparent)}.home-category--skeleton .home-category__label{border-radius:999px;width:40px;height:8px}.home-split-row{align-items:stretch;gap:14px;width:100%;display:grid}.home-split-row--main{grid-template-columns:minmax(300px,.85fr) minmax(0,1.8fr);align-items:start}.home-split-row--footer{grid-template-columns:1fr 1fr}.home-rail-section--compact .home-section-header__title,.home-rail-section--featured .home-section-header__title{font-size:15px}.home-cards-grid{gap:10px;width:100%;display:grid}.home-cards-grid--services{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.home-cards-grid--companies{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}.home-cards-grid--companies-compact{display:none}.home-cards-grid--featured{grid-template-columns:1fr}.home-cards-grid .home-rail__service-item{width:100%;min-width:0;height:auto}.home-cards-grid--featured .service-card--home{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 70%, transparent);background:var(--color-surface);width:100%;height:auto;min-height:176px;max-height:210px;box-shadow:0 8px 20px color-mix(in srgb, var(--color-primary) 7%, transparent);border-radius:16px;grid-template-columns:minmax(140px,40%) minmax(0,1fr);align-items:stretch;overflow:hidden;display:grid!important}.home-cards-grid--featured .service-card--home .service-card__media{height:100%;min-height:0}.home-cards-grid--featured .service-card--home .service-card__image,.home-cards-grid--featured .service-card--home .service-card__image--empty{object-fit:cover;width:100%;height:100%;min-height:176px;max-height:196px}.home-cards-grid--featured .service-card--home .service-card__body{flex-direction:column;justify-content:center;gap:8px;min-width:0;padding:14px 16px;display:flex}.home-cards-grid--featured .service-card--home .service-card__title{margin:0;font-size:15px;font-weight:800;line-height:1.3}.home-cards-grid--featured .service-card--home .service-card__provider{color:var(--color-onSurfaceVariant);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:11px;line-height:1.35;display:-webkit-box;overflow:hidden}.home-cards-grid--featured .service-card--home .service-card__footer{justify-content:space-between;align-items:center;gap:12px;width:100%;margin:4px 0 0;padding:0;display:flex}.home-cards-grid--featured .service-card--home .service-card__rating{color:var(--color-onSurface);flex-shrink:0;align-items:center;gap:4px;font-size:13px;font-weight:700;display:inline-flex}.home-cards-grid--featured .service-card--home .service-card__rating svg{color:var(--color-ratingColor);flex-shrink:0}.home-cards-grid--featured .service-card--home .service-card__price{color:var(--color-secondary);white-space:nowrap;text-align:right;margin-left:auto;font-size:13px;font-weight:800}.home-cards-grid--featured .service-card--home .service-card__cta{background:var(--color-secondary);color:#fff;letter-spacing:.01em;box-sizing:border-box;border-radius:10px;justify-content:center;align-items:center;min-height:38px;margin-top:8px;padding:0 12px;font-size:12px;font-weight:700;line-height:1;display:flex}.home-rail--companies{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:12px;padding:2px 2px 8px;display:flex;overflow-x:auto}.home-rail--companies::-webkit-scrollbar{display:none}.home-rail--companies .home-company-card{scroll-snap-align:start;flex:0 0 196px;width:196px}.home-rail--companies-compact .home-company-card{flex:0 0 188px;width:188px}.home-rail--companies-compact .home-company-card__media{height:100px}.home-rail--companies-compact .home-company-card__body{padding:10px 10px 12px}.home-rail--companies-compact .home-company-card__title{font-size:13px}.home-rail--companies-compact .home-company-card__meta,.home-rail--companies-compact .home-company-card__location,.home-rail--companies-compact .home-company-card__count,.home-rail--companies-compact .home-company-card__rating{font-size:11px}.home-utility-card{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-outlineVariant) 70%, transparent);min-height:0;box-shadow:0 8px 20px color-mix(in srgb, var(--color-primary) 6%, transparent);border-radius:16px;align-content:start;gap:10px;padding:14px 16px;display:grid}.home-utility-card--map{grid-template-columns:minmax(0,1fr) minmax(100px,34%);align-items:stretch;gap:10px}.home-utility-card__body{align-content:start;gap:10px;display:grid}.home-utility-card__icon{background:color-mix(in srgb, var(--color-secondary) 12%, transparent);width:38px;height:38px;color:var(--color-secondary);border-radius:11px;place-items:center;display:grid}.home-utility-card__title{letter-spacing:-.02em;margin:0;font-size:15px;font-weight:800}.home-utility-card__text{color:var(--color-onSurfaceVariant);margin:4px 0 0;font-size:12px;line-height:1.4}.home-utility-card__cta{justify-self:start;margin-top:2px;min-height:34px!important;padding:0 12px!important;font-size:12px!important}.home-utility-card__map-art{background:linear-gradient(160deg,#dbeafe 0%,#eff6ff 45%,#e2e8f0 100%);border-radius:12px;min-height:96px;position:relative;overflow:hidden}.home-utility-card__pin{background:var(--color-secondary);width:10px;height:10px;box-shadow:0 0 0 4px color-mix(in srgb, var(--color-secondary) 22%, transparent);border-radius:50%;position:absolute}.home-utility-card__pin--a{top:28%;left:30%}.home-utility-card__pin--b{top:52%;left:58%}.home-utility-card__pin--c{top:68%;left:38%}.home-stories{scrollbar-width:none;gap:18px;padding:2px 2px 6px;display:flex;overflow-x:auto}.home-stories::-webkit-scrollbar{display:none}.home-story{cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:8px;min-width:76px;padding:0;display:flex}.home-story__ring{background:color-mix(in srgb, var(--color-outlineVariant) 70%, transparent);border-radius:50%;place-items:center;width:72px;height:72px;padding:3px;display:grid}.home-story--active .home-story__ring{background:linear-gradient(135deg, var(--color-secondary), var(--color-primary))}.home-story__avatar{object-fit:cover;border:3px solid var(--color-surface);background:var(--color-surfaceContainerHigh);border-radius:50%;width:100%;height:100%}.home-story__avatar--all,.home-story__avatar--fallback{color:var(--color-secondary);background:color-mix(in srgb, var(--color-secondary) 10%, var(--color-surface));place-items:center;font-size:18px;font-weight:800;display:grid}.home-story--active .home-story__avatar--all,.home-story--active .home-story__avatar--fallback{color:var(--color-secondary)}.home-story__label{color:var(--color-onSurfaceVariant);text-overflow:ellipsis;white-space:nowrap;text-align:center;max-width:80px;font-size:12px;font-weight:700;overflow:hidden}.home-story--active .home-story__label{color:var(--color-secondary)}.home-rail-section{gap:16px;display:grid}.home-rail{scroll-snap-type:x mandatory;scrollbar-width:thin;gap:16px;padding:4px 2px 12px;display:flex;overflow-x:auto}.home-rail>*{scroll-snap-align:start;flex-shrink:0}.home-rail--promos{margin-top:0}.home-rail--companies,.home-rail--services{scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-padding-inline:4px}.home-rail--companies::-webkit-scrollbar{display:none}.home-rail--services::-webkit-scrollbar{display:none}.home-horizontal-slider{grid-template-columns:minmax(0,1fr);align-items:center;gap:0;min-width:0;display:grid;position:relative}.home-horizontal-slider--scrollable{grid-template-columns:34px minmax(0,1fr) 34px;gap:6px}.home-horizontal-slider__track{min-width:0}.home-horizontal-slider__track--dragging a,.home-horizontal-slider__track--dragging button{pointer-events:none}.home-horizontal-slider__arrow{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 80%, transparent);background:var(--color-surface);width:34px;height:34px;color:var(--color-onSurface);box-shadow:0 4px 12px color-mix(in srgb, var(--color-primary) 8%, transparent);cursor:pointer;border-radius:50%;flex-shrink:0;place-items:center;transition:transform .15s,box-shadow .15s,opacity .15s;display:grid}.home-horizontal-slider__arrow:hover:not(:disabled){color:var(--color-secondary);box-shadow:0 8px 18px color-mix(in srgb, var(--color-primary) 12%, transparent);transform:scale(1.05)}.home-horizontal-slider__arrow:disabled{opacity:.35;cursor:default;box-shadow:none}.home-company-card--skeleton{pointer-events:none}.home-company-card__media--skeleton,.home-company-card__body--skeleton span{background:linear-gradient(90deg,#e8edf8 25%,#f4f7ff 50%,#e8edf8 75%) 0 0/200% 100%;border-radius:12px;animation:1.2s infinite homeShimmer}.home-company-card__media--skeleton{height:118px}.home-company-card__body--skeleton{gap:8px;padding:12px;display:grid}.home-company-card__body--skeleton span{height:12px}.home-company-card__body--skeleton span:first-child{width:75%}.home-company-card__body--skeleton span:nth-child(2){width:55%}.home-company-card__body--skeleton span:nth-child(3){width:40%}.home-service-card{background:#fffffff5;border:1px solid #24389c1a;border-radius:18px;width:240px;transition:transform .2s,box-shadow .2s;overflow:hidden;box-shadow:0 12px 30px #24389c1a}.home-service-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #24389c2e}.home-service-card__media{background:var(--color-surfaceContainerHigh);width:100%;height:130px;position:relative}.home-service-card__media-hit{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0}.home-service-card__image{object-fit:cover;width:100%;height:100%}.home-service-card__placeholder{width:100%;height:100%;color:var(--color-primary);place-items:center;display:grid}.home-service-card__favorite{color:#ff6b8a;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;border:0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:10px;right:10px}.home-service-card__status{letter-spacing:.04em;background:var(--color-outline);color:#fff;border-radius:6px;padding:4px 8px;font-size:10px;font-weight:800;position:absolute;bottom:10px;left:10px}.home-service-card__status--open{background:var(--color-primary)}.home-service-card__body{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:12px}.home-service-card__title{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:800;display:block;overflow:hidden}.home-service-card__meta{color:var(--color-onSurfaceVariant);white-space:nowrap;text-overflow:ellipsis;margin:4px 0 0;font-size:12px;overflow:hidden}.home-service-card__footer{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.home-service-card__rating{color:var(--color-ratingColor,#f5a623);align-items:center;gap:4px;font-size:12px;font-weight:700;display:flex}.home-service-card__price{color:var(--color-primary);font-size:12px;font-weight:800}.home-company-card{scroll-snap-align:start;background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-outlineVariant) 70%, transparent);width:196px;min-width:196px;box-shadow:0 10px 24px color-mix(in srgb, var(--color-primary) 7%, transparent);border-radius:16px;flex-shrink:0;transition:transform .2s,box-shadow .2s;overflow:hidden}.home-company-card:hover{box-shadow:0 18px 36px color-mix(in srgb, var(--color-primary) 14%, transparent);transform:translateY(-4px)}.home-company-card__media{cursor:pointer;background:var(--color-surfaceContainerHigh);border:0;width:100%;height:108px;padding:0}.home-company-card__image{object-fit:cover;width:100%;height:100%}.home-company-card__placeholder{width:100%;height:100%;color:var(--color-primary);place-items:center;display:grid}.home-company-card__body{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:14px 14px 16px}.home-company-card__title{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:800;display:block;overflow:hidden}.home-company-card__meta{color:var(--color-onSurfaceVariant);white-space:nowrap;text-overflow:ellipsis;margin:4px 0 0;font-size:12px;overflow:hidden}.home-company-card__location{color:var(--color-onSurface);align-items:center;gap:4px;margin:6px 0 0;font-size:11px;display:flex}.home-company-card__location span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-company-card__footer{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.home-company-card__rating{align-items:center;gap:4px;font-size:12px;font-weight:700;display:flex}.home-company-card__count{color:var(--color-primary);font-size:11px;font-weight:800}.home-promo-card{text-align:left;cursor:pointer;background:linear-gradient(125deg, var(--color-primary), #4c56af), var(--color-primary);color:#fff;background-position:50%;background-size:cover;border:0;border-radius:18px;width:280px;height:120px;padding:16px;position:relative;overflow:hidden;box-shadow:0 14px 32px #24389c3d}.home-promo-card__overlay{background:linear-gradient(90deg,#0000008c 0%,#0003 100%);position:absolute;inset:0}.home-promo-card__badge,.home-promo-card__title,.home-promo-card__subtitle{z-index:1;position:relative}.home-promo-card__badge{background:#ffffff38;border-radius:6px;margin-bottom:6px;padding:4px 8px;font-size:11px;font-weight:800;display:inline-block}.home-promo-card__title{font-size:16px;font-weight:800;line-height:1.2;display:block}.home-promo-card__subtitle{opacity:.9;margin:4px 0 0;font-size:12px}.home-map-preview{cursor:pointer;background:linear-gradient(#ffffff80,#ffffffb8),url(https://api.mapbox.com/styles/v1/mapbox/light-v11/static/10.18,36.8,11,0/800x300?access_token=pk.eyJ1IjoibWFwYm94IiwiYSI6ImNpejY4NXVycTA2emYycXBndHRqcmZ3N3gifQ.rJcFIG214AriISLbB6B5aw) 50%/cover no-repeat;border:1px solid #24389c1f;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;height:150px;display:flex;position:relative;overflow:hidden}.home-map-preview__scrim{background:#ffffff8c;position:absolute;inset:0}.home-map-preview__locator,.home-map-preview__cta,.home-map-preview__count{z-index:1;position:relative}.home-map-preview__locator{border:2px solid var(--color-primary);width:42px;height:42px;color:var(--color-primary);background:#fff;border-radius:50%;place-items:center;display:grid;box-shadow:0 8px 20px #24389c33}.home-map-preview__cta{background:var(--color-primary);color:var(--color-onPrimary);border-radius:999px;padding:10px 20px;font-size:14px;font-weight:800;box-shadow:0 10px 24px #24389c47}.home-map-preview__count{color:#0b1c30b8;font-size:12px;font-weight:700}.home-reviews__list{gap:10px;display:grid}.home-review-card{background:#fffffff2;border:1px solid #24389c1a;border-radius:16px;padding:14px;box-shadow:0 8px 20px #24389c14}.home-review-card__header{justify-content:space-between;align-items:center;gap:10px;display:flex}.home-review-card__rating{color:var(--color-ratingColor,#f5a623);align-items:center;gap:4px;font-size:12px;font-weight:700;display:flex}.home-review-card__service{color:var(--color-primary);margin:6px 0 0;font-size:12px;font-weight:800}.home-review-card__body{color:var(--color-onSurfaceVariant);margin:6px 0 0;font-size:13px;line-height:1.5}.home-empty-label{color:var(--color-onSurfaceVariant);text-align:center;background:#ffffffb3;border-radius:14px;margin:0;padding:16px;font-weight:600}.home-error{background:#ffffffe6;border:1px solid #dc262633;border-radius:16px;justify-items:start;gap:12px;padding:20px;display:grid}.home-service-card--skeleton{pointer-events:none}.home-service-card__media--skeleton,.home-story__ring--skeleton,.home-story__label--skeleton,.home-search-row--skeleton,.home-quick-actions--skeleton span,.home-header--skeleton span{background:linear-gradient(90deg,#e8edf8 25%,#f4f7ff 50%,#e8edf8 75%) 0 0/200% 100%;border-radius:12px;animation:1.2s infinite homeShimmer}.home-service-card__media--skeleton{height:130px}.home-service-card__body--skeleton{gap:8px;padding:12px;display:grid}.home-service-card__body--skeleton span{background:linear-gradient(90deg,#e8edf8 25%,#f4f7ff 50%,#e8edf8 75%) 0 0/200% 100%;border-radius:6px;height:12px;animation:1.2s infinite homeShimmer}.home-service-card__body--skeleton span:first-child{width:80%}.home-service-card__body--skeleton span:nth-child(2){width:60%}.home-service-card__body--skeleton span:nth-child(3){width:45%}.home-header--skeleton{gap:10px;padding:16px;display:flex}.home-header--skeleton span{flex:1;height:40px}.home-search-row--skeleton{height:46px}.home-quick-actions--skeleton{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.home-quick-actions--skeleton span{height:84px}.home-stories--skeleton{gap:14px;display:flex}.home-stories--skeleton span{background:linear-gradient(90deg,#e8edf8 25%,#f4f7ff 50%,#e8edf8 75%) 0 0/200% 100%;border-radius:50%;flex-shrink:0;width:68px;height:68px;animation:1.2s infinite homeShimmer}@keyframes homeShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (width<=900px){.booking-flow__layout,.booking-flow__summary-actions{grid-template-columns:1fr}}@media (width<=1100px){.home-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.home-split-row--main{grid-template-columns:1fr}}@media (width<=900px){.home-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-quick-action{min-height:80px;padding:14px 12px}.home-upcoming{flex-direction:column;align-items:stretch;gap:18px;padding:18px}.home-upcoming__actions{width:100%}.home-upcoming__btn{flex:1}.home-split-row--footer,.home-utility-card--map{grid-template-columns:1fr}.home-utility-card__map-art{min-height:110px}.home-cards-grid--featured .service-card--home{grid-template-columns:1fr}.home-cards-grid--featured .service-card--home .service-card__image,.home-cards-grid--featured .service-card--home .service-card__image--empty{height:170px;min-height:170px}.home-company-card,.home-rail__service-item{width:100%}}@media (width<=640px){.home-header__subtitle{display:none}.home-feed__content{gap:28px;padding:4px 0 40px}.home-welcome__title{font-size:24px}.home-quick-actions{grid-template-columns:1fr}.home-quick-action__hint{-webkit-line-clamp:1}.home-upcoming__actions{flex-direction:column}.home-horizontal-slider{grid-template-columns:minmax(0,1fr);gap:0;position:relative}.home-horizontal-slider__arrow{z-index:4;width:34px;height:34px;position:absolute;top:42%}.home-horizontal-slider__arrow--left{left:4px}.home-horizontal-slider__arrow--right{right:4px}}body,#root{background:var(--color-background)}.app-shell{background:var(--color-background);grid-template-columns:248px minmax(0,1fr);gap:0;min-height:100vh;padding:0;display:grid}.app-shell--sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}.app-shell__main{background:var(--color-background);min-height:100vh}.app-shell__sidebar{background:var(--color-surface);border:none;border-right:var(--border-subtle);height:100vh;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;padding:20px 12px 16px;position:sticky;top:0}.app-shell__sidebar-top{margin-bottom:20px;padding:0 6px}.app-shell__sidebar-footer{border-top:var(--border-subtle);gap:8px;margin-top:auto;padding:16px 6px 0;display:grid}.app-shell__sidebar-toggle{border-radius:var(--radius-sm);background:var(--color-surfaceContainer);color:var(--color-onSurfaceVariant)}.app-brand{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;min-width:0;padding:0;display:flex}.app-brand__image{border-radius:10px;flex-shrink:0;width:36px;height:36px}.app-brand__copy{gap:1px;min-width:0;display:grid}.app-brand__name{color:var(--color-onSurface);letter-spacing:-.02em;font-size:15px;font-weight:800;line-height:1.2}.app-brand__tier{color:var(--color-onSurfaceVariant);font-size:11px;font-weight:600}.app-brand--collapsed{justify-content:center}.app-brand--collapsed .app-brand__image{width:32px;height:32px}.app-shell__nav{gap:4px}.nav-link,.nav-link--button{border-radius:var(--radius-md);color:var(--color-onSurfaceVariant);padding:10px 12px;font-weight:600;position:relative;transform:none}.nav-link__icon{border-radius:var(--radius-sm);width:28px;height:28px;color:inherit;background:0 0}.nav-link:hover,.nav-link--button:hover{background:var(--color-surfaceContainerLow);color:var(--color-onSurface);transform:none}.nav-link--active,.nav-link--active:hover{background:var(--elite-active-bg);color:var(--elite-active-fg);box-shadow:var(--shadow-sm)}.nav-link--active:before{display:none}.nav-link--active .nav-link__icon,.nav-link--active:hover .nav-link__icon{color:var(--elite-active-fg)}.nav-link:hover .nav-link__icon,.nav-link--button:hover .nav-link__icon{color:inherit;background:0 0}.app-topbar__profile{cursor:pointer;border-radius:var(--radius-md);background:0 0;border:0;align-items:center;gap:10px;padding:4px 6px 4px 4px;display:inline-flex}.app-topbar__profile:hover{background:var(--color-surfaceContainerLow)}.app-topbar__avatar{border:2px solid var(--color-outlineVariant);background:var(--color-primaryContainer);width:38px;height:38px;color:var(--color-primary);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:800;display:grid;overflow:hidden}.app-topbar__profile-name{color:var(--color-onSurface);font-size:14px;font-weight:700}.app-shell__topbar{z-index:20;background:var(--color-surface);border:none;border-bottom:var(--border-subtle);min-height:72px;box-shadow:var(--shadow-xs);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;align-items:center;gap:16px;padding:14px 32px;display:flex;position:sticky;top:0}.app-shell__menu-btn{border-radius:var(--radius-md);border:var(--border-subtle);background:var(--color-surfaceContainerLow);width:40px;height:40px;color:var(--color-onSurface);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;display:none}.app-topbar__start{flex:1;justify-content:flex-start;align-items:center;gap:10px;min-width:0;display:flex}.app-topbar__search{border:var(--border-subtle);background:var(--color-surfaceContainerLow);min-width:180px;max-width:360px;min-height:48px;box-shadow:var(--shadow-xs);border-radius:999px;flex:0 320px;align-items:center;gap:12px;padding:0 18px;transition:border-color .16s,box-shadow .16s,background .16s;display:flex}.app-topbar__search:focus-within{border-color:color-mix(in srgb, var(--color-primary) 45%, transparent);background:var(--color-surfaceContainerLowest);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 14%, transparent)}.app-topbar__search input{color:var(--color-onSurface);background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:15px;font-weight:500}.app-topbar__search input::placeholder{color:var(--color-onSurfaceVariant)}.app-topbar__search svg{color:var(--color-primary);flex-shrink:0}.app-topbar__filters{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.explore-filter--compact{white-space:nowrap;min-height:36px;padding:0 12px;font-size:12px}.app-shell__topbar-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.explore-page{gap:18px;display:grid}.explore-filter{border:var(--border-subtle);background:var(--color-surface);min-height:40px;color:var(--color-onSurface);cursor:pointer;box-shadow:var(--shadow-xs);border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.explore-filter:hover{background:var(--color-surfaceContainerLow)}.explore-filter--active{border-color:var(--color-primary);background:var(--color-primaryContainer);color:var(--color-primary)}.explore-filter--toggle.explore-filter--active{background:var(--elite-active-bg);border-color:var(--elite-active-bg);color:var(--elite-active-fg)}.explore-page__map-btn{border:var(--border-subtle);background:var(--color-surface);min-height:40px;color:var(--color-onSurface);cursor:pointer;box-shadow:var(--shadow-xs);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-size:13px;font-weight:700;display:inline-flex}.explore-page__map-btn:hover,.explore-page__map-btn--active{background:var(--elite-active-bg);border-color:var(--elite-active-bg);color:var(--elite-active-fg)}.explore-page__categories-row{align-items:center;gap:12px;min-width:0;display:flex}.explore-page__categories{scrollbar-width:none;flex:1;gap:8px;min-width:0;padding-bottom:4px;display:flex;overflow-x:auto}.explore-page__categories::-webkit-scrollbar{display:none}.explore-pill{border:var(--border-subtle);background:var(--color-surface);min-height:38px;color:var(--color-onSurfaceVariant);cursor:pointer;border-radius:999px;flex-shrink:0;padding:0 16px;font-size:13px;font-weight:600}.explore-pill:hover{color:var(--color-onSurface);background:var(--color-surfaceContainerLow)}.explore-pill--active{background:var(--elite-active-bg);border-color:var(--elite-active-bg);color:var(--elite-active-fg)}.explore-page__grid{grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:16px;display:grid}.explore-page__load-more{justify-content:center;padding-top:8px;display:flex}.explore-page__grid .service-card--compact{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 80%, transparent);background:var(--color-surface);box-shadow:var(--shadow-xs);border-radius:14px;flex-direction:column;min-width:0;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;overflow:hidden}.explore-page__grid .service-card--compact .service-card__media{position:relative}.explore-page__grid .service-card--compact .service-card__image{aspect-ratio:5/4;object-fit:cover}.explore-page__grid .service-card--compact .service-card__image--empty{background:linear-gradient(145deg,#e8edf5 0%,#f4f6f9 100%)}.explore-page__grid .service-card--compact .service-card__media-overlay{pointer-events:none;background:linear-gradient(#0000 0%,#0f172a47 100%);height:42%;position:absolute;inset:auto 0 0}.explore-page__grid .service-card--compact .service-card__favorite{background:var(--elite-glass-bg);width:28px;height:28px;color:var(--color-onSurfaceVariant);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:0;border-radius:50%;top:8px;right:8px;box-shadow:0 2px 8px #0f172a1f}.explore-page__grid .service-card--compact .service-card__favorite--active{color:#ef4444;background:var(--elite-glass-bg)}.explore-page__grid .service-card--compact .service-card__price-badge{z-index:1;background:var(--elite-glass-bg);color:var(--elite-glass-fg);letter-spacing:-.01em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:8px;padding:4px 8px;font-size:12px;font-weight:800;position:absolute;bottom:8px;left:8px;box-shadow:0 2px 8px #0f172a1a}.explore-page__grid .service-card--compact .service-card__body{flex-direction:column;flex:1;gap:6px;min-width:0;padding:10px 12px 14px;display:flex}.explore-page__grid .service-card--compact .service-card__title{color:var(--color-onSurface);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.explore-page__grid .service-card--compact .service-card__location{color:var(--color-onSurfaceVariant);align-items:center;gap:4px;margin:0;font-size:11px;font-weight:500;line-height:1.2;display:flex}.explore-page__grid .service-card--compact .service-card__location span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.explore-page__grid .service-card--compact .service-card__location svg{opacity:.75;flex-shrink:0;margin-top:0}.explore-page__grid .service-card--compact .service-card__book-btn{box-sizing:border-box;background:var(--elite-active-bg);width:100%;min-height:40px;color:var(--elite-active-fg);white-space:normal;text-align:center;cursor:pointer;border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;margin-top:auto;padding:8px 10px;font-size:11px;font-weight:700;line-height:1.25;transition:background .2s,transform .2s;display:flex;overflow:visible}.explore-page__grid .service-card--compact .service-card__book-btn:hover{background:var(--elite-active-bg-hover)}.home-rail--services .service-card--compact .service-card__book-btn{background:var(--elite-active-bg);width:100%;min-height:34px;color:var(--elite-active-fg);cursor:pointer;border:0;border-radius:10px;margin-top:6px;font-size:12px;font-weight:700;transition:background .2s,transform .2s}.home-rail--services .service-card--compact .service-card__book-btn:hover{background:var(--elite-active-bg-hover)}.explore-page__grid .service-card--compact .service-card__meta--compact{margin-top:2px}.explore-page__grid .service-card--compact .service-card__rating{background:var(--elite-rating-bg);width:fit-content;color:var(--elite-rating-fg);border-radius:999px;align-items:center;gap:3px;padding:2px 7px;font-size:11px;font-weight:700;display:inline-flex}.explore-page__grid .service-card--compact .service-card__rating svg{color:var(--color-ratingColor)}.explore-page__grid .service-card--compact.service-card--interactive:hover{border-color:var(--elite-hover-ring);transform:translateY(-3px);box-shadow:0 8px 20px #0f172a1a,0 0 0 1px #2563eb14}.service-card{border:var(--border-subtle);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:18px;overflow:hidden}.service-card__image{aspect-ratio:4/3}.service-card__image--empty{background:linear-gradient(145deg, var(--color-surfaceContainer), var(--color-surfaceContainerHigh))}.service-card__favorite{background:var(--elite-glass-bg);width:34px;height:34px;color:var(--color-onSurfaceVariant);box-shadow:var(--shadow-sm);border:0;top:12px;right:12px}.service-card__favorite--active{color:#ef4444}.service-card__body{gap:8px;padding:14px 14px 16px;display:grid}.service-card__title{margin:0;font-size:16px;font-weight:800;line-height:1.25}.service-card__location{color:var(--color-onSurfaceVariant);align-items:flex-start;gap:6px;margin:0;font-size:13px;font-weight:500;line-height:1.35;display:flex}.service-card__location svg{color:var(--color-onSurfaceVariant);flex-shrink:0;margin-top:2px}.service-card__meta{justify-content:space-between;align-items:center;gap:8px;margin-top:4px;display:flex}.service-card__rating{color:var(--color-onSurface);align-items:center;gap:4px;font-size:14px;font-weight:700;display:inline-flex}.service-card__rating svg{color:var(--color-ratingColor)}.service-card__price{color:var(--color-onSurface);font-size:15px;font-weight:800}.service-card--interactive:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.page-grid,.bookings-page,.booking-details,.booking-flow{animation:.25s pageFadeIn}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}@media (width<=1280px){.explore-page__grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}}@media (width<=1024px){.explore-page__grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.app-topbar__profile-name{display:none}}@media (width<=640px){.explore-page__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.explore-page__grid .service-card--compact .service-card__book-btn{min-height:36px;padding:6px 8px;font-size:10px}.explore-page__categories-row{flex-direction:column;align-items:stretch}.explore-page__map-btn{justify-content:center;width:100%}}.sidebar-link{border-radius:var(--radius-sm);color:var(--color-onSurfaceVariant);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:8px 10px;font-size:13px;font-weight:600;display:inline-flex}.sidebar-link:hover{background:var(--color-surfaceContainerLow);color:var(--color-onSurface)}.sidebar-link--danger{color:var(--color-error)}.sidebar-link--danger:hover{background:var(--color-errorContainer);color:var(--color-error)}.app-topbar__notifications .notifications-menu__trigger,.notifications-menu__trigger{border-radius:var(--radius-md);background:var(--color-surfaceContainerLow);border:var(--border-subtle);width:38px;height:38px;color:var(--color-onSurfaceVariant)}.app-topbar__action:hover,.app-topbar__notifications .notifications-menu__trigger:hover{background:var(--color-surfaceContainer);color:var(--color-onSurface)}.language-toggle{border-radius:var(--radius-md);border:var(--border-subtle);background:var(--color-surfaceContainerLow);min-width:44px;min-height:38px;color:var(--color-onSurface);cursor:pointer;font-size:12px;font-weight:700}.btn{border-radius:var(--radius-md);letter-spacing:.01em;min-height:46px;font-weight:700;transition:transform .16s,box-shadow .16s,filter .16s,background .16s}.btn--primary{background:var(--brand-gradient);color:#fff;box-shadow:0 10px 24px color-mix(in srgb, var(--color-primary) 30%, transparent)}.btn--primary:hover{filter:brightness(1.06);box-shadow:0 14px 30px color-mix(in srgb, var(--color-primary) 38%, transparent);transform:translateY(-1px)}.btn--secondary{background:var(--color-secondaryFixedBackground);color:var(--color-primary)}.btn--secondary:hover{background:var(--color-primaryFixed)}.btn--outline{background:var(--color-surface);border:var(--border-subtle);color:var(--color-onSurface)}.btn--ghost{color:var(--color-secondary)}.btn--dark{background:var(--elite-active-bg);color:var(--elite-active-fg);box-shadow:var(--shadow-sm)}.btn--dark:hover{background:var(--elite-active-bg-hover)}.card{border-radius:var(--radius-xl);border:var(--border-subtle);background:var(--color-surface);box-shadow:var(--shadow-card)}.card--interactive:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.tab{border-radius:var(--radius-md);border:var(--border-subtle);background:var(--color-surface);color:var(--color-onSurfaceVariant);font-weight:600}.tab--active{background:var(--elite-active-bg);color:var(--elite-active-fg);box-shadow:var(--shadow-sm);border-color:#0000}.search-bar,.home-search{border:var(--border-subtle);background:var(--color-surface);min-height:52px;box-shadow:var(--shadow-xs);border-radius:999px}.home-search__filter{background:var(--color-secondary);box-shadow:var(--shadow-sm);border-radius:50%}.service-card{border-radius:var(--radius-xl);border:var(--border-subtle);background:var(--color-surface);box-shadow:var(--shadow-card)}.service-card--interactive:hover{box-shadow:var(--shadow-lg);border-color:var(--color-outlineVariant);transform:translateY(-3px)}.home-welcome{margin:0;padding:0}.home-welcome__title{color:var(--color-onSurface);letter-spacing:-.03em;font-size:clamp(20px,2vw,26px);font-weight:800}.home-feed__content{gap:26px;width:100%;max-width:none;margin:0;padding:4px 0 32px}.home-section{gap:12px;display:grid}.app-shell__content{padding:14px 18px 24px}.home-section-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.home-section-header__copy{gap:4px;display:grid}.home-section-header__title{color:var(--color-onSurface);letter-spacing:-.02em;margin:0;font-size:19px;font-weight:800;line-height:1.2}.home-section-header__subtitle{color:var(--color-onSurfaceVariant);margin:0;font-size:13px;font-weight:500}.home-section-header__action{color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 8%, transparent);border-radius:999px;align-items:center;gap:4px;padding:6px 12px;font-size:13px;font-weight:700;transition:background .14s;display:inline-flex}.home-section-header__action:hover{background:color-mix(in srgb, var(--color-primary) 15%, transparent)}.home-quick-action{border:var(--border-subtle);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:18px}.home-quick-action:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.home-upcoming{background:var(--brand-gradient);box-shadow:var(--shadow-lg);border-radius:16px;padding:14px 16px}.home-upcoming__btn--primary{color:var(--color-primary);background:#fff;border-radius:12px}.home-upcoming__btn--ghost{color:#fff;background:#ffffff1f;border:1px solid #ffffff47;border-radius:12px}.home-rail-section{gap:14px;min-width:0;display:grid}.home-rail__service-item{width:100%;min-width:0}.home-cards-grid--featured .service-card--home,.home-cards-grid--services .service-card--home{width:100%}.home-cards-grid--services .service-card--home{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 70%, transparent);background:var(--color-surface);height:100%;box-shadow:var(--shadow-card);border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.home-cards-grid--services .service-card--home .service-card__image{object-fit:cover;width:100%;height:140px}.home-rail--services .service-card--home{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 70%, transparent);background:var(--color-surface);width:100%;height:100%;box-shadow:var(--shadow-card);border-radius:20px;flex-direction:column;transition:transform .24s,box-shadow .24s,border-color .24s;display:flex;overflow:hidden}.home-rail--services .service-card--home .service-card__media{flex-shrink:0;position:relative}.home-rail--services .service-card--home .service-card__image{aspect-ratio:auto;object-fit:cover;width:100%;height:168px}.home-rail--services .service-card--home .service-card__image--empty{background:linear-gradient(135deg, var(--color-surfaceContainerHigh) 0%, var(--color-surfaceContainer) 100%)}.home-rail--services .service-card--home .service-card__favorite{background:var(--elite-glass-bg);width:34px;height:34px;color:var(--color-onSurfaceVariant);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:0;border-radius:50%;top:10px;right:10px}.home-rail--services .service-card--home .service-card__favorite--active{color:#ef4444}.home-rail--services .service-card--home .service-card__status{z-index:1;letter-spacing:.06em;background:color-mix(in srgb, var(--color-onSurfaceVariant) 88%, transparent);color:#fff;border-radius:6px;padding:4px 8px;font-size:10px;font-weight:800;position:absolute;bottom:10px;left:10px}.home-rail--services .service-card--home .service-card__status--open{background:color-mix(in srgb, var(--color-secondary) 92%, transparent)}.home-rail--services .service-card--home .service-card__body{flex-direction:column;flex:1;gap:10px;padding:16px 16px 18px;display:flex}.home-rail--services .service-card--home .service-card__title{color:var(--color-onSurface);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:15px;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.home-rail--services .service-card--home .service-card__provider{color:var(--color-onSurfaceVariant);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12px;font-weight:500;line-height:1.35;display:-webkit-box;overflow:hidden}.home-rail--services .service-card--home .service-card__footer{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:4px;display:flex}.home-rail--services .service-card--home .service-card__rating{color:var(--color-onSurface);align-items:center;gap:4px;font-size:13px;font-weight:700;display:inline-flex}.home-rail--services .service-card--home .service-card__rating svg{color:var(--color-ratingColor)}.home-rail--services .service-card--home .service-card__price{color:var(--color-secondary);text-align:right;white-space:nowrap;font-size:13px;font-weight:800}.home-rail--services .service-card--home .service-card__cta{background:color-mix(in srgb, var(--color-secondary) 10%, transparent);min-height:40px;color:var(--color-secondary);letter-spacing:.01em;border-radius:12px;justify-content:center;align-items:center;margin-top:6px;font-size:13px;font-weight:700;transition:background .2s,color .2s;display:flex}.home-rail--services .service-card--home.service-card--interactive:hover{border-color:color-mix(in srgb, var(--color-secondary) 35%, transparent);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.home-rail--services .service-card--home.service-card--interactive:hover .service-card__cta{background:var(--color-secondary);color:var(--color-onSecondary)}.home-rail--services .service-card--compact{width:100%;height:100%}.home-rail__service-item--skeleton,.home-service-card-skeleton__media,.home-experience-card--skeleton{background:linear-gradient(90deg, var(--elite-skeleton-a) 25%, var(--elite-skeleton-b) 50%, var(--elite-skeleton-a) 75%);background-size:200% 100%;border-radius:18px;animation:1.2s ease-in-out infinite homeShimmer}.home-service-card-skeleton__media{aspect-ratio:auto;height:156px}.home-rail__service-item--skeleton{flex:0 0 260px;gap:8px;width:260px;padding-bottom:10px;display:grid}.home-service-card-skeleton__body{gap:6px;display:grid}.home-service-card-skeleton__body span{background:var(--elite-skeleton-a);border-radius:999px;height:10px;display:block}.home-service-card-skeleton__body span:first-child{width:88%}.home-service-card-skeleton__body span:nth-child(2){width:62%}.home-service-card-skeleton__body span:nth-child(3){width:42%}.home-rail--experiences{scroll-padding-inline:4px}.home-experiences{gap:14px;display:grid}.home-experience-card{border:1px solid color-mix(in srgb, var(--color-outlineVariant) 80%, transparent);background:var(--elite-card-gradient);width:300px;box-shadow:var(--shadow-xs);border-radius:16px;flex:0 0 300px;gap:10px;padding:14px;display:grid}.home-experience-card--skeleton{flex:0 0 300px;width:300px;min-height:148px}.home-experience-card__header{align-items:center;gap:10px;display:flex}.home-experience-card__avatar{background:var(--elite-active-bg);width:38px;height:38px;color:var(--elite-active-fg);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:800;display:grid}.home-experience-card__identity{flex:1;gap:2px;min-width:0;display:grid}.home-experience-card__identity strong{color:var(--color-onSurface);font-size:14px}.home-experience-card__date{color:var(--color-onSurfaceVariant);font-size:11px}.home-experience-card__rating{background:var(--elite-rating-bg);color:var(--elite-rating-fg);border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:700;display:inline-flex}.home-experience-card__rating svg{color:var(--color-ratingColor)}.home-experience-card__service{color:var(--color-secondary);margin:0;font-size:12px;font-weight:700}.home-experience-card__body{color:var(--color-onSurfaceVariant);-webkit-line-clamp:4;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.home-experiences__empty{border:1px dashed color-mix(in srgb, var(--color-outlineVariant) 90%, transparent);background:var(--color-surfaceContainerLow);color:var(--color-onSurfaceVariant);text-align:center;border-radius:16px;justify-items:center;gap:10px;padding:28px 20px;display:grid}.home-experiences__empty p{max-width:360px;margin:0;font-size:14px;line-height:1.5}.home-experiences__skeleton{gap:12px;display:flex;overflow:hidden}.booking-flow__hero{background:var(--brand-gradient);box-shadow:none;border:none}.booking-flow__panel{border-radius:var(--radius-xl);border:var(--border-subtle);background:var(--color-surface);box-shadow:var(--shadow-lg)}.booking-card{border-radius:var(--radius-xl);border:var(--border-subtle);background:var(--color-surface);box-shadow:var(--shadow-card)}.bookings-page__stat{border-radius:var(--radius-lg);border:var(--border-subtle);background:var(--color-surface);box-shadow:var(--shadow-xs)}.bookings-page__tabs .tab--active{background:var(--elite-active-bg);color:var(--elite-active-fg);box-shadow:var(--shadow-sm)}.chip--active,.booking-slot-picker__date--active,.booking-slot-picker__slot--active{background:var(--color-secondary);color:var(--color-onSecondary);box-shadow:var(--shadow-sm);border-color:#0000}.auth-layout{background:var(--color-background)}.auth-card{border-radius:var(--radius-xl);border:var(--border-subtle);background:var(--color-surface);box-shadow:var(--shadow-lg)}.input-field__control{border-radius:var(--radius-md);border:var(--border-subtle);background:var(--color-surface)}.input-field__control:focus-within{border-color:var(--color-secondary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-secondary) 18%, transparent)}.drawer-panel{border-right:var(--border-subtle);background:var(--color-surface);box-shadow:var(--shadow-lg)}.modal-card{border-radius:var(--radius-xl);border:var(--border-subtle);box-shadow:var(--shadow-lg)}.chat-list,.chat-thread{border-radius:var(--radius-xl);border:var(--border-subtle);background:var(--color-surface);box-shadow:var(--shadow-card)}.chat-bubble--mine{background:var(--color-secondary)}.explore-map{border-radius:var(--radius-xl);border:var(--border-subtle);box-shadow:var(--shadow-card)}@media (width<=960px){.app-shell{padding:0 0 72px;display:block}.app-shell__topbar{gap:10px;padding:12px 16px;top:0}.app-shell__menu-btn{display:inline-flex}.app-topbar__start{scrollbar-width:none;gap:8px;overflow-x:auto}.app-topbar__start::-webkit-scrollbar{display:none}.app-topbar__search{flex:140px;min-width:120px;max-width:none;min-height:44px;padding:0 14px}.app-topbar__filters{flex-wrap:nowrap}.explore-filter--compact{min-height:34px;padding:0 10px;font-size:11px}.app-topbar__profile-name{display:none}.app-shell__content{padding:16px}.mobile-tabbar{border-top:var(--border-subtle);background:var(--color-surface);box-shadow:0 -4px 16px #1018280f}.mobile-tabbar .nav-link--active{background:var(--elite-active-bg);color:var(--elite-active-fg)}.mobile-tabbar .nav-link--active:before{display:none}}@media (width<=1120px){.app-shell{grid-template-columns:220px minmax(0,1fr)}}.home-story--active .home-story__ring{border-color:var(--color-secondary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-secondary) 20%, transparent)}.home-story--active .home-story__label{color:var(--color-secondary);font-weight:700}.app-fab{z-index:30;background:var(--brand-gradient);color:#fff;width:58px;height:58px;box-shadow:0 14px 32px color-mix(in srgb, var(--color-primary) 42%, transparent);cursor:pointer;border:0;border-radius:50%;place-items:center;font-size:28px;line-height:1;transition:transform .16s,box-shadow .16s,filter .16s;display:grid;position:fixed;bottom:28px;right:28px}.app-fab:hover{filter:brightness(1.07);box-shadow:0 18px 40px color-mix(in srgb, var(--color-primary) 50%, transparent);transform:translateY(-2px)scale(1.04)}@media (width<=960px){.app-fab{bottom:88px;right:16px}}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark] body,[data-theme=dark] #root,[data-theme=dark] .app-shell,[data-theme=dark] .app-shell__main{background:var(--color-background)}[data-theme=dark] .app-shell__sidebar,[data-theme=dark] .app-shell__topbar,[data-theme=dark] .card,[data-theme=dark] .service-card,[data-theme=dark] .booking-card,[data-theme=dark] .auth-card,[data-theme=dark] .modal-card,[data-theme=dark] .home-experience-card,[data-theme=dark] .home-review-card,[data-theme=dark] .explore-filter,[data-theme=dark] .explore-pill,[data-theme=dark] .explore-page__map-btn{background:var(--color-surface);border-color:var(--color-outlineVariant);color:var(--color-onSurface)}[data-theme=dark] .app-topbar__search,[data-theme=dark] .app-shell__menu-btn,[data-theme=dark] .app-topbar__action,[data-theme=dark] .language-toggle,[data-theme=dark] .notifications-menu__trigger{background:var(--color-surfaceContainer);border-color:var(--color-outlineVariant);color:var(--color-onSurface)}[data-theme=dark] .app-topbar__search input{color:var(--color-onSurface)}[data-theme=dark] .app-topbar__search input::placeholder{color:var(--color-onSurfaceVariant)}[data-theme=dark] .home-rail--services .service-card--home .service-card__cta{background:color-mix(in srgb, var(--color-secondary) 18%, transparent);color:var(--color-primary)}[data-theme=dark] .home-rail--services .service-card--home.service-card--interactive:hover .service-card__cta{background:var(--color-secondary);color:#fff}[data-theme=dark] .explore-page__grid .service-card--compact .service-card__image--empty{background:linear-gradient(145deg, var(--color-surfaceContainerHigh) 0%, var(--color-surfaceContainer) 100%)}[data-theme=dark] .explore-filter--active,[data-theme=dark] .explore-pill--active,[data-theme=dark] .explore-page__map-btn--active{background:var(--elite-active-bg);border-color:var(--elite-active-bg);color:var(--elite-active-fg)}[data-theme=dark] .btn--dark{background:var(--color-secondary);color:#fff}[data-theme=dark] .btn--outline{background:var(--color-surfaceContainer);border-color:var(--color-outlineVariant);color:var(--color-onSurface)}[data-theme=dark] .btn--outline:hover{background:var(--color-surfaceContainerHigh)}[data-theme=dark] .home-horizontal-slider__arrow{background:var(--color-surfaceContainerHigh);color:var(--color-onSurface);box-shadow:var(--shadow-sm)}[data-theme=dark] .home-experiences__empty{border-color:var(--color-outlineVariant);background:var(--color-surfaceContainerLow)}[data-theme=dark] .home-experience-card__avatar{background:var(--elite-active-bg)}[data-theme=dark] .modal-backdrop{background:var(--elite-overlay-scrim)}[data-theme=dark] .notifications-menu__panel{background:var(--color-surfaceContainerHigh);border-color:var(--color-outlineVariant);box-shadow:var(--shadow-lg)}[data-theme=dark] .input-field__control{background:var(--color-surfaceContainer);border-color:var(--color-outlineVariant);color:var(--color-onSurface)}[data-theme=dark] .booking-details__hero--success,[data-theme=dark] .booking-details__hero--warning,[data-theme=dark] .booking-details__hero--danger{background:0 0}[data-theme=dark] .booking-details__total{background:color-mix(in srgb, var(--color-secondary) 16%, var(--color-surface))}[data-theme=dark] .booking-details__advice{background:color-mix(in srgb, var(--color-warning) 18%, var(--color-surface))}[data-theme=dark] .booking-details__status--success{color:var(--color-success)}[data-theme=dark] .chip,[data-theme=dark] .booking-slot-picker__date,[data-theme=dark] .booking-slot-picker__slot{background:var(--color-surfaceContainer);border-color:var(--color-outlineVariant);color:var(--color-onSurface)}[data-theme=dark] .mobile-tabbar{background:var(--color-surface);border-color:var(--color-outlineVariant);box-shadow:0 -4px 24px #00000059}[data-theme=dark] .home-map-preview{border-color:var(--color-outlineVariant)}[data-theme=dark] .home-promo-card,[data-theme=dark] .home-company-card,[data-theme=dark] .home-upcoming{background:var(--color-surface);border-color:var(--color-outlineVariant)}[data-theme=dark] a{color:var(--color-secondary)}.booking-details{gap:20px;max-width:1100px;margin:0 auto}.booking-details__hero{text-align:left;box-shadow:none;background:0 0;border:0;border-radius:0;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:8px 2px 4px;display:flex}.booking-details__hero-main{flex:420px;align-items:flex-start;gap:14px;min-width:min(100%,280px);display:flex}.booking-details__hero--success,.booking-details__hero--warning,.booking-details__hero--danger{background:0 0}.booking-details__hero-icon{background:var(--color-primaryContainer);width:56px;height:56px;color:var(--color-secondary);border-radius:50%;flex-shrink:0;place-items:center;margin:0;display:grid}.booking-details__hero--danger .booking-details__hero-icon{background:var(--color-errorContainer);color:var(--color-error)}.booking-details__hero--warning .booking-details__hero-icon{color:var(--color-primary);background:#fdf0d5}.booking-details__hero-copy{min-width:0}.booking-details__hero-title{letter-spacing:-.02em;color:var(--color-onSurface);margin:0;font-size:clamp(1.45rem,2.4vw,1.9rem);font-weight:800}.booking-details__hero-subtitle{max-width:52ch;color:var(--color-onSurfaceVariant);margin:6px 0 0;font-weight:500;line-height:1.45}.booking-details__reference{background:var(--color-surface);border:var(--border-subtle);max-width:100%;box-shadow:var(--shadow-xs);color:var(--color-secondary);word-break:break-all;border-radius:999px;align-items:center;gap:8px;margin:0;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.booking-details__reference span{min-width:0}.booking-details__layout{grid-template-columns:minmax(0,1.35fr) minmax(260px,.85fr);align-items:start;gap:18px;display:grid}.booking-details__main,.booking-details__side{gap:14px;display:grid}.booking-details__card{border-radius:var(--radius-xl);border:var(--border-subtle);background:var(--color-surface);box-shadow:var(--shadow-card);gap:18px;display:grid}.booking-details__provider{border-bottom:var(--border-subtle);justify-content:space-between;align-items:center;gap:12px;padding-bottom:14px;display:flex}.booking-details__provider-identity{align-items:center;gap:12px;min-width:0;display:flex}.booking-details__avatar{object-fit:cover;border-radius:14px;flex-shrink:0;width:48px;height:48px}.booking-details__avatar--fallback{background:color-mix(in srgb, var(--color-secondary) 12%, transparent);color:var(--color-secondary);place-items:center;display:grid}.booking-details__provider-name{color:var(--color-onSurface);margin:0;font-size:18px;font-weight:800}.booking-details__premium{letter-spacing:.04em;color:var(--color-secondary);margin-top:4px;font-size:11px;font-weight:800;display:inline-block}.booking-details__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;display:grid}.booking-details__row{align-items:flex-start;gap:12px;display:flex}.booking-details__row-icon{background:color-mix(in srgb, var(--color-secondary) 10%, transparent);width:36px;height:36px;color:var(--color-secondary);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.booking-details__row-copy{gap:2px;min-width:0;display:grid}.booking-details__row-label{color:var(--color-onSurfaceVariant);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:800}.booking-details__row-value{color:var(--color-onSurface);word-break:break-word;font-size:15px;font-weight:700}.booking-details__order-header{align-items:center;gap:10px;display:flex}.booking-details__order-icon{background:color-mix(in srgb, var(--color-secondary) 10%, transparent);width:36px;height:36px;color:var(--color-secondary);border-radius:10px;place-items:center;display:grid}.booking-details__order-title{color:var(--color-onSurface);margin:0;font-size:16px;font-weight:800}.booking-details__meta{gap:10px;display:grid}.booking-details__meta div{color:var(--color-onSurfaceVariant);justify-content:space-between;gap:12px;font-size:13px;font-weight:600;display:flex}.booking-details__meta strong{color:var(--color-secondary);font-weight:800}.booking-details__amounts{border-top:1px dashed color-mix(in srgb, var(--color-outlineVariant) 80%, transparent);gap:10px;padding-top:4px;display:grid}.booking-details__amount{color:var(--color-onSurfaceVariant);justify-content:space-between;gap:12px;font-weight:600;display:flex}.booking-details__amount strong{color:var(--color-onSurface)}.booking-details__total{background:color-mix(in srgb, var(--color-secondary) 10%, white);color:var(--color-onSurface);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin-top:4px;padding:14px 16px;font-weight:700;display:flex}.booking-details__total strong{color:var(--color-secondary);letter-spacing:-.02em;font-size:1.35rem;font-weight:800}.booking-details__status{white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:7px 12px;font-size:12px;font-weight:800;display:inline-flex}.booking-details__status--success{background:color-mix(in srgb, var(--color-success) 16%, transparent);color:#166534}.booking-details__status--warning{color:#9a6b00;background:#fdf0d5}.booking-details__status--danger{background:var(--color-errorContainer);color:var(--color-error)}.booking-details__actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.booking-details__actions .btn{gap:8px;min-height:46px}.booking-details__actions .btn span{justify-content:center;align-items:center;gap:8px;display:inline-flex}.booking-details__back{min-height:44px;color:var(--color-secondary);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0 8px;font-weight:700;display:inline-flex}.booking-details__back:hover{text-decoration:underline}.booking-details__advice{box-shadow:var(--shadow-xs);background:#fdf4e1;border-color:#0000;align-items:flex-start;gap:12px;display:flex}.booking-details__advice-icon{color:#9a6b00;background:#fcebca;border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.booking-details__advice strong{color:var(--color-primary);margin-bottom:4px;display:block}.booking-details__advice p{color:var(--color-onSurfaceVariant);margin:0;font-weight:600;line-height:1.45}@media (width<=900px){.booking-details__layout{grid-template-columns:1fr}}@media (width<=640px){.booking-details__list{grid-template-columns:1fr}.booking-details__provider{flex-direction:column;align-items:flex-start}.booking-details__actions{flex-direction:column;align-items:stretch}.booking-details__back{justify-content:center}}[data-theme=dark] .app-shell__topbar{background:var(--color-surface);border-color:var(--color-outlineVariant);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=dark] .service-card{background:var(--color-surface);border-color:var(--color-outlineVariant);box-shadow:var(--shadow-card)}[data-theme=dark] .service-card--interactive:hover{border-color:var(--elite-hover-ring);box-shadow:var(--shadow-lg)}[data-theme=dark] .service-card__favorite{background:var(--elite-glass-bg);color:var(--color-onSurfaceVariant);box-shadow:var(--shadow-sm)}[data-theme=dark] .home-service-card,[data-theme=dark] .home-company-card,[data-theme=dark] .home-review-card,[data-theme=dark] .home-quick-action,[data-theme=dark] .home-story__ring{background:var(--color-surface);border-color:var(--color-outlineVariant)}[data-theme=dark] .home-welcome__title,[data-theme=dark] .page-content-title{color:var(--color-onSurface)}[data-theme=dark] .explore-map,[data-theme=dark] .auth-layout{background:var(--color-background)}[data-theme=dark] .booking-flow__hero{background:linear-gradient(135deg,#0f1d35 0%,#1e3a8a 100%)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--color-surfaceContainerHighest)}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--color-background)}.home-hero-banner{background:var(--brand-gradient);color:#fff;isolation:isolate;border-radius:26px;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:28px;padding:clamp(22px,3.4vw,40px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 60px #24389c52}.home-hero-banner__blob{filter:blur(2px);z-index:-1;pointer-events:none;border-radius:50%;position:absolute}.home-hero-banner__blob--a{background:radial-gradient(circle at 30% 30%,#ffffff47,#0000 62%);width:360px;height:360px;top:-140px;right:-80px}.home-hero-banner__blob--b{background:radial-gradient(circle,#44d8f152,#0000 60%);width:320px;height:320px;bottom:-160px;left:-60px}.home-hero-banner__content{z-index:1;min-width:0;position:relative}.home-hero-banner__eyebrow{letter-spacing:.01em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff29;border:1px solid #ffffff3d;border-radius:999px;align-items:center;gap:6px;margin:0 0 14px;padding:6px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.home-hero-banner__title{letter-spacing:-.03em;max-width:15ch;margin:0;font-size:clamp(26px,3.4vw,40px);font-weight:800;line-height:1.08}.home-hero-banner__subtitle{color:#ffffffdb;max-width:46ch;margin:14px 0 0;font-size:clamp(14px,1.3vw,16px);font-weight:500;line-height:1.55}.home-hero-banner__search{background:#fffffff5;border-radius:999px;align-items:center;gap:10px;margin-top:22px;padding:7px 7px 7px 16px;display:flex;box-shadow:0 14px 34px #0b1c303d}.home-hero-banner__search>svg{color:var(--color-primary);flex-shrink:0}.home-hero-banner__search input{min-width:0;color:var(--color-onSurface);background:0 0;border:0;outline:none;flex:1;font-size:15px;font-weight:600}.home-hero-banner__search input::placeholder{color:var(--color-onSurfaceVariant);font-weight:500}.home-hero-banner__search-btn{cursor:pointer;background:var(--color-primary);color:#fff;white-space:nowrap;border:0;border-radius:999px;align-items:center;gap:7px;padding:11px 20px;font-size:14px;font-weight:700;transition:transform .15s,filter .15s;display:inline-flex}.home-hero-banner__search-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.home-hero-banner__actions{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.home-hero-banner__cta{cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:12px 22px;font-size:14px;font-weight:700;transition:transform .15s,background .15s,border-color .15s;display:inline-flex}.home-hero-banner__cta--solid{color:var(--color-primary);background:#fff;border:1px solid #0000}.home-hero-banner__cta--solid:hover{background:#f2f4ff;transform:translateY(-1px)}.home-hero-banner__cta--ghost{color:#fff;background:#ffffff1a;border:1px solid #fff6}.home-hero-banner__cta--ghost:hover{background:#fff3}.home-hero-banner__stats{border-top:1px solid #ffffff2e;flex-wrap:wrap;gap:26px;margin:26px 0 0;padding-top:22px;display:flex}.home-hero-banner__stat{min-width:0}.home-hero-banner__stat dt{letter-spacing:-.02em;align-items:center;gap:5px;font-size:22px;font-weight:800;line-height:1;display:flex}.home-hero-banner__stat-rating svg{color:var(--color-ratingColor)}.home-hero-banner__stat dd{color:#ffffffc2;margin:6px 0 0;font-size:12.5px;font-weight:600}.home-hero-banner__art{z-index:1;place-items:center;min-height:260px;display:grid;position:relative}.home-hero-banner__art-image{filter:drop-shadow(0 24px 48px #0b1c3059);border-radius:22px;width:min(100%,320px);height:auto}.home-hero-banner__floating{color:var(--color-onSurface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff0;border-radius:14px;align-items:center;gap:7px;padding:9px 14px;font-size:12.5px;font-weight:700;animation:4.5s ease-in-out infinite heroFloat;display:inline-flex;position:absolute;box-shadow:0 12px 28px #0b1c303d}.home-hero-banner__floating--book{top:6%;left:-6%}.home-hero-banner__floating--book svg{color:var(--color-secondary)}.home-hero-banner__floating--rating{animation-delay:1.4s;bottom:8%;right:-4%}.home-hero-banner__floating--rating svg{color:var(--color-ratingColor)}@keyframes heroFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@media (width<=900px){.home-hero-banner{grid-template-columns:1fr}.home-hero-banner__art{display:none}}@media (width<=560px){.home-hero-banner__search{flex-wrap:wrap}.home-hero-banner__search-btn{flex:1;justify-content:center}.home-hero-banner__stats{gap:18px}}.review-card{gap:20px;display:grid}.review-summary{border-bottom:var(--border-subtle);align-items:center;gap:14px;padding-bottom:18px;display:flex}.review-summary__image{border-radius:var(--radius-md);object-fit:cover;flex-shrink:0;width:64px;height:64px}.review-summary__image--empty{background:var(--color-surfaceContainerHigh)}.review-summary__copy{gap:3px;min-width:0;display:grid}.review-summary__title{color:var(--color-onSurface);font-size:16px;font-weight:700}.review-summary__provider{color:var(--color-onSurfaceVariant);font-size:13px;font-weight:600}.review-summary__date{color:var(--color-onSurfaceVariant);font-size:12.5px}.review-stars{justify-content:center;gap:8px;display:flex}.review-stars__btn{cursor:pointer;color:var(--color-outlineVariant);background:0 0;border:0;padding:4px;transition:transform .12s,color .12s}.review-stars__btn:hover{transform:scale(1.12)}.review-stars__btn--active{color:var(--color-ratingColor)}.review-stars__label{text-align:center;color:var(--color-primary);margin:-8px 0 0;font-size:14px;font-weight:700}.review-chips__title{color:var(--color-onSurface);margin:0 0 10px;font-size:14px;font-weight:700}.review-chips__list{flex-wrap:wrap;gap:8px;display:flex}.review-chip{border:1px solid var(--color-outlineVariant);background:var(--color-surfaceContainerLow);color:var(--color-onSurfaceVariant);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;transition:background .14s,color .14s,border-color .14s}.review-chip--active{background:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-onSecondary)}.review-comment{gap:8px;display:grid}.review-comment__label{color:var(--color-onSurface);font-size:14px;font-weight:700}.review-comment__input{border:1px solid var(--color-outlineVariant);border-radius:var(--radius-md);background:var(--elite-input-bg);width:100%;color:var(--color-onSurface);resize:vertical;outline:none;padding:12px 14px;font-size:14px;font-weight:500;transition:border-color .14s,box-shadow .14s}.review-comment__input:focus{border-color:color-mix(in srgb, var(--color-primary) 50%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 14%, transparent)}.quick-booking__chips{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.quick-booking__chip{border:1px solid var(--color-outlineVariant);background:var(--color-surfaceContainerLow);color:var(--color-onSurfaceVariant);cursor:pointer;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:700;transition:background .14s,color .14s,border-color .14s}.quick-booking__chip--active{background:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-onSecondary)}.quick-booking__list{gap:12px;display:grid}.quick-booking-card{border-radius:var(--radius-lg);border:var(--border-subtle);background:var(--color-surfaceContainerLowest);box-shadow:var(--shadow-xs);align-items:center;gap:14px;padding:14px;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex}.quick-booking-card:hover{box-shadow:var(--shadow-card);border-color:color-mix(in srgb, var(--color-primary) 26%, var(--color-outlineVariant));transform:translateY(-2px)}.quick-booking-card__image{border-radius:var(--radius-md);object-fit:cover;flex-shrink:0;width:66px;height:66px}.quick-booking-card__image--empty{background:var(--color-surfaceContainerHigh);color:var(--color-primary);place-items:center;display:grid}.quick-booking-card__body{flex:1;gap:4px;min-width:0;display:grid}.quick-booking-card__heading{align-items:center;gap:8px;min-width:0;display:flex}.quick-booking-card__title{color:var(--color-onSurface);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700;overflow:hidden}.quick-booking-card__category{background:var(--color-secondaryFixedBackground);color:var(--color-primary);border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:11px;font-weight:700}.quick-booking-card__provider{color:var(--color-onSurfaceVariant);font-size:13px;font-weight:600}.quick-booking-card__slot{color:var(--color-primary);align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.quick-booking-card__delay{background:color-mix(in srgb, var(--color-success) 16%, transparent);color:var(--color-onSuccessContainer);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.quick-booking-card__cta{flex-shrink:0;min-height:42px;padding:0 18px;font-size:13px}@media (width<=560px){.quick-booking-card{flex-wrap:wrap}.quick-booking-card__cta{flex:1}}.experience-feed__list{gap:22px;width:100%;max-width:560px;margin:0 auto;display:grid}.experience-card{background:var(--color-surfaceContainerLowest);border:var(--border-subtle);box-shadow:var(--shadow-card);border-radius:18px;overflow:hidden}.experience-card__head{align-items:center;gap:11px;padding:12px 14px;display:flex}.experience-card__avatar{background:var(--brand-gradient);border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;padding:2px;display:grid;overflow:hidden}.experience-card__avatar img{object-fit:cover;border:2px solid var(--color-surfaceContainerLowest);border-radius:50%;width:100%;height:100%}.experience-card__avatar-fallback{background:var(--color-surfaceContainerLowest);width:100%;height:100%;color:var(--color-primary);border-radius:50%;place-items:center;font-size:14px;font-weight:800;display:grid}.experience-card__identity{flex:1;gap:2px;min-width:0;display:grid}.experience-card__author{color:var(--color-onSurface);align-items:center;gap:5px;font-size:14px;font-weight:700;display:inline-flex}.experience-card__verified{color:var(--color-secondary)}.experience-card__meta{color:var(--color-onSurfaceVariant);align-items:center;gap:4px;font-size:12px;font-weight:500;display:inline-flex}.experience-card__more{color:var(--color-onSurfaceVariant);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:4px}.experience-card__more:hover{background:var(--color-surfaceContainerLow)}.experience-card__media{aspect-ratio:4/5;background:var(--color-surfaceContainerHigh);width:100%;position:relative}.experience-card__photo{object-fit:cover;width:100%;height:100%;display:block}.experience-card__photo--fallback{background:radial-gradient(circle at 25% 20%, #ffffff47, transparent 45%), var(--brand-gradient);display:block}.experience-card__rating{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b1c308c;border-radius:999px;align-items:center;gap:4px;padding:5px 10px;font-size:12.5px;font-weight:700;display:inline-flex;position:absolute;top:12px;right:12px}.experience-card__rating svg{color:var(--color-ratingColor)}.experience-card__actions{justify-content:space-between;align-items:center;padding:8px 12px 2px;display:flex}.experience-card__actions-left{align-items:center;gap:4px;display:flex}.experience-card__action{color:var(--color-onSurface);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;padding:6px;transition:transform .14s,color .14s,background .14s;display:grid}.experience-card__action:hover{background:var(--color-surfaceContainerLow);transform:scale(1.06)}.experience-card__action--liked{color:var(--color-error)}.experience-card__action--saved{color:var(--color-primary)}.experience-card__body{gap:4px;padding:4px 14px 14px;display:grid}.experience-card__likes{color:var(--color-onSurface);font-size:14px;font-weight:800}.experience-card__caption{color:var(--color-onSurface);margin:0;font-size:14px;line-height:1.5}.experience-card__caption strong{font-weight:700}.experience-card__service{color:var(--color-primary);margin:2px 0 0;font-size:12.5px;font-weight:700}.experience-card__service span{color:var(--color-onSurfaceVariant);font-weight:600}.experience-card__comments{color:var(--color-onSurfaceVariant);cursor:pointer;background:0 0;border:0;justify-self:start;padding:2px 0 0;font-size:13px}.experience-card__book{border:0;border-top:var(--border-subtle);width:100%;color:var(--color-primary);cursor:pointer;background:0 0;padding:13px;font-size:14px;font-weight:700;transition:background .14s}.experience-card__book:hover{background:color-mix(in srgb, var(--color-primary) 7%, transparent)}.home-layout{grid-template-columns:minmax(190px,.72fr) minmax(0,700px) minmax(230px,.95fr);align-items:start;gap:24px;width:100%;display:grid}.home-layout__main{gap:20px;min-width:0;display:grid}.home-side{scrollbar-width:none;align-content:start;align-self:start;gap:16px;min-width:0;max-height:calc(100vh - 96px);display:grid;position:sticky;top:84px;overflow-y:auto}.home-side::-webkit-scrollbar{display:none}@media (width<=1320px){.home-layout{grid-template-columns:minmax(175px,.72fr) minmax(0,640px) minmax(205px,.95fr);gap:18px}}@media (width<=1120px){.home-layout{grid-template-columns:1fr;gap:22px}.home-layout__main{order:-1}.home-side{column-count:2;column-gap:16px;max-height:none;display:block;position:static;overflow:visible}.home-side>*{break-inside:avoid;width:100%;margin-bottom:16px}}@media (width<=640px){.home-side{column-count:1}}.home-stories-strip{border:var(--border-subtle);background:var(--color-surfaceContainerLowest);box-shadow:var(--shadow-xs);border-radius:18px;padding:14px 14px 6px}.home-layout__main .experience-feed__list{max-width:none;margin:0}.home-widget{border:var(--border-subtle);background:var(--color-surfaceContainerLowest);box-shadow:var(--shadow-xs);border-radius:18px;overflow:hidden}.home-widget__head{justify-content:space-between;align-items:center;gap:10px;padding:13px 14px 9px;display:flex}.home-widget__title{letter-spacing:-.01em;color:var(--color-onSurface);align-items:center;gap:8px;margin:0;font-size:14.5px;font-weight:800;display:inline-flex}.home-widget__icon{background:color-mix(in srgb, var(--color-primary) 12%, transparent);width:28px;height:28px;color:var(--color-primary);border-radius:9px;place-items:center;display:grid}.home-widget__action{color:var(--color-primary);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:2px;padding:4px 6px;font-size:12.5px;font-weight:700;display:inline-flex}.home-widget__action:hover{background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.home-widget__body{padding:4px 12px 14px}.home-widget .home-quick-actions{grid-template-columns:1fr;gap:8px}.home-widget .home-quick-action{min-height:56px;box-shadow:none;border-radius:12px}.compact-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.compact-list__item{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:14px;align-items:center;gap:12px;width:100%;padding:10px;transition:background .16s,border-color .16s,transform .16s;display:flex}.compact-list__item:hover{background:var(--color-surfaceContainerLow);border-color:color-mix(in srgb, var(--color-primary) 16%, transparent);transform:translate(2px)}.compact-list__media{flex-shrink:0;position:relative}.compact-list__thumb{object-fit:cover;border:1px solid var(--color-outlineVariant);width:52px;height:52px;box-shadow:0 4px 10px color-mix(in srgb, var(--color-primary) 8%, transparent);border-radius:14px;display:block}.compact-list__thumb--empty{background:var(--brand-gradient-soft)}.compact-list__rank{background:var(--brand-gradient);color:#fff;border:2px solid var(--color-surfaceContainerLowest);min-width:20px;height:20px;box-shadow:0 3px 8px color-mix(in srgb, var(--color-primary) 30%, transparent);border-radius:999px;place-items:center;padding:0 5px;font-size:11px;font-weight:800;display:grid;position:absolute;top:-6px;left:-6px}.compact-list__copy{flex:1;gap:3px;min-width:0;display:grid}.compact-list__title{color:var(--color-onSurface);text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em;font-size:14px;font-weight:700;overflow:hidden}.compact-list__subtitle{color:var(--color-onSurfaceVariant);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.compact-list__meta{align-items:center;gap:6px;margin-top:2px;display:inline-flex}.compact-list__rating{background:color-mix(in srgb, var(--color-ratingColor) 16%, transparent);color:#b26a00;border-radius:999px;align-items:center;gap:3px;padding:2px 8px;font-size:11px;font-weight:800;display:inline-flex}.compact-list__rating svg{color:var(--color-ratingColor)}.compact-list__tag{background:var(--color-surfaceContainerHigh);color:var(--color-onSurfaceVariant);border-radius:999px;padding:2px 8px;font-size:10.5px;font-weight:700}.compact-list__end{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.compact-list__price{background:color-mix(in srgb, var(--color-primary) 10%, transparent);color:var(--color-primary);white-space:nowrap;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800}.compact-list__chevron{color:var(--color-onSurfaceVariant);opacity:.4;transition:opacity .16s,transform .16s}.compact-list__item:hover .compact-list__chevron{opacity:1;color:var(--color-primary);transform:translate(2px)}[data-theme=dark] .compact-list__rating{color:var(--color-ratingColor)}.home-widget .home-rail--promos{gap:10px;display:grid;overflow:visible}.home-widget .home-promo-card{width:100%}@media (width<=1024px){.home-layout{grid-template-columns:1fr}.home-layout__main .experience-feed__list{max-width:none}.home-widget .home-quick-actions{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.home-side{column-count:1}}.home-categories{gap:16px;padding:4px 2px 6px}.home-category{gap:8px;min-width:70px;max-width:82px}.home-category__icon{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 45%, var(--color-tertiaryFixedDim) 100%);width:64px;height:64px;box-shadow:0 6px 16px color-mix(in srgb, var(--color-primary) 16%, transparent);border:0;border-radius:50%;padding:3px;transition:transform .16s,box-shadow .16s;overflow:visible}.home-category__icon img,.home-category__icon>span{background:var(--color-surfaceContainerLowest);width:100%;height:100%;color:var(--color-primary);border-radius:50%;place-items:center;font-size:20px;font-weight:800;display:grid}.home-category__icon img{object-fit:contain;padding:13px}.home-category:hover .home-category__icon{box-shadow:0 10px 22px color-mix(in srgb, var(--color-primary) 24%, transparent);transform:translateY(-2px)}.home-category__icon--all,.home-category--more .home-category__icon{background:var(--brand-gradient);padding:0}.home-category__icon--all,.home-category--more .home-category__icon>span{color:#fff}.home-category__icon--all{color:#fff;font-size:24px}.home-category--more .home-category__icon>span{color:#fff;background:0 0}.home-category--more .home-category__icon svg{color:#fff}.home-category--active .home-category__icon{background:var(--brand-gradient);box-shadow:0 10px 24px color-mix(in srgb, var(--color-primary) 34%, transparent);padding:3px}.home-category--active .home-category__icon img,.home-category--active .home-category__icon>span{background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surfaceContainerLowest))}.home-category--active .home-category__label{color:var(--color-primary);font-weight:800}.home-category__label{color:var(--color-onSurfaceVariant);font-size:12px}[data-theme=dark] .home-category__icon img,[data-theme=dark] .home-category__icon>span{background:var(--color-surfaceContainerHigh)}[data-theme=dark] .home-category__icon img{filter:brightness(0)invert()opacity(.85)}.booking-widget{border:var(--border-subtle);background:var(--color-surfaceContainerLowest);box-shadow:var(--shadow-xs);border-radius:18px;gap:8px;padding:14px;display:grid;position:relative;overflow:hidden}.booking-widget:before{content:"";background:var(--brand-gradient);width:4px;position:absolute;inset:0 auto 0 0}.booking-widget__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.booking-widget__eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--color-onSurfaceVariant);font-size:11px;font-weight:800}.booking-widget__status{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-onSuccessContainer);border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:11px;font-weight:800;display:inline-flex}.booking-widget__title{color:var(--color-onSurface);margin:2px 0 0;font-size:16px;font-weight:800;line-height:1.25}.booking-widget__company{color:var(--color-onSurfaceVariant);margin:0;font-size:13px;font-weight:600}.booking-widget__when{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.booking-widget__chip{background:var(--color-surfaceContainerLow);color:var(--color-onSurface);border-radius:12px;align-items:center;gap:6px;padding:7px 11px;font-size:13px;font-weight:700;display:inline-flex}.booking-widget__chip svg{color:var(--color-primary)}.booking-widget__chip--time{background:color-mix(in srgb, var(--color-primary) 10%, transparent);color:var(--color-primary)}.booking-widget__chip--time svg{color:var(--color-primary)}.booking-widget__actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:6px;display:grid}.booking-widget__btn{border:var(--border-subtle);background:var(--color-surface);min-height:40px;color:var(--color-onSurface);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:5px;padding:0 12px;font-size:13px;font-weight:700;transition:background .14s,transform .14s,box-shadow .14s;display:inline-flex}.booking-widget__btn:hover{background:var(--color-surfaceContainerLow)}.booking-widget__btn--primary{background:var(--brand-gradient);color:#fff;box-shadow:0 8px 18px color-mix(in srgb, var(--color-primary) 26%, transparent);border-color:#0000}.booking-widget__btn--primary:hover{filter:brightness(1.05);background:var(--brand-gradient);transform:translateY(-1px)}.xp-card{background:var(--color-surfaceContainerLowest);border:var(--border-subtle);box-shadow:var(--shadow-card);border-radius:20px;gap:12px;padding:14px;display:grid}.xp-card__head{align-items:center;gap:11px;display:flex}.xp-card__avatar{background:var(--brand-gradient);border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;padding:2px;display:grid}.xp-card__avatar img,.xp-card__avatar-fallback{object-fit:cover;border:2px solid var(--color-surfaceContainerLowest);border-radius:50%;width:100%;height:100%}.xp-card__avatar-fallback{background:var(--color-surfaceContainerLowest);color:var(--color-primary);place-items:center;font-size:14px;font-weight:800;display:grid}.xp-card__who{flex:1;gap:2px;min-width:0;display:grid}.xp-card__author{color:var(--color-onSurface);align-items:center;gap:5px;font-size:14.5px;font-weight:800;display:inline-flex}.xp-card__verified{color:var(--color-secondary)}.xp-card__meta{color:var(--color-onSurfaceVariant);align-items:center;gap:4px;font-size:12px;font-weight:500;display:inline-flex}.xp-card__stars{color:var(--color-ratingColor);flex-shrink:0;align-items:center;gap:2px;display:inline-flex}.xp-card__star--empty{color:var(--color-outlineVariant)}.xp-card__tag{background:var(--brand-gradient-soft);border:1px solid color-mix(in srgb, var(--color-primary) 16%, transparent);border-radius:999px;justify-self:start;align-items:center;gap:6px;max-width:100%;padding:6px 12px;font-size:12.5px;font-weight:700;display:inline-flex;overflow:hidden}.xp-card__tag svg{color:var(--color-secondary);flex-shrink:0}.xp-card__tag-service{color:var(--color-primary);white-space:nowrap}.xp-card__tag-sep{color:var(--color-outline)}.xp-card__tag-company{color:var(--color-onSurfaceVariant);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.xp-card__media{aspect-ratio:16/10;background:var(--color-surfaceContainerHigh);border-radius:16px;margin:0;overflow:hidden}.xp-card__photo{object-fit:cover;width:100%;height:100%;display:block}.xp-card__photo--fallback{background:radial-gradient(circle at 25% 20%, #ffffff47, transparent 45%), var(--brand-gradient);display:block}.xp-card__caption{color:var(--color-onSurface);margin:0;font-size:14px;line-height:1.55}.xp-card__foot{align-items:center;gap:10px;display:flex}.xp-card__react{border:1px solid var(--color-outlineVariant);background:var(--color-surfaceContainerLow);color:var(--color-onSurfaceVariant);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:700;transition:background .14s,color .14s,border-color .14s,transform .14s;display:inline-flex}.xp-card__react:hover{transform:translateY(-1px)}.xp-card__react--on{background:color-mix(in srgb, var(--color-error) 12%, transparent);border-color:color-mix(in srgb, var(--color-error) 30%, transparent);color:var(--color-error)}.xp-card__comments{color:var(--color-onSurfaceVariant);align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.xp-card__cta{background:var(--brand-gradient);color:#fff;cursor:pointer;box-shadow:0 8px 18px color-mix(in srgb, var(--color-primary) 26%, transparent);border:0;border-radius:999px;margin-left:auto;padding:9px 18px;font-size:13px;font-weight:800;transition:transform .14s,filter .14s}.xp-card__cta:hover{filter:brightness(1.06);transform:translateY(-1px)}@media (width<=420px){.xp-card__foot{flex-wrap:wrap}.xp-card__cta{flex:1;margin-left:0}}.bookings-segmented{background:var(--color-surfaceContainerLow);border:var(--border-subtle);border-radius:999px;gap:4px;width:fit-content;max-width:100%;padding:5px;display:inline-flex}.bookings-segmented__tab{color:var(--color-onSurfaceVariant);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:8px;padding:9px 18px;font-size:14px;font-weight:700;transition:background .16s,color .16s,box-shadow .16s;display:inline-flex}.bookings-segmented__tab:hover{color:var(--color-onSurface)}.bookings-segmented__tab--active{background:var(--color-surfaceContainerLowest);color:var(--color-primary);box-shadow:var(--shadow-sm)}.bookings-segmented__count{background:color-mix(in srgb, var(--color-onSurfaceVariant) 16%, transparent);min-width:22px;height:22px;color:var(--color-onSurfaceVariant);border-radius:999px;place-items:center;padding:0 6px;font-size:12px;font-weight:800;display:inline-grid}.bookings-segmented__tab--active .bookings-segmented__count{background:var(--color-primary);color:#fff}.booking-card{transition:transform .16s,box-shadow .16s,border-color .16s}.booking-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.booking-card--highlight{border-color:color-mix(in srgb, var(--color-primary) 26%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--color-primary) 5%, transparent), transparent 42%), var(--color-surfaceContainerLowest);position:relative;overflow:hidden}.booking-card--highlight:before{content:"";background:var(--brand-gradient);border-radius:4px 0 0 4px;width:4px;position:absolute;inset:0 auto 0 0}.booking-card__meta{flex-wrap:wrap;gap:8px;display:flex}.booking-card__meta-row{background:var(--color-surfaceContainerLow);border-radius:999px;gap:6px;padding:5px 11px;font-size:12.5px}.booking-card__meta-row svg{color:var(--color-primary)}.booking-card__actions{justify-content:flex-end;align-items:center;padding-top:14px}.booking-card__actions>*{flex:none;min-width:0}.booking-card__actions .btn{border-radius:12px;min-height:40px;padding:0 18px;font-size:13.5px}@media (width<=560px){.bookings-segmented{width:100%;display:flex}.bookings-segmented__tab{flex:1;justify-content:center}.booking-card__actions{justify-content:stretch}.booking-card__actions>*{flex:1}}.app-shell__topbar{background:color-mix(in srgb, var(--color-surface) 82%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid color-mix(in srgb, var(--color-outlineVariant) 60%, transparent);min-height:68px;padding:12px 28px}.app-topbar__start{flex:1;justify-content:flex-start}.app-topbar__search{flex:auto;max-width:480px;min-height:46px}.app-shell__topbar-actions{gap:6px}.app-topbar__action,.notifications-menu__trigger{background:var(--color-surfaceContainerLow);width:40px;height:40px;color:var(--color-onSurfaceVariant);cursor:pointer;border:0;border-radius:50%;place-items:center;transition:background .15s,color .15s,transform .15s;display:grid}.app-topbar__action:hover,.notifications-menu__trigger:hover{background:color-mix(in srgb, var(--color-primary) 12%, var(--color-surfaceContainerLow));color:var(--color-primary);transform:translateY(-1px)}.explore-filters{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.explore-filter-chip{border:1px solid var(--color-outlineVariant);background:var(--color-surfaceContainerLowest);min-height:38px;color:var(--color-onSurfaceVariant);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:0 16px;font-size:13.5px;font-weight:700;transition:background .15s,color .15s,border-color .15s,transform .15s;display:inline-flex}.explore-filter-chip:hover{border-color:color-mix(in srgb, var(--color-primary) 35%, var(--color-outlineVariant));transform:translateY(-1px)}.explore-filter-chip svg{opacity:.8}.explore-filter-chip--active{background:var(--color-secondaryContainer);border-color:var(--color-secondaryContainer);color:var(--color-onSecondaryContainer)}[data-theme=dark] .explore-filter-chip--active{color:#fff}.app-shell__topbar-actions .language-toggle{background:var(--color-surfaceContainerLow);border:0;border-radius:999px;min-height:40px;padding:0 14px;transition:background .15s,color .15s,transform .15s}.app-shell__topbar-actions .language-toggle:hover{background:color-mix(in srgb, var(--color-primary) 12%, var(--color-surfaceContainerLow));color:var(--color-primary);transform:translateY(-1px)}.explore-page__row-actions{flex-shrink:0;align-items:center;gap:10px;display:inline-flex}.explore-page__filter-btn{border:1px solid var(--color-outlineVariant);background:var(--color-surfaceContainerLowest);min-height:40px;color:var(--color-onSurface);cursor:pointer;box-shadow:var(--shadow-xs);border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-size:13px;font-weight:700;transition:border-color .15s,background .15s,transform .15s;display:inline-flex}.explore-page__filter-btn:hover{border-color:color-mix(in srgb, var(--color-primary) 40%, var(--color-outlineVariant));transform:translateY(-1px)}.explore-page__filter-btn--active{border-color:var(--color-primary);color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surfaceContainerLowest))}.explore-page__filter-count{background:var(--brand-gradient);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:800;display:inline-grid}.filter-panel-overlay{z-index:60;background:var(--elite-overlay-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:flex-end;animation:.2s filterFade;display:flex;position:fixed;inset:0}@keyframes filterFade{0%{opacity:0}to{opacity:1}}.filter-panel{background:var(--color-surfaceContainerLowest);flex-direction:column;width:min(420px,100%);height:100%;animation:.26s cubic-bezier(.22,1,.36,1) filterSlideIn;display:flex;box-shadow:-12px 0 40px #0b1c3038}@keyframes filterSlideIn{0%{opacity:.6;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.filter-panel__head{border-bottom:var(--border-subtle);justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.filter-panel__close{background:var(--color-surfaceContainerLow);color:var(--color-onSurface);cursor:pointer;border:0;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.filter-panel__close:hover{background:var(--color-surfaceContainer)}.filter-panel__title{color:var(--color-onSurface);margin:0;font-size:18px;font-weight:800}.filter-panel__reset{color:var(--color-primary);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 8px;font-size:14px;font-weight:700}.filter-panel__reset:hover{background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.filter-panel__body{flex:1;gap:26px;padding:20px 18px 8px;display:grid;overflow-y:auto}.filter-section{gap:12px;display:grid}.filter-section__head{justify-content:space-between;align-items:center;gap:10px;display:flex}.filter-section__title{color:var(--color-onSurface);margin:0;font-size:15px;font-weight:800}.filter-section__value{background:var(--color-primaryFixed);color:var(--color-onPrimaryFixed);border-radius:999px;padding:4px 12px;font-size:12.5px;font-weight:800}.filter-toggle{border:var(--border-subtle);background:var(--color-surfaceContainerLow);cursor:pointer;color:var(--color-onSurface);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:14px;font-weight:700;display:flex}.filter-toggle__switch{background:var(--color-surfaceContainerHighest);border-radius:999px;flex-shrink:0;width:44px;height:26px;transition:background .16s;position:relative}.filter-toggle__switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0b1c304d}.filter-toggle--on .filter-toggle__switch{background:var(--color-primary)}.filter-toggle--on .filter-toggle__switch:after{transform:translate(18px)}.filter-slider{width:100%;accent-color:var(--color-primary);cursor:pointer}.filter-slider:disabled{opacity:.5;cursor:not-allowed}.filter-slider__labels{color:var(--color-onSurfaceVariant);justify-content:space-between;margin-top:-4px;font-size:12px;font-weight:600;display:flex}.filter-chips{flex-wrap:wrap;gap:10px;display:flex}.filter-choice{border:1px solid var(--color-outlineVariant);background:var(--color-surfaceContainerLow);color:var(--color-onSurfaceVariant);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:9px 16px;font-size:13.5px;font-weight:700;transition:background .14s,color .14s,border-color .14s,transform .14s;display:inline-flex}.filter-choice svg{color:var(--color-ratingColor)}.filter-choice:hover{border-color:color-mix(in srgb, var(--color-primary) 35%, var(--color-outlineVariant));transform:translateY(-1px)}.filter-choice--on{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-onPrimary)}.filter-choice--on svg{color:#fff}.filter-panel__foot{border-top:var(--border-subtle);padding:14px 18px}.filter-panel__apply{background:var(--brand-gradient);color:#fff;cursor:pointer;width:100%;min-height:50px;box-shadow:0 10px 24px color-mix(in srgb, var(--color-primary) 30%, transparent);border:0;border-radius:14px;justify-content:center;align-items:center;gap:10px;font-size:15px;font-weight:800;transition:transform .15s,filter .15s;display:inline-flex}.filter-panel__apply:hover{filter:brightness(1.06);transform:translateY(-1px)}@media (width<=560px){.filter-panel-overlay{justify-content:stretch;align-items:flex-end}.filter-panel{border-radius:22px 22px 0 0;width:100%;height:auto;max-height:90vh;animation:.26s cubic-bezier(.22,1,.36,1) filterSlideUp}@keyframes filterSlideUp{0%{opacity:.6;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}}.topbar-filter-btn{border:1px solid var(--color-outlineVariant);background:var(--color-surfaceContainerLow);min-height:46px;color:var(--color-onSurface);cursor:pointer;border-radius:999px;flex-shrink:0;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:700;transition:border-color .15s,background .15s,transform .15s,color .15s;display:inline-flex}.topbar-filter-btn:hover{border-color:color-mix(in srgb, var(--color-primary) 40%, var(--color-outlineVariant));color:var(--color-primary);transform:translateY(-1px)}.topbar-filter-btn--active{border-color:var(--color-primary);color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, var(--color-surfaceContainerLow))}.topbar-filter-btn__count{background:var(--brand-gradient);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:800;display:inline-grid}@media (width<=720px){.topbar-filter-btn__label{display:none}.topbar-filter-btn{justify-content:center;width:46px;padding:0}}.explore-page__grid{transition:opacity .2s}.explore-page__grid--updating{opacity:.55;pointer-events:none}.company-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:16px;display:grid}.company-tile{text-align:left;border:var(--border-subtle);background:var(--color-surfaceContainerLowest);box-shadow:var(--shadow-card);cursor:pointer;border-radius:18px;flex-direction:column;padding:0;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;overflow:hidden}.company-tile:hover{box-shadow:var(--shadow-lg);border-color:color-mix(in srgb, var(--color-primary) 26%, var(--color-outlineVariant));transform:translateY(-3px)}.company-tile__media{background:var(--color-surfaceContainerHigh);height:130px;position:relative}.company-tile__image{object-fit:cover;width:100%;height:100%;display:block}.company-tile__image--empty{background:radial-gradient(circle at 28% 22%, #ffffff4d, transparent 46%), var(--brand-gradient);color:#fff;letter-spacing:.02em;place-items:center;font-size:30px;font-weight:800;display:grid}.company-tile__rating{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b1c308c;border-radius:999px;align-items:center;gap:4px;padding:4px 9px;font-size:12px;font-weight:800;display:inline-flex;position:absolute;top:10px;right:10px}.company-tile__rating svg{color:var(--color-ratingColor)}.company-tile__category{background:color-mix(in srgb, var(--color-surfaceContainerLowest) 92%, transparent);max-width:calc(100% - 20px);color:var(--color-primary);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;padding:5px 11px;font-size:11.5px;font-weight:800;position:absolute;bottom:10px;left:10px;overflow:hidden;box-shadow:0 4px 12px #0b1c302e}.company-tile__body{gap:7px;padding:13px 14px 14px;display:grid}.company-tile__name{color:var(--color-onSurface);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:16px;font-weight:800;overflow:hidden}.company-tile__location{color:var(--color-onSurfaceVariant);align-items:center;gap:5px;min-width:0;margin:0;font-size:12.5px;font-weight:500;display:flex}.company-tile__location svg{color:var(--color-primary);flex-shrink:0}.company-tile__location span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.company-tile__footer{border-top:var(--border-subtle);justify-content:space-between;align-items:center;gap:8px;margin-top:3px;padding-top:11px;display:flex}.company-tile__count{background:var(--color-surfaceContainerLow);color:var(--color-onSurfaceVariant);border-radius:999px;padding:4px 10px;font-size:11.5px;font-weight:700}.company-tile__cta{color:var(--color-primary);align-items:center;gap:3px;font-size:12.5px;font-weight:800;display:inline-flex}.company-tile__cta svg{transition:transform .16s}.company-tile:hover .company-tile__cta svg{transform:translate(3px)}.company-hero{color:#fff;isolation:isolate;min-height:260px;box-shadow:var(--shadow-card);border-radius:22px;align-items:flex-end;padding:22px;display:flex;position:relative;overflow:hidden}.company-hero__cover{object-fit:cover;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.company-hero__cover--empty{background:radial-gradient(circle at 20% 20%, #ffffff38, transparent 45%), var(--brand-gradient)}.company-hero__scrim{z-index:-1;background:linear-gradient(#0b1c301a 0%,#0b1c30d1 100%);position:absolute;inset:0}.company-hero__content{align-items:flex-end;gap:16px;min-width:0;display:flex}.company-hero__avatar{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff2e;border:1px solid #fff6;border-radius:18px;flex-shrink:0;place-items:center;width:66px;height:66px;font-size:22px;font-weight:800;display:grid}.company-hero__copy{min-width:0}.company-hero__badges{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.company-hero__category{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fff3;border:1px solid #ffffff4d;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700}.company-hero__rating{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0b1c3073;border-radius:999px;align-items:center;gap:4px;padding:5px 12px;font-size:12.5px;font-weight:800;display:inline-flex}.company-hero__rating svg{color:var(--color-ratingColor)}.company-hero__reviews{opacity:.85;font-weight:600}.company-hero__title{letter-spacing:-.02em;margin:0;font-size:clamp(24px,3vw,34px);font-weight:800;line-height:1.1}.company-hero__address{color:#ffffffe6;align-items:center;gap:6px;margin:10px 0 0;font-size:13.5px;font-weight:500;display:flex}.company-hero__actions{z-index:1;gap:10px;display:flex;position:absolute;top:18px;right:18px}.company-hero__btn{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff29;border:1px solid #ffffff59;border-radius:999px;align-items:center;gap:7px;padding:10px 16px;font-size:13.5px;font-weight:700;transition:transform .15s,background .15s;display:inline-flex}.company-hero__btn:hover{background:#ffffff42;transform:translateY(-1px)}.company-hero__btn--primary{color:var(--color-primary);background:#fff;border-color:#0000}.company-hero__btn--primary:hover{background:#eef0ff}.company-hero__btn:disabled{opacity:.7;cursor:default}.company-about{border:var(--border-subtle);background:var(--color-surfaceContainerLowest);box-shadow:var(--shadow-xs);border-radius:18px;gap:10px;padding:18px 20px;display:grid}.company-about__title{color:var(--color-onSurface);margin:0;font-size:15px;font-weight:800}.company-about__text{color:var(--color-onSurfaceVariant);margin:0;font-size:14px;line-height:1.6}.company-about__phone{background:color-mix(in srgb, var(--color-primary) 10%, transparent);color:var(--color-primary);border-radius:999px;align-self:start;align-items:center;gap:8px;padding:8px 14px;font-size:13.5px;font-weight:800;display:inline-flex}.company-services__grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:16px;display:grid}.service-tile{text-align:left;border:var(--border-subtle);background:var(--color-surfaceContainerLowest);box-shadow:var(--shadow-card);cursor:pointer;border-radius:18px;flex-direction:column;padding:0;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;overflow:hidden}.service-tile:hover{box-shadow:var(--shadow-lg);border-color:color-mix(in srgb, var(--color-primary) 26%, var(--color-outlineVariant));transform:translateY(-3px)}.service-tile__media{background:var(--color-surfaceContainerHigh);height:128px;position:relative}.service-tile__image{object-fit:cover;width:100%;height:100%;display:block}.service-tile__image--empty{background:var(--brand-gradient-soft);color:var(--color-primary);place-items:center;display:grid}.service-tile__rating{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b1c308c;border-radius:999px;align-items:center;gap:4px;padding:4px 9px;font-size:12px;font-weight:800;display:inline-flex;position:absolute;top:10px;right:10px}.service-tile__rating svg{color:var(--color-ratingColor)}.service-tile__body{gap:9px;padding:13px 14px 14px;display:grid}.service-tile__name{color:var(--color-onSurface);letter-spacing:-.01em;margin:0;font-size:15px;font-weight:800}.service-tile__meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.service-tile__duration{color:var(--color-onSurfaceVariant);align-items:center;gap:5px;font-size:12.5px;font-weight:600;display:inline-flex}.service-tile__price{background:color-mix(in srgb, var(--color-primary) 10%, transparent);color:var(--color-primary);border-radius:999px;padding:4px 11px;font-size:13px;font-weight:800}.service-tile__cta{background:var(--brand-gradient);color:#fff;border-radius:12px;justify-content:center;align-items:center;gap:5px;margin-top:2px;padding:9px;font-size:13px;font-weight:800;transition:filter .15s;display:inline-flex}.service-tile:hover .service-tile__cta{filter:brightness(1.06)}@media (width<=560px){.company-hero{flex-direction:column;align-items:flex-start;gap:16px}.company-hero__actions{width:100%;position:static}.company-hero__btn{flex:1;justify-content:center}}.service-tile__media--icon{background:var(--brand-gradient-soft);height:92px;color:var(--color-primary);place-items:center;display:grid}.service-tile__desc{color:var(--color-onSurfaceVariant);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.company-reviews__list{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px;display:grid}.review-tile{border:var(--border-subtle);background:var(--color-surfaceContainerLowest);box-shadow:var(--shadow-xs);border-radius:16px;gap:10px;padding:14px;display:grid}.review-tile__head{align-items:center;gap:10px;display:flex}.review-tile__avatar{background:var(--brand-gradient);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;font-size:13px;font-weight:800;display:grid}.review-tile__who{flex:1;gap:1px;min-width:0;display:grid}.review-tile__author{color:var(--color-onSurface);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:800;overflow:hidden}.review-tile__service{color:var(--color-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.review-tile__rating{background:color-mix(in srgb, var(--color-ratingColor) 16%, transparent);color:#b26a00;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:4px 9px;font-size:12px;font-weight:800;display:inline-flex}.review-tile__rating svg{color:var(--color-ratingColor)}.review-tile__body{color:var(--color-onSurfaceVariant);margin:0;font-size:13.5px;line-height:1.55}[data-theme=dark] .review-tile__rating{color:var(--color-ratingColor)}.service-hero{color:#fff;isolation:isolate;min-height:300px;box-shadow:var(--shadow-card);border-radius:22px;align-items:flex-end;padding:24px;display:flex;position:relative;overflow:hidden}.service-hero__cover{object-fit:cover;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.service-hero__cover--empty{background:radial-gradient(circle at 20% 20%, #ffffff38, transparent 45%), var(--brand-gradient)}.service-hero__scrim{z-index:-1;background:linear-gradient(#0b1c300d 0%,#0b1c30d1 100%);position:absolute;inset:0}.service-hero__content{min-width:0}.service-hero__badges{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.service-hero__category{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fff3;border:1px solid #ffffff4d;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700}.service-hero__rating{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0b1c3073;border-radius:999px;align-items:center;gap:4px;padding:5px 12px;font-size:12.5px;font-weight:800;display:inline-flex}.service-hero__rating svg{color:var(--color-ratingColor)}.service-hero__title{letter-spacing:-.02em;margin:0;font-size:clamp(26px,3.4vw,38px);font-weight:800;line-height:1.08}.service-hero__company{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff29;border:1px solid #ffffff59;border-radius:999px;align-items:center;gap:7px;margin-top:12px;padding:8px 14px;font-size:13.5px;font-weight:700;transition:background .15s;display:inline-flex}.service-hero__company:hover{background:#ffffff47}.service-details__layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px;display:grid}.service-details__main{min-width:0}.service-about{border:var(--border-subtle);background:var(--color-surfaceContainerLowest);box-shadow:var(--shadow-xs);border-radius:18px;gap:14px;padding:20px;display:grid}.service-about__title{color:var(--color-onSurface);margin:0;font-size:17px;font-weight:800}.service-about__text{color:var(--color-onSurfaceVariant);margin:0;font-size:14.5px;line-height:1.65}.service-chips{flex-wrap:wrap;gap:10px;display:flex}.service-chip{background:var(--color-surfaceContainerLow);color:var(--color-onSurface);border-radius:12px;align-items:center;gap:7px;padding:9px 14px;font-size:13px;font-weight:700;display:inline-flex}.service-chip svg{color:var(--color-primary);flex-shrink:0}.service-details__aside{position:sticky;top:88px}.booking-cta{border:var(--border-subtle);background:var(--color-surfaceContainerLowest);box-shadow:var(--shadow-card);border-radius:18px;gap:12px;padding:18px;display:grid}.booking-cta__price-row{border-bottom:var(--border-subtle);justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:12px;display:flex}.booking-cta__price-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-onSurfaceVariant);font-size:12px;font-weight:700}.booking-cta__price{letter-spacing:-.02em;color:var(--color-primary);font-size:24px;font-weight:800}.booking-cta__duration{color:var(--color-onSurfaceVariant);align-items:center;gap:7px;margin:0;font-size:13.5px;font-weight:700;display:inline-flex}.booking-cta__duration svg{color:var(--color-primary)}.booking-cta__provider{color:var(--color-primary);cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:5px;padding:6px;font-size:13.5px;font-weight:800;display:inline-flex}.booking-cta__provider:hover{background:color-mix(in srgb, var(--color-primary) 8%, transparent)}@media (width<=880px){.service-details__layout{grid-template-columns:1fr}.service-details__aside{position:static}}.bookings-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;display:grid}.bookings-layout__side{align-content:start;gap:16px;display:grid;position:sticky;top:88px}.bookings-layout__main{order:-1;gap:16px;min-width:0;display:grid}@media (width<=900px){.bookings-layout{grid-template-columns:1fr}.bookings-layout__side{position:static}}.chat-header{gap:14px;display:grid}.chat-header__title-row{align-items:center;gap:10px;display:flex}.chat-header__title{letter-spacing:-.02em;color:var(--color-onSurface);margin:0;font-size:clamp(22px,2.4vw,28px);font-weight:800}.chat-header__unread{background:var(--brand-gradient);color:#fff;border-radius:999px;place-items:center;min-width:24px;height:24px;padding:0 8px;font-size:12px;font-weight:800;display:inline-grid}.chat-search{border:var(--border-subtle);background:var(--color-surfaceContainerLow);border-radius:999px;align-items:center;gap:10px;max-width:420px;min-height:46px;padding:0 16px;transition:border-color .16s,box-shadow .16s,background .16s;display:flex}.chat-search:focus-within{border-color:color-mix(in srgb, var(--color-primary) 45%, transparent);background:var(--color-surfaceContainerLowest);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 14%, transparent)}.chat-search svg{color:var(--color-primary);flex-shrink:0}.chat-search input{min-width:0;color:var(--color-onSurface);background:0 0;border:0;outline:none;flex:1;font-size:14.5px;font-weight:500}.chat-list{border:var(--border-subtle);background:var(--color-surfaceContainerLowest);box-shadow:var(--shadow-card);border-radius:18px;gap:2px;margin:0;padding:6px;list-style:none;display:grid}.chat-row{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:14px;align-items:center;gap:13px;width:100%;padding:12px;transition:background .14s;display:flex}.chat-row:hover{background:var(--color-surfaceContainerLow)}.chat-row__avatar{background:var(--brand-gradient);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:50px;height:50px;font-size:16px;font-weight:800;display:grid;position:relative}.chat-row__dot{background:var(--color-success);border:2px solid var(--color-surfaceContainerLowest);border-radius:50%;width:13px;height:13px;position:absolute;top:1px;right:1px}.chat-row__body{flex:1;gap:4px;min-width:0;display:grid}.chat-row__top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.chat-row__name{color:var(--color-onSurface);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700;overflow:hidden}.chat-row__time{color:var(--color-onSurfaceVariant);flex-shrink:0;font-size:12px;font-weight:600}.chat-row__bottom{justify-content:space-between;align-items:center;gap:10px;display:flex}.chat-row__preview{color:var(--color-onSurfaceVariant);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:500;overflow:hidden}.chat-row__badge{background:var(--color-primary);color:#fff;border-radius:999px;flex-shrink:0;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:800;display:inline-grid}.chat-row--unread .chat-row__name{font-weight:800}.chat-row--unread .chat-row__preview{color:var(--color-onSurface);font-weight:700}.chat-row--unread .chat-row__time{color:var(--color-primary);font-weight:800}.chat-row__avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.chat-row__context{background:var(--brand-gradient-soft);border:1px solid color-mix(in srgb, var(--color-primary) 14%, transparent);border-radius:999px;justify-self:start;align-items:center;gap:5px;max-width:100%;padding:3px 10px;font-size:11.5px;font-weight:700;display:inline-flex;overflow:hidden}.chat-row__context svg{color:var(--color-secondary);flex-shrink:0}.chat-row__context-service{color:var(--color-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chat-row__context-sep{color:var(--color-outline);flex-shrink:0}.chat-row__context-company{color:var(--color-onSurfaceVariant);white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.thread-page{border:var(--border-subtle);background:var(--color-surfaceContainerLowest);height:calc(100vh - 108px);min-height:460px;box-shadow:var(--shadow-card);border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.thread-header{border-bottom:var(--border-subtle);background:var(--color-surface);flex-shrink:0;align-items:center;gap:12px;padding:12px 16px;display:flex}.thread-header__back{background:var(--color-surfaceContainerLow);width:40px;height:40px;color:var(--color-onSurface);cursor:pointer;border:0;border-radius:50%;flex-shrink:0;place-items:center;transition:background .15s;display:grid}.thread-header__back:hover{background:var(--color-surfaceContainer)}.thread-header__avatar{background:var(--brand-gradient);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:15px;font-weight:800;display:grid;overflow:hidden}.thread-header__avatar img{object-fit:cover;width:100%;height:100%}.thread-header__copy{gap:2px;min-width:0;display:grid}.thread-header__name{color:var(--color-onSurface);text-overflow:ellipsis;white-space:nowrap;font-size:15.5px;font-weight:800;overflow:hidden}.thread-header__context{color:var(--color-primary);text-overflow:ellipsis;white-space:nowrap;justify-self:start;align-items:center;gap:5px;max-width:100%;font-size:12px;font-weight:700;display:inline-flex;overflow:hidden}.thread-scroll{background:var(--color-surface);flex-direction:column;flex:1;gap:2px;padding:18px 16px;display:flex;overflow-y:auto}.thread-empty{color:var(--color-onSurfaceVariant);text-align:center;flex:1;align-content:center;place-items:center;gap:10px;display:grid}.thread-empty svg{color:var(--color-primary);opacity:.6}.thread-day{text-align:center;margin:14px 0 8px}.thread-day span{background:var(--color-surfaceContainer);color:var(--color-onSurfaceVariant);border-radius:999px;padding:4px 13px;font-size:11.5px;font-weight:700}.msg-row{align-items:flex-end;gap:8px;max-width:78%;margin-top:5px;display:flex}.msg-row--mine{flex-direction:row-reverse;margin-left:auto}.msg-row__avatar{background:var(--brand-gradient);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:11px;font-weight:800;display:grid;overflow:hidden}.msg-row__avatar img{object-fit:cover;width:100%;height:100%}.msg-bubble{background:var(--color-surfaceContainer);color:var(--color-onSurface);box-shadow:var(--shadow-xs);border-radius:16px 16px 16px 5px;gap:3px;min-width:0;padding:9px 13px;font-size:14px;line-height:1.45;display:grid}.msg-bubble--mine{background:var(--brand-gradient);color:#fff;border-radius:16px 16px 5px}.msg-bubble__text{white-space:pre-wrap;word-break:break-word;gap:2px;display:grid}.msg-bubble__image{border-radius:12px;max-width:min(260px,60vw);display:block}.msg-bubble__link{color:inherit;word-break:break-all;text-decoration:underline}.msg-bubble__time{opacity:.65;justify-self:end;align-items:center;gap:3px;font-size:10.5px;font-weight:600;display:inline-flex}.msg-bubble--mine .msg-bubble__time{color:#ffffffe6;opacity:.9}.thread-input{border-top:var(--border-subtle);background:var(--color-surface);flex-shrink:0;gap:8px;padding:12px 14px;display:grid}.thread-input__attachment{background:var(--brand-gradient-soft);border:1px solid color-mix(in srgb, var(--color-primary) 18%, transparent);color:var(--color-primary);border-radius:999px;justify-self:start;align-items:center;gap:8px;max-width:100%;padding:6px 8px 6px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.thread-input__attachment-name{text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.thread-input__attachment button{color:var(--color-primary);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.thread-input__row{align-items:center;gap:8px;display:flex}.thread-input__attach{background:var(--color-surfaceContainerLow);width:42px;height:42px;color:var(--color-onSurfaceVariant);cursor:pointer;border:0;border-radius:50%;flex-shrink:0;place-items:center;transition:background .15s,color .15s;display:grid}.thread-input__attach:hover{background:color-mix(in srgb, var(--color-primary) 12%, var(--color-surfaceContainerLow));color:var(--color-primary)}.thread-input__field{border:1px solid var(--color-outlineVariant);background:var(--color-surfaceContainerLow);min-width:0;min-height:46px;color:var(--color-onSurface);border-radius:999px;outline:none;flex:1;padding:0 18px;font-size:14.5px;transition:border-color .15s,box-shadow .15s,background .15s}.thread-input__field:focus{border-color:color-mix(in srgb, var(--color-primary) 45%, transparent);background:var(--color-surfaceContainerLowest);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 12%, transparent)}.thread-input__send{background:var(--brand-gradient);color:#fff;cursor:pointer;width:46px;height:46px;box-shadow:0 8px 18px color-mix(in srgb, var(--color-primary) 28%, transparent);border:0;border-radius:50%;flex-shrink:0;place-items:center;transition:transform .15s,filter .15s;display:grid}.thread-input__send:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.thread-input__send:disabled{opacity:.5;cursor:default;box-shadow:none}@media (width<=960px){.thread-page{height:calc(100vh - 150px)}}.app-topbar__login{background:var(--brand-gradient);color:#fff;cursor:pointer;white-space:nowrap;min-height:40px;box-shadow:0 8px 18px color-mix(in srgb, var(--color-primary) 26%, transparent);border:0;border-radius:999px;align-items:center;gap:7px;padding:0 18px;font-size:14px;font-weight:800;transition:transform .15s,filter .15s;display:inline-flex}.app-topbar__login:hover{filter:brightness(1.06);transform:translateY(-1px)}.sidebar-login-btn{background:var(--brand-gradient);color:#fff;border:0;justify-content:center;align-items:center;gap:8px;display:inline-flex}.sidebar-login-btn:hover{filter:brightness(1.06)}
