@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAn4ABMAAAAAEwQAAAmOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGjQbgnQcLj9IVkFSgQEGYD9TVEFUgQIAgQovahEICok0h0ULIAAwhzoBNgIkAzwEIAWHJgeBDgwHG6QQUdRKTmoBFD8K42bniObKrG3LZFcMWZzFmrjTFhQ6TVTqPJcInrfrvzq3b2PGn1wwMiNYGTy9ViREYARlL1zAGcPdPqBt3gNWrfKthv4xnM+b9caw+wmjgEUVRjHXhS6jgCK6zf5HiWQacJpGdAgdrbV6g/Rf1BfxRqZVQnrxRVWSJb6RLFnyu0elilmjeoSQCKnxsmwLaddUMjnksriSYuuPl06EAl7KfAiWQjCUETz0zNZ3EII94CDQtzkMfZ/9IkkY8tZRZTDky5ZVwBAM+GYpdd4ZVAWYImnLkiTg48l79gGx3D+VBtLeyg8u7bJAd4uo0pFuQBFysE9C95l0W4Fkiao6GfrDbu77lVU7wk9cV3uqOsXmQiMkhVKl1ugjzUAJBSIkkVWHijkpkVSyUFsgVBuJMA0N+ZnXtyUv5yMigGdfQRmwL1AAjQ3YXG6iIFNSUdPQo8+AISPGAltBMDQRAtyf4ZspLlZkpyOVoMZPvFGWzvk8p5SUC/NWPMj6T2/Yas2EdlON5GkfdkeFwVGjta825H89NIenlLWAPAp5h1KDtRhCaAQWMsFKtEvOKpIhgLHlXPARokkgEGEOAkqxJRQpKYq4ezahIiLHP6hZpqMbV0pUF2vdvEimLEQ/iIUYLgYWs0VXGVlLTOPdaPmFfCC/XrtzqVo1ez7vz6+Kd2+7o11ZJ+4MreLbB5BKVGxobAq4jZYalZ5aX2CKJiwUuc9GNJyi4M8bGyKcdjSRrG4JohdF8buJfmQefbYYREnMFsOoiNliFDVxmRgL0XUmUMLqzW0A4gCQAhWGYCQpFNukwXhIkPMsbRI19ewtw8Cp2Wj/Ro5cM2OTAbJAvZ/L4opBXb9+UHscYuOKM/W8isgwN26Exexjizmfnlp9dE3hOSqdZ/F5QqbckIlPb+oKfXxd6hftJ7Sm/uyPYpONza84CRlMNk/uhOrLpyf53982++zRkXNu3g3VF8qFbx1+7fbHZ9DrB3VXWNSmhnT2vrwS1+1Z+kHGBaZIhnnvuLBTNDeA340D1DWu5/jEa9pVfl6+Jij+yo3EELNixXCLjr173Q5eDP7Y7/L4iQFHbjpaJLFoP4cCsYP6sAPL7gMHNg53yYjqxqTDrYqLDl5DzW/eTLjYxCvucprjI3yl2ykKowKUC2Ox2FJLFo6Fa1HBWLC2jMCIIBEmklkYhmkpmBhTm/LCvJAH5oGcMKcgFEP1xUdho8ANPa6RFD99/PN60fjj9eXy2Eex4B5MpmRapXidzFk1p4uLk3+hn6jAP9ovJcXPPwk8o/0ltizbdbnTprvx4PSxT0VZ3Xc772aN7RflgbXRYwc3hLNO+k878nxGwfuVM8m8Gs7WEoVGWLHwSpx4vNSHBCMNqJ4m15Kp/TfHHVkQd++eY7PGN4W5byTs+6Ft8Ozvb/D60btv37de8ER0mS3P/0sLW84qGjEVkwztPzz06eGUWwKLwPb0D/WFd3vltl2aP276KpM0JNz6AfnAnZ5ADlF2zVyZ2OkxHSMxWPMnSZLbbDR3F1UjPVqp4d68da13F1YZujdWw7271iecO2l9+/4p47Oztjck355/75wFOI+VdGDqbNGs+ISgxg3iB2jb2r+b0CWsNLHIM4sdv8SDSFBP/Oromz6FNCWw2iMTxV0R8QLyBTkpe0j5+pSSJOOTB5Mck/gh3IopuNQnhKj02t3FL80gGbEh89SZcwTxcYt5cZT/nMnB3uXfPy8BSpVMBuRx+ZhACGzDBmwHsJRAjhotOnzuj2wDz3ug2wOUAY2NgZln9/TK/enG/oE4rO1wxvGUFMAxsZ0qNjRC7hl9d17e7imbgDt6uJXhUobDg7v3RX/yRCKxgMhfyiKcZfbpk0wmCcdQlIAOHeakXLvCNt++WfKiozNqSZxxJotn+c0a7DdPsx7DPYgKIDxwwYUZDg9aJbxocTjcwovr9WAsVV32mQoiiIOCHc60Oltst9qCQYuCqN1yHo0Kj60OgI2OqmiuBUWrNA0NDhYCDcdpmMrs1fZZ0xdTzMr1HdPtIHstYhqaPDDA5YxUDx7J4fJiisBSDI/L6G/bn34GNy8Q2g044ZTulAdFLb0tI6NNxfj3DzLjWiNGxje1pz7aXOcNV68lDPEd2SXl6VfBuwmHzdf1gxFy1HvA7pD8I2BnnmyGw852Cg5XbgIdEEGE5UCzen5jTlG6JCU5iajlxVcsXvbcS0SAcg1dcesWJLVK8+hYHOYQ+Pjy+EyVGXP0aPTFagrV9E03hCQvYx+g47KGq+1GsLj8uBIyihNw33YUe8PNC4BOJ3Lm1AglLV3nCuvUdIP+v15tVGbWIwgxLVpPkfpthCGpTKG+oA/DQfsKKvxhScqaN6FuElAUtTKv2UYgOmQegsN/n7njHUju8wM4VTcm+Q8xfX9SFwjTzdVqu95UOWSIGOabH8OGBEba//8Yxl3GcPdP/dMBOoSX/0z5SZmBoLbaPs+9asaMpb36yknKaw6FqWZa6A5vDa02mhkOba1q6KtLV208xrkwmW5C4VD6n2fvRjADy2qDYYnNy+H10Fq0LMbNzS863gkO7iQ8eC48/Ny5m59tOcEso3u7Qg3yrqDL6eKXwJAuWnhylfbWrRObe66rzX59+XDtzusnL66dI/86ArmtLlzED860Ef3bFPV78OX/zFTA11fcBn2Vntb7qiGBSgLBHyuv/uEaqqoTgSpOyjlzh86me1Vriv7i9rLPLvtghWmSnblRbAsBJL/4dScSQTBxOivHMO5QvBBY0iheJvfwWLxLOGzYKZyM4zVc2Cll46zEpeUV4MqGEWZj22SdOxhGAjgs9AEnfT+RoiMfcDb0GS5NncKVxju4Nt/mRk13O9Gz3FLct5oCD6wkwUNrCfHIUg6SMf8LwQGyVaBUqpLPW5BaMpRshEpl8nS1qw5dgnzlik8QBXmdy5UrIH74heTKZKMSilQso4hsRiGraQZRzxpNGqlEJMsXuAU7GlcR8mWSykUpVkWGyIf0a8v4qEQp5CtGsMiZa+4ESYQy+WilCiguHzxMXO54ogShooTV2bj2z1zL6DYSoImoQ8lFUWxMLBNQQgLkV2tHYgUoIbkuREz+fJHKxxWBcnvu3KQppFCxLkguB1NyVSp/TknRvNwYlCdbblWu3ze6owHdWluhE5tgQ6ej2SV65CijijoaRfSiH4Nqz1OpfEW+WeI/oU0ly60zkV9YzOQSYtZVEGYmrysTZAJkY4qZtIBD9/LYTIK7Nww3vMiYBwA=)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-italic-BicUS2cM.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-italic-BfTTTDIL.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-italic-Py8at3oI.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.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}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-display:"Manrope Variable", "Inter Variable", system-ui, sans-serif;--font-body:"Inter Variable", "Manrope Variable", system-ui, sans-serif;--font-serif:"Fraunces Variable", Georgia, serif;--bg:#f6f3fb;--bg-deep:#efe9f8;--surface:#ffffffad;--surface-solid:#fff;--surface-soft:#ffffff6b;--surface-input:#ffffffb8;--ink:#241c3a;--ink-soft:#554d6d;--muted:#8b849e;--line:#48344e1a;--line-strong:#48344e2e;--violet:#8e6fae;--violet-strong:#75578f;--violet-soft:#d5c6e3;--mint:#3fbfa0;--mint-soft:#b7ead9;--peach:#f2a47e;--rose:#e88fb1;--sky:#6fb6f5;--lemon:#f2c94c;--gradient-primary:linear-gradient(135deg, #b69bcb 0%, #8e6fae 48%, #6b4f86 100%);--gradient-mint:linear-gradient(135deg, #8ce8c9 0%, #3fbfa0 100%);--gradient-peach:linear-gradient(135deg, #ffc7a6 0%, #f2907b 100%);--gradient-sky:linear-gradient(135deg, #a6dcff 0%, #6f9bf5 100%);--gradient-lemon:linear-gradient(135deg, #ffe695 0%, #f0b94a 100%);--gradient-rose:linear-gradient(135deg, #f9bfd3 0%, #e48fb0 100%);--gradient-dark:linear-gradient(150deg, #2b2149 0%, #171129 60%, #0e0b1a 100%);--shadow:0 24px 48px -30px #3a264057;--shadow-strong:0 30px 60px -26px #3a264075;--shadow-tile:0 22px 44px -30px #3a264066;--radius:28px;--radius-sm:18px;--nav-bg:#ffffffb8;--ring-track:#5a468c1f;--overlay:#1a122e66;--white-70:#ffffffb8}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0c0918;--bg-deep:#120e22;--surface:#fff1;--surface-solid:#171229;--surface-soft:#ffffff09;--surface-input:#ffffff13;--ink:#f4f0ff;--ink-soft:#c4bce0;--muted:#8e85ab;--line:#ffffff17;--line-strong:#ffffff29;--nav-bg:#171229d1;--ring-track:#ffffff1a;--shadow:0 24px 48px -28px #000000bf;--shadow-strong:0 30px 60px -22px #000000d9;--shadow-tile:0 22px 44px -28px #000c;--overlay:#04020aa8}*{box-sizing:border-box}html,body,#root{min-height:100%}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overscroll-behavior-y:none;margin:0;font-size:15px;line-height:1.45;overflow-x:hidden}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}svg{display:block}::selection{background:#8e6fae3d}:focus-visible{outline:2px solid var(--violet);outline-offset:2px}::-webkit-scrollbar{width:0;height:0}.app{isolation:isolate;width:100%;max-width:540px;min-height:100dvh;margin:0 auto;position:relative}.ambient{z-index:-1;pointer-events:none;background:var(--bg);position:fixed;inset:0;overflow:hidden}.ambient__blob{filter:blur(76px);opacity:.62;border-radius:50%;animation:22s ease-in-out infinite alternate drift;position:absolute}.ambient__blob--violet{background:radial-gradient(circle,#d5c6e3 0%,#c9b8f500 70%);width:340px;height:340px;top:-110px;left:-90px}.ambient__blob--mint{background:radial-gradient(circle,#a9e8d2 0%,#a9e8d200 70%);width:320px;height:320px;animation-delay:-7s;top:14%;right:-130px}.ambient__blob--peach{background:radial-gradient(circle,#ffd7c4 0%,#ffd7c400 70%);width:380px;height:380px;animation-delay:-13s;bottom:-170px;left:-40px}[data-theme=dark] .ambient__blob{opacity:.28;filter:blur(90px)}[data-theme=dark] .ambient__blob--violet{background:radial-gradient(circle,#6b4f86 0%,#6b4f8600 70%)}[data-theme=dark] .ambient__blob--mint{background:radial-gradient(circle,#1f8f74 0%,#1f8f7400 70%)}[data-theme=dark] .ambient__blob--peach{background:radial-gradient(circle,#8a4b63 0%,#8a4b6300 70%)}.ambient:after{content:"";opacity:.04;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E");position:absolute;inset:0}.topbar{z-index:30;padding:calc(12px + env(safe-area-inset-top)) 18px 10px;background:linear-gradient(180deg, var(--bg) 30%, #f6f3fbb8 70%, transparent 100%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);align-items:center;gap:10px;display:flex;position:sticky;top:0}[data-theme=dark] .topbar{background:linear-gradient(180deg, var(--bg) 30%, #0c0918bf 70%, transparent 100%)}.brand{align-items:center;gap:9px;padding:2px 0;display:inline-flex}.brand__mark{background:var(--gradient-primary);color:#fff;border-radius:10px;flex:none;place-items:center;width:30px;height:30px;display:grid;box-shadow:0 10px 20px -10px #7a5898e6}.logo{object-fit:cover;-webkit-user-select:none;user-select:none;background:#9478b2;flex:none;display:block;box-shadow:0 6px 16px -9px #301e3499}.logo--hero{box-shadow:0 34px 64px -28px #301e349e}.brand__name{font-family:var(--font-display);letter-spacing:-.035em;font-size:21px;font-weight:800;line-height:1}.brand__name span{color:var(--violet)}.brand__tag{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:3px;font-size:9px;font-weight:600;display:block}.topbar__spacer{flex:1}.topbar__actions{align-items:center;gap:8px;display:flex}.app__main{padding:2px 16px calc(118px + env(safe-area-inset-bottom))}.screen{padding-top:4px;animation:.36s cubic-bezier(.22,.8,.3,1) both screen-in}.screen-head{justify-content:space-between;align-items:flex-end;gap:12px;margin:8px 2px 16px;display:flex}.screen-title{font-family:var(--font-display);letter-spacing:-.045em;margin:0;font-size:34px;font-weight:800;line-height:1.02}.screen-sub{color:var(--muted);letter-spacing:-.005em;margin:7px 0 0;font-size:13px;font-weight:500}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;font-size:10px;font-weight:800;display:inline-flex}.serif{font-family:var(--font-serif);font-style:italic;font-weight:400}.muted{color:var(--muted)}.small{font-size:12px}.tiny{font-size:10.5px}.strong{font-weight:700}.row{align-items:center;gap:10px;display:flex}.row--between{justify-content:space-between}.col{flex-direction:column;display:flex}.grow{flex:1;min-width:0}.wrap{flex-wrap:wrap}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.stack{gap:12px;display:grid}.divider{background:var(--line);height:1px;margin:14px 0}.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}.text-gradient{background:var(--gradient-primary);color:#0000;-webkit-background-clip:text;background-clip:text}.nav{left:50%;bottom:calc(10px + env(safe-area-inset-bottom));background:var(--nav-bg);border:1px solid var(--line);width:min(100% - 22px,514px);box-shadow:var(--shadow-strong);-webkit-backdrop-filter:blur(28px)saturate(170%);z-index:45;border-radius:26px;grid-template-columns:repeat(5,1fr);gap:1px;padding:7px;display:grid;position:fixed;transform:translate(-50%)}.nav__item{color:var(--muted);letter-spacing:.005em;border-radius:19px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:5px 2px 4px;font-size:9.5px;font-weight:700;transition:color .2s,transform .2s;display:flex}.nav__item:active{transform:scale(.95)}.nav__icon{border-radius:13px;place-items:center;width:40px;height:31px;transition:background .25s,color .25s,box-shadow .25s;display:grid}.nav__item--active{color:var(--violet-strong)}[data-theme=dark] .nav__item--active{color:#e0d0ee}.nav__item--active .nav__icon{background:var(--gradient-primary);color:#fff;box-shadow:0 10px 20px -10px #7a5898e6}@keyframes drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(28px,24px)scale(1.12)}}@keyframes screen-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pop-in{0%{opacity:0;transform:scale(.9)}70%{transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes breathe{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes heart-rise{0%{opacity:0;transform:translateY(6px)scale(.6)}25%{opacity:1}to{opacity:0;transform:translateY(-56px)scale(1.15)rotate(12deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (width>=700px){.app{box-shadow:0 0 0 1px var(--line), 0 40px 120px -40px #3a264040;background:color-mix(in srgb, var(--bg) 55%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}}.tile{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-tile);-webkit-backdrop-filter:blur(22px)saturate(140%);color:var(--ink);padding:18px;position:relative;overflow:hidden}.tile--tight{border-radius:24px;padding:15px}.tile--violet{background:var(--gradient-primary);color:#fff;border:0;box-shadow:0 26px 46px -26px #6e5288cc}.tile--mint{background:var(--gradient-mint);color:#fff;border:0;box-shadow:0 26px 46px -26px #23977cb8}.tile--peach{background:var(--gradient-peach);color:#3c231a;border:0;box-shadow:0 26px 46px -26px #e07a5c99}.tile--sky{background:var(--gradient-sky);color:#fff;border:0;box-shadow:0 26px 46px -26px #5882dc99}.tile--lemon{background:var(--gradient-lemon);color:#3b2c10;border:0;box-shadow:0 26px 46px -26px #d6a8348c}.tile--rose{background:var(--gradient-rose);color:#fff;border:0;box-shadow:0 26px 46px -26px #d6769a8c}.tile--dark{background:var(--gradient-dark);color:#fff;border:1px solid #ffffff14}.tile--violet .tile__eyebrow,.tile--mint .tile__eyebrow,.tile--sky .tile__eyebrow,.tile--rose .tile__eyebrow{color:#ffffffb8}.tile--peach .tile__eyebrow,.tile--lemon .tile__eyebrow{color:#3c281494}.tile--violet .muted,.tile--mint .muted,.tile--sky .muted,.tile--rose .muted{color:#ffffffbd}.tile--peach .muted,.tile--lemon .muted{color:#3c2814a3}.tile__glow{pointer-events:none;background:#ffffff29;border-radius:50%;width:190px;height:190px;position:absolute;top:-80px;right:-60px}.tile__glow--low{background:#ffffff1a;inset:auto auto -110px -60px}.tile__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;margin-bottom:6px;font-size:9.5px;font-weight:800;display:flex}.tile__title{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:18px;font-weight:800;line-height:1.15}.tile__value{font-family:var(--font-display);letter-spacing:-.05em;font-size:34px;font-weight:800;line-height:.95}.tile__hint{opacity:.85;margin:6px 0 0;font-size:11.5px;line-height:1.4}.tile__link{opacity:.9;align-items:center;gap:4px;font-size:11px;font-weight:700;display:inline-flex}.btn{min-height:46px;font-family:var(--font-display);letter-spacing:-.012em;white-space:nowrap;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:13.5px;font-weight:700;transition:transform .16s,box-shadow .2s,opacity .2s,background .2s;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;pointer-events:none}.btn--primary{background:var(--gradient-primary);color:#fff;box-shadow:0 16px 30px -16px #7a5898e6}.btn--soft{background:var(--surface);border:1px solid var(--line);color:var(--ink);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.btn--ghost{color:var(--ink-soft);background:0 0}.btn--white{color:#402c7a;background:#fff;box-shadow:0 14px 26px -18px #140a3280}.btn--danger{color:#c84d6c;background:#e05f801a}.btn--sm{border-radius:12px;gap:5px;min-height:36px;padding:0 13px;font-size:11.5px}.btn--lg{border-radius:18px;min-height:52px;font-size:15px}.btn--block{width:100%}.btn--glass{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff29;border:1px solid #ffffff2e}.icon-btn{background:var(--surface);border:1px solid var(--line);width:40px;height:40px;color:var(--ink-soft);border-radius:14px;flex:none;place-items:center;transition:transform .16s,background .2s;display:grid}.icon-btn:active{transform:scale(.94)}.icon-btn--plain{background:0 0;border-color:#0000}.icon-btn--sm{border-radius:11px;width:32px;height:32px}.chip-row{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:7px;padding:2px 2px 4px;display:flex;overflow-x:auto}.chip-row--wrap{flex-wrap:wrap;overflow:visible}.chip{background:var(--surface);border:1px solid var(--line);min-height:33px;color:var(--ink-soft);font-family:var(--font-display);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:0 13px;font-size:11.5px;font-weight:700;transition:background .2s,color .2s,transform .16s;display:inline-flex}.chip:active{transform:scale(.96)}.chip--active{background:var(--gradient-primary);color:#fff;border-color:#0000;box-shadow:0 10px 20px -12px #7a5898d9}.chip--ghost{background:0 0}.chip--small{min-height:27px;padding:0 10px;font-size:10px}.segmented{background:var(--surface-soft);border:1px solid var(--line);border-radius:16px;grid-auto-columns:1fr;grid-auto-flow:column;gap:3px;padding:4px;display:grid}.segmented__btn{min-height:36px;font-family:var(--font-display);color:var(--muted);border-radius:12px;padding:0 8px;font-size:11.5px;font-weight:700;transition:background .22s,color .22s,box-shadow .22s}.segmented__btn--active{background:var(--surface-solid);color:var(--ink);box-shadow:0 8px 16px -12px #2c183073}[data-theme=dark] .segmented__btn--active{color:#fff;background:#ffffff1f}.avatar{background:linear-gradient(145deg,#e0d2ec,#b69bcb);border-radius:14px;flex:none;place-items:center;width:40px;height:40px;font-size:20px;line-height:1;display:grid;box-shadow:inset 0 1px #ffffff80}.avatar--sm{border-radius:10px;width:28px;height:28px;font-size:14px}.avatar--md{border-radius:15px;width:44px;height:44px;font-size:21px}.avatar--lg{border-radius:19px;width:58px;height:58px;font-size:27px}.avatar--xl{border-radius:25px;width:76px;height:76px;font-size:35px}.avatar--violet{background:linear-gradient(145deg,#e0d2ec,#a487c4)}.avatar--mint{background:linear-gradient(145deg,#c7f4e6,#7fdcbe)}.avatar--peach{background:linear-gradient(145deg,#ffe0cf,#f7b08d)}.avatar--sky{background:linear-gradient(145deg,#d1ebff,#9cc6fb)}.avatar--rose{background:linear-gradient(145deg,#fbd7e3,#efa6c1)}.avatar--lemon{background:linear-gradient(145deg,#fff0b8,#f5d575)}.avatar--ring{box-shadow:0 0 0 2px var(--surface-solid), 0 0 0 4px #8e6fae59}.avatar-stack{align-items:center;display:flex}.avatar-stack .avatar+.avatar{margin-left:-9px}.status-pill{background:var(--surface);border:1px solid var(--line);letter-spacing:.02em;height:27px;color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:0 9px;font-size:9.5px;font-weight:700;display:inline-flex}.status-pill--online{color:#2c8d72;background:#5ed6b229;border-color:#3fbfa03d}[data-theme=dark] .status-pill--online{color:#7fe7c8}.status-pill--error{color:#c4655a;background:#e88fb124}.sync-dot{background:var(--muted);border-radius:50%;flex:none;width:6px;height:6px}.sync-dot--online{background:#3fbfa0;animation:3s ease-in-out infinite breathe;box-shadow:0 0 0 3px #3fbfa02e}.sync-dot--connecting{background:#f2c94c;box-shadow:0 0 0 3px #f2c94c2e}.sync-dot--error{background:#e88fb1}.field{gap:6px;display:grid}.field__label{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:800}.field__hint{color:var(--muted);font-size:10.5px;line-height:1.4}.input,.textarea,.select{background:var(--surface-input);border:1px solid var(--line);width:100%;font-family:var(--font-body);color:var(--ink);border-radius:15px;outline:none;min-height:46px;padding:12px 14px;font-size:14px;transition:border-color .2s,box-shadow .2s}.textarea{resize:vertical;min-height:88px;line-height:1.5}.input::placeholder,.textarea::placeholder{color:var(--muted);opacity:.85}.input:focus,.textarea:focus,.select:focus{border-color:#8e6fae80;box-shadow:0 0 0 4px #8e6fae1a}.field-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.toggle-row{justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.switch{background:var(--ring-track);border-radius:999px;flex:none;width:46px;height:28px;transition:background .22s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .22s;position:absolute;top:3px;left:3px;box-shadow:0 3px 8px #140a3240}.switch--on{background:var(--gradient-primary)}.switch--on:after{transform:translate(18px)}.progress{background:var(--ring-track);border-radius:999px;height:7px;overflow:hidden}.progress__bar{background:var(--gradient-primary);border-radius:999px;height:100%;transition:width .5s cubic-bezier(.22,.8,.3,1)}.progress__bar--mint{background:var(--gradient-mint)}.progress__bar--light{background:#ffffffd9}.ring{place-items:center;display:grid;position:relative}.ring__svg{transform:rotate(-90deg)}.ring__center{text-align:center;place-content:center;display:grid;position:absolute;inset:0}.ring__value{font-family:var(--font-display);letter-spacing:-.05em;font-weight:800;line-height:1}.ring__label{letter-spacing:.08em;text-transform:uppercase;opacity:.7;margin-top:3px;font-size:8.5px;font-weight:700}.section-head{justify-content:space-between;align-items:center;gap:10px;margin:22px 2px 10px;display:flex}.section-head__title{font-family:var(--font-display);letter-spacing:-.025em;margin:0;font-size:16px;font-weight:800}.section-head__action{color:var(--violet);align-items:center;gap:3px;font-size:11px;font-weight:700;display:inline-flex}[data-theme=dark] .section-head__action{color:#e0d0ee}.badge{letter-spacing:.04em;height:21px;color:var(--violet-strong);background:#8e6fae1f;border-radius:999px;align-items:center;gap:4px;padding:0 8px;font-size:9px;font-weight:800;display:inline-flex}[data-theme=dark] .badge{color:#e6d9f2;background:#b49bcb29}.badge--mint{color:#24856c;background:#3fbfa024}.badge--warm{color:#a95c35;background:#f2a47e2e}.empty{text-align:center;border:1px dashed var(--line-strong);background:var(--surface-soft);border-radius:24px;padding:26px 20px}.empty__emoji{margin-bottom:8px;font-size:28px}.empty__title{font-family:var(--font-display);margin:0 0 4px;font-size:15px;font-weight:800}.empty__text{max-width:250px;color:var(--muted);margin:0 auto;font-size:12px;line-height:1.5}.sheet-overlay{z-index:90;background:var(--overlay);-webkit-backdrop-filter:blur(7px);overscroll-behavior:contain;justify-content:center;align-items:flex-end;animation:.2s both fade-in;display:flex;position:fixed;inset:0}.sheet{background:var(--surface-solid);width:100%;max-width:540px;max-height:92dvh;padding:8px 18px calc(22px + env(safe-area-inset-bottom));border-radius:30px 30px 0 0;animation:.32s cubic-bezier(.22,.8,.3,1) both slide-up;position:relative;overflow-y:auto;box-shadow:0 -24px 70px -20px #0a041e66}.sheet__grabber{background:var(--line-strong);border-radius:999px;width:40px;height:4px;margin:4px auto 12px}.sheet__head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.sheet__title{font-family:var(--font-display);letter-spacing:-.04em;margin:0;font-size:23px;font-weight:800;line-height:1.1}.sheet__sub{color:var(--muted);margin:5px 0 0;font-size:11.5px;line-height:1.45}.sheet__body{gap:14px;display:grid}.sheet__foot{gap:9px;margin-top:18px;display:flex}.sheet__foot .btn{flex:1}@media (width>=700px){.sheet-overlay{align-items:center}.sheet{border-radius:30px;max-height:86dvh;margin-bottom:0}}.toast{left:50%;bottom:calc(92px + env(safe-area-inset-bottom));z-index:120;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:center;background:#1f1636eb;border-radius:16px;align-items:center;gap:8px;max-width:calc(100vw - 40px);padding:11px 16px;font-size:12px;font-weight:600;animation:.28s both pop-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 18px 40px -16px #00000080}.toast__emoji{font-size:15px}.stat{gap:2px;display:grid}.stat__value{font-family:var(--font-display);letter-spacing:-.04em;font-size:22px;font-weight:800;line-height:1}.stat__label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:9.5px;font-weight:700}.dot{opacity:.4;background:currentColor;border-radius:50%;width:5px;height:5px}.list{gap:8px;display:grid}.list-row{background:var(--surface-soft);border:1px solid var(--line);border-radius:17px;align-items:center;gap:11px;padding:11px 12px;display:flex}.list-row--plain{background:0 0;border:0;padding:8px 0}.notice{color:var(--ink-soft);background:#8e6fae14;border:1px solid #8e6fae24;border-radius:16px;gap:9px;padding:12px 13px;font-size:11px;line-height:1.5;display:flex}[data-theme=dark] .notice{background:#b49bcb1a;border-color:#b49bcb2e}.notice__emoji{font-size:15px;line-height:1.2}.mood-row{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.mood-btn{background:var(--surface-soft);border:1px solid #0000;border-radius:15px;justify-items:center;gap:4px;padding:8px 2px 6px;transition:transform .16s,background .2s,border-color .2s;display:grid}.mood-btn:active{transform:scale(.94)}.mood-btn__emoji{filter:grayscale(.25);font-size:21px;line-height:1;transition:filter .2s,transform .2s}.mood-btn__label{color:var(--muted);font-size:8.5px;font-weight:700}.mood-btn--active{background:var(--surface-solid);border-color:#8e6fae38;box-shadow:0 10px 20px -14px #3c286e66}.mood-btn--active .mood-btn__emoji{filter:none;transform:scale(1.12)}.mood-btn--active .mood-btn__label{color:var(--ink)}.quest{align-items:center;gap:10px;padding:9px 0;display:flex}.quest+.quest{border-top:1px solid var(--line)}.quest__check{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;flex:none;place-items:center;width:30px;height:30px;font-size:14px;display:grid}.quest--done .quest__check{background:var(--gradient-mint);color:#fff;border-color:#0000;font-size:13px}.quest__label{font-size:12.5px;font-weight:600;line-height:1.25}.quest--done .quest__label{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.quest__points{font-family:var(--font-display);color:var(--violet);background:#8e6fae1a;border-radius:999px;flex:none;padding:3px 7px;font-size:10px;font-weight:800}[data-theme=dark] .quest__points{color:#e0d0ee;background:#b49bcb24}.achievement-row{scrollbar-width:none;gap:9px;padding:2px 2px 4px;display:flex;overflow-x:auto}.achievement{background:var(--surface-soft);border:1px solid var(--line);text-align:center;border-radius:17px;flex:0 0 84px;justify-items:center;gap:6px;padding:11px 6px 9px;display:grid}.achievement--unlocked{background:linear-gradient(160deg,#ffffffd9,#ffffff73);border-color:#8e6fae2e}[data-theme=dark] .achievement--unlocked{background:linear-gradient(160deg,#b49bcb2e,#ffffff0a)}.achievement--locked{opacity:.5;filter:grayscale(.7)}.achievement__emoji{background:#ffffffb3;border-radius:14px;place-items:center;width:40px;height:40px;font-size:20px;display:grid;box-shadow:inset 0 1px #fffc}[data-theme=dark] .achievement__emoji{background:#ffffff12}.achievement__title{letter-spacing:-.01em;font-size:9px;font-weight:800;line-height:1.2}.achievement__desc{color:var(--muted);font-size:8px;line-height:1.25}.ring-stat{align-items:center;gap:14px;display:flex}.ring-stat__meta{gap:3px;display:grid}.level-bar{gap:4px;display:grid}.level-bar__labels{opacity:.8;justify-content:space-between;font-size:9px;font-weight:700;display:flex}.dual-bar{gap:5px;display:grid}.dual-bar__row{align-items:center;gap:8px;font-size:10px;display:flex}.dual-bar__track{background:var(--ring-track);border-radius:999px;flex:1;height:6px;overflow:hidden}.dual-bar__fill{border-radius:999px;height:100%;transition:width .5s cubic-bezier(.22,.8,.3,1)}.dual-bar__value{text-align:right;width:16px;font-weight:800;font-family:var(--font-display);color:var(--muted);font-size:10px}.legend{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.legend__item{color:var(--muted);align-items:center;gap:5px;font-size:9.5px;font-weight:700;display:inline-flex}.legend__dot{border-radius:3px;width:7px;height:7px}.rating-slider{gap:5px;display:grid}.rating-slider__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.rating-slider__label{align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.rating-slider__value{font-family:var(--font-display);text-align:right;min-width:22px;font-size:14px;font-weight:800}input[type=range]{appearance:none;background:0 0;width:100%;height:22px;margin:0}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--range-color,#8e6fae) 0%, var(--range-color,#8e6fae) var(--range-progress,50%), var(--ring-track) var(--range-progress,50%), var(--ring-track) 100%);border-radius:999px;height:7px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;border:3px solid var(--range-color,#8e6fae);background:#fff;border-radius:50%;width:20px;height:20px;margin-top:-6.5px;box-shadow:0 4px 10px #2c183040}input[type=range]::-moz-range-track{background:var(--ring-track);border-radius:999px;height:7px}input[type=range]::-moz-range-progress{background:var(--range-color,#8e6fae);border-radius:999px;height:7px}input[type=range]::-moz-range-thumb{border:3px solid var(--range-color,#8e6fae);background:#fff;border-radius:50%;width:16px;height:16px}.heart-burst{pointer-events:none;z-index:5;font-size:16px;animation:1.1s ease-out forwards heart-rise;position:absolute}.scroll-x{scrollbar-width:none;-webkit-overflow-scrolling:touch;overflow-x:auto}.hide-scroll::-webkit-scrollbar{display:none}.skeleton{background:linear-gradient(90deg, var(--surface-soft), var(--surface), var(--surface-soft));background-size:200% 100%;border-radius:16px;animation:1.4s linear infinite shimmer}.span-2{grid-column:span 2}.bento{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:12px;display:grid}.form-error{color:#c14f6d;background:#e05f801f;border-radius:12px;margin:0;padding:9px 12px;font-size:11.5px;font-weight:600;line-height:1.45}[data-theme=dark] .form-error{color:#ffb3c6;background:#e05f8029}.spin{animation:.9s linear infinite spin}.rotate-180{transform:rotate(180deg)}.avatar-btn{border-radius:16px;place-items:center;transition:transform .16s;display:grid}.avatar-btn:active{transform:scale(.94)}.btn--icon{flex:none;width:38px;min-height:34px;padding:0}.overlay-head{align-items:center;gap:11px;padding:6px 0 16px;display:flex}.overlay-title{font-family:var(--font-display);letter-spacing:-.045em;margin:0;font-size:25px;font-weight:800;line-height:1.05}.overlay-sub{color:var(--muted);margin:3px 0 0;font-size:10.5px;font-weight:500}.onboard{width:100%;max-width:540px;padding:calc(18px + env(safe-area-inset-top)) 18px calc(30px + env(safe-area-inset-bottom));min-height:100dvh;margin:0 auto}.onboard__welcome{flex-direction:column;min-height:calc(100dvh - 135px);display:flex}.onboard__brand{align-items:center;gap:10px;display:flex}.onboard__logo-card{background:var(--surface-solid);border-radius:34px;place-items:center;animation:9s ease-in-out infinite breathe;display:grid;box-shadow:0 32px 64px -30px #301e348c}.onboard__wordmark{font-family:var(--font-display);letter-spacing:-.05em;font-size:28px;font-weight:800}.onboard__wordmark span{color:var(--violet)}.onboard__art{place-items:center;height:200px;margin:10px 0 0;display:grid;position:relative}.onboard__badges{scrollbar-width:none;gap:6px;margin:12px 0 2px;padding-bottom:2px;display:flex;overflow-x:auto}.onboard__badges::-webkit-scrollbar{display:none}.onboard__badges .float-chip{border-radius:14px;flex:none;padding:7px 10px;animation:none;position:static}.onboard__badges .float-chip small{white-space:nowrap}.float-chip{background:var(--surface-solid);border:1px solid var(--line);border-radius:15px;align-items:center;gap:8px;padding:8px 11px;animation:6s ease-in-out infinite breathe;display:flex;position:absolute;box-shadow:0 20px 44px -22px #301e3459}.float-chip>span{font-size:18px}.float-chip strong{letter-spacing:-.01em;font-size:10.5px;font-weight:800;display:block}.float-chip small{color:var(--muted);margin-top:1px;font-size:8px;display:block}.float-chip--streak{animation-delay:-1.5s;top:16px;left:-2px}.float-chip--pulse{animation-delay:-3s;top:96px;right:-4px}.float-chip--date{animation-delay:-4.5s;bottom:0;left:12px}.onboard__copy h1{font-family:var(--font-display);letter-spacing:-.055em;margin:7px 0 10px;font-size:40px;font-weight:800;line-height:.98}.onboard__copy h1 span{background:linear-gradient(120deg,#8e6fae,#3fbfa0);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:36px}.onboard__copy>p:last-child{max-width:390px;color:var(--ink-soft);margin:0;font-size:13px;line-height:1.55}.onboard__features{flex-wrap:wrap;gap:6px;margin:12px 0 14px;display:flex}.onboard__actions{gap:8px;margin-top:auto;display:grid}.onboard__actions .btn{margin-top:0}.onboard__foot{text-align:center;color:var(--muted);margin:12px 0 0;font-size:9.5px}.onboard__skip{color:var(--muted);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);justify-self:center;margin-top:2px;padding:4px 8px;font-size:10px;font-weight:600}.onboard__panel{gap:16px;padding-bottom:12px;display:grid}.onboard__back{color:var(--muted);justify-self:start;align-items:center;gap:5px;padding:6px 4px;font-size:11px;font-weight:700;display:inline-flex}.onboard__panel-head h1{font-family:var(--font-display);letter-spacing:-.045em;margin:6px 0;font-size:31px;font-weight:800;line-height:1.05}.onboard__panel-head>p:last-child{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.person-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.person-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-tile);border-radius:22px;gap:9px;padding:12px;display:grid}.person-card--partner{background:linear-gradient(160deg,#ffffffbf,#c7f4e640)}[data-theme=dark] .person-card--partner{background:linear-gradient(160deg,#ffffff12,#3fbfa014)}.person-card__top{justify-content:space-between;align-items:center;display:flex}.person-card .input{min-height:40px;padding:9px 10px;font-size:12.5px}.emoji-row{scrollbar-width:none;gap:3px;padding-bottom:2px;display:flex;overflow-x:auto}.emoji-row::-webkit-scrollbar{display:none}.emoji-row--wrap{flex-wrap:wrap;overflow:visible}.emoji-row--compact{margin-top:5px}.emoji-choice{border-radius:8px;flex:none;place-items:center;width:25px;height:25px;font-size:14px;transition:background .18s,transform .14s;display:grid}.emoji-choice:active{transform:scale(.9)}.emoji-choice--active{background:#8e6fae29;transform:scale(1.05);box-shadow:inset 0 0 0 1px #8e6fae4d}.demo-toggle{text-align:left;background:var(--surface-soft);border:1px solid var(--line);border-radius:18px;align-items:center;gap:10px;padding:12px;display:flex}.demo-toggle--on{background:linear-gradient(150deg,#8e6fae17,#3fbfa014);border-color:#8e6fae2e}.demo-toggle__icon{font-size:20px}.demo-toggle strong{font-size:12px;font-weight:800;display:block}.demo-toggle small{color:var(--muted);margin-top:2px;font-size:10px;line-height:1.4;display:block}.pair-visual{justify-content:center;align-items:center;gap:14px;padding:6px 0;display:flex}.pair-visual__phone{background:var(--gradient-primary);color:#fff;border:2px solid #fff6;border-radius:17px;place-items:center;width:64px;height:108px;font-size:26px;display:grid;box-shadow:0 20px 40px -20px #4428a08c}.pair-visual__phone--right{background:var(--gradient-mint)}.pair-visual__link{color:var(--violet);align-items:center;gap:2px;display:flex}.pair-visual__pulse{opacity:.4;background:currentColor;border-radius:2px;width:14px;height:2px}.sync-choice{grid-template-columns:1fr 1fr;gap:8px;display:grid}.sync-choice__card{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:19px;gap:4px;padding:13px;transition:border-color .2s,background .2s,transform .16s;display:grid}.sync-choice__card:active{transform:scale(.98)}.sync-choice__card--active{background:linear-gradient(150deg,#8e6fae1f,#3fbfa00f);border-color:#8e6fae73;box-shadow:0 14px 30px -20px #7a589880}.sync-choice__icon{font-size:21px}.sync-choice__card strong{letter-spacing:-.01em;font-size:12px;font-weight:800}.sync-choice__card small{color:var(--muted);font-size:9.5px;line-height:1.4}.sync-setup{gap:12px;display:grid}.room-code-card{background:linear-gradient(140deg,#8e6fae1a,#3fbfa014);border:1px dashed #8e6fae59;border-radius:18px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.room-code-card__code{font-family:var(--font-display);letter-spacing:.08em;margin-top:2px;font-size:20px;font-weight:800;display:block}.security-note{background:var(--surface-soft);border:1px solid var(--line);color:var(--muted);border-radius:14px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:10px;line-height:1.5;display:flex}.security-note svg{color:var(--mint);flex:none;margin-top:1px}.join-members{background:var(--surface-soft);border:1px solid var(--line);border-radius:18px;gap:9px;padding:12px;display:grid}.join-members__list{gap:6px;display:grid}.join-member{background:var(--surface);border:1px solid var(--line);text-align:left;border-radius:14px;align-items:center;gap:9px;padding:10px 12px;font-size:13px;font-weight:700;display:flex}.join-member--active{background:#8e6fae1a;border-color:#8e6fae73}.join-member__emoji{font-size:20px}.join-member svg{color:var(--violet);margin-left:auto}.input--code{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.update-banner{box-shadow:var(--shadow);background:linear-gradient(140deg,#ffffffd1,#b49bcb38);border:1px solid #8e6fae47;border-radius:18px;align-items:center;gap:9px;margin:6px 0 2px;padding:10px 11px;display:flex;position:relative}[data-theme=dark] .update-banner{background:linear-gradient(140deg,#ffffff12,#b49bcb1f)}.update-banner__icon{font-size:18px}.update-banner strong{font-size:11.5px;font-weight:800;line-height:1.25;display:block}.update-banner small{color:var(--muted);margin-top:1px;font-size:9.5px;line-height:1.35;display:block}.update-banner__close{width:20px;height:20px;color:var(--muted);border-radius:7px;place-items:center;display:grid;position:absolute;top:4px;right:4px}.home__intro{justify-content:space-between;align-items:flex-end;gap:12px;padding:8px 3px 15px;display:flex}.home__greeting{font-family:var(--font-display);letter-spacing:-.045em;margin:4px 0 3px;font-size:27px;font-weight:800;line-height:1.05}.home__sub{color:var(--muted);margin:0;font-size:11px;font-weight:500}.hero{border-radius:30px;padding:19px}.hero__top{align-items:flex-start;gap:10px;display:flex}.hero__level-name{font-family:var(--font-display);letter-spacing:-.04em;margin:3px 0 2px;font-size:23px;font-weight:800}.hero__points{color:#ffffffbf;margin:0;font-size:10.5px;font-weight:600}.hero__streaks{flex-wrap:wrap;gap:5px;margin-top:13px;display:flex}.streak-chip{color:#ffffffeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff29;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:4px;height:26px;padding:0 9px;font-size:9px;font-weight:600;display:inline-flex}.streak-chip strong{font-weight:800}.hero__level-bar{gap:4px;margin-top:12px;display:grid}.hero__floating-heart{opacity:.35;font-size:18px;position:absolute;bottom:72px;right:22px;transform:rotate(-12deg)}.pair-teaser{text-align:left;border-radius:24px;align-items:center;gap:12px;width:100%;margin-top:11px;padding:15px;display:flex}.pair-teaser h3{font-family:var(--font-display);letter-spacing:-.025em;margin:2px 0 3px;font-size:15px;font-weight:800}.pair-teaser p{color:#ffffffad;margin:0;font-size:10px;line-height:1.4}.pair-teaser__icon{background:#ffffff1f;border-radius:14px;flex:none;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.mood-status{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-size:9.5px;font-weight:600;display:flex}.mood-status__partner{color:var(--ink-soft);align-items:center;gap:5px;display:inline-flex}.tile__title--question{margin:3px 0 10px;font-size:19px;line-height:1.25}.answer-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.answer-card{background:var(--surface-soft);border:1px solid var(--line);border-radius:15px;padding:10px}.answer-card--me{background:#8e6fae17;border-color:#8e6fae29}[data-theme=dark] .answer-card--me{background:#b49bcb1a}.answer-card--waiting{opacity:.7;border-style:dashed}.answer-card__head{align-items:center;gap:5px;margin-bottom:5px;font-size:9.5px;font-weight:800;display:flex}.answer-card__head>span:not(.avatar){flex:1}.answer-card__edit{color:var(--violet);opacity:.8;font-size:8.5px;font-weight:700}.answer-card p{color:var(--ink-soft);margin:0;font-size:11px;line-height:1.45}.answer-both{color:var(--violet);justify-content:center;align-items:center;gap:5px;margin-top:9px;font-size:9.5px;font-weight:700;display:flex}.date-tile{text-align:left;flex-direction:column;min-height:118px;padding:14px;display:flex}.date-tile__title{font-family:var(--font-display);letter-spacing:-.03em;margin:7px 0 3px;font-size:16px;font-weight:800;line-height:1.15}.date-tile__when{opacity:.72;margin:0;font-size:10.5px;font-weight:600}.date-tile__arrow{background:#ffffff59;border-radius:10px;place-items:center;width:27px;height:27px;display:grid;position:absolute;bottom:13px;right:13px}.work-tile{text-align:left;flex-direction:column;min-height:118px;padding:14px;display:flex}.work-tile__rows{gap:5px;margin-top:7px;display:grid}.work-tile__rows>div{justify-content:space-between;align-items:center;gap:6px;display:flex}.work-tile__name{opacity:.78;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;font-weight:600;overflow:hidden}.work-tile strong{font-family:var(--font-display);font-size:11px;font-weight:800}.work-tile__hint{opacity:.65;margin-top:auto;padding-top:8px;font-size:9px;font-weight:600}.map-tile{text-align:left;align-items:center;min-height:106px;padding:15px;display:flex}.map-tile__map{opacity:.9;background:linear-gradient(115deg,#0000 42%,#ffffff2e 42.5% 44%,#0000 44.5%),linear-gradient(24deg,#0000 58%,#ffffff24 58.5% 60%,#0000 60.5%),repeating-linear-gradient(0deg,#ffffff0f 0 1px,#0000 1px 22px),repeating-linear-gradient(90deg,#ffffff0f 0 1px,#0000 1px 22px);width:58%;position:absolute;inset:0 0 0 auto}.map-tile__road{background:#ffffff73;border-radius:3px;height:3px;position:absolute}.map-tile__road--a{width:120px;top:30%;right:-10px;transform:rotate(-18deg)}.map-tile__road--b{width:90px;top:70%;right:20px;transform:rotate(12deg)}.map-tile__road--c{width:70px;top:46%;right:30px;transform:rotate(65deg)}.map-tile__dot{border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;box-shadow:0 3px 8px #140a324d}.map-tile__dot--me{background:#8e6fae;top:32%;right:26%}.map-tile__dot--partner{background:#3fbfa0;top:66%;right:48%}.map-tile__content{z-index:1;width:64%;position:relative}.map-tile__content h3{font-family:var(--font-display);letter-spacing:-.025em;margin:3px 0;font-size:15px;font-weight:800;line-height:1.15}.map-tile__content p{color:#ffffffb8;margin:0;font-size:9.5px;line-height:1.4}.map-tile__open{z-index:2;background:#ffffff38;border-radius:9px;place-items:center;width:26px;height:26px;display:grid;position:absolute;bottom:13px;right:13px}.quest-list{margin-top:2px}.focus-mini .tile__title{margin-top:4px;font-size:17px}.gratitude-list{gap:5px;margin-top:9px;display:grid}.gratitude-item{color:var(--ink-soft);align-items:flex-start;gap:6px;font-size:10.5px;line-height:1.4;display:flex}.gratitude-item>span:last-child{padding-top:4px}.home__footer{margin-top:14px}.week-nav{justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.week-nav__center{justify-items:center;gap:1px;display:grid}.week-nav__center strong{font-family:var(--font-display);font-size:13px;font-weight:800}.week-nav__center span{color:var(--muted);font-size:9px;font-weight:600}.week-strip{grid-template-columns:repeat(7,1fr);gap:4px;margin-top:10px;display:grid}.week-day{background:var(--surface);border:1px solid var(--line);border-radius:14px;justify-items:center;gap:1px;padding:7px 0 6px;transition:background .2s,color .2s,transform .16s;display:grid;position:relative}.week-day:active{transform:scale(.95)}.week-day__name{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:8px;font-weight:800}.week-day__number{font-family:var(--font-display);letter-spacing:-.03em;font-size:14px;font-weight:800}.week-day__dots{align-items:center;gap:2px;height:5px;display:flex}.week-day__dot{border-radius:50%;width:4px;height:4px}.week-day--today{border-color:#8e6fae59}.week-day--active{background:var(--gradient-primary);color:#fff;border-color:#0000;box-shadow:0 12px 24px -14px #7a5898cc}.week-day--active .week-day__name{color:#ffffffb8}.week-day--active .week-day__dot{background:#fffc!important}.plan-day{margin-top:18px}.plan-day__title{font-family:var(--font-display);letter-spacing:-.035em;margin:2px 0 0;font-size:19px;font-weight:800}.event-row{background:var(--surface);border:1px solid var(--line);text-align:left;border-radius:17px;align-items:center;gap:10px;width:100%;padding:10px 11px;transition:transform .15s;display:flex}.event-row:active{transform:scale(.99)}.event-row__check{border-radius:12px;flex:none;place-items:center;width:34px;height:34px;font-size:14px;font-weight:800;transition:background .2s;display:grid}.event-row__check--shift{color:#5c6b8a;background:#5c6b8a24}[data-theme=dark] .event-row__check--shift{color:#b9c4dd}.event-row__body{text-align:left;flex:1;gap:2px;min-width:0;display:grid}.event-row__title{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:700;line-height:1.25;overflow:hidden}.event-row__meta{color:var(--muted);align-items:center;gap:4px;font-size:9.5px;font-weight:600;display:flex}.event-row__side{flex:none;align-items:center;gap:1px;display:flex}.event-row--done .event-row__title{color:var(--muted);text-decoration:line-through}.event-row--done{opacity:.75}.event-row--shift{background:var(--surface-soft);border-style:dashed}.focus-editor{gap:10px;padding:18px;display:grid}.focus-editor__intro{font-family:var(--font-serif);color:#ffffffd1;margin:0 0 2px;font-size:13px;font-style:italic}.focus-editor__field{gap:3px;display:grid}.focus-editor__field>span{letter-spacing:.08em;text-transform:uppercase;color:#ffffff9e;font-size:9px;font-weight:800}.focus-editor__field textarea,.focus-editor__field input{color:#fff;resize:vertical;width:100%;min-height:40px;font-size:12px;line-height:1.4;font-family:var(--font-body);background:#ffffff1f;border:1px solid #ffffff24;border-radius:13px;outline:none;padding:9px 11px}.focus-editor__field textarea::placeholder,.focus-editor__field input::placeholder{color:#ffffff73}.focus-editor__field textarea:focus,.focus-editor__field input:focus{background:#ffffff29;border-color:#fff6}.focus-editor__foot{color:#ffffff9e;justify-content:space-between;align-items:center;display:flex}.focus-editor__foot .avatar{border-radius:6px;width:18px;height:18px;font-size:10px}.work-card{gap:12px;display:grid}.work-member{gap:6px;display:grid}.work-member+.work-member{border-top:1px solid var(--line);padding-top:11px}.work-member__head{align-items:center;gap:7px;font-size:11.5px;display:flex}.work-member__head strong{flex:1}.work-member__shifts{gap:4px;padding-left:34px;display:grid}.work-shift-chip{color:var(--ink-soft);background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;align-items:center;gap:8px;padding:5px 8px;font-size:10px;font-weight:600;display:flex}.work-shift-chip__days{color:var(--muted);min-width:70px;font-weight:800}.work-shift-chip button{color:var(--muted);margin-left:auto}.calendar-card{text-align:left;align-items:center;gap:11px;width:100%;display:flex}.calendar-card__icon{width:40px;height:40px;color:var(--violet);background:linear-gradient(140deg,#8e6fae26,#3fbfa01f);border-radius:13px;flex:none;place-items:center;display:grid}.calendar-card strong{font-size:12px;font-weight:800;display:block}.calendar-card p{color:var(--muted);margin:2px 0 0;font-size:9.5px;line-height:1.4}.reflection-cta{text-align:left;background:linear-gradient(150deg,#ffffffb3,#b7ead940);align-items:center;gap:11px;width:100%;display:flex}[data-theme=dark] .reflection-cta{background:linear-gradient(150deg,#ffffff0f,#3fbfa014)}.reflection-cta--done{background:linear-gradient(150deg,#ffffffb3,#ffe29538)}.reflection-cta__emoji{font-size:22px}.reflection-cta strong{font-size:12px;font-weight:800;display:block}.reflection-cta p{color:var(--muted);margin:2px 0 0;font-size:9.5px;line-height:1.4}.plan-footer-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px;display:flex}.weekday-picker{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.weekday-picker__btn{background:var(--surface-soft);border:1px solid var(--line);height:34px;color:var(--muted);border-radius:11px;font-size:9.5px;font-weight:800}.weekday-picker__btn--active{background:var(--gradient-primary);color:#fff;border-color:#0000}.reflection-progress{align-items:center;gap:5px;display:flex}.reflection-progress__dot{background:var(--ring-track);border-radius:50%;width:7px;height:7px}.reflection-progress__dot--active{background:var(--gradient-primary);border-radius:999px;width:22px}.reflection-progress__dot--done{background:var(--mint)}.reflection-progress__label{color:var(--muted);margin-left:auto;font-size:9px;font-weight:700}.reflection-question{gap:3px;display:grid}.reflection-question__emoji{font-size:27px}.reflection-question h3{font-family:var(--font-display);letter-spacing:-.035em;margin:0;font-size:20px;font-weight:800;line-height:1.2}.reflection-question p{letter-spacing:.1em;text-transform:uppercase;color:var(--violet);margin:0;font-size:9.5px;font-weight:800}.reflection-textarea{min-height:130px}.partner-answer{background:var(--surface-soft);border:1px dashed var(--line-strong);border-radius:14px;gap:8px;padding:10px 11px;display:flex}.partner-answer strong{margin-bottom:2px;font-size:9.5px;font-weight:800;display:block}.partner-answer p{color:var(--ink-soft);margin:0;font-size:11px;line-height:1.45}.pulse-summary{align-items:baseline;gap:7px;display:flex}.pulse-summary strong{font-family:var(--font-display);letter-spacing:-.05em;background:var(--gradient-primary);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:32px;font-weight:800}.pulse-summary span{color:var(--muted);font-size:10px;font-weight:600}.generator{padding:18px}.generator__head{justify-content:space-between;align-items:center;display:flex}.generator__badge{color:#fff;background:#ffffff29}.generator__result{align-items:flex-start;gap:12px;margin-top:10px;animation:.35s both pop-in;display:flex}.generator__emoji{border-radius:20px;flex:none;place-items:center;width:60px;height:60px;font-size:29px;display:grid;box-shadow:inset 0 1px #ffffff80}.generator__result h2{font-family:var(--font-display);letter-spacing:-.035em;margin:2px 0 5px;font-size:21px;font-weight:800;line-height:1.1}.generator__result p{color:#ffffffc7;margin:0;font-size:11px;line-height:1.5}.generator__meta{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.generator__meta span{background:#ffffff24;border:1px solid #ffffff1f;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:700}.generator__actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;display:flex}.generator__actions .btn--sm{min-height:34px}.generator__saved{color:#8e6fae!important;background:#ffffffe6!important}.search-box{background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:15px;align-items:center;gap:8px;margin:14px 0 9px;padding:0 12px;display:flex}.search-box input{min-width:0;height:44px;color:var(--ink);background:0 0;border:0;outline:none;flex:1;font-size:12px}.search-box__clear{background:var(--surface-soft);width:22px;height:22px;color:var(--muted);border-radius:7px;font-size:14px;line-height:1}.idea-list{gap:9px;display:grid}.idea-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:22px;gap:11px;padding:12px;animation:.3s both pop-in;display:flex}.idea-card__emoji{background:linear-gradient(145deg,#e2d8fb,#bca6f6);border-radius:17px;flex:none;place-items:center;width:52px;height:52px;font-size:25px;display:grid;box-shadow:inset 0 1px #ffffff80}.idea-card__emoji--violet{background:linear-gradient(145deg,#e4d7ef,#a487c4)}.idea-card__emoji--mint{background:linear-gradient(145deg,#cdf5e7,#7fdcbe)}.idea-card__emoji--peach{background:linear-gradient(145deg,#ffe4d4,#f7b08d)}.idea-card__emoji--sky{background:linear-gradient(145deg,#d6edff,#9cc6fb)}.idea-card__emoji--lemon{background:linear-gradient(145deg,#fff2b9,#f5d575)}.idea-card__emoji--rose{background:linear-gradient(145deg,#fbd9e5,#efa6c1)}.idea-card__body{flex:1;min-width:0}.idea-card h3{font-family:var(--font-display);letter-spacing:-.025em;flex:1;margin:1px 0 3px;font-size:14px;font-weight:800;line-height:1.2}.idea-card p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:10.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.idea-card__heart{width:27px;height:27px;color:var(--muted);border-radius:9px;flex:none;place-items:center;transition:color .2s,background .2s,transform .15s;display:grid}.idea-card__heart--active{color:var(--rose);background:#e88fb124}.idea-card__heart:active{transform:scale(.9)}.idea-card__meta{color:var(--muted);flex-wrap:wrap;gap:8px;margin-top:5px;font-size:9px;font-weight:600;display:flex}.idea-card__cats{color:var(--violet);opacity:.8}.idea-card__foot{justify-content:space-between;align-items:center;gap:6px;margin-top:9px;display:flex}.idea-card__foot .btn--sm{min-height:31px;font-size:10px}.idea-card__vote{color:var(--muted);align-items:center;gap:5px;font-size:9.5px;font-weight:700;display:inline-flex}.idea-card__vote--active{color:var(--rose)}.idea-card__vote .avatar{border-radius:7px;width:20px;height:20px;font-size:10px}.idea-card__savedby{gap:8px;margin-top:5px;display:flex}.idea-card--compact .idea-card__emoji{border-radius:15px;width:45px;height:45px;font-size:21px}.dates-footer{justify-content:center;align-items:center;gap:7px;margin-top:18px;padding-bottom:8px;display:flex}.add-idea-banner{text-align:left;background:linear-gradient(150deg,#ffffffb8,#b49bcb24);border:1px dashed #8e6fae6b;border-radius:18px;align-items:center;gap:10px;width:100%;margin:12px 0 2px;padding:11px 12px;display:flex}[data-theme=dark] .add-idea-banner{background:linear-gradient(150deg,#ffffff0d,#b49bcb1a);border-color:#b49bcb52}.add-idea-banner:active{transform:scale(.99)}.add-idea-banner__icon{background:var(--gradient-primary);color:#fff;border-radius:12px;flex:none;place-items:center;width:34px;height:34px;display:grid}.add-idea-banner strong{font-size:11.5px;font-weight:800;line-height:1.25;display:block}.add-idea-banner small{color:var(--muted);margin-top:1px;font-size:9.5px;line-height:1.35;display:block}.idea-card__badge{vertical-align:middle;height:17px;margin-left:6px;font-size:8px}.weekly-ritual{padding:18px}.weekly-ritual__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.weekly-ritual__title{font-family:var(--font-display);letter-spacing:-.035em;margin:7px 0 5px;font-size:20px;font-weight:800;line-height:1.15}.weekly-ritual p{color:#ffffffbf;margin:0 0 11px;font-size:10.5px;line-height:1.5}.ritual-check{display:inline-grid;position:relative}.ritual-check__tick{color:#fff;background:#3fbfa0;border:2px solid #6b4f86;border-radius:50%;place-items:center;width:15px;height:15px;display:grid;position:absolute;bottom:-3px;right:-3px}.reflection-pair{gap:9px;display:grid}.reflection-card{background:var(--surface);border:1px solid var(--line);border-radius:19px;padding:13px}.reflection-card>header{align-items:center;gap:6px;margin-bottom:8px;display:flex}.reflection-card>header strong{font-size:11px;font-weight:800}.reflection-card>header span:last-child{margin-left:auto}.reflection-card__field+.reflection-card__field{border-top:1px solid var(--line);margin-top:8px;padding-top:7px}.reflection-card__label{letter-spacing:.09em;text-transform:uppercase;color:var(--violet);margin-bottom:2px;font-size:8px;font-weight:800;display:block}.reflection-card__field p{color:var(--ink-soft);margin:0;font-size:11px;line-height:1.5}.mood-chart-card{padding:13px}.mood-chart-legend{flex-wrap:wrap;gap:10px;margin-top:2px;display:flex}.mood-chart-legend__now{opacity:.65}.mood-today-row{flex-wrap:wrap;align-items:center;gap:5px;margin-top:9px;display:flex}.mood-pill{height:23px;color:var(--violet);background:#8e6fae1a;border-radius:999px;align-items:center;gap:3px;padding:0 8px;font-size:9px;font-weight:700;display:inline-flex}.mood-pill--partner{color:#24856c;background:#3fbfa01f}[data-theme=dark] .mood-pill--partner{color:#7fe7c8}.habit-list{gap:9px;display:grid}.habit-section{gap:7px;display:grid}.habit-section__head{align-items:center;gap:7px;display:flex}.habit-section__head strong{flex:1;font-size:11.5px;font-weight:800}.habit{border-top:1px solid var(--line);padding-top:7px}.habit:first-of-type{border-top:0}.habit__head{align-items:flex-start;gap:7px;display:flex}.habit__emoji{font-size:17px;line-height:1.2}.habit__head strong{font-size:11px;font-weight:700;line-height:1.3;display:block}.habit__meta{color:var(--muted);align-items:center;gap:3px;font-size:8.5px;font-weight:600;display:flex}.habit__days{grid-template-columns:repeat(7,1fr);gap:3px;margin-top:6px;display:grid}.habit-day{background:var(--surface-soft);color:var(--muted);border:1px solid #0000;border-radius:9px;justify-items:center;gap:0;padding:4px 0 3px;display:grid;position:relative}.habit-day span{text-transform:uppercase;font-size:7px;font-weight:800}.habit-day strong{font-family:var(--font-display);color:var(--ink-soft);font-size:10.5px;font-weight:800}.habit-day svg{position:absolute;bottom:2px;right:2px}.habit-day--done{color:#fff;background:linear-gradient(150deg,#8ce8c9,#3fbfa0);border-color:#0000}.habit-day--done strong{color:#fff}.habit-day--today{box-shadow:0 0 0 1.5px #8e6fae66}.memory-strip{scrollbar-width:none;gap:8px;padding:2px 2px 8px;display:flex;overflow-x:auto}.memory-strip::-webkit-scrollbar{display:none}.memory-card{background:var(--surface-soft);border:1px solid var(--line);text-align:left;border-radius:17px;flex:none;width:146px;height:112px;position:relative;overflow:hidden}.memory-card img{object-fit:cover;width:100%;height:100%}.memory-card__caption{color:#fff;background:linear-gradient(#0000,#0f081ebf);padding:16px 8px 6px;font-size:9.5px;font-weight:700;line-height:1.2;position:absolute;bottom:0;left:0;right:0}.memory-card__heart{filter:drop-shadow(0 1px 2px #0000004d);font-size:12px;position:absolute;top:6px;right:6px}.memory-card--add{color:var(--muted);border-style:dashed;place-content:center;justify-items:center;gap:5px;font-size:9.5px;font-weight:700;display:grid}.gratitude-box{gap:9px;display:grid}.gratitude-feed{gap:7px;display:grid}.gratitude-feed__item{align-items:flex-start;gap:7px;display:flex}.gratitude-feed__item p{color:var(--ink-soft);flex:1;margin:2px 0 0;font-size:10.5px;line-height:1.45}.gratitude-feed__delete{width:18px;height:18px;color:var(--muted);border-radius:6px;flex:none;font-size:14px;line-height:1}.past-weeks{gap:7px;display:grid}.past-week{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden}.past-week__head{text-align:left;align-items:center;gap:9px;width:100%;padding:10px 12px;display:flex}.past-week__head>div:first-child{flex:1}.past-week__head strong{font-size:11px;font-weight:800;display:block}.past-week__head span{color:var(--muted);font-size:9px;font-weight:600}.past-week__body{padding:0 9px 9px}.journal-footer{color:var(--muted);justify-content:center;align-items:center;gap:5px;margin:20px 0 6px;font-size:9.5px;font-weight:600;display:flex}.journal-footer svg{color:var(--rose)}.us-tabs{margin-bottom:12px}.us-footer{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:18px;display:flex}.pulse-hero{padding:19px}.pulse-hero__content{align-items:center;gap:12px;display:flex}.pulse-hero__score{font-family:var(--font-display);letter-spacing:-.06em;margin:3px 0 0;font-size:43px;font-weight:800;line-height:1}.pulse-hero__score span{opacity:.6;letter-spacing:-.02em;font-size:15px;font-weight:700}.pulse-hero__label{color:#ffffffd9;margin:2px 0 0;font-size:12px;font-weight:700}.pulse-trend{background:#ffffff24;border-radius:999px;align-items:center;gap:3px;margin-top:7px;padding:4px 8px;font-size:9px;font-weight:700;display:inline-flex}.pulse-trend--down{background:#ffc8c829}.pulse-hero__people{border-top:1px solid #ffffff24;align-items:center;gap:10px;margin-top:13px;padding-top:11px;display:flex}.pulse-hero__people>div{color:#fffc;align-items:center;gap:5px;font-size:9px;font-weight:700;display:flex}.pulse-hero__people .btn{margin-left:auto}.aspect-list{gap:9px;margin-top:6px;display:grid}.aspect-row{gap:4px;display:grid}.aspect-row--low{background:#f2c94c1a;border:1px solid #f2c94c2e;border-radius:12px;margin:0 -2px;padding:7px 9px}.aspect-row__head{justify-content:space-between;align-items:center;display:flex}.aspect-row__label{font-size:10.5px;font-weight:700}.aspect-row__value{font-family:var(--font-display);font-size:11px;font-weight:800}.aspect-row__flag{color:#a97c1c;letter-spacing:.02em;font-size:8px;font-weight:700}[data-theme=dark] .aspect-row__flag{color:#f2d98a}.aspect-row .dual-bar{gap:2px}.aspect-row .dual-bar__row{gap:5px}.aspect-row .dual-bar__track{height:4px}.tips-card{padding:17px}.tips-card .tile__title{color:#3b2c10;margin-top:4px}.tip-block{margin-top:10px}.tip-block strong{color:#3b2c10;font-size:11px;font-weight:800}.tip-block ul{color:#3b2c10c7;margin:4px 0 0;padding-left:16px;font-size:10px;line-height:1.5}.tip-block li+li{margin-top:3px}.partner-note{gap:9px;display:flex}.partner-note strong{font-size:10px;font-weight:800}.partner-note p{color:var(--ink-soft);margin:2px 0 0;font-size:11px;line-height:1.5}.chat-panel{padding:12px}.chat-head{justify-content:space-between;align-items:center;gap:8px;padding:2px 3px 9px;display:flex}.chat-head .tile__title{font-size:15px}.chat-scroll{scroll-behavior:smooth;flex-direction:column;gap:4px;height:min(50vh,380px);min-height:230px;padding:3px 2px 8px;display:flex;overflow-y:auto}.chat-empty{text-align:center;color:var(--muted);justify-items:center;gap:7px;margin:auto;padding:24px;display:grid}.chat-empty p{max-width:220px;margin:0;font-size:11px;line-height:1.5}.chat-day{background:var(--surface-soft);border:1px solid var(--line);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-radius:999px;align-self:center;margin:7px 0 3px;padding:3px 9px;font-size:8px;font-weight:800}.chat-row{align-items:flex-end;gap:6px;max-width:100%;display:flex}.chat-row--mine{justify-content:flex-end}.chat-bubble{background:var(--surface-soft);border:1px solid var(--line);border-radius:16px 16px 16px 5px;max-width:80%;padding:8px 11px 5px;position:relative}.chat-bubble--mine{background:var(--gradient-primary);color:#fff;border:0;border-radius:16px 16px 5px;box-shadow:0 12px 24px -16px #7a5898cc}.chat-bubble p{word-break:break-word;white-space:pre-wrap;margin:0;font-size:11.5px;line-height:1.45}.chat-bubble__time{text-align:right;opacity:.5;margin-top:2px;font-size:7.5px;display:block}.chat-bubble--idea{background:var(--surface-solid);border:1px solid var(--line);color:var(--ink);max-width:92%;padding:7px}.chat-idea{align-items:center;gap:8px;display:flex}.chat-idea__emoji{background:linear-gradient(145deg,#e4d7ef,#a487c4);border-radius:11px;flex:none;place-items:center;width:34px;height:34px;font-size:17px;display:grid}.chat-idea strong{font-size:10.5px;font-weight:800;line-height:1.25;display:block}.chat-idea small{color:var(--muted);margin-top:1px;font-size:8px;display:block}.chat-idea .btn{background:var(--gradient-primary);color:#fff;min-height:28px;padding:0 9px;font-size:8.5px}.chat-quick{scrollbar-width:none;gap:4px;padding:6px 1px;display:flex;overflow-x:auto}.chat-quick::-webkit-scrollbar{display:none}.chat-composer{background:var(--surface-soft);border:1px solid var(--line);border-radius:17px;align-items:center;gap:5px;padding:4px;display:flex}.chat-composer .input{background:0 0;border:0;min-height:38px;padding:6px 4px;font-size:12px}.chat-composer .input:focus{box-shadow:none}.chat-send{background:var(--gradient-primary);color:#fff;border-radius:13px;flex:none;place-items:center;width:38px;height:38px;transition:opacity .2s,transform .15s;display:grid}.chat-send:disabled{opacity:.4}.chat-send:active{transform:scale(.94)}.chat-hint{text-align:center;margin:7px 0 0}.goals-hero{align-items:center;gap:10px;padding:18px;display:flex}.goals-hero__title{font-family:var(--font-display);letter-spacing:-.05em;margin:4px 0;font-size:30px;font-weight:800;line-height:1}.goals-hero p{color:#ffffffc7;margin:0;font-size:10px;line-height:1.45}.goal-row{background:var(--surface);border:1px solid var(--line);border-radius:17px;align-items:flex-start;gap:9px;padding:11px;display:flex}.goal-row__check{border:1.5px solid var(--line-strong);color:#fff;border-radius:8px;flex:none;place-items:center;width:25px;height:25px;margin-top:1px;display:grid}.goal-row--done .goal-row__check{background:var(--gradient-mint);border-color:#0000}.goal-row strong{font-size:11.5px;font-weight:700;line-height:1.35;display:block}.goal-row p{color:var(--muted);margin:2px 0;font-size:9.5px;line-height:1.4}.goal-row--done strong{color:var(--muted);text-decoration:line-through}.map-card{border:1px solid var(--line);background:var(--surface-soft);box-shadow:var(--shadow);z-index:0;border-radius:24px;position:relative;overflow:hidden}.map-canvas{background:#e8e4f0;width:100%;height:44vh;min-height:280px}[data-theme=dark] .map-canvas{background:#1a1528}.map-card--dark .leaflet-tile-pane{filter:invert(.92)hue-rotate(185deg)brightness(.85)contrast(.95)}.leaflet-container{font-family:var(--font-body)!important}.leaflet-control-attribution{background:#ffffff8c!important;font-size:8px!important}.leaflet-control-zoom a{color:#3a2a66!important;border-radius:8px!important}.map-empty{text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--ink);background:#ffffff80;place-content:center;justify-items:center;gap:4px;padding:20px;display:grid;position:absolute;inset:0}[data-theme=dark] .map-empty{background:#0c09188c}.map-empty strong{font-size:12px}.map-empty span{color:var(--muted);max-width:200px;font-size:10px;line-height:1.4}.map-pin-wrap{background:0 0;border:0}.map-pin{background:var(--gradient-primary);border:2px solid #fff;border-radius:50% 50% 50% 12px;place-items:center;width:38px;height:38px;display:grid;transform:rotate(-45deg);box-shadow:0 8px 20px -6px #1e0f4680}.map-pin span{font-size:17px;transform:rotate(45deg)}.map-pin--me{animation:3s ease-in-out infinite breathe}.map-pin--mint{background:var(--gradient-mint)}.map-pin--peach{background:var(--gradient-peach)}.map-pin--sky{background:var(--gradient-sky)}.map-pin--rose{background:var(--gradient-rose)}.map-pin--lemon{background:var(--gradient-lemon)}.map-distance{align-items:center;gap:9px;margin-top:10px;display:flex}.map-distance__icon{width:36px;height:36px;color:var(--violet);background:#8e6fae1f;border-radius:12px;flex:none;place-items:center;display:grid}.map-distance strong{font-size:11.5px;font-weight:800;display:block}.location-list{gap:4px;margin-top:10px;display:grid}.location-row{border-top:1px solid var(--line);align-items:center;gap:9px;padding:7px 0;display:flex}.location-row strong{align-items:center;gap:4px;font-size:11px;font-weight:700;display:flex}.location-row p{color:var(--muted);margin:1px 0 0;font-size:9.5px}.location-dot{background:var(--ring-track);border-radius:50%;width:8px;height:8px}.location-dot--on{background:#3fbfa0;box-shadow:0 0 0 3px #3fbfa029}.map-screen .tile:not(.map-distance),.map-screen .security-note{margin-top:10px}.settings-section{margin-bottom:18px}.settings-section__title{font-family:var(--font-display);letter-spacing:-.01em;margin:0 3px 7px;font-size:13px;font-weight:800}.settings-card{gap:11px;display:grid}.profile-editor{border-top:1px solid var(--line);align-items:flex-start;gap:9px;padding-top:9px;display:flex}.profile-editor .input{min-height:40px;padding:8px 11px;font-size:12.5px}.theme-picker{grid-template-columns:1fr 1fr;gap:7px;display:grid}.theme-option{border:1px solid var(--line);background:var(--surface-soft);text-align:left;border-radius:15px;align-items:center;gap:7px;padding:8px;font-size:10px;font-weight:700;display:flex}.theme-option--active{background:#8e6fae14;border-color:#8e6fae73}.theme-option>svg{color:var(--violet);margin-left:auto}.theme-option__preview{border-radius:10px;flex:none;place-items:center;width:32px;height:32px;display:grid}.theme-option__preview--light{color:#75578f;background:linear-gradient(145deg,#f6f3fb,#ddd2f3)}.theme-option__preview--dark{color:#e0d0ee;background:linear-gradient(145deg,#2a2147,#0e0b1a)}.sync-status-card--on{background:linear-gradient(155deg,#ffffffb3,#b7ead92e)}[data-theme=dark] .sync-status-card--on{background:linear-gradient(155deg,#ffffff0f,#3fbfa014)}.sync-status-card__room{background:var(--surface-soft);border:1px dashed var(--line-strong);border-radius:13px;gap:2px;padding:9px 11px;display:grid}.sync-status-card__room strong{font-family:var(--font-display);letter-spacing:.06em;font-size:17px;font-weight:800}.settings-row{cursor:pointer;align-items:center;gap:9px;display:flex}.settings-row--muted{opacity:.75;cursor:default}.settings-row__icon{background:var(--surface-soft);border-radius:11px;flex:none;place-items:center;width:34px;height:34px;font-size:16px;display:grid}.settings-row strong{font-size:11.5px;font-weight:800;display:block}.settings-row p{color:var(--muted);margin:1px 0 0;font-size:9.5px;line-height:1.4}.feedback-list{gap:8px;display:grid}.feedback-item{border-top:1px solid var(--line);align-items:flex-start;gap:7px;padding:8px 0;display:flex}.feedback-item p{color:var(--ink-soft);margin:2px 0 0;font-size:10.5px;line-height:1.45}.settings-about{text-align:center;color:var(--muted);justify-items:center;gap:3px;margin:18px 0 8px;font-size:9.5px;display:grid}.settings-about svg{color:var(--rose)}.level-hero{padding:18px}.level-hero__name{font-family:var(--font-display);letter-spacing:-.04em;margin:4px 0 2px;font-size:24px;font-weight:800}.level-hero__points{color:#ffffffb8;margin:0;font-size:10.5px}.achievement-summary{grid-template-columns:repeat(3,1fr);gap:7px;margin:10px 0;display:grid}.achievement-summary .tile{text-align:center;justify-items:center;gap:2px;padding:11px 4px;display:grid}.achievement-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.achievement-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;gap:3px;padding:12px;display:grid;position:relative;overflow:hidden}.achievement-card--unlocked{background:linear-gradient(150deg,#ffffffbf,#c9b8f52e)}[data-theme=dark] .achievement-card--unlocked{background:linear-gradient(150deg,#ffffff14,#8e6fae1f)}.achievement-card--locked{opacity:.52;filter:grayscale(.6)}.achievement-card__emoji{margin-bottom:2px;font-size:22px}.achievement-card strong{font-size:11px;font-weight:800;line-height:1.2}.achievement-card p{color:var(--muted);margin:0;font-size:8.5px;line-height:1.35}.achievement-card__progress{align-items:center;gap:5px;margin-top:5px;display:flex}.achievement-card__progress .progress{flex:1;height:4px}.points-guide{gap:0;margin-top:8px;display:grid}.points-guide__row{color:#3b2c10cc;border-top:1px solid #3b2c101f;align-items:center;gap:7px;padding:5px 0;font-size:10px;display:flex}.points-guide__row strong{color:#3b2c10;font-size:10px}.achievements-footer{color:var(--muted);justify-content:center;align-items:center;gap:5px;margin:18px 0 8px;font-size:9.5px;display:flex}.memory-view{object-fit:contain;background:var(--surface-soft);border-radius:18px;width:100%;max-height:52vh}.memory-upload{border:1.5px dashed var(--line-strong);background:var(--surface-soft);width:100%;min-height:170px;color:var(--muted);border-radius:20px;place-content:center;justify-items:center;gap:4px;display:grid;position:relative;overflow:hidden}.memory-upload strong{color:var(--ink);font-size:12px}.memory-upload span{font-size:9.5px}.memory-upload--filled{border:0;padding:0}.memory-upload--filled img{object-fit:cover;width:100%;max-height:300px}.memory-upload__change{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#140a28a6;border-radius:999px;padding:5px 10px;font-weight:700;position:absolute;bottom:10px;right:10px;color:#fff!important}.connected-card{background:var(--surface-soft);border:1px solid var(--line);border-radius:19px;gap:8px;padding:14px;display:grid}.connected-card--online{background:linear-gradient(150deg,#3fbfa01f,#8e6fae14);border-color:#3fbfa038}.room-code-big{font-family:var(--font-display);letter-spacing:.1em;margin:-2px 0 2px;font-size:27px;font-weight:800}.howto{gap:7px;display:grid}.howto__step{align-items:flex-start;gap:8px;display:flex}.howto__step>span{width:18px;height:18px;color:var(--violet);background:#8e6fae24;border-radius:6px;flex:none;place-items:center;margin-top:1px;font-size:9px;font-weight:800;display:grid}.howto__step p{color:var(--muted);margin:0;font-size:10.5px;line-height:1.45}.howto__step strong{color:var(--ink-soft);font-weight:700}.howto code{background:var(--surface-soft);border:1px solid var(--line);border-radius:4px;padding:1px 4px;font-size:9.5px}.calendar-summary{align-items:center;gap:10px;display:flex}.calendar-summary__icon{width:44px;height:44px;color:var(--violet);background:linear-gradient(145deg,#8e6fae2e,#3fbfa024);border-radius:14px;flex:none;place-items:center;display:grid}.calendar-summary strong{font-size:12px;font-weight:800;display:block}.calendar-summary p{color:var(--muted);margin:2px 0 0;font-size:9.5px;line-height:1.4}.calendar-events{gap:3px;display:grid}.calendar-event{background:var(--surface-soft);text-align:left;color:var(--ink-soft);border-radius:11px;align-items:center;gap:8px;padding:7px 9px;font-size:10px;display:flex}.calendar-event__date{color:var(--violet);min-width:48px;font-size:8.5px;font-weight:800}.import-preview{background:#3fbfa014;border:1px solid #3fbfa02e;border-radius:15px;gap:7px;padding:11px;display:grid}.import-preview__list{gap:3px;display:grid}.import-preview__row{color:var(--ink-soft);align-items:center;gap:6px;font-size:10px;display:flex}.chip--active .avatar{box-shadow:0 0 0 1px #ffffff80}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=360px){.home__greeting{font-size:24px}.onboard__copy h1{font-size:35px}.onboard__copy h1 span{font-size:31px}.hero__level-name{font-size:20px}}
