@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.0-BHUkWNFR.woff2)format("woff2-variations");unicode-range:U+F9CA-FA0B,U+FF03-FF05,U+FF07,U+FF0A-FF0B,U+FF0D-FF19,U+FF1B,U+FF1D,U+FF20-FF5B,U+FF5D,U+FFE0-FFE3,U+FFE5-FFE6}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.1-C-__qv6_.woff2)format("woff2-variations");unicode-range:U+D723-D728,U+D72A-D733,U+D735-D748,U+D74A-D74F,U+D752-D753,U+D755-D757,U+D75A-D75F,U+D762-D764,U+D766-D768,U+D76A-D76B,U+D76D-D76F,U+D771-D787,U+D789-D78B,U+D78D-D78F,U+D791-D797,U+D79A,U+D79C,U+D79E-D7A3,U+F900-F909,U+F90B-F92E}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.2-dCZkyKLw.woff2)format("woff2-variations");unicode-range:U+D679-D68B,U+D68E-D69E,U+D6A0,U+D6A2-D6A7,U+D6A9-D6C3,U+D6C6-D6C7,U+D6C9-D6CB,U+D6CD-D6D3,U+D6D5-D6D6,U+D6D8-D6E3,U+D6E5-D6E7,U+D6E9-D6FB,U+D6FD-D717,U+D719-D71F,U+D721-D722}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.3-Dqw33sf4.woff2)format("woff2-variations");unicode-range:U+D5BC-D5C7,U+D5CA-D5CB,U+D5CD-D5CF,U+D5D1-D5D7,U+D5D9-D5DA,U+D5DC,U+D5DE-D5E3,U+D5E6-D5E7,U+D5E9-D5EB,U+D5ED-D5F6,U+D5F8,U+D5FA-D5FF,U+D602-D603,U+D605-D607,U+D609-D60F,U+D612-D613,U+D616-D61B,U+D61D-D637,U+D63A-D63B,U+D63D-D63F,U+D641-D647,U+D64A-D64C,U+D64E-D653,U+D656-D657,U+D659-D65B,U+D65D-D666,U+D668,U+D66A-D678}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.4-Bvh2YGoc.woff2)format("woff2-variations");unicode-range:U+D507,U+D509-D50B,U+D50D-D513,U+D515-D53B,U+D53E-D53F,U+D541-D543,U+D545-D54C,U+D54E,U+D550,U+D552-D557,U+D55A-D55B,U+D55D-D55F,U+D561-D564,U+D566-D567,U+D56A,U+D56C,U+D56E-D573,U+D576-D577,U+D579-D583,U+D585-D586,U+D58A-D5A4,U+D5A6-D5BB}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.5-K_MNGNCe.woff2)format("woff2-variations");unicode-range:U+D464-D477,U+D47A-D47B,U+D47D-D47F,U+D481-D487,U+D489-D48A,U+D48C,U+D48E-D4E7,U+D4E9-D503,U+D505-D506}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.6-Bxhohlcm.woff2)format("woff2-variations");unicode-range:U+D3BF-D3C7,U+D3CA-D3CF,U+D3D1-D3EB,U+D3EE-D3EF,U+D3F1-D3F3,U+D3F5-D3FB,U+D3FD-D400,U+D402-D45B,U+D45D-D463}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.7-E2HaA55t.woff2)format("woff2-variations");unicode-range:U+D2FF,U+D302-D304,U+D306-D30B,U+D30F,U+D311-D313,U+D315-D31B,U+D31E,U+D322-D324,U+D326-D327,U+D32A-D32B,U+D32D-D32F,U+D331-D337,U+D339-D33C,U+D33E-D37B,U+D37E-D37F,U+D381-D383,U+D385-D38B,U+D38E-D390,U+D392-D397,U+D39A-D39B,U+D39D-D39F,U+D3A1-D3A7,U+D3A9-D3AA,U+D3AC,U+D3AE-D3B3,U+D3B5-D3B7,U+D3B9-D3BB,U+D3BD-D3BE}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.8-CRbJhhyA.woff2)format("woff2-variations");unicode-range:U+D257-D27F,U+D281-D29B,U+D29D-D29F,U+D2A1-D2AB,U+D2AD-D2B7,U+D2BA-D2BB,U+D2BD-D2BF,U+D2C1-D2C7,U+D2C9-D2EF,U+D2F2-D2F3,U+D2F5-D2F7,U+D2F9-D2FE}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.9-Btb3bmS6.woff2)format("woff2-variations");unicode-range:U+D1B4,U+D1B6-D1F3,U+D1F5-D22B,U+D22E-D22F,U+D231-D233,U+D235-D23B,U+D23D-D240,U+D242-D256}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.10-DzSWztS8.woff2)format("woff2-variations");unicode-range:U+D105-D12F,U+D132-D133,U+D135-D137,U+D139-D13F,U+D141-D142,U+D144,U+D146-D14B,U+D14E-D14F,U+D151-D153,U+D155-D15B,U+D15E-D187,U+D189-D19F,U+D1A2-D1A3,U+D1A5-D1A7,U+D1A9-D1AF,U+D1B2-D1B3}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.11-CqVmlKJn.woff2)format("woff2-variations");unicode-range:U+D04B-D04F,U+D051-D057,U+D059-D06B,U+D06D-D06F,U+D071-D073,U+D075-D07B,U+D07E-D0A3,U+D0A6-D0A7,U+D0A9-D0AB,U+D0AD-D0B3,U+D0B6,U+D0B8,U+D0BA-D0BF,U+D0C2-D0C3,U+D0C5-D0C7,U+D0C9-D0CF,U+D0D2,U+D0D6-D0DB,U+D0DE-D0DF,U+D0E1-D0E3,U+D0E5-D0EB,U+D0EE-D0F0,U+D0F2-D104}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.12-BHuZSgT0.woff2)format("woff2-variations");unicode-range:U+CFA2-CFC3,U+CFC5-CFDF,U+CFE2-CFE3,U+CFE5-CFE7,U+CFE9-CFF4,U+CFF6-CFFB,U+CFFD-CFFF,U+D001-D003,U+D005-D017,U+D019-D033,U+D036-D037,U+D039-D03B,U+D03D-D04A}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.13-C42mj_j2.woff2)format("woff2-variations");unicode-range:U+CEF0-CEF3,U+CEF6,U+CEF9-CEFF,U+CF01-CF03,U+CF05-CF07,U+CF09-CF0F,U+CF11-CF12,U+CF14-CF1B,U+CF1D-CF1F,U+CF21-CF2F,U+CF31-CF53,U+CF56-CF57,U+CF59-CF5B,U+CF5D-CF63,U+CF66,U+CF68,U+CF6A-CF6F,U+CF71-CF84,U+CF86-CF8B,U+CF8D-CFA1}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.14-Bl512uUX.woff2)format("woff2-variations");unicode-range:U+CE3C-CE57,U+CE5A-CE5B,U+CE5D-CE5F,U+CE61-CE67,U+CE6A,U+CE6C,U+CE6E-CE73,U+CE76-CE77,U+CE79-CE7B,U+CE7D-CE83,U+CE85-CE88,U+CE8A-CE8F,U+CE91-CE93,U+CE95-CE97,U+CE99-CE9F,U+CEA2,U+CEA4-CEAB,U+CEAD-CEE3,U+CEE6-CEE7,U+CEE9-CEEB,U+CEED-CEEF}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.15-D04iXIE3.woff2)format("woff2-variations");unicode-range:U+CD92-CD93,U+CD96-CD97,U+CD99-CD9B,U+CD9D-CDA3,U+CDA6-CDA8,U+CDAA-CDAF,U+CDB1-CDC3,U+CDC5-CDCB,U+CDCD-CDE7,U+CDE9-CE03,U+CE05-CE1F,U+CE22-CE34,U+CE36-CE3B}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.16-BQUnS2GX.woff2)format("woff2-variations");unicode-range:U+CCEF-CD07,U+CD0A-CD0B,U+CD0D-CD1A,U+CD1C,U+CD1E-CD2B,U+CD2D-CD5B,U+CD5D-CD77,U+CD79-CD91}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.17-BfZSA-Xc.woff2)format("woff2-variations");unicode-range:U+CC3F-CC43,U+CC46-CC47,U+CC49-CC4B,U+CC4D-CC53,U+CC55-CC58,U+CC5A-CC5F,U+CC61-CC97,U+CC9A-CC9B,U+CC9D-CC9F,U+CCA1-CCA7,U+CCAA,U+CCAC,U+CCAE-CCB3,U+CCB6-CCB7,U+CCB9-CCBB,U+CCBD-CCCF,U+CCD1-CCE3,U+CCE5-CCEE}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.18-CwAxMC3C.woff2)format("woff2-variations");unicode-range:U+CB91-CBD3,U+CBD5-CBE3,U+CBE5-CC0B,U+CC0E-CC0F,U+CC11-CC13,U+CC15-CC1B,U+CC1D-CC20,U+CC23-CC27,U+CC2A-CC2B,U+CC2D,U+CC2F,U+CC31-CC37,U+CC3A,U+CC3C}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.19-CJu4Zcdo.woff2)format("woff2-variations");unicode-range:U+CAF4-CB47,U+CB4A-CB90}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.20-Ig1-z3n5.woff2)format("woff2-variations");unicode-range:U+CA4A-CA4B,U+CA4E-CA4F,U+CA51-CA53,U+CA55-CA5B,U+CA5D-CA60,U+CA62-CA83,U+CA85-CABB,U+CABE-CABF,U+CAC1-CAC3,U+CAC5-CACB,U+CACD-CAD0,U+CAD2,U+CAD4-CAD8,U+CADA-CAF3}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.21-yKPEdLXC.woff2)format("woff2-variations");unicode-range:U+C996-C997,U+C99A-C99C,U+C99E-C9BF,U+C9C2-C9C3,U+C9C5-C9C7,U+C9C9-C9CF,U+C9D2,U+C9D4,U+C9D7-C9D8,U+C9DB,U+C9DE-C9DF,U+C9E1-C9E3,U+C9E5-C9E6,U+C9E8-C9EB,U+C9EE-C9F0,U+C9F2-C9F7,U+C9F9-CA0B,U+CA0D-CA28,U+CA2A-CA49}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.22-CSqxKoOs.woff2)format("woff2-variations");unicode-range:U+C8E9-C8F4,U+C8F6-C8FB,U+C8FE-C8FF,U+C901-C903,U+C905-C90B,U+C90E-C910,U+C912-C917,U+C919-C92B,U+C92D-C94F,U+C951-C953,U+C955-C96B,U+C96D-C973,U+C975-C987,U+C98A-C98B,U+C98D-C98F,U+C991-C995}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.23-DK80wi0t.woff2)format("woff2-variations");unicode-range:U+C841-C84B,U+C84D-C86F,U+C872-C873,U+C875-C877,U+C879-C87F,U+C882-C884,U+C887-C88A,U+C88D-C8C3,U+C8C5-C8DF,U+C8E1-C8E8}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.24-CmkE8Q8D.woff2)format("woff2-variations");unicode-range:U+C779-C77B,U+C77E-C782,U+C786,U+C78B,U+C78D,U+C78F,U+C792-C793,U+C795,U+C797,U+C799-C79F,U+C7A2,U+C7A7-C7AB,U+C7AE-C7BB,U+C7BD-C7C0,U+C7C2-C7C7,U+C7C9-C7DC,U+C7DE-C7FF,U+C802-C803,U+C805-C807,U+C809,U+C80B-C80F,U+C812,U+C814,U+C817-C81B,U+C81E-C81F,U+C821-C823,U+C825-C82E,U+C830-C837,U+C839-C83B,U+C83D-C840}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.25-CsoWBIZB.woff2)format("woff2-variations");unicode-range:U+C6BB-C6BF,U+C6C2,U+C6C4,U+C6C6-C6CB,U+C6CE-C6CF,U+C6D1-C6D3,U+C6D5-C6DB,U+C6DD-C6DF,U+C6E1-C6E7,U+C6E9-C6EB,U+C6ED-C6EF,U+C6F1-C6F8,U+C6FA-C703,U+C705-C707,U+C709-C70B,U+C70D-C716,U+C718,U+C71A-C71F,U+C722-C723,U+C725-C727,U+C729-C734,U+C736-C73B,U+C73E-C73F,U+C741-C743,U+C745-C74B,U+C74E-C750,U+C752-C757,U+C759-C773,U+C776-C777}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.26-Sozl8dw8.woff2)format("woff2-variations");unicode-range:U+C5F5-C5FB,U+C5FE,U+C602-C605,U+C607,U+C609-C60F,U+C611-C61A,U+C61C-C623,U+C626-C627,U+C629-C62B,U+C62D,U+C62F-C632,U+C636,U+C638,U+C63A-C63F,U+C642-C643,U+C645-C647,U+C649-C652,U+C656-C65B,U+C65D-C65F,U+C661-C663,U+C665-C677,U+C679-C67B,U+C67D-C693,U+C696-C697,U+C699-C69B,U+C69D-C6A3,U+C6A6,U+C6A8,U+C6AA-C6AF,U+C6B2-C6B3,U+C6B5-C6B7,U+C6B9-C6BA}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.27-CT6nuW9L.woff2)format("woff2-variations");unicode-range:U+C517-C527,U+C52A-C52B,U+C52D-C52F,U+C531-C538,U+C53A,U+C53C,U+C53E-C543,U+C546-C547,U+C54B,U+C54D-C552,U+C556,U+C55A-C55B,U+C55D,U+C55F,U+C562-C563,U+C565-C567,U+C569-C56F,U+C572,U+C574,U+C576-C57B,U+C57E-C57F,U+C581-C583,U+C585-C586,U+C588-C58B,U+C58E,U+C590,U+C592-C596,U+C599-C5B3,U+C5B6-C5B7,U+C5BA,U+C5BE-C5C3,U+C5CA-C5CB,U+C5CD,U+C5CF,U+C5D2-C5D3,U+C5D5-C5D7,U+C5D9-C5DF,U+C5E1-C5E2,U+C5E4,U+C5E6-C5EB,U+C5EF,U+C5F1-C5F3}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.28-CpO0Y96p.woff2)format("woff2-variations");unicode-range:U+C475-C4EF,U+C4F2-C4F3,U+C4F5-C4F7,U+C4F9-C4FF,U+C502-C50B,U+C50D-C516}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.29-D6hjrUWm.woff2)format("woff2-variations");unicode-range:U+C3D0-C3D7,U+C3DA-C3DB,U+C3DD-C3DE,U+C3E1-C3EC,U+C3EE-C3F3,U+C3F5-C42B,U+C42D-C463,U+C466-C474}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.30-CWDM1c0J.woff2)format("woff2-variations");unicode-range:U+C32B-C367,U+C36A-C36B,U+C36D-C36F,U+C371-C377,U+C37A-C37B,U+C37E-C383,U+C385-C387,U+C389-C3CF}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.31-CdmyZ5mm.woff2)format("woff2-variations");unicode-range:U+C26A-C26B,U+C26D-C26F,U+C271-C273,U+C275-C27B,U+C27E-C287,U+C289-C28F,U+C291-C297,U+C299-C29A,U+C29C-C2A3,U+C2A5-C2A7,U+C2A9-C2AB,U+C2AD-C2B3,U+C2B6,U+C2B8,U+C2BA-C2BB,U+C2BD-C2DB,U+C2DE-C2DF,U+C2E1-C2E2,U+C2E5-C2EA,U+C2EE,U+C2F0,U+C2F2-C2F5,U+C2F7,U+C2FA-C2FB,U+C2FD-C2FF,U+C301-C307,U+C309-C30C,U+C30E-C312,U+C315-C323,U+C325-C328,U+C32A}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.32-CGnFWD2i.woff2)format("woff2-variations");unicode-range:U+C1BC-C1C3,U+C1C5-C1DF,U+C1E1-C1FB,U+C1FD-C203,U+C205-C20C,U+C20E,U+C210-C217,U+C21A-C21B,U+C21D-C21E,U+C221-C227,U+C229-C22A,U+C22C,U+C22E,U+C230,U+C233-C24F,U+C251-C257,U+C259-C269}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.33--0OT__YQ.woff2)format("woff2-variations");unicode-range:U+C101-C11B,U+C11F,U+C121-C123,U+C125-C12B,U+C12E,U+C132-C137,U+C13A-C13B,U+C13D-C13F,U+C141-C147,U+C14A,U+C14C-C153,U+C155-C157,U+C159-C15B,U+C15D-C166,U+C169-C16F,U+C171-C177,U+C179-C18B,U+C18E-C18F,U+C191-C193,U+C195-C19B,U+C19D-C19E,U+C1A0,U+C1A2-C1A4,U+C1A6-C1BB}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.34-CaCS33Md.woff2)format("woff2-variations");unicode-range:U+C049-C057,U+C059-C05B,U+C05D-C05F,U+C061-C067,U+C069-C08F,U+C091-C0AB,U+C0AE-C0AF,U+C0B1-C0B3,U+C0B5,U+C0B7-C0BB,U+C0BE,U+C0C2-C0C7,U+C0CA-C0CB,U+C0CD-C0CF,U+C0D1-C0D7,U+C0D9-C0DA,U+C0DC,U+C0DE-C0E3,U+C0E5-C0EB,U+C0ED-C0F3,U+C0F6,U+C0F8,U+C0FA-C0FF}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.35-DWFYRGLp.woff2)format("woff2-variations");unicode-range:U+BFA7-BFAF,U+BFB1-BFC4,U+BFC6-BFCB,U+BFCE-BFCF,U+BFD1-BFD3,U+BFD5-BFDB,U+BFDD-C048}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.36-Dn5IBRQB.woff2)format("woff2-variations");unicode-range:U+BF07,U+BF09-BF3F,U+BF41-BF4F,U+BF52-BF54,U+BF56-BFA6}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.37-BD6FyOtY.woff2)format("woff2-variations");unicode-range:U+BE56,U+BE58,U+BE5C-BE5F,U+BE62-BE63,U+BE65-BE67,U+BE69-BE74,U+BE76-BE7B,U+BE7E-BE7F,U+BE81-BE8E,U+BE90,U+BE92-BEA7,U+BEA9-BECF,U+BED2-BED3,U+BED5-BED6,U+BED9-BEE3,U+BEE6-BF06}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.38-D4hu443z.woff2)format("woff2-variations");unicode-range:U+BDB0-BDD3,U+BDD5-BDEF,U+BDF1-BE0B,U+BE0D-BE0F,U+BE11-BE13,U+BE15-BE43,U+BE46-BE47,U+BE49-BE4B,U+BE4D-BE53}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.39-B_7wfth9.woff2)format("woff2-variations");unicode-range:U+BD03,U+BD06,U+BD08,U+BD0A-BD0F,U+BD11-BD22,U+BD25-BD47,U+BD49-BD58,U+BD5A-BD7F,U+BD82-BD83,U+BD85-BD87,U+BD8A-BD8F,U+BD91-BD92,U+BD94,U+BD96-BD98,U+BD9A-BDAF}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.40-BDaOfdUe.woff2)format("woff2-variations");unicode-range:U+BC4E-BC83,U+BC86-BC87,U+BC89-BC8B,U+BC8D-BC93,U+BC96,U+BC98,U+BC9B-BC9F,U+BCA2-BCA3,U+BCA5-BCA7,U+BCA9-BCB2,U+BCB4-BCBB,U+BCBE-BCBF,U+BCC1-BCC3,U+BCC5-BCCC,U+BCCE-BCD0,U+BCD2-BCD4,U+BCD6-BCF3,U+BCF7,U+BCF9-BCFB,U+BCFD-BD02}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.41-BUACvzZC.woff2)format("woff2-variations");unicode-range:U+BB90-BBA3,U+BBA5-BBAB,U+BBAD-BBBF,U+BBC1-BBF7,U+BBFA-BBFB,U+BBFD-BBFE,U+BC01-BC07,U+BC09-BC0A,U+BC0E,U+BC10,U+BC12-BC13,U+BC17,U+BC19-BC1A,U+BC1E,U+BC20-BC23,U+BC26,U+BC28,U+BC2A-BC2C,U+BC2E-BC2F,U+BC32-BC33,U+BC35-BC37,U+BC39-BC3F,U+BC41-BC42,U+BC44,U+BC46-BC48,U+BC4A-BC4D}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.42-Dp-5mnyL.woff2)format("woff2-variations");unicode-range:U+BAE6-BAFB,U+BAFD-BB17,U+BB19-BB33,U+BB37,U+BB39-BB3A,U+BB3D-BB43,U+BB45-BB46,U+BB48,U+BB4A-BB4F,U+BB51-BB53,U+BB55-BB57,U+BB59-BB62,U+BB64-BB8F}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.43-DHdpry7N.woff2)format("woff2-variations");unicode-range:U+BA30-BA37,U+BA3A-BA3B,U+BA3D-BA3F,U+BA41-BA47,U+BA49-BA4A,U+BA4C,U+BA4E-BA53,U+BA56-BA57,U+BA59-BA5B,U+BA5D-BA63,U+BA65-BA66,U+BA68-BA6F,U+BA71-BA73,U+BA75-BA77,U+BA79-BA84,U+BA86,U+BA88-BAA7,U+BAAA,U+BAAD-BAAF,U+BAB1-BAB7,U+BABA,U+BABC,U+BABE-BAE5}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.44-qHopVhdd.woff2)format("woff2-variations");unicode-range:U+B96E-B973,U+B976-B977,U+B979-B97B,U+B97D-B983,U+B986,U+B988,U+B98A-B98D,U+B98F-B9AB,U+B9AE-B9AF,U+B9B1-B9B3,U+B9B5-B9BB,U+B9BE,U+B9C0,U+B9C2-B9C7,U+B9CA-B9CB,U+B9CD,U+B9D2-B9D7,U+B9DA,U+B9DC,U+B9DF-B9E0,U+B9E2,U+B9E6-B9E7,U+B9E9-B9F3,U+B9F6,U+B9F8,U+B9FB-BA2F}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.45-BniyRFfm.woff2)format("woff2-variations");unicode-range:U+B8BF-B8CB,U+B8CD-B8E0,U+B8E2-B8E7,U+B8EA-B8EB,U+B8ED-B8EF,U+B8F1-B8F7,U+B8FA,U+B8FC,U+B8FE-B903,U+B905-B917,U+B919-B91F,U+B921-B93B,U+B93D-B957,U+B95A-B95B,U+B95D-B95F,U+B961-B967,U+B969-B96C}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.46-BMRq7xC-.woff2)format("woff2-variations");unicode-range:U+B80D-B80F,U+B811-B817,U+B81A,U+B81C-B823,U+B826-B827,U+B829-B82B,U+B82D-B833,U+B836,U+B83A-B83F,U+B841-B85B,U+B85E-B85F,U+B861-B863,U+B865-B86B,U+B86E,U+B870,U+B872-B8AF,U+B8B1-B8BE}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.47-B-cWO2pw.woff2)format("woff2-variations");unicode-range:U+B74D-B75F,U+B761-B763,U+B765-B774,U+B776-B77B,U+B77E-B77F,U+B781-B783,U+B785-B78B,U+B78E,U+B792-B796,U+B79A-B79B,U+B79D-B7A7,U+B7AA,U+B7AE-B7B3,U+B7B6-B7C8,U+B7CA-B7EB,U+B7EE-B7EF,U+B7F1-B7F3,U+B7F5-B7FB,U+B7FE,U+B802-B806,U+B80A-B80B}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.48-Ct-fWrPO.woff2)format("woff2-variations");unicode-range:U+B6A7-B6AA,U+B6AC-B6B0,U+B6B2-B6EF,U+B6F1-B727,U+B72A-B72B,U+B72D-B72E,U+B731-B737,U+B739-B73A,U+B73C-B743,U+B745-B74C}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.49-BblQVys9.woff2)format("woff2-variations");unicode-range:U+B605-B60F,U+B612-B617,U+B619-B624,U+B626-B69B,U+B69E-B6A3,U+B6A5-B6A6}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.50-C8IyFH7L.woff2)format("woff2-variations");unicode-range:U+B55F,U+B562-B583,U+B585-B59F,U+B5A2-B5A3,U+B5A5-B5A7,U+B5A9-B5B2,U+B5B5-B5BA,U+B5BD-B604}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.51-Bxd0gTAs.woff2)format("woff2-variations");unicode-range:U+B4A5-B4B6,U+B4B8-B4BF,U+B4C1-B4C7,U+B4C9-B4DB,U+B4DE-B4DF,U+B4E1-B4E2,U+B4E5-B4EB,U+B4EE,U+B4F0,U+B4F2-B513,U+B516-B517,U+B519-B51A,U+B51D-B523,U+B526,U+B528,U+B52B-B52F,U+B532-B533,U+B535-B537,U+B539-B53F,U+B541-B544,U+B546-B54B,U+B54D-B54F,U+B551-B55B,U+B55D-B55E}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.52-CNgqKOOJ.woff2)format("woff2-variations");unicode-range:U+B3F8-B3FB,U+B3FD-B40F,U+B411-B417,U+B419-B41B,U+B41D-B41F,U+B421-B427,U+B42A-B42B,U+B42D-B44F,U+B452-B453,U+B455-B457,U+B459-B45F,U+B462-B464,U+B466-B46B,U+B46D-B47F,U+B481-B4A3}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.53-BSRnyb-u.woff2)format("woff2-variations");unicode-range:U+B342-B353,U+B356-B357,U+B359-B35B,U+B35D-B35E,U+B360-B363,U+B366,U+B368,U+B36A-B36D,U+B36F,U+B372-B373,U+B375-B377,U+B379-B37F,U+B381-B382,U+B384,U+B386-B38B,U+B38D-B3C3,U+B3C6-B3C7,U+B3C9-B3CA,U+B3CD-B3D3,U+B3D6,U+B3D8,U+B3DA-B3F7}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.54-Dt2-cQkx.woff2)format("woff2-variations");unicode-range:U+B27C-B283,U+B285-B28F,U+B292-B293,U+B295-B297,U+B29A-B29F,U+B2A1-B2A4,U+B2A7-B2A9,U+B2AB,U+B2AD-B2C7,U+B2CA-B2CB,U+B2CD-B2CF,U+B2D1-B2D7,U+B2DA,U+B2DC,U+B2DE-B2E3,U+B2E7,U+B2E9-B2EA,U+B2EF-B2F3,U+B2F6,U+B2F8,U+B2FA-B2FB,U+B2FD-B2FE,U+B302-B303,U+B305-B307,U+B309-B30F,U+B312,U+B316-B31B,U+B31D-B341}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.55-jFgflYjX.woff2)format("woff2-variations");unicode-range:U+B1D6-B1E7,U+B1E9-B1FC,U+B1FE-B203,U+B206-B207,U+B209-B20B,U+B20D-B213,U+B216-B21F,U+B221-B257,U+B259-B273,U+B275-B27B}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.56-BwZdvJZQ.woff2)format("woff2-variations");unicode-range:U+B120-B122,U+B126-B127,U+B129-B12B,U+B12D-B133,U+B136,U+B138,U+B13A-B13F,U+B142-B143,U+B145-B14F,U+B151-B153,U+B156-B157,U+B159-B177,U+B17A-B17B,U+B17D-B17F,U+B181-B187,U+B189-B18C,U+B18E-B191,U+B195-B1A7,U+B1A9-B1CB,U+B1CD-B1D5}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.57-BwFDg-Fs.woff2)format("woff2-variations");unicode-range:U+B05F-B07B,U+B07E-B07F,U+B081-B083,U+B085-B08B,U+B08D-B097,U+B09B,U+B09D-B09F,U+B0A2-B0A7,U+B0AA,U+B0B0,U+B0B2,U+B0B6-B0B7,U+B0B9-B0BB,U+B0BD-B0C3,U+B0C6-B0C7,U+B0CA-B0CF,U+B0D1-B0DF,U+B0E1-B0E4,U+B0E6-B107,U+B10A-B10B,U+B10D-B10F,U+B111-B112,U+B114-B117,U+B119-B11A,U+B11C-B11F}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.58-DlucQts_.woff2)format("woff2-variations");unicode-range:U+AFAC-AFB7,U+AFBA-AFBB,U+AFBD-AFBF,U+AFC1-AFC6,U+AFCA-AFCC,U+AFCE-AFD3,U+AFD5-AFE7,U+AFE9-AFEF,U+AFF1-B00B,U+B00D-B00F,U+B011-B013,U+B015-B01B,U+B01D-B027,U+B029-B043,U+B045-B047,U+B049,U+B04B,U+B04D-B052,U+B055-B056,U+B058-B05C,U+B05E}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.59-CMkWjhdo.woff2)format("woff2-variations");unicode-range:U+AF03-AF07,U+AF09-AF2B,U+AF2E-AF33,U+AF35-AF3B,U+AF3E-AF40,U+AF44-AF47,U+AF4A-AF5C,U+AF5E-AF63,U+AF65-AF7F,U+AF81-AFAB}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.60-CeHezjjf.woff2)format("woff2-variations");unicode-range:U+AE56-AE5B,U+AE5E-AE60,U+AE62-AE64,U+AE66-AE67,U+AE69-AE6B,U+AE6D-AE83,U+AE85-AEBB,U+AEBF,U+AEC1-AEC3,U+AEC5-AECB,U+AECE,U+AED0,U+AED2-AED7,U+AED9-AEF3,U+AEF5-AF02}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.61-PUuTnod4.woff2)format("woff2-variations");unicode-range:U+AD9C-ADA3,U+ADA5-ADBF,U+ADC1-ADC3,U+ADC5-ADC7,U+ADC9-ADD2,U+ADD4-ADDB,U+ADDD-ADDF,U+ADE1-ADE3,U+ADE5-ADF7,U+ADFA-ADFB,U+ADFD-ADFF,U+AE02-AE07,U+AE0A,U+AE0C,U+AE0E-AE13,U+AE15-AE2F,U+AE31-AE33,U+AE35-AE37,U+AE39-AE3F,U+AE42,U+AE44,U+AE46-AE49,U+AE4B,U+AE4F,U+AE51-AE53,U+AE55}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.62-DGSAWCfb.woff2)format("woff2-variations");unicode-range:U+ACE2-ACE3,U+ACE5-ACE6,U+ACE9-ACEF,U+ACF2,U+ACF4,U+ACF7-ACFB,U+ACFE-ACFF,U+AD01-AD03,U+AD05-AD0B,U+AD0D-AD10,U+AD12-AD1B,U+AD1D-AD33,U+AD35-AD48,U+AD4A-AD4F,U+AD51-AD6B,U+AD6E-AD6F,U+AD71-AD72,U+AD77-AD7C,U+AD7E,U+AD80,U+AD82-AD87,U+AD89-AD8B,U+AD8D-AD8F,U+AD91-AD9B}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.63-B35xsm4O.woff2)format("woff2-variations");unicode-range:U+AC25-AC2C,U+AC2E,U+AC30,U+AC32-AC37,U+AC39-AC3F,U+AC41-AC4C,U+AC4E-AC6F,U+AC72-AC73,U+AC75-AC76,U+AC79-AC7F,U+AC82,U+AC84-AC88,U+AC8A-AC8B,U+AC8D-AC8F,U+AC91-AC93,U+AC95-AC9B,U+AC9D-AC9E,U+ACA1-ACA7,U+ACAB,U+ACAD-ACAF,U+ACB1-ACB7,U+ACBA-ACBB,U+ACBE-ACC0,U+ACC2-ACC3,U+ACC5-ACDF}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.64-CTbrgYF9.woff2)format("woff2-variations");unicode-range:U+99DF,U+99ED,U+99F1,U+99FF,U+9A01,U+9A08,U+9A0E-9A0F,U+9A19,U+9A2B,U+9A30,U+9A36-9A37,U+9A40,U+9A43,U+9A45,U+9A4D,U+9A55,U+9A57,U+9A5A-9A5B,U+9A5F,U+9A62,U+9A65,U+9A69-9A6A,U+9AA8,U+9AB8,U+9AD3,U+9AE5,U+9AEE,U+9B1A,U+9B27,U+9B2A,U+9B31,U+9B3C,U+9B41-9B45,U+9B4F,U+9B54,U+9B5A,U+9B6F,U+9B8E,U+9B91,U+9B9F,U+9BAB,U+9BAE,U+9BC9,U+9BD6,U+9BE4,U+9BE8,U+9C0D,U+9C10,U+9C12,U+9C15,U+9C25,U+9C32,U+9C3B,U+9C47,U+9C49,U+9C57,U+9CE5,U+9CE7,U+9CE9,U+9CF3-9CF4,U+9CF6,U+9D09,U+9D1B,U+9D26,U+9D28,U+9D3B,U+9D51,U+9D5D,U+9D60-9D61,U+9D6C,U+9D72,U+9DA9,U+9DAF,U+9DB4,U+9DC4,U+9DD7,U+9DF2,U+9DF8-9DFA,U+9E1A,U+9E1E,U+9E75,U+9E79,U+9E7D,U+9E7F,U+9E92-9E93,U+9E97,U+9E9D,U+9E9F,U+9EA5,U+9EB4-9EB5,U+9EBB,U+9EBE,U+9EC3,U+9ECD-9ECE,U+9ED4,U+9ED8,U+9EDB-9EDC,U+9EDE,U+9EE8,U+9EF4,U+9F07-9F08,U+9F0E,U+9F13,U+9F20,U+9F3B,U+9F4A-9F4B,U+9F4E,U+9F52,U+9F5F,U+9F61,U+9F67,U+9F6A,U+9F6C,U+9F77,U+9F8D,U+9F90,U+9F95,U+9F9C,U+AC02-AC03,U+AC05-AC06,U+AC09-AC0F,U+AC17-AC18,U+AC1B,U+AC1E-AC1F,U+AC21-AC23}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.65-B66rjuyf.woff2)format("woff2-variations");unicode-range:U+338C-339C,U+339F-33A0,U+33A2-33CB,U+33CF-33D0,U+33D3,U+33D6,U+33D8,U+33DB-33DD,U+4E01,U+4E03,U+4E07-4E08,U+4E11,U+4E14-4E15,U+4E18-4E19,U+4E1E,U+4E32,U+4E38-4E39,U+4E42-4E43,U+4E45,U+4E4D-4E4F,U+4E56,U+4E58-4E59,U+4E5D-4E5E,U+4E6B,U+4E6D,U+4E73,U+4E76-4E77,U+4E7E,U+4E82,U+4E86,U+4E88,U+4E8E,U+4E90-4E92,U+4E94-4E95,U+4E98,U+4E9B,U+4E9E,U+4EA1-4EA2,U+4EA4-4EA6,U+4EA8,U+4EAB,U+4EAD-4EAE,U+4EB6,U+4EC0-4EC1,U+4EC4,U+4EC7,U+4ECB,U+4ECD,U+4ED4-4ED5,U+4ED7-4ED9,U+4EDD,U+4EDF,U+4EE4,U+4EF0,U+4EF2,U+4EF6-4EF7,U+4EFB,U+4F01,U+4F09,U+4F0B,U+4F0D-4F11,U+4F2F,U+4F34,U+4F36,U+4F38,U+4F3A,U+4F3C-4F3D}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.66-C3HqaDeY.woff2)format("woff2-variations");unicode-range:U+3136,U+3138,U+313A-3140,U+3143-3144,U+3150,U+3152,U+3154-3156,U+3158-315B,U+315D-315F,U+3162,U+3164-318C,U+318E,U+3200-321B,U+3231,U+3239,U+3251-325A,U+3260-327B,U+327E-327F,U+328A-3290,U+3294,U+329E,U+32A5,U+3380-3384,U+3388-338B}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.67-BmuXdlDy.woff2)format("woff2-variations");unicode-range:U+2F7D,U+2F7F-2F8B,U+2F8E-2F90,U+2F92-2F97,U+2F99-2FA0,U+2FA2-2FA3,U+2FA5-2FA9,U+2FAC-2FB1,U+2FB3-2FBC,U+2FC1-2FCA,U+2FCD-2FD4,U+3003,U+3012-3019,U+301C,U+301E-3020,U+3036,U+3041,U+3043,U+3045,U+3047,U+3049,U+304E,U+3050,U+3052,U+3056,U+305A,U+305C,U+305E,U+3062,U+3065,U+306C,U+3070-307D,U+3080,U+3085,U+3087,U+308E,U+3090-3091,U+30A1,U+30A5,U+30A9,U+30AE,U+30B1-30B2,U+30B4,U+30B6,U+30BC-30BE,U+30C2,U+30C5,U+30CC,U+30D2,U+30D4,U+30D8-30DD,U+30E4,U+30E6,U+30E8,U+30EE,U+30F0-30F2,U+30F4-30F6,U+3133,U+3135}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.68-DS9B48d0.woff2)format("woff2-variations");unicode-range:U+2541-254B,U+25A4-25A9,U+25B1,U+25B5,U+25B9,U+25BF,U+25C1,U+25C3,U+25C9-25CA,U+25CC,U+25CE,U+25D0-25D1,U+25E6,U+25EF,U+260F,U+261D,U+261F,U+262F,U+2660,U+2664,U+2667-2669,U+266D,U+266F,U+2716,U+271A,U+273D,U+2756,U+2776-277F,U+278A-2793,U+2963,U+2965,U+2AC5-2AC6,U+2ACB-2ACC,U+2F00,U+2F04,U+2F06,U+2F08,U+2F0A-2F0B,U+2F11-2F12,U+2F14,U+2F17-2F18,U+2F1C-2F1D,U+2F1F-2F20,U+2F23-2F26,U+2F28-2F29,U+2F2B,U+2F2D,U+2F2F-2F32,U+2F38,U+2F3C-2F40,U+2F42-2F4C,U+2F4F-2F52,U+2F54-2F58,U+2F5A-2F66,U+2F69-2F70,U+2F72-2F76,U+2F78,U+2F7A-2F7C}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.69-YT16ymcp.woff2)format("woff2-variations");unicode-range:U+2479-2487,U+249C-24D1,U+24D3-24D7,U+24D9-24E9,U+24EB-24F4,U+2500-2501,U+2503,U+250C-2513,U+2515-2516,U+2518-2540}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.70-BUXiAGMT.woff2)format("woff2-variations");unicode-range:U+215B-215E,U+2162-2169,U+2170-2179,U+2195-2199,U+21B0-21B4,U+21BC,U+21C0,U+21C4-21C5,U+21CD,U+21CF-21D4,U+21E0-21E3,U+21E6-21E9,U+2200,U+2202-2203,U+2206-2209,U+220B-220C,U+220F,U+2211,U+2213,U+221A,U+221D-2220,U+2222,U+2225-2227,U+2229-222C,U+222E,U+2234-2237,U+223D,U+2243,U+2245,U+2248,U+2250-2253,U+225A,U+2260-2262,U+2264-2267,U+226A-226B,U+226E-2273,U+2276-2277,U+2279-227B,U+2280-2287,U+228A-228B,U+2295-2297,U+22A3-22A5,U+22BB-22BC,U+22CE-22CF,U+22DA-22DB,U+22EE-22EF,U+2306,U+2312,U+2314,U+2467-2478}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.71-DuPZj8us.woff2)format("woff2-variations");unicode-range:U+81-82,U+84,U+A2-A5,U+A7-A8,U+AA,U+AC,U+B1-B3,U+B6,U+B8-BA,U+BC-BE,U+C0,U+C2,U+C6-CB,U+CE-D0,U+D4,U+D8-D9,U+DB-DC,U+DE-DF,U+E6,U+EB,U+EE-F0,U+F4,U+F7-F9,U+FB,U+FE-FF,U+111,U+126-127,U+132-133,U+138,U+13F-142,U+149-14B,U+152-153,U+166-167,U+2BC,U+2C7,U+2D0,U+2D8-2D9,U+2DB-2DD,U+391-394,U+396-3A1,U+3A3-3A9,U+3B2-3B6,U+3B8,U+3BC,U+3BE-3C1,U+3C3-3C9,U+2010,U+2015-2016,U+2018-2019,U+201B,U+201F-2021,U+2025,U+2030,U+2033-2036,U+203C,U+203E,U+2042,U+2074,U+207A-207F,U+2081-2084,U+2109,U+2113,U+2116,U+2121,U+2126,U+212B,U+2153-2154}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.72-pYYGrEQR.woff2)format("woff2-variations");unicode-range:U+E8,U+2DA,U+2160,U+2194,U+3054,U+3058,U+306D,U+3086,U+308D,U+30AC,U+30BB,U+30C4,U+30CD-30CE,U+30E2,U+3132,U+3146,U+3149,U+339D,U+4E3B,U+4F0A,U+4FDD,U+4FE1,U+5409,U+540C,U+5834,U+592A-592B,U+5B9A,U+5DDE,U+5E0C,U+5E73,U+5F0F,U+60F3,U+653F,U+661F,U+662F,U+667A,U+683C,U+6B4C,U+6C11,U+767C,U+76EE,U+76F4,U+77F3,U+79D1,U+7A7A,U+7B2C,U+7D22,U+8207,U+8A00,U+8A71,U+9280,U+9580,U+958B,U+96C6,U+9762,U+98DF,U+9ED1,U+AC2D,U+ADC8,U+ADD3,U+AF48,U+B014,U+B134-B135,U+B158,U+B2AA,U+B35F,U+B6A4,U+B9CF,U+BB63,U+BD23,U+BE91,U+C29B,U+C3F4,U+C42C,U+C55C,U+C573,U+C58F,U+C78C,U+C7DD,U+C8F5,U+CAD1,U+CC48,U+CF10,U+CF20,U+D03C,U+D07D,U+D2A0,U+D30E,U+D38D,U+D3A8,U+D3C8,U+D5E5,U+D5F9,U+D6E4,U+F90A,U+FF02,U+FF1C}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.73-DMrK970F.woff2)format("woff2-variations");unicode-range:U+3B1,U+2466,U+25A1,U+25A3,U+261C,U+3008-3009,U+305B,U+305D,U+3069,U+30A7,U+30BA,U+30CF,U+30EF,U+3151,U+3157,U+4E4B,U+4E5F,U+4E8C,U+4ECA,U+4ED6,U+4F5B,U+50CF,U+5149,U+5165,U+5171,U+5229,U+529B,U+5316,U+539F,U+53F2,U+571F,U+5728,U+58EB,U+591C,U+5B78,U+5C11,U+5C55,U+5DDD,U+5E02,U+5FB7,U+60C5,U+610F,U+611F,U+6625,U+66F8,U+6797,U+679C,U+682A,U+6D2A,U+706B,U+7406,U+767B,U+76F8,U+77E5,U+7ACB,U+898B,U+8A69,U+8DEF,U+8FD1,U+901A,U+90E8,U+91CD,U+975E,U+AE14,U+AE6C,U+AEC0,U+AFC7,U+AFC9,U+B01C,U+B028,U+B308,U+B311,U+B314,U+B31C,U+B524,U+B560,U+B764,U+B920,U+B9E3,U+BD48,U+BE7D,U+C0DB,U+C231,U+C270,U+C2E3,U+C37D,U+C3ED,U+C530,U+C6A5,U+C6DC,U+C7A4,U+C954,U+C974,U+D000,U+D565,U+D667,U+D6C5,U+D79D,U+FF1E}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.74-D4tQnymK.woff2)format("woff2-variations");unicode-range:U+131,U+2032,U+2465,U+2642,U+3048,U+3051,U+3083-3084,U+308F,U+30C0,U+30D1,U+30D3,U+30D6,U+30DF,U+30E7,U+3153,U+4E16,U+4E8B,U+4EE5,U+5206,U+52A0,U+52D5,U+53E4,U+53EF,U+54C1,U+57CE,U+597D,U+5B8C,U+5EA6,U+5F8C,U+5F97,U+6210,U+6240,U+624B,U+6728,U+6BD4,U+7236,U+7269,U+7279,U+738B,U+7528,U+7530,U+767E,U+798F,U+8005,U+8A18,U+90FD,U+91CC,U+9577,U+9593,U+98A8,U+AC20,U+ACF6,U+AD90,U+AF5D,U+AF80,U+AFCD,U+AFF0,U+B0A1,U+B0B5,U+B1FD,U+B2FC,U+B380,U+B51B,U+B584,U+B5B3,U+B8FD,U+B93C,U+B9F4,U+BB44,U+BC08,U+BC27,U+BC49,U+BE55,U+BE64,U+BFB0,U+BFC5,U+C178,U+C21F,U+C314,U+C4F1,U+C58D,U+C664,U+C698,U+C6A7,U+C6C1,U+C9ED,U+CAC0,U+CACC,U+CAD9,U+CCB5,U+CDCC,U+D0E4,U+D143,U+D320,U+D330,U+D54D,U+FF06,U+FF1F,U+FF5E}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.75-CxKdrRNf.woff2)format("woff2-variations");unicode-range:U+B4,U+20A9,U+20AC,U+2190,U+24D8,U+2502,U+2514,U+2592,U+25C7-25C8,U+2663,U+3060,U+3064,U+3081,U+3088,U+30A3,U+30A6,U+30AA,U+30B5,U+30C7,U+30CA-30CB,U+30D0,U+30E3,U+30E5,U+339E,U+4E09,U+4EAC,U+4F5C,U+5167-5168,U+516C,U+51FA,U+5408,U+540D,U+591A,U+5B57,U+6211,U+65B9,U+660E,U+6642,U+6700,U+6B63,U+6E2F,U+7063,U+7532,U+793E,U+81EA,U+8272,U+82B1,U+897F,U+8ECA,U+91CE,U+AC38,U+AD76,U+AE84,U+AECC,U+B07D,U+B0B1,U+B215,U+B2A0,U+B310,U+B3D7,U+B52A,U+B618,U+B775,U+B797,U+BCD5,U+BD59,U+BE80,U+BEA8,U+BED1,U+BEE4-BEE5,U+C060,U+C2EF,U+C329,U+C3DC,U+C597,U+C5BD,U+C5E5,U+C69C,U+C9D6,U+CA29,U+CA5C,U+CA84,U+CC39,U+CC3B,U+CE89,U+CEE5,U+CF65,U+CF85,U+D058,U+D145,U+D22D,U+D325,U+D37D,U+D3AD,U+D769,U+FF0C}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.76-DhPm2b_q.woff2)format("woff2-variations");unicode-range:U+2161,U+2228,U+2299,U+2464,U+2517,U+2640,U+3042,U+304A,U+3053,U+3061,U+307F,U+3082,U+308C,U+3092,U+30A8,U+30AB,U+30AD,U+30B0,U+30B3,U+30B7,U+30C1,U+30C6,U+30C9,U+30D5,U+30D7,U+30DE,U+30E0-30E1,U+30EC-30ED,U+4E0B,U+4E0D,U+4EE3,U+53F0,U+548C,U+5B89,U+5BB6,U+5C0F,U+611B,U+6771,U+6AA2,U+6BCD,U+6C34,U+6CD5,U+6D77,U+767D,U+795E,U+8ECD,U+9999,U+9AD8,U+AC07,U+AC1A,U+AC40,U+AD0C,U+AD88,U+ADA4,U+AE01,U+AE65,U+AEBD,U+AEC4,U+AFE8,U+B139,U+B205,U+B383,U+B38C,U+B42C,U+B461,U+B55C,U+B78F,U+B8FB,U+B9F7,U+BAFC,U+BC99,U+BED8,U+BFCD,U+C0BF,U+C0F9,U+C167,U+C204,U+C20F,U+C22F,U+C258,U+C298,U+C2BC,U+C388,U+C501,U+C50C,U+C5B9,U+C5CE,U+C641,U+C648,U+C73D,U+CA50,U+CA61,U+CC4C,U+CEAC,U+D0D4,U+D5F7,U+D6D7,U+FF1A}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.77-DwaxqOC8.woff2)format("woff2-variations");unicode-range:U+2103,U+2463,U+25C6,U+25CB,U+266C,U+3001,U+300A,U+3046,U+304C-304D,U+304F,U+3055,U+3059,U+3063,U+3066-3068,U+306F,U+3089,U+30B8,U+30BF,U+314F,U+4E0A,U+570B,U+5730,U+5916,U+5929,U+5C71,U+5E74,U+5FC3,U+601D,U+6027,U+63D0,U+6709,U+6734,U+751F,U+7684,U+82F1,U+9053,U+91D1,U+97F3,U+AC2F,U+AC4D,U+ADC4,U+ADE4,U+AE41,U+AE4D-AE4E,U+AED1,U+AFB9,U+B0E0,U+B299,U+B365,U+B46C,U+B480,U+B4C8,U+B7B4,U+B819,U+B918,U+BAAB,U+BAB9,U+BE8F,U+BED7,U+C0EC,U+C19F,U+C1A5,U+C3D9,U+C464,U+C53D,U+C553,U+C570,U+C5CC,U+C633,U+C6A4,U+C7A3,U+C7A6,U+C886,U+C9D9-C9DA,U+C9EC,U+CA0C,U+CC21,U+CD1B,U+CD78,U+CDC4,U+CEF8,U+CFE4,U+D0A5,U+D0B5,U+D0EC,U+D15D,U+D188,U+D23C,U+D2AC,U+D729,U+D79B,U+FF01,U+FF08-FF09,U+FF5C}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.78-DhqRbBzT.woff2)format("woff2-variations");unicode-range:U+2039-203A,U+223C,U+25B3,U+25B7,U+25BD,U+25CF,U+266A,U+3002,U+300B,U+304B,U+3057,U+305F,U+306A-306B,U+307E,U+308A-308B,U+3093,U+30A2,U+30AF,U+30B9,U+30C3,U+30C8,U+30E9-30EB,U+33A1,U+4E00,U+524D,U+5357,U+5B50,U+7121,U+884C,U+9751,U+AC94,U+AEBE,U+AECD,U+AF08,U+AF41,U+AF49,U+B010,U+B053,U+B109,U+B11B,U+B128,U+B154,U+B291,U+B2E6,U+B301,U+B385,U+B525,U+B5B4,U+B729,U+B72F,U+B738,U+B7FF,U+B837,U+B975,U+BA67,U+BB47,U+BC1F,U+BD90,U+BFD4,U+C27C,U+C324,U+C379,U+C3E0,U+C465,U+C53B,U+C58C,U+C610,U+C653,U+C6CD,U+C813,U+C82F,U+C999,U+C9E0,U+CAC4,U+CAD3,U+CBD4,U+CC10,U+CC22,U+CCB8,U+CCBC,U+CDA5,U+CE84,U+CEA3,U+CF67,U+CFE1,U+D241,U+D30D,U+D31C,U+D391,U+D401,U+D479,U+D5C9,U+D5DB,U+D649,U+D6D4}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.79-XpoyPP38.woff2)format("woff2-variations");unicode-range:U+B0,U+E9,U+2193,U+2462,U+260E,U+261E,U+300E-300F,U+3044,U+30A4,U+30FB-30FC,U+314D,U+5973,U+6545,U+6708,U+7537,U+AC89,U+AC9C,U+ACC1,U+AD04,U+AD75,U+AD7D,U+AE45,U+AE61,U+AF42,U+B0AB,U+B0AF,U+B0B3,U+B12C,U+B194,U+B1A8,U+B220,U+B258,U+B284,U+B2FF,U+B315,U+B371,U+B3D4-B3D5,U+B460,U+B527,U+B534,U+B810,U+B818,U+B98E,U+BA55,U+BBAC,U+BC0B,U+BC40,U+BCA1,U+BCCD,U+BD93,U+BE54,U+BE5A,U+BF08,U+BF50,U+BF55,U+BFDC,U+C0C0,U+C0D0,U+C0F4,U+C100,U+C11E,U+C170,U+C20D,U+C274,U+C290,U+C308,U+C369,U+C539,U+C587,U+C5FF,U+C6EC,U+C70C,U+C7AD,U+C7C8,U+C83C,U+C881,U+CB48,U+CC60,U+CE69,U+CE6B,U+CE75,U+CF04,U+CF08,U+CF55,U+CF70,U+CFFC,U+D0B7,U+D1A8,U+D2C8,U+D384,U+D47C,U+D48B,U+D5DD,U+D5E8,U+D720,U+D759,U+F981}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.80-DsV9Qp_h.woff2)format("woff2-variations");unicode-range:U+E0,U+E2,U+395,U+3B7,U+3BA,U+2460-2461,U+25A0,U+3010-3011,U+306E,U+30F3,U+314A,U+314C,U+5927,U+65B0,U+7E41,U+97D3,U+9AD4,U+AD49,U+AE0B,U+AE0D,U+AE43,U+AE5D,U+AECF,U+AF3C,U+AF64,U+AFD4,U+B080,U+B084,U+B0C5,U+B10C,U+B1E8,U+B2AC,U+B36E,U+B451,U+B515,U+B540,U+B561,U+B6AB,U+B6B1,U+B72C,U+B730,U+B744,U+B800,U+B8EC,U+B8F0,U+B904,U+B968,U+B96D,U+B987,U+B9D9,U+BB36,U+BB49,U+BC2D,U+BC43,U+BCF6,U+BD89,U+BE57,U+BE61,U+BED4,U+C090,U+C130,U+C148,U+C19C,U+C2F9,U+C36C,U+C37C,U+C384,U+C3DF,U+C575,U+C584,U+C660,U+C719,U+C816,U+CA4D,U+CA54,U+CABC,U+CB49,U+CC14,U+CFF5,U+D004,U+D038,U+D0B4,U+D0D3,U+D0E0,U+D0ED,U+D131,U+D1B0,U+D31F,U+D33D,U+D3A0,U+D3AB,U+D514,U+D584,U+D6A1,U+D6CC,U+D749,U+D760,U+D799}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.81-BZzF9Hb3.woff2)format("woff2-variations");unicode-range:U+24,U+60,U+3B9,U+3BB,U+3BD,U+2191,U+2606,U+300C-300D,U+3131,U+3134,U+3139,U+3141-3142,U+3148,U+3161,U+3163,U+321C,U+4EBA,U+5317,U+AC31,U+AC77,U+AC9F,U+ACB9,U+ACF0-ACF1,U+ACFD,U+AD73,U+AF3D,U+B00C,U+B04A,U+B057,U+B0C4,U+B188,U+B1CC,U+B214,U+B2DB,U+B2EE,U+B304,U+B4ED,U+B518,U+B5BC,U+B625,U+B69C-B69D,U+B7AC,U+B801,U+B86C,U+B959,U+B95C,U+B985,U+BA48,U+BB58,U+BC0C,U+BC38,U+BC85,U+BC9A,U+BF40,U+C068,U+C0BD,U+C0CC,U+C12F,U+C149,U+C1E0,U+C22B,U+C22D,U+C250,U+C2FC,U+C300,U+C313,U+C370,U+C3D8,U+C557,U+C580,U+C5E3,U+C62E,U+C634,U+C6F0,U+C74D,U+C783,U+C78E,U+C796,U+C7BC,U+C92C,U+CA4C,U+CC1C,U+CC54,U+CC59,U+CE04,U+CF30,U+CFC4,U+D140,U+D321,U+D38C,U+D399,U+D54F,U+D587,U+D5D0,U+D6E8,U+D770}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.82-BgAHe30u.woff2)format("woff2-variations");unicode-range:U+D7,U+EA,U+FC,U+2192,U+25BC,U+3000,U+3137,U+3145,U+315C,U+7F8E,U+AC13,U+AC71,U+AC90,U+ACB8,U+ACE7,U+AD7F,U+AE50,U+AEF4,U+AF34,U+AFBC,U+B048,U+B09A,U+B0AD,U+B0BC,U+B113,U+B125,U+B141,U+B20C,U+B2D9,U+B2ED,U+B367,U+B369,U+B374,U+B3CB,U+B4EC,U+B611,U+B760,U+B81B,U+B834,U+B8B0,U+B8E1,U+B989,U+B9D1,U+B9E1,U+B9FA,U+BA4D,U+BA78,U+BB35,U+BB54,U+BBF9,U+BC11,U+BCB3,U+BD05,U+BD95,U+BDD4,U+BE10,U+BED0,U+BF51,U+C0D8,U+C232,U+C2B7,U+C2EB,U+C378,U+C500,U+C52C,U+C549,U+C568,U+C598,U+C5C9,U+C61B,U+C639,U+C67C,U+C717,U+C78A,U+C80A,U+C90C-C90D,U+C950,U+C9E7,U+CBE4,U+CCA9,U+CCE4,U+CDB0,U+CE78,U+CE94,U+CE98,U+CF8C,U+D018,U+D034,U+D0F1,U+D1B1,U+D280,U+D2F8,U+D338,U+D380,U+D3B4,U+D610,U+D69F,U+D6FC,U+D758}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.83-DF-zBLLe.woff2)format("woff2-variations");unicode-range:U+E7,U+2022,U+203B,U+25C0,U+2605,U+2661,U+3147,U+318D,U+672C,U+8A9E,U+ACAA,U+ACBC,U+AD1C,U+AE4A,U+AE5C,U+B044,U+B054,U+B0C8-B0C9,U+B2A6,U+B2D0,U+B35C,U+B364,U+B428,U+B454,U+B465,U+B4B7,U+B4E3,U+B51C,U+B5A1,U+B784,U+B790,U+B7AB,U+B7F4,U+B82C,U+B835,U+B8E9,U+B8F8,U+B9D8,U+B9F9,U+BA5C,U+BA64,U+BABD,U+BB18,U+BB3B,U+BBFF,U+BC0D,U+BC45,U+BC97,U+BCBC,U+BE45,U+BE75,U+BE7C,U+BFCC,U+C0B6,U+C0F7,U+C14B,U+C2B4,U+C30D,U+C4F8,U+C5BB,U+C5D1,U+C5E0,U+C5EE,U+C5FD,U+C606,U+C6C5,U+C6E0,U+C708,U+C81D,U+C820,U+C824,U+C878,U+C918,U+C96C,U+C9E4,U+C9F1,U+CC2E,U+CD09,U+CEA1,U+CEF5,U+CEF7,U+CF64,U+CF69,U+CFE8,U+D035,U+D0AC,U+D230,U+D234,U+D2F4,U+D31D,U+D575,U+D578,U+D608,U+D614,U+D718,U+D751,U+D761,U+D78C,U+D790}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.84-Brb8EsYQ.woff2)format("woff2-variations");unicode-range:U+2665,U+3160,U+4E2D,U+6587,U+65E5,U+AC12,U+AC14,U+AC16,U+AC81,U+AD34,U+ADE0,U+AE54,U+AEBC,U+AF2C,U+AFC0,U+AFC8,U+B04C,U+B08C,U+B099,U+B0A9,U+B0AC,U+B0AE,U+B0B8,U+B123,U+B179,U+B2E5,U+B2F7,U+B4C0,U+B531,U+B538,U+B545,U+B550,U+B5A8,U+B6F0,U+B728,U+B73B,U+B7AD,U+B7ED,U+B809,U+B864,U+B86D,U+B871,U+B9BF,U+B9F5,U+BA40,U+BA4B,U+BA58,U+BA87,U+BAAC,U+BBC0,U+BC16,U+BC34,U+BD07,U+BD99,U+BE59,U+BFD0,U+C058,U+C0E4,U+C0F5,U+C12D,U+C139,U+C228,U+C529,U+C5C7,U+C635,U+C637,U+C735,U+C77D,U+C787,U+C789,U+C8C4,U+C989,U+C98C,U+C9D0,U+C9D3,U+CC0C,U+CC99,U+CD0C,U+CD2C,U+CD98,U+CDA4,U+CE59,U+CE60,U+CE6D,U+CEA0,U+D0D0-D0D1,U+D0D5,U+D14D,U+D1A4,U+D29C,U+D2F1,U+D301,U+D39C,U+D3BC,U+D4E8,U+D540,U+D5EC,U+D640,U+D750}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.85-Byo_x2hf.woff2)format("woff2-variations");unicode-range:U+5E,U+25B2,U+25B6,U+314E,U+AC24,U+ACE1,U+ACE4,U+AE68,U+AF2D,U+B0D0,U+B0E5,U+B150,U+B155,U+B193,U+B2C9,U+B2DD,U+B3C8,U+B3FC,U+B410,U+B458,U+B4DD,U+B5A0,U+B5A4,U+B5BB,U+B7B5,U+B838,U+B840,U+B86F,U+B8F9,U+B960,U+B9E5,U+BAB8,U+BB50,U+BC1D,U+BC24-BC25,U+BCA8,U+BCBD,U+BD04,U+BD10,U+BD24,U+BE48,U+BE5B,U+BE68,U+C05C,U+C12C,U+C140,U+C15C,U+C168,U+C194,U+C219,U+C27D,U+C2A8,U+C2F1,U+C2F8,U+C368,U+C554-C555,U+C559,U+C564,U+C5D8,U+C5FC,U+C625,U+C65C,U+C6B1,U+C728,U+C794,U+C84C,U+C88C,U+C8E0,U+C8FD,U+C998,U+C9DD,U+CC0D,U+CC30,U+CEEC,U+CF13,U+CF1C,U+CF5C,U+D050,U+D07C,U+D0A8,U+D134,U+D138,U+D154,U+D1F4,U+D2BC,U+D329,U+D32C,U+D3D0,U+D3F4,U+D3FC,U+D56B,U+D5CC,U+D600-D601,U+D639,U+D6C8,U+D754,U+D765}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.86-XG7lTN_6.woff2)format("woff2-variations");unicode-range:U+3C-3D,U+2026,U+24D2,U+314B,U+AC11,U+ACF3,U+AD74,U+AD81,U+ADF9,U+AE34,U+AF43,U+AFB8,U+B05D,U+B07C,U+B110,U+B118,U+B17C,U+B180,U+B18D,U+B192,U+B2CC,U+B355,U+B378,U+B4A4,U+B4EF,U+B78D,U+B799,U+B7A9,U+B7FD,U+B807,U+B80C,U+B839,U+B9B4,U+B9DB,U+BA3C,U+BAB0,U+BBA4,U+BC94,U+BE4C,U+C154,U+C1C4,U+C26C,U+C2AC,U+C2ED,U+C4F4,U+C55E,U+C561,U+C571,U+C5B5,U+C5C4,U+C654-C655,U+C695,U+C6E8,U+C6F9,U+C724,U+C751,U+C775,U+C7A0,U+C7C1,U+C874,U+C880,U+C9D5,U+C9F8,U+CABD,U+CC29,U+CC2C,U+CCA8,U+CCAB,U+CCD0,U+CE21,U+CE35,U+CE7C,U+CE90,U+CEE8,U+CEF4,U+CFE0,U+D070,U+D0B9,U+D0C1,U+D0C4,U+D0C8,U+D15C,U+D1A1,U+D2C0,U+D300,U+D314,U+D3ED,U+D478,U+D480,U+D48D,U+D508,U+D53D,U+D5E4,U+D611,U+D61C,U+D68D,U+D6A8,U+D798}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.87-Lzui2vbK.woff2)format("woff2-variations");unicode-range:U+23,U+25,U+5F,U+A9,U+AC08,U+AC78,U+ACA8,U+ACAC,U+ACE8,U+AD70,U+ADC0,U+ADDC,U+B137,U+B140,U+B208,U+B290,U+B2F5,U+B3C5,U+B3CC,U+B420,U+B429,U+B529,U+B530,U+B77D,U+B79C,U+B7A8,U+B7C9,U+B7F0,U+B7FC,U+B828,U+B860,U+B9AD,U+B9C1,U+B9C9,U+B9DD-B9DE,U+B9E8,U+BA38-BA39,U+BABB,U+BC00,U+BC8C,U+BCA0,U+BCA4,U+BCD1,U+BCFC,U+BD09,U+BDF0,U+BE60,U+C0AD,U+C0B4,U+C0BC,U+C190,U+C1FC,U+C220,U+C288,U+C2B9,U+C2F6,U+C528,U+C545,U+C558,U+C5BC,U+C5D4,U+C600,U+C644,U+C6C0,U+C6C3,U+C721,U+C798,U+C7A1,U+C811,U+C838,U+C871,U+C904,U+C990,U+C9DC,U+CC38,U+CC44,U+CCA0,U+CD1D,U+CD95,U+CDA9,U+CE5C,U+CF00,U+CF58,U+D150,U+D22C,U+D305,U+D328,U+D37C,U+D3F0,U+D551,U+D5A5,U+D5C8,U+D5D8,U+D63C,U+D64D,U+D669,U+D734,U+D76C}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.88-CqX6JSgh.woff2)format("woff2-variations");unicode-range:U+26,U+2B,U+3E,U+40,U+7E,U+AC01,U+AC19,U+AC1D,U+ACA0,U+ACA9,U+ACB0,U+AD8C,U+AE09,U+AE38,U+AE40,U+AED8,U+B09C,U+B0A0,U+B108,U+B204,U+B298,U+B2D8,U+B2EB-B2EC,U+B2F4,U+B313,U+B358,U+B450,U+B4E0,U+B54C,U+B610,U+B780,U+B78C,U+B791,U+B8E8,U+B958,U+B974,U+B984,U+B9B0,U+B9BC-B9BD,U+B9CE,U+BA70,U+BBFC,U+BC0F,U+BC15,U+BC1B,U+BC31,U+BC95,U+BCC0,U+BCC4,U+BD81,U+BD88,U+C0C8,U+C11D,U+C13C,U+C158,U+C18D,U+C1A1,U+C21C,U+C4F0,U+C54A,U+C560,U+C5B8,U+C5C8,U+C5F4,U+C628,U+C62C,U+C678,U+C6CC,U+C808,U+C810,U+C885,U+C88B,U+C900,U+C988,U+C99D,U+C9C8,U+CC3D-CC3E,U+CC45,U+CD08,U+CE20,U+CEE4,U+D074,U+D0A4,U+D0DD,U+D2B9,U+D3B8,U+D3C9,U+D488,U+D544,U+D559,U+D56D,U+D588,U+D615,U+D648,U+D655,U+D658,U+D65C}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.89-DOzqWPpX.woff2)format("woff2-variations");unicode-range:U+D,U+7C,U+AC10,U+AC15,U+AC74,U+AC80,U+AC83,U+ACC4,U+AD11,U+AD50,U+AD6D,U+ADFC,U+AE00,U+AE08,U+AE4C,U+B0A8,U+B124,U+B144,U+B178,U+B274,U+B2A5,U+B2E8,U+B2F9,U+B354,U+B370,U+B418,U+B41C,U+B4F1,U+B514,U+B798,U+B808,U+B824-B825,U+B8CC,U+B978,U+B9D0,U+B9E4,U+BAA9,U+BB3C,U+BC18,U+BC1C,U+BC30,U+BC84,U+BCF5,U+BCF8,U+BD84,U+BE0C,U+BE14,U+C0B0,U+C0C9,U+C0DD,U+C124,U+C2DD,U+C2E4,U+C2EC,U+C54C,U+C57C-C57D,U+C591,U+C5C5-C5C6,U+C5ED,U+C608,U+C640,U+C6B8,U+C6D4,U+C784,U+C7AC,U+C800-C801,U+C9C1,U+C9D1,U+CC28,U+CC98,U+CC9C,U+CCAD,U+CD5C,U+CD94,U+CD9C,U+CDE8,U+CE68,U+CF54,U+D0DC,U+D14C,U+D1A0,U+D1B5,U+D2F0,U+D30C,U+D310,U+D398,U+D45C,U+D50C,U+D53C,U+D560,U+D568,U+D589,U+D604,U+D6C4,U+D788}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.90-BF7RiZjm.woff2)format("woff2-variations");unicode-range:U+AC04,U+AC1C,U+AC70,U+AC8C,U+ACBD,U+ACF5,U+ACFC,U+AD00,U+AD6C,U+ADF8,U+B098,U+B0B4,U+B294,U+B2C8,U+B300,U+B3C4,U+B3D9,U+B4DC,U+B4E4,U+B77C,U+B7EC,U+B85D,U+B97C,U+B9C8,U+B9CC,U+BA54,U+BA74,U+BA85,U+BAA8,U+BB34,U+BB38,U+BBF8,U+BC14,U+BC29,U+BC88,U+BCF4,U+BD80,U+BE44,U+C0C1,U+C11C,U+C120,U+C131,U+C138,U+C18C,U+C218,U+C2B5,U+C2E0,U+C544,U+C548,U+C5B4,U+C5D0,U+C5EC,U+C5F0,U+C601,U+C624,U+C694,U+C6A9,U+C6B0,U+C6B4,U+C6D0,U+C704,U+C720,U+C73C,U+C740,U+C744,U+C74C,U+C758,U+C77C,U+C785,U+C788,U+C790-C791,U+C7A5,U+C804,U+C815,U+C81C,U+C870,U+C8FC,U+C911,U+C9C4,U+CCB4,U+CE58,U+CE74,U+D06C,U+D0C0,U+D130,U+D2B8,U+D3EC,U+D504,U+D55C,U+D569,U+D574,U+D638,U+D654,U+D68C}@font-face{font-family:Pretendard Variable;font-style:normal;font-display:swap;font-weight:45 920;src:url(/assets/PretendardVariable.subset.91-Csm0YNoH.woff2)format("woff2-variations");unicode-range:U+20-22,U+27-2A,U+2C-39,U+3A-3B,U+3F,U+41-4E,U+4F-5D,U+61-7B,U+7D,U+A0-A1,U+AB,U+AD-AE,U+B7,U+BB,U+BF,U+2013-2014,U+201C-201D,U+2122,U+AC00,U+ACE0,U+AE30,U+B2E4,U+B85C,U+B9AC,U+C0AC,U+C2A4,U+C2DC,U+C774,U+C778,U+C9C0,U+D558}:root{--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--modal-max-h:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 3rem);--p-accent:#007d58;--p-accent-rgb:0, 125, 88;--p-accent-deep:#00694a;--p-accent-deeper:#0a5a42;--p-accent-tint:#dff5ec;--p-accent-bright:#00a878;--p-accent-bright-rgb:0, 168, 120;--p-highlight:#b8860b;--p-highlight-deep:#8b6508;--p-highlight-bright:#d4af37;--p-highlight-bright-rgb:212, 175, 55;--p-ink:#111;--p-ink-2:#5c6b64;--p-ink-3:#888;--p-paper:#fff;--p-paper-sunken:#f8f9fb;--p-red:#c0392b;--p-rose:#b5564e;--p-green:#10b981;--p-neutral-50:#fafafa;--p-neutral-100:#f1f3f5;--p-neutral-200:#e5e5ea;--p-neutral-400:#c7c9cc;--p-pink:#c2517e;--p-pink-deep:#a03a64;--p-pink-tint:#fbeff4;--p-blue:#4a6fa5;--p-amber:#b07a2a;--p-amber-deep:#92400e;--bg-primary:var(--p-paper-sunken);--bg-secondary:var(--p-paper);--text-primary:var(--p-ink);--text-secondary:var(--p-ink-2);--text-light:var(--p-ink-3);--text-on-accent:var(--p-paper);--accent-primary:var(--p-accent);--accent-deep:var(--p-accent-deep);--accent-deeper:var(--p-accent-deeper);--accent-tint:var(--p-accent-tint);--accent-bright:var(--p-accent-bright);--accent-soft:rgba(var(--p-accent-rgb), .05);--border-light:rgba(var(--p-accent-rgb), .08);--success:var(--p-green);--danger:var(--p-red);--accent-red:var(--p-rose);--surface-muted:var(--p-neutral-50);--surface-sunken:var(--p-neutral-100);--border-neutral:var(--p-neutral-200);--text-disabled:var(--p-neutral-400);--chart-muted:var(--p-neutral-400);--cycle-accent:var(--p-pink);--cycle-accent-deep:var(--p-pink-deep);--cycle-tint:var(--p-pink-tint);--sleep-accent:var(--p-blue);--warning:var(--p-amber);--warning-deep:var(--p-amber-deep);--highlight:var(--p-highlight);--highlight-deep:var(--p-highlight-deep);--highlight-bright:var(--p-highlight-bright);--highlight-glow:rgba(var(--p-highlight-bright-rgb), .07);--highlight-border:rgba(var(--p-highlight-bright-rgb), .2);--font-body:"Pretendard Variable", "Pretendard", "Apple SD Gothic Neo", "Noto Sans KR", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-heading:var(--font-body);--font-brand:Georgia, "Times New Roman", serif;--fs-10:.625rem;--fs-11:.6875rem;--fs-12:.75rem;--fs-13:.8125rem;--fs-14:.875rem;--fs-16:1rem;--fs-18:1.125rem;--fs-22:1.375rem;--fs-28:1.75rem;--fs-32:2rem;--fs-36:2.25rem;--fs-40:2.5rem;--fs-48:3rem;--fs-56:3.5rem;--fs-72:4.5rem;--shadow-sm:0 2px 8px #0b221608;--shadow-md:0 8px 30px #0b22160d;--shadow-lg:0 16px 40px #0b221612;--radius-md:12px;--radius-lg:20px;--radius-xl:20px;--radius-full:9999px;--transition-smooth:all .4s cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box;margin:0;padding:0}input,select,textarea{font-size:var(--fs-16)}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text-primary);font-weight:600;line-height:1.2}a{color:inherit;text-decoration:none}.glass-panel{-webkit-backdrop-filter:blur(16px);box-shadow:var(--shadow-md);border-radius:var(--radius-lg);background:#ffffffd9;border:1px solid #007d5814}.text-gold{color:var(--highlight)}.text-emerald{color:var(--accent-primary)!important}.text-mint{color:var(--success)!important}.bg-emerald{background-color:var(--accent-primary)!important;color:#fff!important}.heading-lg{font-size:var(--fs-48);letter-spacing:-.02em}@media (width<=768px){.heading-lg{font-size:var(--fs-36)}}.heading-md{font-size:var(--fs-32);letter-spacing:-.01em}.text-body{font-size:var(--fs-18);color:var(--text-secondary)}.btn{border-radius:var(--radius-full);font-weight:500;font-family:var(--font-body);transition:var(--transition-smooth);cursor:pointer;font-size:var(--fs-16);border:none;justify-content:center;align-items:center;gap:.4rem;padding:.875rem 1.75rem;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deeper));color:var(--text-on-accent);box-shadow:0 4px 12px rgba(var(--p-accent-rgb), .3)}.btn-primary:hover{box-shadow:0 6px 16px rgba(var(--p-accent-rgb), .4);transform:translateY(-2px)}.btn-outline{border:1px solid var(--accent-primary);color:var(--accent-primary);background:0 0}.btn-outline:hover{background:var(--accent-soft)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeIn}.delay-300{animation-delay:.3s}.quick-log-switcher{white-space:nowrap;scrollbar-width:none;-webkit-overflow-scrolling:touch;z-index:90;align-items:center;gap:8px;width:100%;padding:.65rem 1.25rem;display:flex;position:relative;overflow-x:auto;box-shadow:0 1px 4px #00000005;background:var(--bg-secondary)!important;border-bottom:1px solid var(--border-light)!important;margin-top:56px!important}.quick-log-switcher::-webkit-scrollbar{display:none}.quick-switch-btn{cursor:pointer;align-items:center;gap:4px;display:inline-flex;font-size:var(--fs-13)!important;background:var(--bg-secondary)!important;color:var(--text-secondary)!important;transition:var(--transition-smooth)!important;border:1.5px solid #007d581f!important;border-radius:20px!important;padding:6px 14px!important;font-weight:500!important}.quick-switch-btn:hover{transform:translateY(-1px);color:var(--accent-primary)!important;background:#007d5808!important;border-color:#007d5840!important}.quick-switch-btn.active{border:1.5px solid var(--accent-primary)!important;color:var(--accent-primary)!important;background:#007d5814!important;font-weight:700!important;box-shadow:0 2px 8px #007d5814!important}@media (width>=769px){.quick-log-switcher{justify-content:center!important;gap:24px!important;padding:.8rem 2rem!important}.quick-switch-btn{box-shadow:none!important;font-size:var(--fs-14)!important;background:0 0!important;border:none!important;border-radius:0!important;padding:8px 4px!important;font-weight:500!important;transition:color .2s!important;position:relative!important}.quick-switch-btn:hover{color:var(--accent-primary)!important;background:0 0!important;transform:none!important}.quick-switch-btn.active{color:var(--accent-primary)!important;box-shadow:none!important;background:0 0!important;border:none!important;font-weight:800!important}.quick-switch-btn.active:after{content:""!important;background:var(--accent-primary)!important;border-radius:2px!important;height:3px!important;display:block!important;position:absolute!important;bottom:-6px!important;left:0!important;right:0!important}.quick-switch-btn .tab-emoji{display:none!important}}.header-emoji{display:none!important}.mshell{justify-content:center;animation:.25s ease-out mshellFadeIn;display:flex;position:fixed;inset:0}.mshell:before{content:"";pointer-events:none;-webkit-backdrop-filter:blur(var(--mshell-blur,0px));position:absolute;inset:0}@keyframes mshellFadeIn{0%{opacity:0}to{opacity:1}}.mshell-panel{box-sizing:border-box;width:100%;position:relative}.mshell--center{padding:calc(var(--safe-top) + 1rem) 1rem calc(var(--safe-bottom) + 1rem);--mshell-blur:4px;background:#141c1873;align-items:center}.mshell--center .mshell-panel{max-height:var(--modal-max-h);-webkit-overflow-scrolling:touch;overflow-y:auto}.mshell--sheet{--mshell-blur:3px;background:#141c186b;align-items:flex-end}.mshell--sheet .mshell-panel{max-height:calc(100dvh - var(--safe-top) - 2.5rem);-webkit-overflow-scrolling:touch;padding-bottom:var(--safe-bottom);overflow-y:auto}.mshell--page{background:var(--bg-primary)}.mshell--page .mshell-panel{-webkit-overflow-scrolling:touch;height:100%;padding-top:var(--safe-top);padding-bottom:calc(var(--safe-bottom) + 40px);overflow-y:auto}@keyframes stepIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes stepOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-40px)}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes quizPulseGlow{0%,to{box-shadow:0 0 #007d5840}50%{box-shadow:0 0 0 8px #007d5800}}.quiz-overlay{--accent-soft:#007d580f;--border-light:#007d581f;z-index:1000;-webkit-backdrop-filter:blur(8px);background:#0a0a0a73;justify-content:center;align-items:center;padding:1rem;animation:.35s ease-out overlayFadeIn;display:flex;position:fixed;inset:0}.quiz-container{-webkit-backdrop-filter:blur(32px);border-radius:var(--radius-lg);background:#fffffffa;border:1px solid #007d582e;flex-direction:column;width:100%;max-width:640px;max-height:92vh;padding:2.25rem 2rem 0;animation:.45s cubic-bezier(.16,1,.3,1) forwards stepIn;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 64px #0b22161f,0 2px 12px #007d580a}.quiz-scroll-body{flex:1;min-height:0;padding-bottom:.5rem;overflow:hidden auto}.quiz-scroll-body::-webkit-scrollbar{width:5px}.quiz-scroll-body::-webkit-scrollbar-track{background:0 0}.quiz-scroll-body::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#007d5833}.quiz-header{flex-direction:column;gap:.75rem;margin-bottom:1.75rem;display:flex}.quiz-header-row{justify-content:space-between;align-items:center;display:flex}.quiz-header .close-btn{border-radius:var(--radius-full);background:var(--surface-sunken);width:36px;height:36px;color:var(--text-secondary);font-size:var(--fs-18);cursor:pointer;transition:var(--transition-smooth);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.quiz-header .close-btn:hover{color:var(--accent-primary);background:#007d581a;transform:rotate(90deg)}.step-indicator{font-family:var(--font-body);font-size:var(--fs-13);color:var(--accent-primary);letter-spacing:.04em;white-space:nowrap;font-weight:700}.progress-bar{border-radius:var(--radius-full);background:#007d5814;flex:1;height:5px;overflow:hidden}.progress-fill{border-radius:var(--radius-full);background:linear-gradient(90deg, var(--accent-primary), var(--success), var(--accent-primary));background-size:200% 100%;height:100%;transition:width .6s cubic-bezier(.16,1,.3,1);animation:3s ease-in-out infinite shimmer}.step-icon{width:48px;height:48px;color:var(--accent-primary);background:#007d580f;border-radius:14px;justify-content:center;align-items:center;margin-bottom:1rem;display:flex}.quiz-step-header{margin-bottom:1.5rem}.quiz-body{min-height:200px}.input-label{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);letter-spacing:.02em;margin-bottom:.45rem;font-weight:700;display:block}.select-row{gap:.5rem;display:flex}.select-btn{border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font-family:var(--font-body);font-size:var(--fs-16);cursor:pointer;transition:var(--transition-smooth);border:1.5px solid #007d5826;flex:1;padding:.8rem 1rem;font-weight:600}.select-btn:hover{background:#007d5805;border-color:#007d5873}.select-btn.selected{font-weight:700;border-color:var(--accent-primary)!important;background:var(--accent-primary)!important;color:var(--text-on-accent)!important;box-shadow:0 4px 12px #007d5833!important}.input-wrapper{align-items:center;display:flex;position:relative}.input-wrapper .quiz-input{padding-right:3rem}.input-unit{font-family:var(--font-body);font-size:var(--fs-14);color:var(--accent-primary);pointer-events:none;font-weight:600;position:absolute;right:1rem}.input-fields{flex-direction:column;gap:.5rem;display:flex}.quiz-step{animation:.5s cubic-bezier(.16,1,.3,1) forwards stepIn}.quiz-step.exiting{animation:.35s cubic-bezier(.7,0,.84,0) forwards stepOut}.quiz-question{font-family:var(--font-body);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.02em;margin-bottom:.5rem;font-weight:800;line-height:1.35}.quiz-subtitle{font-family:var(--font-body);font-size:var(--fs-16);color:var(--text-secondary);margin-bottom:1.75rem;line-height:1.65}.option-grid{grid-template-columns:1fr;gap:.75rem;margin-bottom:1.5rem;display:grid}.option-card{border-radius:var(--radius-md);background:var(--bg-secondary);cursor:pointer;transition:var(--transition-smooth);-webkit-user-select:none;user-select:none;border:1.5px solid #007d581f;align-items:center;gap:.9rem;padding:1.1rem 1.25rem;display:flex}.option-card:hover{border-color:#007d5873;transform:translateY(-2px);box-shadow:0 8px 20px #007d5814,0 2px 6px #00000005}.option-card:active{transform:translateY(0)}.option-card.selected{border-color:var(--accent-primary)!important;background:#007d580f!important;box-shadow:0 0 0 3px #007d581f,0 6px 18px #007d5814!important}.option-icon{width:42px;height:42px;color:var(--accent-primary);font-size:var(--fs-18);transition:var(--transition-smooth);background:#007d580f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.option-card.selected .option-icon{background:var(--accent-primary)!important;color:var(--text-on-accent)!important}.option-label{font-family:var(--font-body);font-size:var(--fs-16);color:var(--text-primary);font-weight:700;line-height:1.35}.option-desc{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);margin-top:.15rem;line-height:1.5}.input-group{margin-bottom:1.25rem}.quiz-input{width:100%;font-family:var(--font-body);font-size:var(--fs-16);color:var(--text-primary);background:var(--bg-secondary);border-radius:var(--radius-md);transition:var(--transition-smooth);border:1.5px solid #007d582e;outline:none;padding:.85rem 1rem}.quiz-input::placeholder{color:var(--text-light)}.quiz-input:focus{border-color:var(--accent-primary);background:var(--bg-secondary);box-shadow:0 0 0 3px #007d581a}.input-row{grid-template-columns:repeat(2,1fr);gap:1.25rem 1.5rem;display:grid}.input-row .input-group{margin-bottom:0}.slider-group{margin-bottom:1.5rem}.quiz-slider{appearance:none;border-radius:var(--radius-full);cursor:pointer;width:100%;height:6px;transition:var(--transition-smooth);background:#007d581f;outline:none}.quiz-slider::-webkit-slider-thumb{appearance:none;background:var(--accent-primary);border:3px solid var(--bg-secondary);cursor:grab;width:22px;height:22px;transition:var(--transition-smooth);border-radius:50%;box-shadow:0 2px 8px #007d584d}.quiz-slider::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 4px 14px #007d5866}.quiz-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.05)}.quiz-slider::-moz-range-thumb{background:var(--accent-primary);border:3px solid var(--bg-secondary);cursor:grab;width:22px;height:22px;transition:var(--transition-smooth);border-radius:50%;box-shadow:0 2px 8px #007d584d}.quiz-slider::-moz-range-thumb:hover{transform:scale(1.15)}.quiz-slider::-moz-range-track{border-radius:var(--radius-full);background:#007d581f;height:6px}.slider-labels{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);justify-content:space-between;margin-top:.45rem;display:flex}.slider-value{text-align:center;font-family:var(--font-body);font-size:var(--fs-36);color:var(--accent-primary);margin-top:.6rem;font-weight:800}.quiz-nav{background:#fffffffa;border-top:1px solid #007d581f;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;margin-top:0;padding:1.25rem 0 1.5rem;display:flex}.quiz-nav .btn-back{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-smooth);white-space:nowrap;background:0 0;border:1.5px solid #007d5826;flex-shrink:0;align-items:center;gap:.4rem;padding:.7rem 1.3rem;font-weight:600;display:inline-flex}.quiz-nav .btn-back:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:#007d580d}.quiz-nav .btn-next{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-on-accent);background:var(--accent-primary);border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-smooth);white-space:nowrap;border:none;flex-shrink:0;align-items:center;gap:.4rem;padding:.75rem 1.75rem;font-weight:700;display:inline-flex;box-shadow:0 4px 14px #007d5833}.quiz-nav .btn-next:hover{background:#00a878;transform:translateY(-2px);box-shadow:0 8px 22px #007d584d}.quiz-nav .btn-next:active{transform:translateY(0)}.quiz-nav .btn-next:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.step-dots{flex:1;justify-content:center;align-items:center;gap:.35rem;margin-top:0;display:flex;overflow:hidden}.step-dot{width:6px;height:6px;transition:var(--transition-smooth);background:#007d5826;border-radius:50%;flex-shrink:0}.step-dot.active{border-radius:var(--radius-full);background:var(--accent-primary);width:20px;animation:2s ease-in-out infinite quizPulseGlow}.step-dot.completed{background:var(--accent-primary)}@media (width>=520px){.option-grid{grid-template-columns:repeat(2,1fr)}.quiz-question{font-size:var(--fs-28)}}@media (width<=480px){.quiz-container{max-height:calc(100dvh - 24px - var(--safe-top) - var(--safe-bottom));margin:calc(12px + var(--safe-top)) auto calc(12px + var(--safe-bottom));border-radius:16px;padding:1.15rem 1rem 0}.quiz-step-header{margin-bottom:.75rem}.quiz-question{font-size:var(--fs-18);margin-bottom:.35rem;line-height:1.3}.quiz-subtitle{font-size:var(--fs-13);margin-bottom:.85rem;line-height:1.45}.option-grid{gap:.5rem;margin-bottom:.85rem}.option-card{gap:.65rem;padding:.65rem .85rem}.option-icon{width:32px;height:32px;font-size:var(--fs-14);border-radius:6px}.option-label{font-size:var(--fs-14)}.option-desc{font-size:var(--fs-12);margin-top:.05rem}.input-row{grid-template-columns:repeat(2,1fr);gap:.75rem .85rem}.quiz-input{font-size:var(--fs-14);padding:.7rem .85rem}.input-unit{font-size:var(--fs-13)}.quiz-nav{padding:.85rem 0 calc(.85rem + var(--safe-bottom))}.quiz-nav .btn-back{font-size:var(--fs-14);padding:.6rem 1rem}.quiz-nav .btn-next{font-size:var(--fs-14);padding:.6rem 1.1rem}.step-dots{gap:.25rem}.step-dot{width:5px;height:5px}.step-dot.active{width:16px}.slider-value{font-size:var(--fs-22);margin-top:.4rem}.slider-labels{margin-top:.35rem}}@keyframes countUp{0%{opacity:0;filter:blur(8px);transform:scale(.4)}50%{opacity:.6;filter:blur(2px);transform:scale(1.08)}to{opacity:1;filter:blur();transform:scale(1)}}@keyframes ringDraw{0%{stroke-dashoffset:565px}to{stroke-dashoffset:var(--ring-offset,100)}}@keyframes barGrow{0%{width:0%}to{width:var(--bar-fill,0%)}}@keyframes cardSlideUp{0%{opacity:0;transform:translateY(32px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes resultPulseGlow{0%,to{box-shadow:0 0 #007d5833}50%{box-shadow:0 0 28px 6px #007d581a}}@keyframes badgePop{0%{opacity:0;transform:scale(.6)translateY(8px)}60%{transform:scale(1.1)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}.result-container{--accent-soft:#007d580f;--border-light:#007d581f;background:var(--bg-secondary);border-radius:var(--radius-lg);width:100%;max-width:720px;animation:.6s cubic-bezier(.16,1,.3,1) .15s both containerReveal;position:relative;overflow:hidden;box-shadow:0 24px 80px #0000001f,0 0 0 1px #007d5814}@keyframes containerReveal{0%{opacity:0;transform:translateY(40px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.result-header{-webkit-backdrop-filter:blur(12px);z-index:10;background:#fffffff2;border-bottom:1px solid #007d5814;justify-content:space-between;align-items:center;padding:1.125rem 1.5rem;display:flex;position:sticky;top:0}.result-header button{border-radius:var(--radius-full);background:var(--surface-sunken);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);font-size:var(--fs-18);border:none;justify-content:center;align-items:center;display:inline-flex}.result-header button:hover{color:var(--accent-primary);background:#007d581a;transform:scale(1.05)}.result-hero{text-align:center;background:radial-gradient(at 50% 0,#007d581f 0%,#0000 65%),linear-gradient(#007d5808 0%,#0000 100%);flex-direction:column;align-items:center;padding:3rem 2rem 2.5rem;display:flex}.age-reveal{justify-content:center;align-items:center;width:240px;height:240px;margin-bottom:1.5rem;animation:3s ease-in-out 1.6s infinite resultPulseGlow;display:flex;position:relative}.age-center{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute}.age-ring-svg{width:100%;height:100%;position:absolute;inset:0}.age-ring-progress{filter:drop-shadow(0 0 6px #007d5840);transition:stroke-dashoffset 2s cubic-bezier(.25,.46,.45,.94)}.age-number{font-family:var(--font-body);font-size:var(--fs-72);letter-spacing:-.03em;background:linear-gradient(135deg, var(--accent-deeper) 0%, var(--accent-primary) 50%, var(--success) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:800;line-height:1;animation:1s cubic-bezier(.16,1,.3,1) .6s both countUp}.age-label{font-family:var(--font-body);font-size:var(--fs-13);letter-spacing:.14em;text-transform:uppercase;color:var(--text-light);margin-top:.25rem;font-weight:700;animation:.8s ease-out .9s both countUp}.age-comparison{border-radius:var(--radius-lg);background:var(--bg-primary);border:1px solid #007d581a;justify-content:center;align-items:stretch;gap:1.5rem;width:calc(100% - 4rem);margin:0 2rem;padding:1.75rem 2rem;animation:.7s cubic-bezier(.16,1,.3,1) 1s both cardSlideUp;display:flex}.comparison-item{flex-direction:column;flex:1;align-items:center;gap:.25rem;display:flex;position:relative}.comparison-item+.comparison-item:before{content:"";background:linear-gradient(180deg, transparent, #007d5814 30%, var(--accent-primary) 50%, #007d5814 70%, transparent);width:1px;position:absolute;top:10%;bottom:10%;left:-.75rem}.comparison-value{font-family:var(--font-body);font-size:var(--fs-32);color:var(--text-primary);font-weight:800;line-height:1.15}.comparison-label{font-family:var(--font-body);font-size:var(--fs-12);letter-spacing:.06em;text-transform:uppercase;color:var(--text-light);font-weight:600}.comparison-value.bio{color:var(--accent-primary)}.comparison-value.chrono{color:var(--text-primary)}.comparison-divider{justify-content:center;align-items:center;padding:0 .5rem;display:flex}.vs-text{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);letter-spacing:.08em;font-weight:600}.comparison-section{padding:1rem 0 0}.result-section.visible{animation:.7s cubic-bezier(.16,1,.3,1) forwards cardSlideUp}.section-desc{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);margin-bottom:1.25rem;line-height:1.6}.health-bar-header{justify-content:space-between;align-items:center;display:flex}.result-close-btn{border-radius:var(--radius-full);background:var(--surface-sunken);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);border:none;justify-content:center;align-items:center;display:inline-flex}.result-close-btn:hover{color:var(--accent-primary);background:#007d581a;transform:scale(1.05)}.tip-content{flex-direction:column;gap:.35rem;display:flex}.age-badge{border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-13);align-items:center;gap:.35rem;margin-top:1rem;padding:.4rem 1rem;font-weight:700;animation:.6s cubic-bezier(.34,1.56,.64,1) 1.3s both badgePop;display:inline-flex}.age-badge.badge-young{color:#1a8a4a;background:#22aa5514;border:1px solid #22aa552e}.age-badge.badge-old{color:#c06720;background:#e8833a1a;border:1px solid #e8833a33}.age-badge.badge-neutral{color:var(--accent-primary);background:#007d5814;border:1px solid #007d582e}.result-section{opacity:0;padding:2rem 2rem 1rem}.result-section+.result-section{border-top:1px solid #007d5814}.section-title{font-family:var(--font-body);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:.5rem;margin-bottom:1.25rem;font-weight:700;display:flex}.section-title:before{content:"";background:var(--accent-primary);border-radius:2px;flex-shrink:0;width:4px;height:1.1em;display:inline-block}.health-bars{flex-direction:column;gap:1rem;padding-bottom:.5rem;display:flex}.health-bar-item{flex-direction:column;gap:.4rem;display:flex}.health-bar-label{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);justify-content:space-between;align-items:center;font-weight:600;display:flex}.health-bar-score{font-weight:700;font-size:var(--fs-13);font-variant-numeric:tabular-nums;color:var(--text-primary)}.health-bar-track{border-radius:var(--radius-full);background:var(--surface-sunken);border:1px solid #00000005;width:100%;height:10px;overflow:hidden}.health-bar-fill{border-radius:var(--radius-full);width:0%;height:100%;position:relative;overflow:hidden}.health-bar-fill:after{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff59 50%,#0000 100%) 0 0/200% 100%;animation:2.5s ease-in-out 1.4s infinite shimmer;position:absolute;inset:0}.health-bar-fill.score-high{background:linear-gradient(90deg, var(--accent-primary), var(--success), #34d399);animation-delay:.2s}.health-bar-fill.score-mid{background:linear-gradient(90deg,#047857,#059669,#a7f3d0);animation-delay:.35s}.health-bar-fill.score-low{background:linear-gradient(90deg,#d97706,#f59e0b,#fde68a);animation-delay:.5s}.health-bar-fill.score-excellent{background:linear-gradient(90deg, #059669, var(--success), #6ee7b7);animation-delay:.15s}.health-bar-item:first-child .health-bar-fill{animation-delay:.4s}.health-bar-item:nth-child(2) .health-bar-fill{animation-delay:.55s}.health-bar-item:nth-child(3) .health-bar-fill{animation-delay:.7s}.health-bar-item:nth-child(4) .health-bar-fill{animation-delay:.85s}.health-bar-item:nth-child(5) .health-bar-fill{animation-delay:1s}.health-bar-item:nth-child(6) .health-bar-fill{animation-delay:1.15s}.tips-grid{grid-template-columns:repeat(2,1fr);gap:1rem;padding-bottom:.5rem;display:grid}.tip-card{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(14px);transition:var(--transition-smooth);cursor:default;opacity:0;background:#fffffff2;border:1px solid #007d5814;flex-direction:column;gap:.75rem;padding:1.25rem;animation:.65s cubic-bezier(.16,1,.3,1) forwards cardSlideUp;display:flex;box-shadow:0 4px 16px #0b22160a,inset 0 1px #fffc}.tip-card:first-child{animation-delay:.6s}.tip-card:nth-child(2){animation-delay:.75s}.tip-card:nth-child(3){animation-delay:.9s}.tip-card:nth-child(4){animation-delay:1.05s}.tip-card:nth-child(5){animation-delay:1.2s}.tip-card:nth-child(6){animation-delay:1.35s}.tip-card:hover{border-color:#007d5833;transform:translateY(-3px);box-shadow:0 8px 28px #007d5814,inset 0 1px #ffffffe6}.tip-icon{border-radius:var(--radius-md);width:44px;height:44px;color:var(--accent-primary);font-size:var(--fs-18);background:#007d580f;border:1px solid #007d5814;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tip-title{font-family:var(--font-body);font-size:var(--fs-16);color:var(--text-primary);font-weight:700;line-height:1.3}.tip-desc{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);font-weight:500;line-height:1.55}.result-cta{background:linear-gradient(#0000 0%,#007d5805 100%);border-top:1px solid #007d5814;flex-direction:column;align-items:center;gap:.75rem;padding:2rem 2rem 2.5rem;display:flex}.share-btn{border-radius:var(--radius-full);background:var(--accent-primary);width:100%;max-width:360px;color:var(--text-on-accent);font-family:var(--font-body);font-size:var(--fs-16);letter-spacing:.02em;cursor:pointer;transition:var(--transition-smooth);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.9375rem 1.75rem;font-weight:700;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px 16px #007d5833}.share-btn:before{content:"";opacity:0;background:linear-gradient(90deg,#0000,#fff3,#0000) 0 0/200% 100%;transition:opacity .4s;position:absolute;inset:0}.share-btn:hover{background:#00a878;transform:translateY(-2px);box-shadow:0 8px 24px #007d584d}.share-btn:hover:before{opacity:1;animation:1.8s ease-in-out infinite shimmer}.share-btn:active{transform:translateY(0);box-shadow:0 2px 8px #007d5826}.retake-btn{border-radius:var(--radius-full);width:100%;max-width:360px;color:var(--accent-primary);font-family:var(--font-body);font-size:var(--fs-14);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:1.5px solid #007d5833;justify-content:center;align-items:center;gap:.4rem;padding:.8125rem 1.5rem;font-weight:600;display:inline-flex}.retake-btn:hover{border-color:var(--accent-primary);background:#007d580d;transform:translateY(-1px)}.retake-btn:active{transform:translateY(0)}@media (width<=640px){.result-hero{padding:2.5rem 1.25rem 2rem}.age-reveal{width:180px;height:180px}.age-number{font-size:var(--fs-56)}.age-comparison{gap:1rem;margin:0 1.25rem;padding:1.25rem 1rem}.comparison-value{font-size:var(--fs-28)}.result-section{padding:1.5rem 1.25rem .75rem}.tips-grid{grid-template-columns:1fr;gap:.75rem}.tip-card{flex-direction:row;align-items:flex-start;padding:1rem}.result-cta{padding:1.5rem 1.25rem 2rem}.section-title{font-size:var(--fs-22)}.result-header{padding:.875rem 1.25rem}}@media (width<=380px){.age-reveal{width:160px;height:160px}.age-number{font-size:var(--fs-48)}.comparison-value{font-size:var(--fs-22)}.age-comparison{flex-direction:column;align-items:center;gap:1rem}}.detail-overlay{z-index:2500;-webkit-backdrop-filter:blur(10px);background:#1a1a1a59;justify-content:center;align-items:center;padding:2rem;animation:.35s forwards overlayFadeIn;display:flex;position:fixed;inset:0}.detail-container--inline{max-height:none;box-shadow:none;border:none;border-radius:0;overflow:visible}.detail-container{background:var(--bg-secondary);border-radius:var(--radius-lg);overscroll-behavior:contain;-ms-overflow-style:none;scrollbar-width:thin;scrollbar-color:rgba(var(--p-accent-rgb), .12) transparent;--accent-soft:var(--accent-tint);width:100%;max-width:580px;max-height:88vh;animation:.5s cubic-bezier(.34,1.56,.64,1) forwards modalSlideUp;position:relative;overflow-y:auto;box-shadow:0 24px 64px #0000001f,0 8px 24px #0000000f,0 0 0 1px #ffffff1a}.detail-container::-webkit-scrollbar{width:5px}.detail-container::-webkit-scrollbar-track{background:0 0}.detail-container::-webkit-scrollbar-thumb{background:rgba(var(--p-accent-rgb), .12);border-radius:var(--radius-full)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.detail-close{z-index:10;border-radius:var(--radius-full);border:1px solid var(--border-light);-webkit-backdrop-filter:blur(8px);width:36px;height:36px;color:var(--text-secondary);font-size:var(--fs-18);cursor:pointer;transition:var(--transition-smooth);background:#0b1a12d9;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:1rem;right:1rem;box-shadow:0 4px 12px #0000004d}.detail-close:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:rgba(var(--p-accent-rgb), .12);transform:rotate(90deg)}.detail-hero{text-align:center;background:radial-gradient(ellipse 70% 50% at 50% 30%, #007d580a 0%, transparent 70%), var(--bg-secondary);border-bottom:1px solid var(--border-light);padding:2.5rem 2rem 1.75rem;animation:.5s cubic-bezier(.16,1,.3,1) .15s both detailContentFadeIn}.detail-hero .detail-emoji{font-size:var(--fs-56);filter:drop-shadow(0 4px 8px #0000000f);margin-bottom:1rem;line-height:1;animation:.5s cubic-bezier(.34,1.56,.64,1) .3s both emojiPop;display:inline-block}@keyframes emojiPop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.detail-name{font-family:var(--font-heading);font-size:var(--fs-28);color:var(--text-primary);letter-spacing:-.02em;margin-bottom:.25rem;font-weight:700;line-height:1.25}.detail-name-en{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-light);text-transform:capitalize;margin-bottom:.85rem;font-weight:400}.detail-hero .evidence-stars{align-items:center;gap:3px;display:inline-flex}.detail-hero .star-filled{color:var(--accent-primary);font-size:var(--fs-16);filter:drop-shadow(0 1px 3px #007d5826)}.detail-hero .star-empty{color:var(--border-light);font-size:var(--fs-16);opacity:.55}.evidence-label{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);margin-left:.35rem;font-weight:500}.detail-section{border-bottom:1px solid var(--border-light);padding:1.5rem 2rem;animation:.5s cubic-bezier(.16,1,.3,1) both detailContentFadeIn}.detail-section:nth-child(3){animation-delay:.2s}.detail-section:nth-child(4){animation-delay:.26s}.detail-section:nth-child(5){animation-delay:.32s}.detail-section:nth-child(6){animation-delay:.38s}.detail-section:nth-child(7){animation-delay:.44s}.detail-section:nth-child(8){animation-delay:.5s}.detail-section:nth-child(9){animation-delay:.56s}.detail-section:nth-child(10){animation-delay:.62s}.detail-section:last-child{border-bottom:none}@keyframes detailContentFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.detail-section-title{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.01em;margin-bottom:.85rem;padding-left:.85rem;font-weight:600;position:relative}.detail-section-title:before{content:"";border-radius:var(--radius-full);background:linear-gradient(180deg, var(--accent-primary), rgba(var(--p-accent-rgb), .12));width:3px;position:absolute;top:.15em;bottom:.15em;left:0}.detail-description{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);line-height:1.7}.detail-info-grid{grid-template-columns:repeat(2,1fr);gap:.85rem;display:grid}.detail-info-item{border-radius:var(--radius-md);background:var(--bg-primary);border:1px solid var(--border-light);transition:var(--transition-smooth);padding:.9rem}.detail-info-item:hover{border-color:#007d581f;box-shadow:0 2px 12px #007d580a}.detail-info-label{font-family:var(--font-body);font-size:var(--fs-10);text-transform:uppercase;letter-spacing:.06em;color:var(--text-light);margin-bottom:.35rem;font-weight:600;display:block}.detail-info-value{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);font-weight:500;line-height:1.4}.synergy-list{flex-direction:column;gap:.65rem;display:flex}.synergy-item{border-radius:var(--radius-md);background:var(--bg-primary);border:1px solid var(--border-light);transition:var(--transition-smooth);align-items:flex-start;gap:.75rem;padding:.85rem 1rem;display:flex}.synergy-item:hover{background:#007d580a;border-color:#007d581f}.synergy-item .synergy-icon{font-size:var(--fs-22);flex-shrink:0;margin-top:.1rem;line-height:1}.synergy-item-content{flex:1;min-width:0}.synergy-name{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);margin-bottom:.2rem;font-weight:600}.synergy-reason{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);line-height:1.5}.synergy-header{align-items:center;gap:.4rem;margin-bottom:.2rem;display:flex}.synergy-arrow{color:var(--accent-primary);flex-shrink:0}.detail-tags{flex-wrap:wrap;gap:.5rem;display:flex}.detail-tag{border-radius:var(--radius-full);color:var(--accent-deep);font-family:var(--font-body);font-size:var(--fs-13);transition:var(--transition-smooth);background:#007d5814;padding:.3rem .75rem;font-weight:500;display:inline-block}.detail-tag:hover{background:#007d5826}.caution-box{border-radius:var(--radius-md);background:#007d580a;border:1px solid #007d581f;align-items:flex-start;gap:.75rem;padding:1rem 1.1rem;display:flex}.caution-icon{font-size:var(--fs-18);filter:drop-shadow(0 1px 2px #007d581f);flex-shrink:0;margin-top:.05rem;line-height:1}.caution-text{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);line-height:1.6}.caution-text strong{color:var(--accent-deep);font-weight:600}.deficiency-box{border-radius:var(--radius-md);background:#36a2eb0f;border:1px solid #36a2eb26;padding:1rem 1.1rem}.deficiency-box .detail-description{color:var(--text-secondary)}.overdose-box{border-radius:var(--radius-md);background:#ff9f430f;border:1px solid #ff9f432e;padding:1rem 1.1rem}.overdose-box .detail-description{color:var(--text-secondary)}.food-source-list{flex-direction:column;gap:0;display:flex}.food-source-item{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem 0;display:flex}.food-source-item:last-child{border-bottom:none}.food-source-name{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);flex-shrink:0;font-weight:500}.food-source-amount{font-family:var(--font-body);font-size:var(--fs-13);color:var(--accent-deep);text-align:right;white-space:nowrap;border-radius:var(--radius-full);background:#007d5814;padding:.2rem .6rem;font-weight:500}.detail-cta{flex-direction:column;gap:.65rem;padding:1.25rem 2rem 2rem;display:flex}.detail-cta-btn{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));width:100%;color:var(--text-on-accent);font-family:var(--font-body);font-size:var(--fs-14);letter-spacing:.01em;cursor:pointer;transition:var(--transition-smooth);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.9rem 1.5rem;font-weight:600;display:flex;box-shadow:0 4px 16px #007d5826}.detail-cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #007d5838}.detail-cta-btn:active{transform:translateY(0);box-shadow:0 2px 8px #007d581f}.detail-cta-btn .btn-icon{font-size:var(--fs-18)}.detail-cta .detail-cta-secondary{border-radius:var(--radius-full);border:1px solid var(--border-light);width:100%;color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-13);cursor:pointer;transition:var(--transition-smooth);background:0 0;justify-content:center;align-items:center;gap:.4rem;padding:.75rem 1.25rem;font-weight:500;display:flex}.detail-cta .detail-cta-secondary:hover{border-color:rgba(var(--p-accent-rgb), .12);color:var(--accent-deep);background:var(--accent-soft)}.detail-overlay.closing{animation:.3s forwards overlayFadeOut}.detail-overlay.closing .detail-container{animation:.3s cubic-bezier(.55,0,1,.45) forwards modalSlideDown}@keyframes overlayFadeOut{0%{opacity:1}to{opacity:0}}@keyframes modalSlideDown{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(30px)scale(.97)}}@media (width<=640px){.detail-overlay{align-items:flex-end;padding:0}.detail-container{border-radius:24px 24px 0 0;max-width:100%;height:auto;max-height:85vh;animation:.4s cubic-bezier(.16,1,.3,1) forwards modalSlideUpMobile;box-shadow:0 -10px 40px #0003}@keyframes modalSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.detail-hero{padding:2rem 1.25rem 1.5rem}.detail-hero .detail-emoji{font-size:var(--fs-48)}.detail-name{font-size:var(--fs-22)}.detail-section{padding:1.25rem}.detail-info-grid{grid-template-columns:1fr 1fr;gap:.65rem}.detail-cta{padding:1rem 1.25rem 1.75rem}.detail-close{top:.75rem;right:.75rem}}@media (width<=380px){.detail-info-grid{grid-template-columns:1fr}}.premium-scan-analyzer{animation:.6s cubic-bezier(.16,1,.3,1) both cardSlideUp;background:linear-gradient(135deg,#007d580a 0%,#007d5814 100%)!important;border:1.5px solid #007d5833!important;border-radius:18px!important;margin:1.25rem 1.5rem .5rem!important;padding:1.25rem!important;box-shadow:0 4px 15px #00000059,inset 0 1px #007d5814!important}.premium-scan-tag-card{font-family:var(--font-body)!important;border-radius:8px!important;padding:.75rem .9rem!important;transition:all .25s!important;box-shadow:0 2px 8px #00000005!important}.premium-scan-tag-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #007d580a!important}.premium-scan-tag-card.synergy{border-left:4px solid var(--success)!important;background:#34c75908!important;border-top:1px solid #34c7590f!important;border-bottom:1px solid #34c7590f!important;border-right:1px solid #34c7590f!important}.premium-scan-tag-card.warning{background:#ff6b6b08!important;border:1px solid #ff6b6b0f!important;border-left:4px solid #ff6b6b!important}.detail-scrollable-body{scrollbar-width:thin;scrollbar-color:rgba(var(--p-accent-rgb), .12) transparent;padding:1rem 1.5rem!important}.detail-scrollable-body::-webkit-scrollbar{width:4px}.detail-scrollable-body::-webkit-scrollbar-thumb{background:rgba(var(--p-accent-rgb), .12);border-radius:4px}.supplements-page{--accent-soft:var(--accent-tint);background-color:#f9f9fb;min-height:100vh;position:relative;overflow-x:hidden}.supplements-modal{background:#f9f9fb;border-radius:20px}.supplements-modal .supplements-page{min-height:0}.supplements-modal .category-tabs-wrapper,.supplements-modal .category-tabs{top:0}.supplements-hero-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.supplements-close-btn{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:#006b3f0f;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.supplements-close-btn:hover{color:var(--accent-primary);background:#006b3f1f}.supplements-header{z-index:100;-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-neutral);background:#ffffffe6;align-items:center;gap:1rem;padding:.875rem 1.5rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 12px #0000000d}.supplements-header .back-btn{width:40px;height:40px;font-size:var(--fs-18);cursor:pointer;transition:var(--transition-smooth);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;background:var(--bg-secondary)!important;color:var(--accent-primary)!important;border:1px solid #007d581f!important;border-radius:50%!important;box-shadow:0 2px 8px #007d5814!important}.supplements-header .back-btn:hover{background:var(--accent-tint)!important;color:var(--accent-deeper)!important;border-color:#007d5840!important;transform:translate(-2px)scale(1.04)!important;box-shadow:0 4px 12px #007d5826!important}.supplements-header .header-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.supplements-hero{text-align:center;background:0 0;margin-top:0;padding:1.75rem 1.5rem 1.5rem;animation:.7s cubic-bezier(.16,1,.3,1) forwards heroFadeIn}.hero-title{font-family:var(--font-heading);font-size:var(--fs-28);color:var(--text-primary);letter-spacing:-.02em;margin-bottom:.5rem;font-weight:700}.hero-desc{font-family:var(--font-body);font-size:var(--fs-16);color:var(--text-secondary);max-width:480px;margin:0 auto;line-height:1.6}.search-bar{border-radius:var(--radius-full);border:1px solid var(--border-neutral);max-width:420px;transition:var(--transition-smooth);background:#f4f4f4;align-items:center;gap:.5rem;margin:1.5rem auto 0;padding:.75rem 1rem;display:flex}.search-bar:focus-within{border-color:var(--accent-primary);background:var(--bg-secondary);box-shadow:0 0 0 3px #007d5814}.search-icon{color:var(--text-light);flex-shrink:0}.search-input{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.search-input::placeholder{color:var(--text-light)}.category-tabs-wrapper{top:calc(64px + var(--safe-top));z-index:90;-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-neutral);background:#f9f9fbeb;align-items:center;display:flex;position:sticky}.category-name{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.category-count{border-radius:var(--radius-full);background:var(--accent-soft);min-width:24px;height:24px;color:var(--accent-deep);font-family:var(--font-body);font-size:var(--fs-11);justify-content:center;align-items:center;padding:0 .5rem;font-weight:600;display:inline-flex}.category-icon{font-size:var(--fs-22)}.category-icon-lg{font-size:var(--fs-40)}.supplement-icon{font-size:var(--fs-32);filter:drop-shadow(0 2px 4px #0000000f);line-height:1}.view-detail{font-family:var(--font-body);font-size:var(--fs-12);color:var(--accent-primary);transition:var(--transition-smooth);align-items:center;gap:.2rem;font-weight:500;display:inline-flex}.supplement-card:hover .view-detail{color:var(--accent-deep)}.active-category-header{align-items:center;gap:1rem;padding:2rem 0 1.5rem;display:flex}.active-category-name{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);font-weight:600}.active-category-desc{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);margin-top:.25rem;line-height:1.5}.empty-state{text-align:center;color:var(--text-light);font-size:var(--fs-16);padding:4rem 1.5rem}.header-spacer{flex-shrink:0;width:40px}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.supplements-content{max-width:1200px;margin:0 auto;padding:0 1.5rem 4rem}.category-tabs{-ms-overflow-style:none;scrollbar-width:none;scroll-behavior:smooth;flex:1;gap:.5rem;padding:.875rem .5rem;animation:.5s cubic-bezier(.16,1,.3,1) forwards tabSlideIn;display:flex;overflow-x:auto}.category-tabs::-webkit-scrollbar{display:none}.category-tab{border-radius:var(--radius-full);border:1px solid var(--border-neutral);background:var(--bg-secondary);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-13);white-space:nowrap;cursor:pointer;transition:var(--transition-smooth);flex-shrink:0;align-items:center;gap:.375rem;padding:.5rem 1.15rem;font-weight:500;display:inline-flex}.category-tab:hover{color:var(--accent-primary);background:#007d580a;border-color:#007d5833}.category-tab.active{background:var(--accent-primary);color:var(--text-on-accent);border-color:#0000;box-shadow:0 4px 12px #007d581f}.category-tab.active:hover{box-shadow:0 6px 16px #007d5838}.category-tab-icon{font-size:var(--fs-16);line-height:1}@keyframes tabSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.category-section{margin-top:2.5rem;animation:.6s cubic-bezier(.16,1,.3,1) forwards cardFadeIn}.category-header{align-items:center;gap:.625rem;margin-bottom:.5rem;display:flex}.category-header h2{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.category-header .category-icon{font-size:var(--fs-22)}.category-header .count-badge{border-radius:var(--radius-full);background:var(--accent-soft);min-width:24px;height:24px;color:var(--accent-deep);font-family:var(--font-body);font-size:var(--fs-11);justify-content:center;align-items:center;padding:0 .5rem;font-weight:600;display:inline-flex}.category-desc{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-light);margin-bottom:1.25rem;line-height:1.5}.supplement-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}.supplement-card{background:var(--bg-secondary);border:1px solid var(--border-neutral);border-radius:var(--radius-lg);cursor:pointer;min-width:0;transition:var(--transition-smooth);opacity:0;padding:1.35rem;animation:.55s cubic-bezier(.16,1,.3,1) forwards cardFadeIn;position:relative;box-shadow:0 4px 12px #00000008}.supplement-card:first-child{animation-delay:40ms}.supplement-card:nth-child(2){animation-delay:80ms}.supplement-card:nth-child(3){animation-delay:.12s}.supplement-card:nth-child(4){animation-delay:.16s}.supplement-card:nth-child(5){animation-delay:.2s}.supplement-card:nth-child(6){animation-delay:.24s}.supplement-card:nth-child(7){animation-delay:.28s}.supplement-card:nth-child(8){animation-delay:.32s}.supplement-card:nth-child(9){animation-delay:.36s}.supplement-card:nth-child(10){animation-delay:.4s}.supplement-card:nth-child(11){animation-delay:.44s}.supplement-card:nth-child(12){animation-delay:.48s}.supplement-card:hover{border-color:#007d5840;transform:translateY(-6px);box-shadow:0 8px 24px #00000014}.supplement-card:active{transform:translateY(-2px);box-shadow:0 4px 12px #00000008}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.supplement-card-header{align-items:center;gap:.6rem;margin-bottom:.55rem;display:flex}.supplement-card-header .card-emoji{font-size:var(--fs-32);filter:drop-shadow(0 2px 4px #0000000f);line-height:1}.supplement-name{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin-bottom:0;font-weight:600;line-height:1.3;overflow:hidden}.supplement-name-en{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);text-transform:capitalize;white-space:nowrap;text-overflow:ellipsis;margin-bottom:0;font-weight:400;overflow:hidden}.supplement-desc{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.6rem;line-height:1.5;display:-webkit-box;overflow:hidden}.supplement-tags{flex-wrap:wrap;gap:.35rem;min-width:0;margin-bottom:0;display:flex}.supplement-tag{border-radius:var(--radius-full);color:var(--accent-deep);font-family:var(--font-body);font-size:var(--fs-11);letter-spacing:.01em;background:#007d580f;padding:.2rem .6rem;font-weight:500;transition:background .25s;display:inline-block}.supplement-card:hover .supplement-tag{background:#007d581f}.supplement-timing{border-radius:var(--radius-full);border:1px solid var(--border-neutral);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-10);background:#f4f4f4;align-items:center;gap:.3rem;padding:.2rem .55rem;font-weight:500;display:inline-flex}.supplement-timing:before{content:"⏰";font-size:var(--fs-11)}.supplement-footer{justify-content:space-between;align-items:center;gap:.5rem;margin-top:0;display:flex}.supplement-footer .view-detail{flex-shrink:0}.supplement-footer .view-details{font-family:var(--font-body);font-size:var(--fs-12);color:var(--accent-primary);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;align-items:center;gap:.3rem;padding:0;font-weight:500;display:inline-flex}.supplement-footer .view-details:after{content:"→";transition:transform .3s}.supplement-footer .view-details:hover{color:var(--accent-deep)}.supplement-footer .view-details:hover:after{transform:translate(3px)}.evidence-stars{align-items:center;gap:2px;display:inline-flex}.star-filled{color:var(--accent-primary);font-size:var(--fs-13);filter:drop-shadow(0 1px 2px #d4af3733)}.star-empty{color:var(--border-light);font-size:var(--fs-13);opacity:.6}.supplements-empty{text-align:center;padding:4rem 1.5rem}.supplements-empty .empty-icon{font-size:var(--fs-48);opacity:.5;margin-bottom:1rem}.supplements-empty h3{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-secondary);margin-bottom:.5rem}.supplements-empty p{font-size:var(--fs-14);color:var(--text-light)}@media (width<=900px){.supplement-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.supplements-hero h1{font-size:var(--fs-28)}.supplements-content{padding:0 1.25rem 3rem}}@media (width<=600px){.supplements-header{padding:.75rem 1rem}.supplements-header .header-title{font-size:var(--fs-16)}.supplements-hero{margin-top:0;padding:1.75rem 1rem 1.25rem}.supplements-hero .hero-title{font-size:var(--fs-22)}.supplements-hero p{font-size:var(--fs-14)}.category-tabs{top:calc(56px + var(--safe-top));scroll-behavior:smooth;gap:.4rem;padding:.625rem .2rem}.category-tab{font-size:var(--fs-12);padding:.4rem .8rem}.supplements-content{padding:0 1rem 2.5rem}.supplement-grid{grid-template-columns:1fr;gap:.85rem}.supplement-card{border-radius:var(--radius-md);padding:1.1rem}.supplement-card-header .card-emoji{font-size:var(--fs-28)}.supplement-name{font-size:var(--fs-16)}.supplement-desc{font-size:var(--fs-13)}.category-header h2{font-size:var(--fs-18)}.category-section{margin-top:1.75rem}}.tabs-scroll-btn{border:1px solid var(--border-neutral);background:var(--bg-secondary);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;z-index:10;transition:var(--transition-smooth);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;box-shadow:0 2px 6px #00000014}.tabs-scroll-btn:hover{color:var(--accent-primary);background:#f4f4f4;border-color:#007d5833;transform:scale(1.06)}.tabs-scroll-left{margin-left:.75rem}.tabs-scroll-right{margin-right:.75rem}@media (width<=600px){.tabs-scroll-btn{width:28px;height:28px}.tabs-scroll-left{margin-left:.4rem}.tabs-scroll-right{margin-right:.4rem}}@keyframes ssfFadeIn{0%{opacity:0}to{opacity:1}}@keyframes ssfSlideUp{0%{opacity:0;transform:translateY(30px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.ssf-overlay{z-index:250;-webkit-backdrop-filter:blur(16px)saturate(1.2);background:#1a1a1a73;justify-content:center;align-items:center;padding:1.25rem;animation:.35s cubic-bezier(.16,1,.3,1) forwards ssfFadeIn;display:flex;position:fixed;inset:0}.ssf-container{background:var(--bg-secondary);border:1px solid #007d5814;border-radius:24px;flex-direction:column;width:100%;max-width:480px;max-height:82vh;animation:.5s cubic-bezier(.16,1,.3,1) forwards ssfSlideUp;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 70px #0000001f,0 8px 24px #0000000f,inset 0 1px #fffc}.ssf-header{border-bottom:1px solid var(--border-light,var(--surface-sunken));background:var(--bg-secondary);justify-content:space-between;align-items:center;padding:1.15rem 1.5rem;display:flex}.ssf-title{font-family:var(--font-heading,inherit);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;margin:0;font-weight:600}.ssf-icon-btn{border:1px solid var(--border-light,var(--surface-sunken));background:var(--bg-secondary);width:34px;height:34px;color:var(--text-secondary,#4a4a4a);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:all .25s;display:inline-flex}.ssf-icon-btn:hover{background:var(--bg-primary,#f9f9f9);color:var(--accent-primary);border-color:#007d5826;transform:scale(1.04)}.ssf-search-area{background:var(--bg-secondary);border-bottom:1px solid var(--border-light,var(--surface-sunken));padding:1rem 1.5rem}.ssf-search-field{background:var(--bg-primary,#f7f7f7);border:1.5px solid var(--border-light,#e8e8e8);border-radius:14px;align-items:center;gap:.65rem;padding:.65rem .95rem;transition:all .3s;display:flex;position:relative}.ssf-search-field:focus-within{background:var(--bg-secondary);border-color:var(--accent-primary);box-shadow:0 0 0 4px #007d580f}.ssf-search-icon{color:var(--text-light);flex-shrink:0}.ssf-search-input{font-size:var(--fs-16);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-family:inherit}.ssf-search-input::placeholder{color:var(--text-light,#a0a0a0)}.ssf-clear{color:var(--text-light);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;transition:color .2s;display:flex}.ssf-clear:hover{color:var(--text-primary)}.ssf-body{background:var(--bg-secondary);flex:1;padding:1.5rem;overflow-y:auto}.ssf-section-label{font-size:var(--fs-11);color:var(--text-light);text-transform:uppercase;letter-spacing:.06em;margin:0 0 .85rem;font-weight:600}.ssf-chips{flex-wrap:wrap;gap:.55rem;margin-bottom:1.75rem;display:flex}.ssf-cat-chip{border:1px solid var(--border-light,#e2e2e2);background:var(--bg-secondary);color:var(--text-secondary,#3a3a3c);font-size:var(--fs-13);cursor:pointer;border-radius:20px;padding:.5rem .95rem;font-weight:500;transition:all .25s cubic-bezier(.16,1,.3,1)}.ssf-cat-chip:hover{background:var(--accent-soft,#007d5808);color:var(--accent-primary);border-color:#007d5826;transform:translateY(-1px)}.ssf-cat-chip:active{transform:translateY(0)}.ssf-direct-add{background:var(--bg-primary,#f9f9fb);border:1.5px dashed var(--border-light,var(--border-neutral));text-align:center;border-radius:18px;flex-direction:column;align-items:center;gap:.75rem;padding:1.35rem;display:flex}.ssf-direct-text{font-size:var(--fs-14);color:var(--text-secondary);margin:0}.ssf-outline-btn{border:1.5px solid var(--accent-primary);color:var(--accent-primary);font-size:var(--fs-13);cursor:pointer;background:0 0;border-radius:20px;justify-content:center;align-items:center;gap:.45rem;padding:.55rem 1.35rem;font-weight:600;transition:all .25s;display:inline-flex}.ssf-outline-btn:hover{background:var(--accent-primary);color:var(--text-on-accent);transform:scale(1.02);box-shadow:0 4px 12px #007d5826}.ssf-result-list{flex-direction:column;gap:.75rem;display:flex}.ssf-result-card{border:1px solid var(--border-light,var(--border-neutral));background:var(--bg-secondary);text-align:left;cursor:pointer;border-radius:16px;align-items:center;gap:1rem;width:100%;padding:.85rem 1.15rem;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex}.ssf-result-card:hover{border-color:#007d581f;transform:translateY(-2px);box-shadow:0 6px 20px #00000005,0 2px 6px #007d5808}.ssf-result-info{flex-direction:column;flex:1;min-width:0;display:flex}.ssf-result-brand{font-size:var(--fs-12);color:var(--text-light);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.15rem;font-weight:600}.ssf-result-name{font-size:var(--fs-16);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.ssf-result-meta{font-size:var(--fs-12);color:var(--text-light);margin-top:.25rem}.ssf-result-arrow{color:var(--text-light,#c7c7cc);transition:transform .25s}.ssf-result-card:hover .ssf-result-arrow{color:var(--accent-primary);transform:translate(3px)}.ssf-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1.15rem;padding:3.5rem 1.5rem;display:flex}.ssf-empty-text{font-size:var(--fs-14);color:var(--text-secondary);margin:0;line-height:1.45}.ssf-thumb{color:var(--text-on-accent);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex;box-shadow:inset 0 -3px #0000001a}.ssf-thumb-letter{font-family:var(--font-heading,inherit);text-shadow:0 1px 2px #00000026}.ssf-setup-preview{background:var(--bg-primary,#f9f9fb);border:1px solid var(--border-light,#f0f0f2);border-radius:18px;align-items:center;gap:1.15rem;margin-bottom:1.5rem;padding:1.25rem 1.35rem;display:flex}.ssf-setup-info{flex-direction:column;min-width:0;display:flex}.ssf-setup-brand{font-size:var(--fs-12);color:var(--text-light);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .15rem;font-weight:600}.ssf-setup-name{font-size:var(--fs-16);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:700;overflow:hidden}.ssf-field-group{flex-direction:column;gap:.55rem;margin-bottom:1.5rem;display:flex}.ssf-label{font-size:var(--fs-14);color:var(--text-secondary,#3a3a3c);padding-left:2px;font-weight:600}.ssf-input{border:1.5px solid var(--border-light,var(--border-neutral));background:var(--bg-secondary);font-size:var(--fs-16);color:var(--text-primary);border-radius:14px;outline:none;padding:.8rem 1rem;font-family:inherit;transition:all .25s}.ssf-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 4px #007d580f}.ssf-dosage-row{gap:.75rem;display:flex}.ssf-dosage-num{border:1.5px solid var(--border-light,var(--border-neutral));background:var(--bg-secondary);width:90px;color:var(--text-primary);font-size:var(--fs-16);text-align:center;border-radius:14px;outline:none;padding:.8rem;font-family:inherit;font-weight:600;transition:all .25s}.ssf-dosage-num:focus{border-color:var(--accent-primary);box-shadow:0 0 0 4px #007d580f}.ssf-dosage-unit{border:1.5px solid var(--border-light,var(--border-neutral));background:var(--bg-secondary);color:var(--text-primary);font-size:var(--fs-16);cursor:pointer;border-radius:14px;outline:none;flex:1;padding:.8rem 1rem;font-family:inherit;transition:all .25s}.ssf-dosage-unit:focus{border-color:var(--accent-primary);box-shadow:0 0 0 4px #007d580f}.ssf-timing-row{flex-wrap:wrap;gap:.55rem;display:flex}.ssf-timing-chip{border:1.5px solid var(--border-light,var(--border-neutral));background:var(--bg-secondary);min-width:80px;color:var(--text-secondary,#2c2c2e);font-size:var(--fs-14);cursor:pointer;text-align:center;border-radius:14px;flex:1;padding:.8rem .5rem;font-weight:600;transition:all .28s cubic-bezier(.16,1,.3,1)}.ssf-timing-chip:hover{background:var(--bg-primary,#f9f9fb);border-color:#007d581f}.ssf-timing-chip.active{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deeper));color:var(--text-on-accent);border-color:#0000;transform:translateY(-1px);box-shadow:0 4px 14px #007d5833}.ssf-timing-chip.active:active{transform:translateY(0)}.ssf-footer{border-top:1px solid var(--border-light,var(--surface-sunken));background:var(--bg-secondary);padding:1.15rem 1.5rem}.ssf-primary-btn{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deeper));width:100%;color:var(--text-on-accent);font-size:var(--fs-16);cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;padding:.9rem 1.5rem;font-weight:700;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 16px #007d5833}.ssf-primary-btn:hover:not(:disabled){transform:translateY(-1.5px);box-shadow:0 6px 20px #007d584d}.ssf-primary-btn:active:not(:disabled){transform:translateY(0)}.ssf-primary-btn:disabled{color:var(--text-light);box-shadow:none;cursor:not-allowed;opacity:.7;background:var(--border-light,#d1d1d6)!important}.ssf-scan-btn{background:linear-gradient(135deg,#007d5808,#007d5812);border-radius:16px;gap:.65rem;width:100%;height:50px;margin-bottom:1.25rem;font-weight:700;box-shadow:0 4px 15px #007d580a;border:1.5px solid var(--accent-primary)!important;color:var(--accent-primary)!important}.ssf-scan-btn:hover{transform:translateY(-1.5px);box-shadow:0 6px 20px #007d5814;background:linear-gradient(135deg,#007d5812,#007d581f)!important}.ssf-scanning-overlay{z-index:300;-webkit-backdrop-filter:blur(25px);background:#ffffffe0;flex-direction:column;justify-content:center;align-items:center;animation:.3s forwards ssfFadeIn;display:flex;position:absolute;inset:0}.ssf-scanning-card{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:85%;padding:2rem;display:flex;position:relative}.ssf-scanner-laser-line{background:linear-gradient(90deg, transparent, var(--accent-primary), transparent);height:3px;box-shadow:0 0 10px var(--accent-primary), 0 0 20px var(--accent-primary);border-radius:50%;animation:2.4s ease-in-out infinite ssfLaserScan;position:absolute;left:5%;right:5%}@keyframes ssfLaserScan{0%{opacity:0;top:10%}15%{opacity:1}85%{opacity:1}to{opacity:0;top:90%}}.ssf-spinner-spin{color:var(--accent-primary);margin-bottom:1.25rem;animation:1.2s linear infinite ssfSpinnerSpin}@keyframes ssfSpinnerSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ssf-scanning-title{font-family:var(--font-heading,inherit);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;margin:0 0 .6rem;font-weight:700}.ssf-scanning-subtitle{font-size:var(--fs-14);color:var(--text-secondary);margin:0;line-height:1.5}.ssf-demo-badge{font-size:var(--fs-12);color:var(--accent-primary);opacity:0;background:#007d580a;border:1px solid #007d581f;border-radius:12px;max-width:320px;margin-top:1.75rem;padding:.6rem .9rem;font-weight:500;line-height:1.4;animation:.5s .3s forwards ssfFadeIn}.ssf-scan-success-banner{font-size:var(--fs-13);color:var(--accent-primary);background:linear-gradient(135deg,#007d580f,#007d5805);border:1px solid #007d5826;border-radius:14px;align-items:center;gap:.65rem;margin-bottom:1.25rem;padding:.85rem 1.15rem;font-weight:600;display:flex}.ssf-sparkle-icon-spin{color:var(--accent-primary);flex-shrink:0;animation:4s linear infinite ssfSparkleSpin}@keyframes ssfSparkleSpin{0%{transform:rotate(0)scale(1)}50%{transform:rotate(180deg)scale(1.15)}to{transform:rotate(360deg)scale(1)}}.ssf-ai-thumb{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deeper))!important;box-shadow:0 4px 12px #007d5826!important}.ssf-scanned-ing-list{flex-direction:column;gap:.5rem;max-height:165px;margin-bottom:.85rem;padding-right:4px;display:flex;overflow-y:auto}.ssf-scanned-ing-list::-webkit-scrollbar{width:4px}.ssf-scanned-ing-list::-webkit-scrollbar-track{background:0 0}.ssf-scanned-ing-list::-webkit-scrollbar-thumb{background:#0000001a;border-radius:10px}.ssf-scanned-ing-item{background:var(--bg-primary,#f5f5f7);border:1px solid var(--border-light,var(--border-neutral));border-radius:12px;align-items:center;gap:.6rem;min-width:0;padding:.6rem .85rem;display:flex}.ssf-scanned-ing-name{font-size:var(--fs-13);color:var(--text-primary);white-space:normal;word-break:keep-all;overflow-wrap:break-word;flex:1;min-width:0;font-weight:600}.ssf-scanned-ing-amount{font-size:var(--fs-13);color:var(--accent-primary);background:#007d580d;border-radius:6px;padding:2px 8px;font-weight:700}.ssf-scanned-ing-delete{color:var(--danger);cursor:pointer;opacity:.5;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex}.ssf-scanned-ing-delete:hover{opacity:1;background:#ff3b3014}.ssf-scanned-ing-add-row{gap:.45rem;display:flex}.ssf-scanned-ing-input{border:1.5px solid var(--border-light,var(--border-neutral));background:var(--bg-secondary);font-size:var(--fs-13);border-radius:12px;outline:none;padding:.6rem .85rem;transition:all .25s}.ssf-scanned-ing-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #007d580d}.ssf-scanned-ing-add-btn{background:var(--accent-primary);width:36px;height:36px;color:var(--text-on-accent);cursor:pointer;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex}.ssf-scanned-ing-add-btn:hover:not(:disabled){background:var(--accent-deeper);transform:scale(1.05)}.ssf-scanned-ing-add-btn:disabled{background:var(--border-light,#d1d1d6);color:var(--text-light);cursor:not-allowed;opacity:.6}.ssf-scan-error{color:var(--danger);font-size:var(--fs-13);background:#ff3b300f;border:1px solid #ff3b302e;border-radius:14px;align-items:center;gap:.6rem;margin-bottom:1.25rem;padding:.85rem 1.1rem;line-height:1.45;display:flex}.ssf-camera-active-viewport{animation:.35s cubic-bezier(.16,1,.3,1) forwards ssfFadeIn}.ssf-camera-viewfinder{box-shadow:inset 0 0 80px #000000b3}.ssf-camera-target-frame{animation:2.5s ease-in-out infinite ssfPulseGuide;box-shadow:0 0 0 9999px #00000080!important}@keyframes ssfPulseGuide{0%,to{border-color:#ffffff26;transform:scale(1)}50%{border-color:#007d5873;transform:scale(1.01)}}.ssf-camera-controls button{transition:all .25s cubic-bezier(.16,1,.3,1)}.ssf-camera-controls button:hover{transform:scale(1.04)}.ssf-camera-controls button:active{transform:scale(.96)}@media (width<=640px){.ssf-overlay{align-items:flex-end;padding:0}.ssf-container{border-radius:24px 24px 0 0;max-width:100%;max-height:92vh;animation:.4s cubic-bezier(.16,1,.3,1) forwards ssfSlideUpMobile}@keyframes ssfSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}.fd-overlay{z-index:2600;-webkit-backdrop-filter:blur(10px);background:#1a1a1a59;justify-content:center;align-items:center;padding:2rem;animation:.3s forwards fdOverlayIn;display:flex;position:fixed;inset:0}@keyframes fdOverlayIn{0%{opacity:0}to{opacity:1}}.fd-container{background:var(--bg-secondary);width:100%;max-width:560px;max-height:88vh;color:var(--text-primary);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#007d5833 transparent;border:1.5px solid #007d582e;border-radius:24px;animation:.45s cubic-bezier(.34,1.56,.64,1) forwards fdSlideUp;position:relative;overflow-y:auto;box-shadow:0 30px 90px #007d581a,0 8px 24px #0000000f}.fd-container::-webkit-scrollbar{width:5px}.fd-container::-webkit-scrollbar-track{background:0 0}.fd-container::-webkit-scrollbar-thumb{background:#007d582e;border-radius:999px}@keyframes fdSlideUp{0%{opacity:0;transform:translateY(40px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.fd-close{z-index:10;width:34px;height:34px;color:var(--text-primary);cursor:pointer;background:#007d580f;border:none;border-radius:999px;justify-content:center;align-items:center;transition:all .2s;display:inline-flex;position:absolute;top:1rem;right:1rem}.fd-close:hover{background:#007d581f;transform:rotate(90deg)}.fd-hero{text-align:center;background:radial-gradient(70% 50% at 50% 0,#007d5812 0%,#0000 72%);padding:2.25rem 2rem 1.5rem;position:relative}.fd-ai-badge{font-size:var(--fs-11);letter-spacing:.03em;color:var(--accent-primary);background:#007d5814;border:1px solid #007d5829;border-radius:999px;align-items:center;gap:4px;margin-bottom:.85rem;padding:3px 10px;font-weight:800;display:inline-flex}.fd-emoji{font-size:var(--fs-48);filter:drop-shadow(0 4px 8px #00000014);margin-bottom:.75rem;line-height:1;animation:.5s cubic-bezier(.34,1.56,.64,1) .15s both fdEmojiPop;display:inline-block}@keyframes fdEmojiPop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.fd-category-badge{font-size:var(--fs-12);text-transform:uppercase;letter-spacing:.05em;border-radius:999px;margin-bottom:.6rem;padding:3px 11px;font-weight:800;display:inline-block}.fd-name{font-size:var(--fs-28);color:var(--text-primary);letter-spacing:-.02em;margin:0 0 .15rem;font-weight:800;line-height:1.25}.fd-name-en{font-size:var(--fs-14);color:var(--text-light);margin-bottom:.7rem;font-weight:400;display:block}.fd-stars{align-items:center;gap:2px;display:inline-flex}.fd-stars .star-filled{color:var(--accent-primary);font-size:var(--fs-16)}.fd-stars .star-empty{color:var(--border-neutral);font-size:var(--fs-16)}.fd-stars .fd-evidence-label{font-size:var(--fs-12);color:var(--accent-primary);margin-left:6px;font-weight:700}.fd-calorie-banner{background:linear-gradient(135deg,#007d580d,#007d5805);border:1px solid #007d581f;border-radius:16px;justify-content:center;align-items:center;gap:.85rem;margin:0 2rem 1.25rem;padding:1rem 1.25rem;display:flex}.fd-calorie-num{font-size:var(--fs-28);color:var(--accent-primary);align-items:baseline;gap:3px;font-weight:900;line-height:1;display:flex}.fd-calorie-num span{font-size:var(--fs-14);color:var(--accent-primary);font-weight:700}.fd-calorie-meta{text-align:left;flex-direction:column;gap:2px;display:flex}.fd-calorie-meta .fd-serving-label{font-size:var(--fs-11);color:var(--text-light);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.fd-calorie-meta .fd-serving-val{font-size:var(--fs-14);color:var(--text-primary);font-weight:700}.fd-calorie-range{font-size:var(--fs-12);color:#e67e22;margin-top:3px;font-weight:800}.fd-calorie-note{font-size:var(--fs-12);color:#8a5a1c;background:#e67e220f;border:1px solid #e67e2226;border-radius:10px;align-items:flex-start;gap:5px;margin:-.75rem 2rem 1.25rem;padding:.55rem .75rem;line-height:1.45;display:flex}.fd-calorie-note svg{color:#e67e22;flex-shrink:0;margin-top:1px}.fd-macros{grid-template-columns:repeat(3,1fr);gap:.5rem;margin:0 2rem 1.5rem;display:grid}.fd-macro{text-align:center;background:#fafbfa;border:1px solid #0000000d;border-radius:12px;padding:.7rem .5rem}.fd-macro-label{font-size:var(--fs-11);color:var(--text-light);margin-bottom:3px;font-weight:700}.fd-macro-value{font-size:var(--fs-16);color:var(--text-primary);font-weight:800}.fd-nak{background:#fafbfa;border:1px solid #0000000d;border-radius:12px;align-items:center;gap:.5rem;margin:-.6rem 2rem 1.5rem;padding:.6rem .9rem;display:flex}.fd-nak-label{font-size:var(--fs-12);color:#6b7280;font-weight:700}.fd-nak-value{font-size:var(--fs-16);color:var(--text-primary);font-weight:800}.fd-nak-tag{font-size:var(--fs-11);border-radius:999px;margin-left:auto;padding:3px 10px;font-weight:700}.fd-nak-good .fd-nak-tag{color:var(--accent-primary);background:#007d581a}.fd-nak-mid .fd-nak-tag{color:#8a6d0b;background:#b8860b1f}.fd-nak-high .fd-nak-tag{color:#b23b3a;background:#dc4b4a1a}.fd-body{padding:0 2rem .5rem}.fd-section{margin-bottom:1.4rem}.fd-section-title{font-size:var(--fs-22);color:var(--text-primary);border-left:3px solid var(--accent-primary);margin:0 0 .7rem;padding-left:9px;font-weight:800;line-height:1.2}.fd-section-title.danger{border-left-color:#ff6b6b}.fd-benefit-list{flex-direction:column;gap:.6rem;display:flex}.fd-benefit-item{font-size:var(--fs-14);color:#444;align-items:flex-start;gap:.55rem;line-height:1.55;display:flex}.fd-benefit-item svg{color:var(--accent-primary);flex-shrink:0;margin-top:2px}.fd-nutrient-table{background:#fafbfa;border:1px solid #0000000d;border-radius:12px;padding:.4rem 1rem}.fd-nutrient-row{font-size:var(--fs-13);border-bottom:1px solid #0000000a;justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.fd-nutrient-row:last-child{border-bottom:none}.fd-nutrient-name{color:var(--text-secondary);font-weight:600}.fd-nutrient-amount{color:var(--accent-primary);font-weight:700}.fd-pairs-list{flex-direction:column;gap:.5rem;display:flex}.fd-pair-item{background:#007d5808;border:1px solid #007d5814;border-radius:10px;align-items:flex-start;gap:.5rem;padding:.65rem .8rem;display:flex}.fd-pair-item svg{color:var(--accent-primary);flex-shrink:0;margin-top:2px}.fd-pair-name{font-size:var(--fs-13);color:var(--text-primary);font-weight:700}.fd-pair-reason{font-size:var(--fs-12);color:#666;margin-top:1px;line-height:1.45}.fd-caution-box{background:#ff6b6b0d;border:1px solid #ff6b6b26;border-radius:12px;align-items:flex-start;gap:.6rem;padding:.85rem 1rem;display:flex}.fd-caution-box svg{color:#ff6b6b;flex-shrink:0;margin-top:1px}.fd-caution-text{font-size:var(--fs-13);color:var(--danger);line-height:1.55}.fd-footer{background:#007d5804;border-top:1px solid #007d581a;padding:1.1rem 2rem 1.5rem}.fd-disclaimer{font-size:var(--fs-11);color:var(--text-light);text-align:center;margin:0 0 .85rem;line-height:1.5}.fd-portion{margin-bottom:.75rem}.fd-portion-label{font-size:var(--fs-12);color:var(--text-light);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.4rem;font-weight:800;display:block}.fd-unit-row{flex-wrap:wrap;gap:.3rem;margin-bottom:.45rem;display:flex}.fd-unit-chip{background:var(--bg-secondary);color:var(--text-light);font-size:var(--fs-12);cursor:pointer;border:1.5px solid #00000014;border-radius:999px;padding:.3rem .7rem;font-family:inherit;font-weight:700;transition:all .15s}.fd-unit-chip:hover{border-color:#007d584d}.fd-unit-chip.active{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--text-on-accent)}.fd-portion-chips{flex-wrap:wrap;align-items:stretch;gap:.4rem;display:flex}.fd-portion-chip{background:var(--bg-secondary);min-width:0;color:var(--text-secondary);font-size:var(--fs-14);cursor:pointer;border:1.5px solid #00000014;border-radius:11px;flex:1;justify-content:center;align-items:center;padding:.5rem .3rem;font-family:inherit;font-weight:800;transition:all .15s;display:inline-flex}.fd-portion-chip:hover{border-color:#007d584d}.fd-portion-chip.active{border-color:var(--accent-primary);color:var(--accent-primary);background:#007d5812}.fd-portion-custom{background:var(--bg-secondary);border:1.5px solid #00000014;border-radius:11px;flex:1.2;align-items:center;gap:3px;padding:0 .6rem;display:inline-flex}.fd-portion-custom input{width:100%;min-width:0;font-size:var(--fs-14);color:var(--text-primary);text-align:right;-moz-appearance:textfield;background:0 0;border:none;outline:none;font-family:inherit;font-weight:800}.fd-portion-custom input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fd-portion-custom input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fd-portion-custom span{font-size:var(--fs-12);color:var(--text-light);flex-shrink:0;font-weight:700}.fd-drink-link{background:var(--bg-secondary);cursor:pointer;border:1.5px solid #00000014;border-radius:11px;align-items:center;gap:.5rem;width:100%;margin-bottom:.65rem;padding:.6rem .75rem;font-family:inherit;transition:all .15s;display:flex}.fd-drink-link.on{border-color:var(--accent-primary);background:#007d580d}.fd-drink-check{background:var(--bg-secondary);width:18px;height:18px;color:var(--text-on-accent);border:1.5px solid #0003;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.fd-drink-check.on{background:var(--accent-primary);border-color:var(--accent-primary)}.fd-drink-text{font-size:var(--fs-14);color:var(--text-primary);font-weight:700}.fd-meal-row{gap:.4rem;margin-bottom:.65rem;display:flex}.fd-meal-chip{background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--fs-13);cursor:pointer;border:1.5px solid #00000014;border-radius:11px;flex:1;justify-content:center;align-items:center;gap:3px;padding:.5rem .3rem;font-family:inherit;font-weight:700;transition:all .15s;display:inline-flex}.fd-meal-chip:hover{border-color:#007d584d}.fd-meal-chip.active{border-color:var(--accent-primary);color:var(--accent-primary);background:#007d5812}.fd-meal-emoji{font-size:var(--fs-14)}.fd-log-btn{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));width:100%;color:var(--text-on-accent);font-size:var(--fs-16);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;margin-bottom:.6rem;padding:.9rem;font-family:inherit;font-weight:800;transition:all .15s;display:inline-flex;box-shadow:0 4px 14px #007d582e}.fd-log-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 22px #007d583d}.fd-log-btn:disabled{cursor:default}.fd-log-btn.saved{background:var(--success);box-shadow:none}.fd-save-my{background:var(--bg-secondary);width:100%;color:var(--accent-primary);font-size:var(--fs-14);cursor:pointer;border:1.5px solid #007d5840;border-radius:12px;justify-content:center;align-items:center;gap:.4rem;margin-bottom:.6rem;padding:.8rem;font-family:inherit;font-weight:800;transition:all .15s;display:inline-flex}.fd-save-my:hover{background:#007d580a}.fd-save-my.on{border-color:var(--accent-primary);background:#007d5814}.fd-mycaution-banner{background:#c0392b0f;border:1px solid #c0392b38;border-radius:12px;align-items:flex-start;gap:.55rem;margin:0 2rem 1.25rem;padding:.7rem .9rem;display:flex}.fd-mycaution-banner svg{color:var(--danger);flex-shrink:0;margin-top:1px}.fd-mycaution-text{flex-direction:column;gap:2px;display:flex}.fd-mycaution-text b{font-size:var(--fs-13);color:var(--danger);font-weight:800}.fd-mycaution-note{font-size:var(--fs-12);color:#a5382b;line-height:1.5}.fd-caution-toggle{background:var(--bg-secondary);width:100%;color:var(--danger);font-size:var(--fs-14);cursor:pointer;border:1.5px solid #c0392b47;border-radius:12px;justify-content:center;align-items:center;gap:.4rem;margin-bottom:.6rem;padding:.8rem;font-family:inherit;font-weight:800;transition:all .15s;display:inline-flex}.fd-caution-toggle:hover{background:#c0392b0a}.fd-caution-toggle.on{border-color:var(--danger);background:#c0392b14}.fd-caution-note-editor{margin-bottom:.6rem}.fd-caution-note-editor textarea{box-sizing:border-box;resize:vertical;background:var(--bg-secondary);width:100%;min-height:46px;color:var(--text-primary);font-size:var(--fs-14);border:1px solid #c0392b38;border-radius:10px;padding:.6rem .75rem;font-family:inherit;line-height:1.5}.fd-caution-note-editor textarea::placeholder{color:#b98a83}.fd-caution-note-save{background:var(--danger);width:100%;color:var(--text-on-accent);font-size:var(--fs-13);cursor:pointer;border:none;border-radius:10px;margin-top:.4rem;padding:.55rem;font-family:inherit;font-weight:800;transition:opacity .15s}.fd-caution-note-save:disabled{cursor:default;background:#c0392b59}.fd-cta{background:var(--bg-secondary);width:100%;color:var(--text-secondary);font-size:var(--fs-16);cursor:pointer;border:1px solid #0000001a;border-radius:12px;padding:.85rem;font-family:inherit;font-weight:700;transition:all .15s}.fd-cta:hover{background:var(--surface-muted)}@media (width<=640px){.fd-overlay{align-items:flex-end;padding:0}.fd-container{border-bottom:none;border-radius:24px 24px 0 0;max-width:100%;max-height:90vh;animation:.4s cubic-bezier(.16,1,.3,1) forwards fdSlideUpMobile}@keyframes fdSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.fd-hero{padding:1.9rem 1.25rem 1.25rem}.fd-emoji{font-size:var(--fs-48)}.fd-name{font-size:var(--fs-22)}.fd-calorie-banner,.fd-mycaution-banner{margin:0 1.25rem 1.1rem}.fd-calorie-note{margin:-.6rem 1.25rem 1.1rem}.fd-macros{margin:0 1.25rem 1.25rem}.fd-nak{margin:-.5rem 1.25rem 1.25rem}.fd-body{padding:0 1.25rem .5rem}.fd-footer{padding:1rem 1.25rem 1.5rem}}.fpa-overlay{z-index:2700;-webkit-backdrop-filter:blur(10px);background:#1a1a1a66;justify-content:center;align-items:center;padding:1.5rem;animation:.3s forwards fpaOverlayIn;display:flex;position:fixed;inset:0}@keyframes fpaOverlayIn{0%{opacity:0}to{opacity:1}}.fpa-container{background:var(--bg-secondary);width:100%;max-width:480px;height:86vh;max-height:760px;color:var(--text-primary);border:1px solid #00000014;border-radius:24px;flex-direction:column;animation:.4s cubic-bezier(.16,1,.3,1) forwards fpaSlideUp;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 90px #0003}@keyframes fpaSlideUp{0%{opacity:0;transform:translateY(30px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.fpa-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:1.1rem 1.25rem .85rem;display:flex}.fpa-title{font-size:var(--fs-18);margin:0;font-weight:800}.fpa-icon-btn{width:32px;height:32px;color:var(--text-primary);cursor:pointer;background:#0000000a;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .2s;display:inline-flex}.fpa-icon-btn:hover{background:#00000014}.fpa-body{flex:1;padding:.5rem 1.25rem 1.25rem;overflow-y:auto}.fpa-error{color:var(--danger);font-size:var(--fs-13);background:#ff3b300f;border:1px solid #ff3b3029;border-radius:12px;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.7rem .85rem;font-weight:600;line-height:1.45;display:flex}.fpa-error svg{flex-shrink:0}.fpa-mode-toggle{background:#0000000a;border-radius:12px;gap:.25rem;margin:.5rem 0 .25rem;padding:.25rem;display:flex}.fpa-mode-btn{color:var(--text-secondary);font-size:var(--fs-14);cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1;padding:.55rem .4rem;font-family:inherit;font-weight:700;transition:all .15s}.fpa-mode-btn.active{background:var(--bg-secondary);color:var(--accent-primary);box-shadow:0 1px 3px #00000014}.fpa-capture-hero{text-align:center;padding:2rem 1rem 1.75rem}.fpa-capture-emoji{font-size:var(--fs-48);margin-bottom:1rem}.fpa-capture-title{font-size:var(--fs-18);color:var(--text-primary);margin:0 0 .5rem;font-weight:800;line-height:1.45}.fpa-capture-sub{font-size:var(--fs-13);color:var(--text-light);margin:0;line-height:1.5}.fpa-capture-actions{flex-direction:column;gap:.6rem;margin-top:.5rem;display:flex}.fpa-primary-btn,.fpa-outline-btn{width:100%;font-size:var(--fs-16);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:.5rem;padding:.95rem 1rem;font-family:inherit;font-weight:800;transition:transform .15s;display:inline-flex}.fpa-primary-btn{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));color:var(--text-on-accent);border:none;box-shadow:0 4px 14px #007d582e}.fpa-primary-btn:hover{transform:translateY(-1px)}.fpa-outline-btn{background:var(--bg-secondary);color:var(--accent-primary);border:1.5px solid #007d5840}.fpa-outline-btn:hover{background:#007d580a}.fpa-usage{text-align:center;font-size:var(--fs-12);color:var(--text-light);margin:1rem 0 0}.fpa-analyzing{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:2rem;display:flex}.fpa-analyzing h4{font-size:var(--fs-16);margin:.6rem 0 0;font-weight:800}.fpa-analyzing p{font-size:var(--fs-13);color:var(--text-light);margin:0}.fpa-spin{color:var(--accent-primary);animation:1s linear infinite fpaSpin}@keyframes fpaSpin{to{transform:rotate(360deg)}}.fpa-result-body{padding-bottom:.5rem}.fpa-result-guide{font-size:var(--fs-13);color:var(--text-secondary);margin:.25rem 0 1rem;line-height:1.5}.fpa-result-guide b{color:var(--accent-primary)}.fpa-item-list{flex-direction:column;gap:.55rem;display:flex}.fpa-item{background:#007d5806;border:1.5px solid #007d582e;border-radius:14px;justify-content:space-between;align-items:center;gap:.5rem;padding:.7rem .75rem;transition:opacity .2s,border-color .2s,background .2s;display:flex}.fpa-item.off{opacity:.5;background:var(--surface-muted);border-color:#00000014}.fpa-item-check{cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:.6rem;min-width:0;padding:0;font-family:inherit;display:flex}.fpa-checkbox{border:2px solid var(--text-disabled);width:22px;height:22px;color:var(--text-on-accent);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.fpa-checkbox.checked{background:var(--accent-primary);border-color:var(--accent-primary)}.fpa-item-emoji{font-size:var(--fs-22);flex-shrink:0;line-height:1}.fpa-item-info{flex-direction:column;gap:1px;min-width:0;display:flex}.fpa-item-name{font-size:var(--fs-14);color:var(--text-primary);align-items:center;gap:5px;font-weight:700;display:flex}.fpa-item-low{font-size:var(--fs-10);color:var(--warning);background:#b07a2a1f;border-radius:5px;padding:1px 5px;font-weight:700}.fpa-item-caution{font-size:var(--fs-10);color:var(--danger);background:#c0392b1a;border-radius:5px;align-items:center;gap:2px;margin-left:4px;padding:1px 5px;font-weight:800;display:inline-flex}.fpa-item-portion-label{font-size:var(--fs-12);color:var(--text-light);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.fpa-item-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:5px;display:flex}.fpa-item-kcal{font-size:var(--fs-14);color:var(--accent-primary);align-items:center;gap:2px;font-weight:800;display:inline-flex}.fpa-item-kcal small{font-size:var(--fs-10);font-weight:700}.fpa-item-kcal-edit{font-size:var(--fs-14);color:var(--danger);align-items:center;gap:3px;font-weight:800;display:inline-flex}.fpa-item-kcal-edit small{font-size:var(--fs-10);font-weight:700}.fpa-item-kcal-input{background:var(--bg-secondary);width:52px;color:var(--danger);font-size:var(--fs-13);text-align:right;-moz-appearance:textfield;border:1px solid #c0392b80;border-radius:7px;padding:3px 6px;font-family:inherit;font-weight:800}.fpa-item-kcal-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fpa-item-kcal-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fpa-item-kcal-input::placeholder{color:var(--danger);opacity:.55;font-weight:600}.fpa-zero-warn{font-size:var(--fs-12);color:var(--danger);align-items:center;gap:5px;margin:0 0 8px;font-weight:600;line-height:1.4;display:flex}.fpa-portion-row{gap:3px;display:flex}.fpa-portion-chip{background:var(--bg-secondary);min-width:28px;height:24px;color:var(--text-secondary);font-size:var(--fs-12);cursor:pointer;border:1px solid #0000001a;border-radius:7px;padding:0 5px;font-family:inherit;font-weight:700;transition:all .15s}.fpa-portion-chip.active{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--text-on-accent)}.fpa-retake{background:var(--bg-secondary);width:100%;color:var(--text-secondary);font-size:var(--fs-13);cursor:pointer;border:1px solid #0000001a;border-radius:12px;justify-content:center;align-items:center;gap:.4rem;margin-top:1rem;padding:.7rem;font-family:inherit;font-weight:700;display:inline-flex}.fpa-retake:hover{background:var(--surface-muted)}.fpa-disclaimer{font-size:var(--fs-11);color:var(--text-light);text-align:center;margin:.85rem 0 0;line-height:1.5}.fpa-footer{background:var(--bg-secondary);border-top:1px solid #007d581f;flex-shrink:0;box-shadow:0 -6px 20px #0000000d}.fpa-total-bar{justify-content:space-between;align-items:center;padding:.85rem 1.25rem .5rem;display:flex}.fpa-save-btn{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));width:calc(100% - 2.5rem);color:var(--text-on-accent);font-size:var(--fs-16);cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:.5rem;margin:0 1.25rem 1.1rem;padding:.9rem;font-family:inherit;font-weight:800;transition:all .15s;display:inline-flex;box-shadow:0 4px 14px #007d582e}.fpa-save-btn:hover:not(:disabled){transform:translateY(-1px)}.fpa-save-btn:disabled{cursor:default}.fpa-save-btn.saved{background:var(--success);box-shadow:none}.fpa-save-btn:disabled:not(.saved){opacity:.5}.fpa-photo-keep{background:var(--bg-secondary);cursor:pointer;border:1.5px solid #00000014;border-radius:12px;align-items:center;gap:.5rem;width:calc(100% - 2.5rem);margin:0 1.25rem .6rem;padding:.6rem .75rem;font-family:inherit;transition:all .15s;display:flex}.fpa-photo-keep.on{border-color:var(--accent-primary);background:#007d580d}.fpa-keep-check{background:var(--bg-secondary);width:18px;height:18px;color:var(--text-on-accent);border:1.5px solid #0003;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.fpa-keep-check.on{background:var(--accent-primary);border-color:var(--accent-primary)}.fpa-keep-text{font-size:var(--fs-14);color:var(--text-primary);font-weight:700}.fpa-keep-text small{color:var(--text-light);font-weight:500}.fpa-meal-row{gap:.4rem;padding:0 1.25rem .7rem;display:flex}.fpa-meal-chip{background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--fs-13);cursor:pointer;border:1.5px solid #00000014;border-radius:11px;flex:1;justify-content:center;align-items:center;gap:3px;padding:.5rem .3rem;font-family:inherit;font-weight:700;transition:all .15s;display:inline-flex}.fpa-meal-chip:hover{border-color:#007d584d}.fpa-meal-chip.active{border-color:var(--accent-primary);color:var(--accent-primary);background:#007d5812}.fpa-meal-emoji{font-size:var(--fs-14)}.fpa-total-left{flex-direction:column;gap:2px;display:flex}.fpa-total-label{font-size:var(--fs-12);color:var(--text-light);font-weight:700}.fpa-total-macros{font-size:var(--fs-13);color:var(--text-secondary);font-weight:700}.fpa-total-cal{font-size:var(--fs-28);color:var(--accent-primary);align-items:baseline;gap:4px;font-weight:900;display:inline-flex}.fpa-total-cal svg{align-self:center}.fpa-total-cal small{font-size:var(--fs-13);font-weight:800}.fpa-confirm{text-align:center;padding:1.25rem .5rem}.fpa-confirm-title{font-size:var(--fs-16);color:var(--text-primary);margin:0 0 1.25rem;font-weight:800;line-height:1.5}.fpa-confirm-title b{color:var(--accent-primary)}.fpa-confirm-grid{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.fpa-confirm-btn{background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--fs-14);cursor:pointer;border:1.5px solid #0000001a;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;padding:1.1rem .5rem;font-family:inherit;font-weight:700;transition:all .15s;display:flex;position:relative}.fpa-confirm-btn:hover{background:#007d5808;border-color:#007d584d}.fpa-confirm-btn.primary{border-color:var(--accent-primary);color:var(--accent-primary);background:#007d580f}.fpa-confirm-btn svg{color:var(--accent-primary)}.fpa-confirm-emoji{font-size:var(--fs-22);line-height:1}.fpa-confirm-guess{font-size:var(--fs-10);color:var(--text-on-accent);background:var(--accent-primary);border-radius:7px;padding:2px 7px;font-weight:800;position:absolute;top:-8px;right:8px}.fpa-confirm-hint{font-size:var(--fs-12);color:var(--text-light);margin:1rem 0 0}.fpa-alc-hero{background:#9b59b60f;border:1px solid #9b59b62e;border-radius:14px;align-items:center;gap:.75rem;margin:.25rem 0 1rem;padding:.9rem 1rem;display:flex}.fpa-alc-emoji{font-size:var(--fs-32);flex-shrink:0;line-height:1}.fpa-alc-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.fpa-alc-name{font-size:var(--fs-16);color:var(--text-primary);font-weight:800}.fpa-alc-spec{font-size:var(--fs-12);color:#8e6aa0;font-weight:600}.fpa-alc-presets{flex-wrap:wrap;gap:.45rem;display:flex}.fpa-alc-chip{background:var(--bg-secondary);min-width:62px;color:var(--text-secondary);font-size:var(--fs-14);cursor:pointer;border:1.5px solid #0000001a;border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:1px;padding:.55rem .4rem;font-family:inherit;font-weight:800;transition:all .15s;display:flex}.fpa-alc-chip small{font-size:var(--fs-10);color:var(--text-light);font-weight:600}.fpa-alc-chip.active{border-color:var(--accent-primary);color:var(--accent-primary);background:#007d5812}.fpa-alc-chip.active small{color:#4a8c6e}.fpa-alc-edit{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0 .85rem;display:flex}.fpa-alc-edit label{font-size:var(--fs-13);color:var(--text-secondary);font-weight:700}.fpa-alc-abv-input{background:var(--bg-secondary);width:76px;color:var(--text-primary);font-size:var(--fs-14);text-align:right;border:1.5px solid #0000001f;border-radius:10px;outline:none;padding:.45rem .6rem;font-family:inherit;font-weight:800}.fpa-alc-abv-input:focus{border-color:var(--accent-primary)}.fpa-alc-est{font-size:var(--fs-12);color:#e67e22;font-weight:700}.fpa-alc-custom{align-items:center;gap:.5rem;margin-top:.6rem;display:flex}.fpa-alc-input{background:var(--bg-secondary);color:var(--text-primary);font-size:var(--fs-16);border:1.5px solid #0000001f;border-radius:12px;outline:none;flex:1;padding:.7rem .85rem;font-family:inherit;font-weight:700}.fpa-alc-input:focus{border-color:var(--accent-primary)}.fpa-alc-unit{font-size:var(--fs-14);color:var(--text-light);font-weight:700}.fpa-alc-calc{background:#00000006;border:1px solid #0000000f;border-radius:14px;margin-top:1rem;padding:.85rem 1rem}.fpa-alc-calc-row{font-size:var(--fs-14);color:var(--text-secondary);justify-content:space-between;align-items:center;padding:.3rem 0;display:flex}.fpa-alc-calc-row b{color:var(--text-primary);font-weight:800}.fpa-alc-calc-row.total{border-top:1px dashed #0000001f;margin-top:.3rem;padding-top:.6rem}.fpa-alc-calc-row.total span{color:var(--accent-primary);align-items:center;gap:4px;font-weight:700;display:inline-flex}.fpa-alc-calc-row.total b{color:var(--accent-primary);font-size:var(--fs-18)}.fpa-camera{z-index:60;background:#0b0b0d;border-radius:24px;flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden}.fpa-camera-top{flex-shrink:0;justify-content:space-between;align-items:center;padding:.9rem 1rem;display:flex}.fpa-camera-tag{color:var(--success);font-size:var(--fs-12);letter-spacing:.1em;font-weight:800}.fpa-camera-x{width:32px;height:32px;color:var(--text-on-accent);cursor:pointer;background:#ffffff1f;border:none;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.fpa-camera-view{background:#000;flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.fpa-camera-view video{object-fit:cover;width:100%;height:100%}.fpa-camera-fallback{color:#ffffffb3;font-size:var(--fs-13);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;padding:1.5rem;font-weight:600;display:flex;position:absolute;inset:0}.fpa-camera-frame{pointer-events:none;border-radius:16px;width:72%;height:50%;position:absolute;box-shadow:0 0 0 9999px #00000059}.fpa-cb{border:3px solid var(--success);width:24px;height:24px;position:absolute}.fpa-cb.tl{border-bottom:none;border-right:none;border-top-left-radius:14px;top:-2px;left:-2px}.fpa-cb.tr{border-bottom:none;border-left:none;border-top-right-radius:14px;top:-2px;right:-2px}.fpa-cb.bl{border-top:none;border-right:none;border-bottom-left-radius:14px;bottom:-2px;left:-2px}.fpa-cb.br{border-top:none;border-left:none;border-bottom-right-radius:14px;bottom:-2px;right:-2px}.fpa-camera-hint{color:var(--text-on-accent);font-size:var(--fs-12);white-space:nowrap;background:#0000008c;border-radius:999px;padding:.5rem .9rem;font-weight:600;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.fpa-camera-controls{padding:1.2rem 1.2rem calc(1.2rem + var(--safe-bottom));background:#0b0b0d;flex-shrink:0;justify-content:space-around;align-items:center;display:flex}.fpa-camera-album,.fpa-camera-cancel{color:#ffffffd9;font-size:var(--fs-13);cursor:pointer;background:0 0;border:none;min-width:48px;font-family:inherit;font-weight:700}.fpa-shutter{cursor:pointer;background:0 0;border:4px solid #fff6;border-radius:50%;justify-content:center;align-items:center;width:66px;height:66px;transition:transform .1s;display:flex}.fpa-shutter:active{transform:scale(.92)}.fpa-shutter span{background:var(--bg-secondary);border-radius:50%;width:50px;height:50px;display:block}@media (width<=640px){.fpa-overlay{align-items:flex-end;padding:0}.fpa-container{border-bottom:none;border-radius:24px 24px 0 0;max-width:100%;height:92vh;max-height:none;animation:.4s cubic-bezier(.16,1,.3,1) forwards fpaSlideUpMobile}@keyframes fpaSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}.shk-container{background:var(--bg-secondary);height:min(86vh,780px);color:var(--text-primary);border:1px solid #00000014;border-radius:24px;flex-direction:column;animation:.4s cubic-bezier(.16,1,.3,1) forwards shkSlideUp;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 90px #0003}@keyframes shkSlideUp{0%{opacity:0;transform:translateY(30px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.shk-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:1.1rem 1.25rem .85rem;display:flex}.shk-title{font-size:var(--fs-18);margin:0;font-weight:800}.shk-icon-btn{width:32px;height:32px;color:var(--text-primary);cursor:pointer;background:#0000000a;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .2s;display:inline-flex}.shk-icon-btn:hover{background:#00000014}.shk-body{flex:1;padding:.25rem 1.25rem 1.25rem;overflow-y:auto}.shk-section-label{font-size:var(--fs-11);color:var(--text-light);letter-spacing:.02em;margin:1rem 0 .5rem;font-weight:800}.shk-manual-base{padding:.5rem 0}.shk-input{box-sizing:border-box;background:var(--bg-secondary);width:100%;color:var(--text-primary);font-size:var(--fs-14);border:1.5px solid #0000001f;border-radius:12px;outline:none;padding:.7rem .85rem;font-family:inherit;font-weight:600}.shk-input:focus{border-color:var(--accent-primary)}.shk-macro-inputs{grid-template-columns:1fr 1fr 1fr 1fr;gap:.5rem;margin:.6rem 0;display:grid}.shk-macro-inputs label{font-size:var(--fs-11);color:var(--text-light);flex-direction:column;gap:3px;font-weight:700;display:flex}.shk-macro-inputs input{box-sizing:border-box;background:var(--bg-secondary);width:100%;color:var(--text-primary);font-size:var(--fs-14);text-align:center;border:1.5px solid #0000001a;border-radius:10px;outline:none;padding:.5rem .4rem;font-family:inherit;font-weight:700}.shk-macro-inputs input:focus{border-color:var(--accent-primary)}.shk-apply-btn{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));width:100%;color:var(--text-on-accent);font-size:var(--fs-14);cursor:pointer;border:none;border-radius:12px;margin-top:.4rem;padding:.8rem;font-family:inherit;font-weight:800}.shk-hint{font-size:var(--fs-12);color:var(--text-light);text-align:center;margin:.7rem 0 0}.shk-scan-btn{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));width:100%;color:var(--text-on-accent);font-size:var(--fs-14);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.45rem;padding:.85rem;font-family:inherit;font-weight:800;display:inline-flex;box-shadow:0 4px 14px #007d582e}.shk-scan-btn:disabled{opacity:.6;cursor:default}.shk-scan-err{font-size:var(--fs-12);color:var(--danger);background:#ff3b300f;border:1px solid #ff3b3029;border-radius:10px;margin:.55rem 0 0;padding:.55rem .7rem;font-weight:600;line-height:1.45}.shk-or{text-align:center;font-size:var(--fs-12);color:#b0b0b5;align-items:center;gap:.6rem;margin:1rem 0 .5rem;font-weight:700;display:flex}.shk-or:before,.shk-or:after{content:"";background:#00000014;flex:1;height:1px}.shk-rescan{background:var(--bg-secondary);width:34px;height:34px;color:var(--accent-primary);cursor:pointer;border:1.5px solid #007d5840;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.shk-rescan:disabled{opacity:.6;cursor:default}.shk-spin{animation:1s linear infinite shkSpin}@keyframes shkSpin{to{transform:rotate(360deg)}}.shk-base-card{background:#007d580d;border:1px solid #007d5829;border-radius:14px;align-items:center;gap:.7rem;margin-top:.5rem;padding:.85rem .9rem;display:flex}.shk-base-emoji{font-size:var(--fs-28);flex-shrink:0;line-height:1}.shk-base-meta{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.shk-name-input{font-size:var(--fs-16);color:var(--text-primary);background:0 0;border:none;border-bottom:1px dashed #0000;outline:none;padding:0;font-family:inherit;font-weight:800}.shk-name-input:focus{border-bottom-color:#007d5866}.shk-base-spec{font-size:var(--fs-12);color:var(--text-secondary);font-weight:600}.shk-scoops{flex-wrap:wrap;gap:.4rem;display:flex}.shk-scoop-chip{background:var(--bg-secondary);min-width:48px;color:var(--text-secondary);font-size:var(--fs-14);cursor:pointer;border:1.5px solid #0000001a;border-radius:12px;flex:1;padding:.6rem .3rem;font-family:inherit;font-weight:800;transition:all .15s}.shk-scoop-chip.active{border-color:var(--accent-primary);background:var(--accent-primary);color:var(--text-on-accent)}.shk-chosen{flex-direction:column;gap:.4rem;margin-top:.6rem;display:flex}.shk-chosen-row{background:#007d580a;border:1px solid #007d5824;border-radius:11px;align-items:center;gap:.5rem;padding:.5rem .6rem;display:flex}.shk-chosen-name{font-size:var(--fs-14);color:var(--text-primary);flex:1;min-width:0;font-weight:700}.shk-chosen-name small{color:var(--text-light);font-weight:500}.shk-stepper{align-items:center;gap:.4rem;display:inline-flex}.shk-stepper button{background:var(--bg-secondary);width:24px;height:24px;color:var(--accent-primary);cursor:pointer;border:1px solid #0000001f;border-radius:7px;justify-content:center;align-items:center;display:inline-flex}.shk-stepper span{font-size:var(--fs-14);text-align:center;min-width:16px;font-weight:800}.shk-chosen-kcal{font-size:var(--fs-12);color:var(--accent-primary);white-space:nowrap;font-weight:800}.shk-chosen-del{color:var(--danger);cursor:pointer;background:0 0;border:none;padding:2px;display:inline-flex}.shk-addin-group{margin-bottom:.6rem}.shk-addin-cat{font-size:var(--fs-11);font-weight:800}.shk-addin-chips{flex-wrap:wrap;gap:.4rem;margin-top:.35rem;display:flex}.shk-addin-chip{background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--fs-12);cursor:pointer;border:1.5px solid #0000001a;border-radius:999px;align-items:center;gap:3px;padding:.4rem .6rem;font-family:inherit;font-weight:700;transition:all .15s;display:inline-flex}.shk-addin-chip small{color:var(--text-light);font-weight:600}.shk-addin-chip.on{border-color:var(--accent-primary);color:var(--accent-primary);background:#007d5812}.shk-addin-chip svg{flex-shrink:0}.shk-manual-addin{gap:.4rem;margin-top:.5rem;display:flex}.shk-input.sm{font-size:var(--fs-13);flex:1;padding:.55rem .7rem}.shk-input.xs{width:72px;font-size:var(--fs-13);text-align:center;flex:none;padding:.55rem .5rem}.shk-addin-add{width:40px;color:var(--accent-primary);cursor:pointer;background:#007d581a;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.shk-footer{background:var(--bg-secondary);border-top:1px solid #007d581f;flex-shrink:0;box-shadow:0 -6px 20px #0000000d}.shk-total-bar{justify-content:space-between;align-items:center;padding:.8rem 1.25rem .4rem;display:flex}.shk-total-left{flex-direction:column;gap:2px;min-width:0;display:flex}.shk-total-label{font-size:var(--fs-12);color:var(--accent-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.shk-total-macros{font-size:var(--fs-13);color:var(--text-secondary);font-weight:700}.shk-total-cal{font-size:var(--fs-28);color:var(--accent-primary);align-items:baseline;gap:4px;font-weight:900;display:inline-flex}.shk-total-cal svg{align-self:center}.shk-total-cal small{font-size:var(--fs-12);font-weight:800}.shk-meal-row{gap:.4rem;padding:0 1.25rem .6rem;display:flex}.shk-meal-chip{background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--fs-13);cursor:pointer;border:1.5px solid #00000014;border-radius:11px;flex:1;padding:.5rem .3rem;font-family:inherit;font-weight:700;transition:all .15s}.shk-meal-chip.active{border-color:var(--accent-primary);color:var(--accent-primary);background:#007d5812}.shk-actions{gap:.5rem;padding:0 1.25rem 1.1rem;display:flex}.shk-save-preset{background:var(--bg-secondary);color:var(--accent-primary);font-size:var(--fs-13);cursor:pointer;white-space:nowrap;border:1.5px solid #007d5840;border-radius:14px;flex-shrink:0;align-items:center;gap:.35rem;padding:.9rem;font-family:inherit;font-weight:800;display:inline-flex}.shk-save-preset.done{border-color:var(--success);color:var(--success)}.shk-save-preset:disabled{cursor:default}.shk-log-btn{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));color:var(--text-on-accent);font-size:var(--fs-14);cursor:pointer;border:none;border-radius:14px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.9rem;font-family:inherit;font-weight:800;transition:all .15s;display:inline-flex;box-shadow:0 4px 14px #007d582e}.shk-log-btn:hover:not(:disabled){transform:translateY(-1px)}.shk-log-btn:disabled{cursor:default}.shk-log-btn.saved{background:var(--success);box-shadow:none}@media (width<=640px){.shk-container{border-bottom:none;border-radius:24px 24px 0 0;height:92vh}}.fsf-overlay{z-index:2550;-webkit-backdrop-filter:blur(10px);background:#1a1a1a59;justify-content:center;align-items:center;padding:1.5rem;animation:.3s forwards fsfOverlayIn;display:flex;position:fixed;inset:0}@keyframes fsfOverlayIn{0%{opacity:0}to{opacity:1}}.fsf-container{background:var(--bg-secondary);width:100%;max-width:480px;height:86vh;max-height:720px;color:var(--text-primary);border:1px solid #00000014;border-radius:24px;flex-direction:column;animation:.4s cubic-bezier(.16,1,.3,1) forwards fsfSlideUp;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 90px #0003}@keyframes fsfSlideUp{0%{opacity:0;transform:translateY(30px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.fsf-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:1.1rem 1.25rem .85rem;display:flex}.fsf-title{font-size:var(--fs-18);color:var(--text-primary);margin:0;font-weight:800}.fsf-icon-btn{width:32px;height:32px;color:var(--text-primary);cursor:pointer;background:#0000000a;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .2s;display:inline-flex}.fsf-icon-btn:hover{background:#00000014}.fsf-search-area{flex-shrink:0;padding:0 1.25rem .85rem}.fsf-search-field{background:#f4f5f6;border:1.5px solid #0000;border-radius:14px;align-items:center;gap:.55rem;height:46px;padding:0 .85rem;transition:border-color .2s,background .2s;display:flex}.fsf-search-field:focus-within{background:var(--bg-secondary);border-color:#007d5866}.fsf-search-icon{color:var(--text-light);flex-shrink:0}.fsf-search-input{font-size:var(--fs-16);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-family:inherit}.fsf-search-input::placeholder{color:#b0b3b8}.fsf-clear{width:22px;height:22px;color:var(--text-secondary);cursor:pointer;background:#00000014;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.fsf-body{scrollbar-width:thin;scrollbar-color:#007d5833 transparent;flex:1;padding:.25rem 1.25rem 1.25rem;overflow-y:auto}.fsf-body::-webkit-scrollbar{width:5px}.fsf-body::-webkit-scrollbar-thumb{background:#007d582e;border-radius:4px}.fsf-error{color:var(--danger);font-size:var(--fs-13);background:#ff3b300f;border:1px solid #ff3b3029;border-radius:12px;align-items:center;gap:.5rem;margin-bottom:.85rem;padding:.7rem .85rem;font-weight:600;line-height:1.45;display:flex}.fsf-error svg{flex-shrink:0}.fsf-photo-btn{cursor:pointer;text-align:left;background:linear-gradient(135deg,#007d580f,#007d5805);border:1.5px solid #007d5833;border-radius:16px;align-items:center;gap:.75rem;width:100%;margin:.4rem 0 .5rem;padding:.85rem .9rem;font-family:inherit;transition:all .18s;display:flex}.fsf-photo-btn:hover{border-color:#007d5866;transform:translateY(-1px);box-shadow:0 6px 18px #007d5814}.fsf-photo-icon{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));width:40px;height:40px;color:var(--text-on-accent);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.fsf-photo-icon--shake{background:linear-gradient(135deg,#6c5ce7,#5a48d6)}.fsf-photo-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.fsf-photo-text b{font-size:var(--fs-14);color:var(--text-primary);font-weight:800}.fsf-photo-text small{font-size:var(--fs-12);color:var(--text-secondary)}.fsf-photo-arrow{color:var(--accent-primary);flex-shrink:0}.fsf-log-link{background:var(--bg-secondary);width:100%;color:var(--text-secondary);font-size:var(--fs-14);cursor:pointer;border:1px solid #00000012;border-radius:13px;align-items:center;gap:.55rem;margin:0 0 .75rem;padding:.7rem .9rem;font-family:inherit;font-weight:700;transition:all .18s;display:flex}.fsf-log-link:hover{background:#007d5805;border-color:#007d5840}.fsf-log-link svg:first-child{color:var(--accent-primary);flex-shrink:0}.fsf-log-link span{text-align:left;flex:1}.fsf-log-arrow{color:var(--text-disabled)}.fsf-chips{flex-wrap:wrap;gap:.4rem;margin:.5rem 0 1rem;display:flex}.fsf-cat-chip{background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--fs-13);cursor:pointer;border:1px solid #00000014;border-radius:999px;padding:.4rem .85rem;font-family:inherit;font-weight:600;transition:all .18s}.fsf-cat-chip:hover{border-color:#007d584d}.fsf-cat-chip.active{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--text-on-accent)}.fsf-section-label{font-size:var(--fs-11);color:var(--text-light);text-transform:uppercase;letter-spacing:.06em;margin:.5rem 0 .6rem;font-weight:800}.fsf-result-list{flex-direction:column;gap:.4rem;display:flex}.fsf-result-card{background:var(--bg-secondary);cursor:pointer;text-align:left;border:1px solid #0000000d;border-radius:14px;align-items:center;gap:.75rem;width:100%;padding:.6rem .7rem;font-family:inherit;transition:all .18s;display:flex}.fsf-result-card:hover{background:#007d5805;border-color:#007d5840;transform:translateY(-1px)}.fsf-thumb{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;line-height:1;display:flex}.fsf-result-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.fsf-result-name{font-size:var(--fs-16);color:var(--text-primary);font-weight:700;line-height:1.25}.fsf-result-en{font-size:var(--fs-12);color:#a0a3a8}.fsf-result-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.fsf-result-kcal{font-size:var(--fs-12);color:var(--accent-primary);align-items:center;gap:2px;font-weight:700;display:inline-flex}.fsf-result-cat{font-size:var(--fs-11);border-radius:999px;padding:2px 7px;font-weight:700}.fsf-result-arrow{color:var(--text-disabled);flex-shrink:0}.fsf-ai-hint{font-size:var(--fs-12);color:var(--text-secondary);background:#007d580a;border:1px dashed #007d5833;border-radius:12px;align-items:flex-start;gap:.5rem;margin-top:1.25rem;padding:.8rem .9rem;line-height:1.5;display:flex}.fsf-ai-hint svg{color:var(--accent-primary);flex-shrink:0;margin-top:2px}.fsf-ai-hint b{color:var(--accent-primary);font-weight:700}.fsf-ai-btn{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));width:100%;color:var(--text-on-accent);font-size:var(--fs-14);cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:.5rem;margin-top:1rem;padding:.85rem 1rem;font-family:inherit;font-weight:800;transition:transform .15s;display:inline-flex;box-shadow:0 4px 14px #007d582e}.fsf-ai-btn:hover{transform:translateY(-1px)}.fsf-ai-btn.subtle{color:var(--accent-primary);box-shadow:none;font-weight:700;font-size:var(--fs-13);background:0 0;border:1px solid #007d5840}.fsf-ai-btn.subtle:hover{background:#007d580a}.fsf-brand-more{background:var(--bg-secondary);width:100%;color:var(--text-secondary);font-size:var(--fs-13);cursor:pointer;border:1px solid #00000014;border-radius:12px;justify-content:center;align-items:center;gap:.3rem;margin-top:.5rem;padding:.7rem 1rem;font-family:inherit;font-weight:700;transition:all .15s;display:inline-flex}.fsf-brand-more:hover{color:var(--accent-primary);border-color:#007d584d}.fsf-loading{color:var(--text-light);font-size:var(--fs-13);flex-direction:column;justify-content:center;align-items:center;gap:.85rem;padding:3.5rem 0;font-weight:500;display:flex}.fsf-empty{text-align:center;flex-direction:column;align-items:center;padding:2.5rem 1rem;display:flex}.fsf-empty-text{font-size:var(--fs-14);color:var(--text-primary);margin:0 0 .35rem;font-weight:700}.fsf-empty-sub{font-size:var(--fs-13);color:var(--text-light);margin:0}.fsf-analyzing-overlay{z-index:50;-webkit-backdrop-filter:blur(8px);background:#ffffffe6;border-radius:24px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.fsf-analyzing-card{text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:2rem;display:flex}.fsf-analyzing-card h4{font-size:var(--fs-16);color:var(--text-primary);margin:.5rem 0 0;font-weight:800}.fsf-analyzing-card p{font-size:var(--fs-13);color:var(--text-light);margin:0}.fsf-spin{color:var(--accent-primary);animation:1s linear infinite fsfSpin}@keyframes fsfSpin{to{transform:rotate(360deg)}}.fsf-shake-preset{cursor:pointer;text-align:left;background:#6c5ce70a;border:1.5px solid #6c5ce72e;border-radius:14px;align-items:center;gap:.6rem;width:100%;margin-bottom:.45rem;padding:.6rem .7rem;font-family:inherit;transition:all .15s;display:flex}.fsf-shake-preset:hover{border-color:#6c5ce766}.fsf-shake-emoji{font-size:var(--fs-22);flex-shrink:0;line-height:1}.fsf-shake-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.fsf-shake-name{font-size:var(--fs-14);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:800;overflow:hidden}.fsf-shake-sub{font-size:var(--fs-12);color:#6c5ce7;font-weight:600}.fsf-shake-kcal{font-size:var(--fs-13);color:var(--accent-primary);white-space:nowrap;align-items:center;gap:2px;font-weight:800;display:inline-flex}.fsf-shake-del{color:#b0b0b5;cursor:pointer;background:0 0;border:none;border-radius:7px;flex-shrink:0;padding:4px;transition:all .15s;display:inline-flex}.fsf-shake-del:hover{color:var(--danger);background:#c0392b14}@media (width<=640px){.fsf-overlay{align-items:flex-end;padding:0}.fsf-container{border-bottom:none;border-radius:24px 24px 0 0;max-width:100%;height:90vh;max-height:none;animation:.4s cubic-bezier(.16,1,.3,1) forwards fsfSlideUpMobile}@keyframes fsfSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}.fpa-container.epa-modal{height:auto;min-height:0;max-height:86vh}.fpa-container.epa-modal.epa-camera-open{height:86vh}.fpa-container.epa-modal .fpa-analyzing{min-height:280px}@media (width<=640px){.fpa-container.epa-modal{max-height:92vh}.fpa-container.epa-modal.epa-camera-open{height:92vh}}.epa-item{background:#007d5806;border:1.5px solid #007d582e;border-radius:14px;flex-direction:column;gap:.55rem;padding:.7rem .75rem;transition:opacity .2s,border-color .2s,background .2s;display:flex}.epa-item.off{opacity:.5;background:var(--surface-muted);border-color:#00000014}.epa-item-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.epa-dur-warn{font-size:var(--fs-10);color:var(--warning);background:#b07a2a1f;border-radius:5px;align-items:center;gap:2px;padding:1px 5px;font-weight:800;display:inline-flex}.epa-item-edit{flex-direction:column;gap:.5rem;display:flex}.epa-edit-row{gap:.5rem;display:flex}.epa-edit-row.epa-metrics{gap:.4rem}.epa-field{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.epa-field>span{font-size:var(--fs-10);color:var(--text-light);font-weight:700}.epa-field-num{flex:0 92px}.epa-select,.epa-input{background:var(--bg-secondary);width:100%;color:var(--text-primary);font-size:var(--fs-13);box-sizing:border-box;-moz-appearance:textfield;border:1px solid #0000001f;border-radius:9px;padding:.45rem .55rem;font-family:inherit;font-weight:700}.epa-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.epa-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.epa-input::placeholder{color:var(--text-disabled);font-weight:600}.epa-select:focus,.epa-input:focus{border-color:#007d5880;outline:none}.epa-custom-name{font-weight:600}.epa-int-row{gap:.35rem;display:flex}.epa-int-chip{background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--fs-12);cursor:pointer;border:1px solid #0000001a;border-radius:9px;flex:1;padding:.4rem .3rem;font-family:inherit;font-weight:700;transition:all .15s}.epa-int-chip.light.active{border-color:var(--success);color:#248a3d;background:#34c7591f}.epa-int-chip.moderate.active{color:#8f7200;background:#ffcc0024;border-color:#d8ac00}.epa-int-chip.hard.active{border-color:var(--danger);color:var(--danger);background:#ff3b301a}.epa-date-row{justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.6rem;display:flex}.epa-date-label{font-size:var(--fs-12);color:var(--text-secondary);flex-shrink:0;font-weight:700}.epa-date-input{background:var(--bg-secondary);color:var(--text-primary);font-size:var(--fs-13);border:1px solid #0000001f;border-radius:9px;padding:.45rem .6rem;font-family:inherit;font-weight:700}.epa-date-input:focus{border-color:#007d5880;outline:none}.mps-overlay{z-index:2000;background:#141c186b;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.mps-sheet{background:var(--bg-secondary);width:100%;max-width:480px;padding:16px 18px calc(var(--safe-bottom) + 18px);border-radius:18px 18px 0 0;max-height:82vh;overflow-y:auto;box-shadow:0 -8px 40px #00000029}.mps-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.mps-head strong{font-size:var(--fs-16);color:var(--text-primary);align-items:center;gap:7px;font-weight:700;display:flex}.mps-x{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:4px}.mps-locked{text-align:center;color:var(--text-secondary);padding:24px 12px}.mps-locked p{font-size:var(--fs-14);margin-top:10px;line-height:1.6}.mps-locked strong{color:var(--accent-primary)}.mps-save{gap:8px;margin-bottom:18px;display:flex}.mps-input{border:1px solid var(--border-light,#007d5826);min-width:0;font-size:var(--fs-14);color:var(--text-primary);background:var(--bg-primary);border-radius:10px;flex:1;padding:10px 12px;font-family:inherit}.mps-input:focus{border-color:var(--accent-primary);outline:none}.mps-save-btn{background:var(--accent-primary);color:var(--text-on-accent);font-size:var(--fs-13);cursor:pointer;white-space:nowrap;border:none;border-radius:10px;flex-shrink:0;align-items:center;gap:5px;padding:10px 14px;font-weight:600;display:flex}.mps-list-title{font-size:var(--fs-11);color:var(--text-secondary);margin-bottom:10px;font-weight:700}.mps-empty{text-align:center;font-size:var(--fs-13);color:var(--text-light);padding:18px 0;line-height:1.6}.mps-list{flex-direction:column;gap:8px;display:flex}.mps-item{border:1px solid var(--border-light,#007d581a);background:var(--bg-secondary);border-radius:12px;align-items:center;gap:10px;padding:11px 12px;display:flex}.mps-item-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.mps-item-name{font-size:var(--fs-14);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.mps-item-meta{font-size:var(--fs-12);color:var(--text-secondary)}.mps-item-add{background:var(--accent-soft,#007d5814);color:var(--accent-primary);font-size:var(--fs-13);cursor:pointer;border:none;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:7px 13px;font-weight:600;display:flex}.mps-item-add:disabled{opacity:.7}.mps-item-del{color:var(--text-light,#aaa);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px}.flog-overlay{z-index:2650;-webkit-backdrop-filter:blur(10px);background:#1a1a1a66;justify-content:center;align-items:center;padding:1.5rem;animation:.3s forwards flogOverlayIn;display:flex;position:fixed;inset:0}@keyframes flogOverlayIn{0%{opacity:0}to{opacity:1}}.flog-container{background:var(--bg-secondary);width:100%;max-width:480px;height:84vh;max-height:720px;color:var(--text-primary);border:1px solid #00000014;border-radius:24px;flex-direction:column;animation:.4s cubic-bezier(.16,1,.3,1) forwards flogSlideUp;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 90px #0003}@keyframes flogSlideUp{0%{opacity:0;transform:translateY(30px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.flog-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:1.1rem 1.25rem .5rem;display:flex}.flog-title{font-size:var(--fs-18);margin:0;font-weight:800}.flog-icon-btn{width:32px;height:32px;color:var(--text-primary);cursor:pointer;background:#0000000a;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .2s;display:inline-flex}.flog-icon-btn:hover{background:#00000014}.flog-datenav{flex-shrink:0;justify-content:center;align-items:center;gap:1.25rem;padding:.4rem 1.25rem .85rem;display:flex}.flog-date-arrow{width:34px;height:34px;color:var(--accent-primary);cursor:pointer;background:#007d580f;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .18s;display:inline-flex}.flog-date-arrow:hover:not(:disabled){background:#007d581f}.flog-date-arrow:disabled{opacity:.3;cursor:default}.flog-date-label{font-size:var(--fs-16);color:var(--text-primary);text-align:center;min-width:92px;font-weight:800}.flog-chart-wrap{flex-shrink:0;padding:0 1.25rem .75rem}.flog-chart{background:#fafbfa;border:1px solid #0000000d;border-radius:14px;justify-content:space-between;align-items:flex-end;gap:4px;padding:.5rem .4rem .2rem;display:flex}.flog-chart-col{cursor:pointer;background:0 0;border:none;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:3px;padding:4px 0;font-family:inherit;transition:background .15s;display:flex}.flog-chart-col:hover{background:#007d580a}.flog-chart-col.sel{background:#007d5814}.flog-chart-val{font-size:var(--fs-10);color:var(--text-light);height:12px;font-weight:800;line-height:12px}.flog-chart-col.sel .flog-chart-val{color:var(--accent-primary)}.flog-chart-track{align-items:flex-end;width:62%;max-width:22px;display:flex}.flog-chart-stack{border-radius:4px 4px 0 0;flex-direction:column-reverse;width:100%;min-height:2px;display:flex;overflow:hidden}.flog-chart-seg{width:100%}.flog-chart-day{font-size:var(--fs-11);color:#b0b3b8;font-weight:800}.flog-chart-col.sel .flog-chart-day{color:var(--accent-primary)}.flog-chart-legend{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:.45rem;display:flex}.flog-legend-item{font-size:var(--fs-10);color:var(--text-light);align-items:center;gap:3px;font-weight:600;display:inline-flex}.flog-legend-item i{border-radius:2px;width:8px;height:8px;display:inline-block}.flog-body{scrollbar-width:thin;scrollbar-color:#007d5833 transparent;flex:1;padding:.25rem 1.25rem 1rem;overflow-y:auto}.flog-body::-webkit-scrollbar{width:5px}.flog-body::-webkit-scrollbar-thumb{background:#007d582e;border-radius:4px}.flog-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;padding:3rem 1rem;display:flex}.flog-empty-icon{color:var(--text-disabled);margin-bottom:.5rem}.flog-empty-text{font-size:var(--fs-16);color:var(--text-primary);margin:0;font-weight:700}.flog-empty-sub{font-size:var(--fs-13);color:var(--text-light);margin:0}.flog-meal-groups{flex-direction:column;gap:1.1rem;display:flex}.flog-meal-group{flex-direction:column;gap:.5rem;display:flex}.flog-meal-header{justify-content:space-between;align-items:center;padding:0 .2rem;display:flex}.flog-meal-title{font-size:var(--fs-16);color:var(--text-primary);align-items:center;gap:.4rem;font-weight:800;display:inline-flex}.flog-meal-emoji{font-size:var(--fs-16)}.flog-meal-subtotal{font-size:var(--fs-13);color:var(--accent-primary);background:#007d5812;border-radius:999px;padding:2px 9px;font-weight:800}.flog-meal-head-right{align-items:center;gap:.5rem;display:flex}.flog-meal-add{width:26px;height:26px;color:var(--accent-primary);cursor:pointer;background:#007d5814;border:none;border-radius:8px;justify-content:center;align-items:center;transition:background .15s;display:inline-flex}.flog-meal-add:hover{background:#007d5829}.flog-meal-empty{width:100%;color:var(--text-light);font-size:var(--fs-13);cursor:pointer;background:0 0;border:1px dashed #0000001f;border-radius:12px;justify-content:center;align-items:center;gap:4px;padding:.6rem;font-family:inherit;font-weight:600;transition:all .15s;display:flex}.flog-meal-empty:hover{color:var(--accent-primary);background:#007d5805;border-color:#007d584d}.flog-item-list{flex-direction:column;gap:.5rem;display:flex}.flog-item{background:var(--bg-secondary);border:1px solid #0000000d;border-radius:14px;align-items:center;gap:.7rem;padding:.65rem .7rem;display:flex}.flog-item-emoji{font-size:var(--fs-22);flex-shrink:0;line-height:1}.flog-item-photo{object-fit:cover;background:#f0f0ef;border-radius:9px;flex-shrink:0;width:38px;height:38px}.flog-item-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.flog-item-name{font-size:var(--fs-14);color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:6px;font-weight:700;display:flex}.flog-item-portion{font-size:var(--fs-12);color:var(--accent-primary);font-weight:800}.flog-item-brand{font-size:var(--fs-10);color:var(--accent-primary);background:#007d5814;border-radius:5px;padding:1px 6px;font-weight:700}.flog-item-source{font-size:var(--fs-10);color:var(--text-light);background:#0000000d;border-radius:5px;padding:1px 5px;font-weight:700}.flog-item-macros{font-size:var(--fs-12);color:var(--text-light)}.flog-item-kcal{font-size:var(--fs-14);color:var(--accent-primary);flex-shrink:0;align-items:center;gap:2px;font-weight:800;display:inline-flex}.flog-item-del{width:28px;height:28px;color:var(--text-disabled);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.flog-item-del:hover{color:var(--danger);background:#ff3b3014}.flog-total-bar{background:var(--bg-secondary);border-top:1px solid #007d581f;flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex;position:relative;box-shadow:0 -6px 20px #0000000d}.flog-nutri-info{color:#b0b0b6;cursor:pointer;vertical-align:-2px;background:0 0;border:none;justify-content:center;align-items:center;margin-left:5px;padding:0;display:inline-flex}.flog-nutri-info:hover{color:var(--accent-primary)}.flog-nutri-help{background:var(--text-primary);color:var(--text-on-accent);z-index:20;border-radius:12px;padding:12px 30px 12px 14px;animation:.18s ease-out flogNutriPop;position:absolute;bottom:calc(100% + 8px);left:1.25rem;right:1.25rem;box-shadow:0 8px 24px #00000047}@keyframes flogNutriPop{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.flog-nutri-help p{font-size:var(--fs-12);color:var(--border-neutral);margin:0 0 7px;line-height:1.55}.flog-nutri-help p:last-child{margin-bottom:0}.flog-nutri-help b{color:var(--text-on-accent);font-weight:700}.flog-nutri-help-x{color:#9a9aa0;cursor:pointer;background:0 0;border:none;padding:2px;display:inline-flex;position:absolute;top:8px;right:8px}.flog-total-left{flex-direction:column;gap:2px;display:flex}.flog-total-label{font-size:var(--fs-12);color:var(--text-light);font-weight:700}.flog-total-macros{font-size:var(--fs-13);color:var(--text-secondary);font-weight:700}.flog-total-micros{font-size:var(--fs-12);color:#9a9aa0;font-weight:600}.flog-total-cal{font-size:var(--fs-28);color:var(--accent-primary);align-items:baseline;gap:4px;font-weight:900;display:inline-flex}.flog-total-cal svg{align-self:center}.flog-total-cal small{font-size:var(--fs-13);font-weight:800}@media (width<=640px){.flog-overlay{align-items:flex-end;padding:0}.flog-container{border-bottom:none;border-radius:24px 24px 0 0;max-width:100%;height:90vh;max-height:none;animation:.4s cubic-bezier(.16,1,.3,1) forwards flogSlideUpMobile}@keyframes flogSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}.eg-section{margin-bottom:18px}.eg-section-title{font-size:var(--fs-11);color:var(--text-secondary);margin-bottom:9px;font-weight:700}.eg-num{align-items:center;gap:7px;display:inline-flex}.eg-num input{text-align:right;border:1px solid var(--border-light,#007d5833);width:84px;font-size:var(--fs-14);color:var(--text-primary);background:var(--bg-primary);border-radius:9px;padding:9px 10px;font-family:inherit}.eg-num input:focus{border-color:var(--accent-primary);outline:none}.eg-num>span{font-size:var(--fs-12);color:var(--text-light)}.eg-hint{font-size:var(--fs-12);color:var(--text-light);margin:8px 0 0;line-height:1.5}.eg-preset-row{flex-wrap:wrap;gap:8px;display:flex}.eg-preset-chip{border:1px solid var(--border-light,#007d582e);background:var(--bg-secondary);cursor:pointer;border-radius:12px;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 13px;display:flex}.eg-preset-chip:active{background:var(--accent-soft,#007d5814);border-color:var(--accent-primary)}.eg-preset-label{font-size:var(--fs-13);color:var(--text-primary);font-weight:700}.eg-preset-desc{font-size:var(--fs-11);color:var(--text-light)}.eg-select{border:1px solid var(--border-light,#007d5833);width:100%;font-size:var(--fs-14);color:var(--text-primary);background:var(--bg-primary);cursor:pointer;border-radius:10px;padding:10px 12px;font-family:inherit}.eg-select:focus{border-color:var(--accent-primary);outline:none}.eg-metric-row{gap:7px;margin:10px 0;display:flex}.eg-chip{border:1px solid var(--border-light,#007d582e);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--fs-13);cursor:pointer;border-radius:999px;padding:7px 14px}.eg-chip.is-on{background:var(--accent-soft,#007d5814);border-color:var(--accent-primary);color:var(--accent-primary);font-weight:600}.eg-target-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.eg-add-btn{background:var(--accent-primary);color:var(--text-on-accent);font-size:var(--fs-13);cursor:pointer;white-space:nowrap;border:none;border-radius:10px;align-items:center;gap:5px;padding:9px 16px;font-weight:600;display:flex}.eg-add-btn:disabled{opacity:.45;cursor:default}.eg-goal-icon{font-size:var(--fs-22);flex-shrink:0;line-height:1}.eg-save-full{background:var(--accent-primary);width:100%;color:var(--text-on-accent);font-size:var(--fs-16);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:6px;margin-top:18px;padding:13px;font-weight:700;display:flex}.mg-wrap{max-width:480px;margin:0 auto;padding:14px 18px 24px}.mg-header{justify-content:space-between;align-items:center;padding:10px 0 14px;display:flex}.mg-title{font-size:var(--fs-18);color:var(--text-primary);align-items:center;gap:8px;font-weight:700;display:flex}.mg-header-actions{align-items:center;gap:4px;display:flex}.mg-icon-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:6px;display:inline-flex}.mg-card{background:var(--bg-secondary);border:1px solid var(--border-light,#007d5814);box-shadow:var(--shadow-sm,0 2px 8px #0b221608);border-radius:16px;margin-bottom:12px;padding:18px}.mg-section-title{font-size:var(--fs-11);color:var(--text-secondary);align-items:center;gap:5px;margin-bottom:10px;font-weight:700;display:flex}.mg-cal-card{flex-direction:column;align-items:center;display:flex;position:relative}.mg-mode-badge{font-size:var(--fs-11);background:var(--accent-soft,#007d580f);color:var(--accent-primary);border-radius:999px;padding:3px 9px;font-weight:700;position:absolute;top:14px;right:14px}.mg-ring{width:132px;height:132px;position:relative}.mg-ring-center{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.mg-ring-big{font-size:var(--fs-22);color:var(--text-primary);font-weight:800}.mg-ring-sub{font-size:var(--fs-12);color:var(--text-secondary)}.mg-remain{font-size:var(--fs-13);color:var(--accent-primary);margin-top:10px;font-weight:600}.mg-bar-row{margin-bottom:12px}.mg-bar-row:last-child{margin-bottom:0}.mg-bar-label{font-size:var(--fs-13);color:var(--text-secondary);justify-content:space-between;margin-bottom:5px;display:flex}.mg-bar-val{color:var(--text-primary);font-weight:600}.mg-bar-track{background:var(--accent-soft,#007d580f);border-radius:999px;height:9px;overflow:hidden}.mg-bar-fill{border-radius:999px;height:100%;transition:width .3s}.mg-opts{grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:8px;display:grid}.mg-opt{border:1px solid var(--border-light,#007d581f);background:var(--bg-secondary);cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;display:flex}.mg-opt.is-active{border-color:var(--accent-primary);background:var(--accent-soft,#007d580f)}.mg-opt-label{font-size:var(--fs-13);color:var(--text-primary);font-weight:600}.mg-opt-desc{font-size:var(--fs-11);color:var(--text-light)}.mg-locked-inline{font-size:var(--fs-13);color:var(--text-secondary);background:var(--accent-soft,#007d580d);border-radius:10px;padding:10px 12px;line-height:1.5}.mg-locked-inline strong{color:var(--accent-primary)}.mg-actions{gap:8px;margin-top:20px;display:flex}.mg-btn-primary{background:var(--accent-primary);color:var(--text-on-accent);font-size:var(--fs-16);cursor:pointer;border:none;border-radius:12px;flex:1;padding:12px;font-weight:700}.mg-btn-ghost{border:1px solid var(--border-light,#007d5826);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--fs-16);cursor:pointer;border-radius:12px;padding:12px 16px;font-weight:600}.mg-empty{text-align:center;color:var(--text-secondary)}.mg-empty p{font-size:var(--fs-14);margin:12px 0 18px;line-height:1.6}.mg-empty .mg-btn-primary{flex:none;padding:11px 20px;display:inline-block}.mg-upsell{text-align:center;color:var(--text-secondary)}.mg-upsell-text{font-size:var(--fs-14);color:var(--text-primary);margin:8px 0 14px;font-weight:600}.mg-upsell .mg-btn-primary{flex:none;padding:10px 18px;display:inline-block}.mg-upsell-note{font-size:var(--fs-12);color:var(--text-light);margin-top:12px;line-height:1.5}.mg-why-toggle{width:100%;color:var(--accent-primary);font-size:var(--fs-13);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:5px;margin-top:14px;padding:8px;font-weight:600;display:flex}.mg-breakdown{border-top:1px solid var(--border-light,#007d581a);margin-top:12px;padding-top:4px}.mg-bd-row{border-bottom:1px solid var(--border-light,#007d5812);padding:10px 0}.mg-bd-row:last-child{border-bottom:none}.mg-bd-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.mg-bd-head span{font-size:var(--fs-13);color:var(--text-secondary)}.mg-bd-head strong{font-size:var(--fs-14);color:var(--text-primary);white-space:nowrap;font-weight:700}.mg-bd-desc{font-size:var(--fs-12);color:var(--text-light);margin-top:3px;line-height:1.5}.mg-adv-toggle{border:1px solid var(--border-light,#007d5826);background:var(--bg-secondary);width:100%;color:var(--text-primary);font-size:var(--fs-13);cursor:pointer;border-radius:12px;align-items:center;gap:6px;margin-top:18px;padding:11px 12px;font-weight:600;display:flex}.mg-custom{background:var(--accent-soft,#007d580d);border-radius:12px;margin-top:10px;padding:14px}.mg-custom-hint{font-size:var(--fs-12);color:var(--text-secondary);margin:0 0 12px;line-height:1.5}.mg-numfield{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.mg-numfield:last-child{margin-bottom:0}.mg-numfield>label{font-size:var(--fs-13);color:var(--text-primary)}.mg-numinput{align-items:center;gap:6px;display:flex}.mg-numinput input{text-align:right;border:1px solid var(--border-light,#007d5833);width:92px;font-size:var(--fs-14);color:var(--text-primary);background:var(--bg-secondary);border-radius:9px;padding:8px 10px;font-family:inherit}.mg-numinput input:focus{border-color:var(--accent-primary);outline:none}.mg-numinput>span{font-size:var(--fs-12);color:var(--text-light);width:30px}.mg-trend{align-items:flex-end;gap:3px;height:72px;margin-bottom:10px;display:flex;position:relative}.mg-trend-target{border-top:1px dashed var(--accent-primary);opacity:.5;z-index:1;height:0;position:absolute;left:0;right:0}.mg-trend-col{flex:1;align-items:flex-end;height:100%;display:flex}.mg-trend-bar{border-radius:3px 3px 0 0;width:100%;transition:height .3s}.mg-trend-summary{font-size:var(--fs-12);color:var(--text-secondary)}.mg-chip-label{font-size:var(--fs-12);color:var(--text-secondary);margin-bottom:8px;font-weight:600}.mg-chips{flex-wrap:wrap;gap:7px;display:flex}.mg-chip{border:1px solid var(--border-light,#007d582e);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--fs-13);cursor:pointer;border-radius:999px;padding:7px 13px}.mg-chip.is-on{background:var(--accent-soft,#007d5814);border-color:var(--accent-primary);color:var(--accent-primary);font-weight:600}.mg-chip-allergy.is-on{border-color:var(--danger);color:var(--danger);background:#fbeceb}.mg-chip-note{font-size:var(--fs-12);color:var(--text-light);margin:12px 0 0;line-height:1.5}.dp-add-btn{color:var(--danger);font-size:var(--fs-13);cursor:pointer;background:#c0392b09;border:1px dashed #c0392b66;border-radius:10px;align-items:center;gap:6px;padding:9px 16px;font-family:inherit;font-weight:700;display:inline-flex}.dp-caution-preview{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.dp-caution-chip{background:#c0392b09;border:1px solid #c0392b33;border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:4px 10px 4px 4px;display:inline-flex}.dp-caution-chip>span{font-size:var(--fs-12);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-weight:600;overflow:hidden}.dp-caution-more{font-size:var(--fs-12);color:var(--text-light);font-weight:600}.mg-card-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.mg-edit-link{color:var(--accent-primary);font-size:var(--fs-12);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:2px 4px;font-weight:700;display:inline-flex}.mg-save-row{justify-content:flex-end;align-items:center;gap:10px;margin-top:16px;display:flex}.mg-save-dirty{font-size:var(--fs-12);color:#c8881a;margin-right:auto;font-weight:600}.mg-save-btn{background:var(--accent-primary);color:var(--text-on-accent);font-size:var(--fs-14);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:5px;padding:10px 18px;font-weight:700;display:inline-flex}.mg-save-btn:disabled{opacity:.4;cursor:default}.mg-save-btn.is-saved{background:#1f9e6e}.mg-saved-toast{left:50%;bottom:calc(var(--safe-bottom) + 28px);z-index:99999;background:var(--accent-primary);color:var(--text-on-accent);font-size:var(--fs-14);pointer-events:none;border-radius:999px;align-items:center;gap:7px;padding:11px 20px;font-weight:700;animation:.22s ease-out mg-saved-in;display:inline-flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #007d584d}@keyframes mg-saved-in{0%{opacity:0;transform:translate(-50%)translateY(10px)scale(.96)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.pw-sheet{background:var(--bg-secondary);border-radius:18px;width:100%;max-width:480px;padding:18px 18px 20px;box-shadow:0 20px 60px #00000038}.pw-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.pw-head strong{font-size:var(--fs-16);color:var(--text-primary);align-items:center;gap:7px;font-weight:700;display:flex}.pw-x{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:4px}.pw-plans{flex-direction:column;gap:12px;display:flex}.pw-plan{border:1px solid var(--border-light,#007d5826);border-radius:14px;padding:14px 16px}.pw-plan.is-vip{background:#c8881a0a;border-color:#c8881a}.pw-plan-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.pw-plan-name{font-size:var(--fs-16);color:var(--text-primary);font-weight:700}.pw-plan-price{font-size:var(--fs-16);color:var(--accent-primary);white-space:nowrap;font-weight:800}.pw-plan.is-vip .pw-plan-price{color:#c8881a}.pw-plan-desc{font-size:var(--fs-12);color:var(--text-secondary);margin:6px 0 12px;line-height:1.5}.pw-btn-primary{background:var(--accent-primary);width:100%;color:var(--text-on-accent);font-size:var(--fs-14);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:12px;font-weight:700;display:flex}.pw-plan.is-vip .pw-btn-primary{background:#c8881a}.pw-btn-primary:disabled{opacity:.6;cursor:default}.pw-btn-ghost{border:1px solid var(--border-light,#007d582e);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:12px;padding:11px 18px;font-weight:600}.pw-restore{width:100%;color:var(--accent-primary);font-size:var(--fs-13);cursor:pointer;background:0 0;border:none;margin-top:12px;padding:10px;font-weight:600}.pw-note{font-size:var(--fs-11);color:var(--text-light);text-align:center;margin:8px 0 0;line-height:1.5}.pw-error{color:var(--danger);font-size:var(--fs-13);background:#fbeceb;border-radius:10px;margin-bottom:12px;padding:10px 12px}.pw-loading,.pw-soon,.pw-done{text-align:center;color:var(--text-secondary);flex-direction:column;align-items:center;gap:12px;padding:28px 12px;display:flex}.pw-loading p,.pw-soon p,.pw-done p{font-size:var(--fs-14);margin:0;line-height:1.6}.pw-done svg:first-child{color:var(--accent-primary)}.pw-soon svg:first-child{color:var(--text-light,#aaa)}.pw-spin{animation:1s linear infinite pw-spin}@keyframes pw-spin{to{transform:rotate(360deg)}}.celure-fb-fab{right:16px;bottom:calc(var(--safe-bottom) + 78px);background:var(--success);width:46px;height:46px;color:var(--text-on-accent);cursor:pointer;z-index:9998;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;box-shadow:0 6px 18px #2f9e545c}.celure-fb-fab:active{transform:scale(.94)}.celure-fb-row{border:1px solid var(--border-light);cursor:pointer;text-align:left;background:#ffffff05;border-radius:20px;align-items:center;gap:.85rem;width:100%;margin-top:1.5rem;padding:1.1rem 1.25rem;transition:border-color .2s,transform .1s;display:flex}.celure-fb-row:hover{border-color:#00694a59}.celure-fb-row:active{transform:scale(.99)}.celure-fb-row-icon{width:40px;height:40px;color:var(--accent-deep);background:#00694a14;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.celure-fb-row-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.celure-fb-row-title{font-size:var(--fs-16);color:var(--text-primary);font-weight:700}.celure-fb-row-sub{font-size:var(--fs-12);color:var(--text-secondary);line-height:1.4}.celure-fb-row-chev{color:var(--text-light);flex-shrink:0}.celure-fb-sheet{background:var(--bg-secondary);width:100%;max-width:440px;padding:18px 18px calc(var(--safe-bottom) + 18px);border-radius:20px 20px 0 0;box-shadow:0 -8px 40px #00000029}.celure-fb-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.celure-fb-head strong{font-size:var(--fs-16);color:#1f2a24}.celure-fb-x{color:#8a978f;cursor:pointer;background:0 0;border:none;padding:4px}.celure-fb-cats{gap:8px;margin-bottom:12px;display:flex}.celure-fb-cat{background:var(--bg-secondary);color:#5b6b62;font-size:var(--fs-13);cursor:pointer;border:1px solid #e2e8e4;border-radius:11px;flex:1;justify-content:center;align-items:center;gap:5px;padding:9px 8px;font-weight:600;display:flex}.celure-fb-cat.is-active{border-color:var(--success);color:#237a41;background:#eaf6ee}.celure-fb-text{box-sizing:border-box;width:100%;font-size:var(--fs-14);resize:vertical;color:#1f2a24;border:1px solid #e2e8e4;border-radius:12px;min-height:96px;padding:12px;font-family:inherit;line-height:1.5}.celure-fb-text:focus,.celure-fb-contact:focus{border-color:var(--success);outline:none}.celure-fb-contact{box-sizing:border-box;width:100%;font-size:var(--fs-13);color:#1f2a24;border:1px solid #e2e8e4;border-radius:12px;margin-top:10px;padding:11px 12px;font-family:inherit}.celure-fb-err{color:var(--danger);font-size:var(--fs-13);margin-top:10px}.celure-fb-send{background:var(--success);width:100%;color:var(--text-on-accent);font-size:var(--fs-16);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:6px;margin-top:14px;padding:13px;font-weight:700;display:flex}.celure-fb-send:disabled{opacity:.6;cursor:default}.celure-fb-done{text-align:center;padding:18px 6px 6px}.celure-fb-done-emoji{font-size:var(--fs-36)}.celure-fb-done p{font-size:var(--fs-14);color:#4a5a51;margin:12px 0 20px;line-height:1.6}.auth-overlay{z-index:3000;-webkit-backdrop-filter:blur(20px);background:#0a0a0c73;justify-content:center;align-items:center;padding:1rem;animation:.4s cubic-bezier(.16,1,.3,1) forwards overlayFadeIn;display:flex;position:fixed;inset:0}.auth-container{background:linear-gradient(135deg, var(--bg-secondary) 0%, #f7faf8 100%);width:100%;max-width:440px;color:var(--text-primary);max-height:calc(100dvh - 2rem - var(--safe-top) - var(--safe-bottom));border:1px solid #00694a59;border-radius:28px;flex-direction:column;gap:1.5rem;padding:2.5rem 2.25rem;display:flex;position:relative;overflow-y:auto;box-shadow:0 30px 80px #00694a14,0 4px 24px #0000000a}.auth-close-btn{width:32px;height:32px;color:var(--accent-deeper);cursor:pointer;z-index:10;background:#00694a0a;border:1px solid #00694a33;border-radius:50%;justify-content:center;align-items:center;transition:all .25s;display:flex;position:absolute;top:1.25rem;right:1.25rem}.auth-close-btn:hover{color:var(--accent-deep);background:#00694a1a;transform:rotate(90deg)}.auth-header{text-align:center;flex-direction:column;align-items:center;gap:.5rem;display:flex}.auth-logo-badge{background:#00694a14;border:1px solid #00694a59;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:.25rem;display:flex;box-shadow:0 0 15px #00694a1f}.auth-title{font-family:var(--font-body);font-size:var(--fs-22);letter-spacing:-.015em;background:linear-gradient(135deg, var(--text-primary) 40%, var(--accent-deeper) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-weight:800}.auth-subtitle{font-family:var(--font-body);font-size:var(--fs-12);color:#1c1c1e8c;max-width:320px;margin:0 auto;line-height:1.55}.auth-tabs{background:#00694a0a;border:1px solid #00694a26;border-radius:14px;gap:.25rem;padding:.25rem;display:flex}.auth-tab{font-family:var(--font-body);font-size:var(--fs-13);color:#1c1c1e80;cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;padding:.6rem 0;font-weight:600;transition:all .25s}.auth-tab.active{background:var(--bg-secondary);color:var(--accent-deeper);border:1px solid #00694a4d;box-shadow:0 4px 12px #00694a1a}.auth-form{flex-direction:column;gap:1rem;display:flex}.auth-input-group{text-align:left;flex-direction:column;gap:.4rem;display:flex}.auth-label{font-family:var(--font-body);font-size:var(--fs-12);color:#1c1c1e8c;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.auth-input-wrapper{align-items:center;display:flex;position:relative}.auth-input-icon{color:var(--accent-deeper);opacity:.8;pointer-events:none;position:absolute;left:1rem}.auth-input{background:var(--bg-secondary);width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);border:1px solid #00694a33;border-radius:12px;outline:none;padding:.85rem 1rem .85rem 2.6rem;transition:all .25s}.auth-input.no-icon{padding-left:1.1rem}.auth-input:focus{border-color:var(--accent-deep);background:var(--bg-secondary);box-shadow:0 0 12px #00694a26}.auth-forgot-link{font-family:var(--font-body);font-size:var(--fs-11);color:var(--accent-deeper);cursor:pointer;align-self:flex-end;margin-top:.25rem;font-weight:600;transition:color .2s}.auth-forgot-link:hover{color:var(--accent-deep);text-decoration:underline}.auth-alert-message{font-family:var(--font-body);font-size:var(--fs-12);text-align:left;border-radius:10px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-weight:600;line-height:1.4;display:flex}.auth-alert-message.error{color:#d32f2f;background:#ef535014;border:1px solid #ef535033}.auth-alert-message.success{color:#2e7d32;background:#4caf5014;border:1px solid #4caf5033}.auth-submit-btn{width:100%;font-family:var(--font-body);font-size:var(--fs-16);background:linear-gradient(135deg, var(--accent-deep), var(--accent-deeper));color:var(--text-on-accent);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;padding:.9rem;font-weight:800;transition:all .25s;display:flex;box-shadow:0 4px 15px #00694a26}.auth-submit-btn:hover:not(:disabled){background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));transform:translateY(-1.5px);box-shadow:0 8px 20px #00694a47}.auth-submit-btn:disabled{opacity:.55;cursor:not-allowed}.auth-divider{align-items:center;width:100%;margin:.25rem 0;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#00694a33;flex:1;height:1px}.auth-divider span{font-family:var(--font-body);font-size:var(--fs-11);color:#1c1c1e73;text-transform:uppercase;letter-spacing:.05em;padding:0 .85rem}.auth-social-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.auth-social-grid.stacked{grid-template-columns:1fr}.auth-social-grid.stacked .auth-social-btn{width:100%;padding:.85rem}.auth-social-btn{font-family:var(--font-body);font-size:var(--fs-13);cursor:pointer;border:1px solid #00694a33;border-radius:12px;justify-content:center;align-items:center;gap:.6rem;padding:.75rem;font-weight:700;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex}.auth-social-btn:disabled{opacity:.45;cursor:not-allowed}.social-icon{font-size:var(--fs-16);font-weight:800}.auth-social-btn.google{background:var(--bg-secondary);color:var(--text-primary)}.auth-social-btn.google:hover:not(:disabled){border-color:var(--accent-deep);background:#00694a0f;transform:translateY(-1.5px);box-shadow:0 4px 15px #00694a1a}.auth-social-btn.apple{color:var(--text-on-accent);background:#000;border-color:#000}.auth-social-btn.apple:hover:not(:disabled){background:var(--text-primary);transform:translateY(-1.5px);box-shadow:0 4px 15px #00000026}.auth-social-btn.kakao{color:#191919;background:#fee500;border-color:#fee500}.auth-social-btn.kakao:hover:not(:disabled){background:#fdd835;border-color:#fdd835;transform:translateY(-1.5px);box-shadow:0 4px 15px #fee50026}.auth-social-btn.naver{color:var(--text-on-accent);background:#03c75a;border-color:#03c75a}.auth-social-btn.naver:hover:not(:disabled){background:#02b34f;border-color:#02b34f;transform:translateY(-1.5px);box-shadow:0 4px 15px #03c75a26}.auth-btn-loader{border:2px solid #ffffff4d;border-top-color:var(--bg-secondary);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite auth-spin}.social-btn-loader{border:2px solid #fff3;border-top-color:currentColor;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (width<=480px){.auth-container{border-radius:24px;gap:1.25rem;padding:2rem 1.5rem}.auth-social-grid{grid-template-columns:1fr;gap:.5rem}}.auth-google-guide{text-align:left;background:#00694a08;border:1px dashed #00694a4d;border-radius:18px;flex-direction:column;gap:.6rem;margin-top:.25rem;padding:1.2rem;animation:.4s savedPop;display:flex}.auth-google-guide .guide-header{align-items:center;gap:.4rem;display:flex}.auth-google-guide .guide-icon{font-size:var(--fs-16)}.auth-google-guide .guide-title{font-family:var(--font-body);font-weight:700;font-size:var(--fs-13);color:var(--accent-deeper);letter-spacing:-.01em}.auth-google-guide .guide-desc{font-family:var(--font-body);font-size:var(--fs-12);color:#1c1c1e99;margin:0;line-height:1.5}.auth-google-guide .guide-desc code{color:var(--accent-deeper);font-family:monospace;font-size:var(--fs-11);background:#00694a14;border-radius:4px;padding:1px 4px;font-weight:600}.auth-google-guide .guide-steps{font-family:var(--font-body);font-size:var(--fs-11);color:#1c1c1ead;flex-direction:column;gap:.4rem;margin:.2rem 0;padding-left:1.2rem;line-height:1.45;display:flex}.auth-google-guide .guide-steps a{color:var(--accent-deep);font-weight:700;text-decoration:underline;transition:color .2s}.auth-google-guide .guide-steps a:hover{color:var(--accent-deeper)}.auth-google-guide .guide-steps strong{color:var(--text-primary);font-weight:700}.auth-google-guide .guide-status-badge{font-family:var(--font-body);font-size:var(--fs-10);color:var(--accent-deeper);letter-spacing:-.01em;background:#00694a0f;border:1px solid #00694a33;border-radius:20px;align-self:flex-start;padding:3px 10px;font-weight:800;box-shadow:0 2px 6px #00694a0a}.auth-supabase-guide{text-align:left;background:#00694a08;border:1px dashed #00694a4d;border-radius:18px;flex-direction:column;gap:.6rem;margin-top:.75rem;padding:1.2rem;animation:.4s savedPop;display:flex}.auth-supabase-guide .guide-header{align-items:center;gap:.4rem;display:flex}.auth-supabase-guide .guide-icon{font-size:var(--fs-16)}.auth-supabase-guide .guide-title{font-family:var(--font-body);font-weight:700;font-size:var(--fs-13);color:var(--accent-deeper);letter-spacing:-.01em}.auth-supabase-guide .guide-desc{font-family:var(--font-body);font-size:var(--fs-12);color:#1c1c1e99;margin:0;line-height:1.5}.auth-supabase-guide .guide-desc code{color:var(--accent-deeper);font-family:monospace;font-size:var(--fs-11);background:#00694a14;border-radius:4px;padding:1px 4px;font-weight:600}.auth-supabase-guide .guide-steps{font-family:var(--font-body);font-size:var(--fs-11);color:#1c1c1ead;flex-direction:column;gap:.4rem;margin:.2rem 0;padding-left:1.2rem;line-height:1.45;display:flex}.auth-supabase-guide .guide-steps a{color:var(--accent-deep);font-weight:700;text-decoration:underline;transition:color .2s}.auth-supabase-guide .guide-steps a:hover{color:var(--accent-deeper)}.auth-supabase-guide .guide-steps code{background:#00694a0f;border-radius:3px;padding:0 3px;font-family:monospace}.auth-supabase-guide .guide-status-badge{font-family:var(--font-body);font-size:var(--fs-10);color:var(--accent-deeper);letter-spacing:-.01em;background:#00694a0f;border:1px solid #00694a33;border-radius:20px;align-self:flex-start;padding:3px 10px;font-weight:800;box-shadow:0 2px 6px #00694a0a}.ns-container{background:var(--surface-muted);border:1px solid #eee;border-radius:14px;margin:16px 0 0;overflow:hidden}.ns-toggle{cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:14px 16px;display:flex}.ns-toggle-left{align-items:center;gap:8px;display:flex}.ns-toggle-right{color:var(--text-light);font-size:var(--fs-13);align-items:center;gap:6px;display:flex}.ns-toggle-title{font-size:var(--fs-14);color:#333;font-weight:600}.ns-ok-icon{color:var(--success)}.ns-warn-icon{color:#ff9500}.ns-warn-badge{font-size:var(--fs-11);color:#e65100;background:#fff3e0;border-radius:10px;padding:2px 8px;font-weight:600}.ns-count{font-size:var(--fs-13);color:var(--text-light)}.ns-body{border-top:1px solid var(--surface-sunken);padding:0 16px 16px}.ns-warning-banner{color:#bf360c;font-size:var(--fs-12);background:linear-gradient(135deg,#fff3e0,#ffecb3);border-radius:10px;align-items:center;gap:8px;margin:12px 0;padding:10px 14px;font-weight:500;display:flex}.ns-grid{flex-direction:column;gap:10px;margin-top:12px;display:flex}.ns-item{background:var(--bg-secondary);border:1px solid var(--surface-sunken);border-radius:10px;padding:12px 14px;transition:border-color .2s}.ns-item.over-ul{background:#fff8f8;border-color:#ffcdd2}.ns-item.over-rda{background:#fffbf5;border-color:#ffe0b2}.ns-item-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.ns-item-name{font-size:var(--fs-13);color:#333;font-weight:600}.ns-item-amount{font-size:var(--fs-13);color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:700}.ns-bar-track{background:var(--surface-sunken);border-radius:3px;height:6px;position:relative;overflow:visible}.ns-bar-fill{border-radius:3px;height:100%;transition:width .4s}.ns-bar-fill.normal{background:linear-gradient(90deg, var(--success), #30d158)}.ns-bar-fill.warning{background:linear-gradient(90deg,#ff9500,#ffcc02)}.ns-bar-fill.danger{background:linear-gradient(90deg, var(--danger), #ff6b6b)}.ns-bar-ul-marker{background:var(--danger);border-radius:1px;width:2px;height:10px;position:absolute;top:-2px;transform:translate(-1px)}.ns-item-footer{justify-content:space-between;margin-top:6px;display:flex}.ns-item-pct{font-size:var(--fs-11);color:var(--text-secondary);font-weight:600}.ns-item-rda{font-size:var(--fs-11);color:var(--text-light)}.ns-item-alert{color:#c62828;font-size:var(--fs-11);background:#ffebee;border-radius:6px;align-items:center;gap:6px;margin-top:8px;padding:6px 10px;font-weight:500;display:flex}.ns-item-sources{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.ns-source-tag{font-size:var(--fs-10);color:#777;white-space:nowrap;background:#f5f5f5;border-radius:8px;padding:2px 8px}.ns-disclaimer{background:var(--surface-muted);font-size:var(--fs-11);color:var(--text-light);border-radius:8px;align-items:flex-start;gap:6px;margin-top:14px;padding:10px;line-height:1.4;display:flex}.ns-disclaimer svg{flex-shrink:0;margin-top:1px}.ns-checked-badge{font-size:var(--fs-11);color:var(--success);background:linear-gradient(135deg,#48bb781f,#007d5814);border:1px solid #48bb7833;border-radius:10px;padding:2px 8px;font-weight:600}.ns-info-icon{color:#aaa}.ns-count-empty{color:#bbb;font-style:italic}.ns-empty-state{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:28px 20px;display:flex}.ns-empty-icon{font-size:var(--fs-32);opacity:.6;line-height:1}.ns-empty-title{font-size:var(--fs-14);color:var(--text-secondary);margin:0;font-weight:600}.ns-empty-desc{font-size:var(--fs-12);color:var(--text-light);margin:0;line-height:1.5}@keyframes checkPop{0%{transform:scale(0)}60%{transform:scale(1.25)}80%{transform:scale(.95)}to{transform:scale(1)}}@keyframes checkmarkDraw{0%{stroke-dashoffset:24px}to{stroke-dashoffset:0}}@keyframes itemComplete{0%{opacity:1;transform:translate(0)}40%{transform:translate(6px)}to{opacity:.72;transform:translate(0)}}@keyframes pillListEntrance{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes streakPulse{0%,to{box-shadow:0 0 #d4af3759}50%{box-shadow:0 0 0 8px #d4af3700}}@keyframes progressStroke{0%{stroke-dashoffset:var(--circumference,264)}to{stroke-dashoffset:var(--progress-offset,0)}}@keyframes ringFadeIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes emptyBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.tracker-page{background-color:var(--bg-primary);--accent-soft:var(--accent-tint);min-height:100vh;padding-bottom:3rem;position:relative}.tracker-header{z-index:100;-webkit-backdrop-filter:blur(20px)saturate(1.6);background:#0b1a12d1;border-bottom:1px solid #d4af3726;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 20px #00000059}.tracker-header .header-back,.tracker-header .header-edit:hover{background:var(--bg-secondary);border-color:rgba(var(--p-accent-rgb), .12);color:var(--accent-deep);transform:scale(1.06)}.tracker-header .header-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.tracker-header .back-btn,.tracker-header .header-back{width:38px;height:38px;font-size:var(--fs-18);cursor:pointer;transition:var(--transition-smooth);justify-content:center;align-items:center;display:inline-flex;background:var(--bg-secondary)!important;color:var(--accent-primary)!important;border:1px solid #007d581f!important;border-radius:50%!important;box-shadow:0 2px 8px #007d5814!important}.tracker-header .back-btn:hover,.tracker-header .header-back:hover{background:var(--accent-tint)!important;color:var(--accent-deeper)!important;border-color:#007d5840!important;transform:translateY(-1px)scale(1.04)!important;box-shadow:0 4px 12px #007d5826!important}.tracker-header .header-edit-btn,.tracker-header .header-edit-text-btn{cursor:pointer;height:32px;transition:var(--transition-smooth);justify-content:center;align-items:center;display:inline-flex;background:var(--bg-secondary)!important;color:var(--accent-primary)!important;font-size:var(--fs-12)!important;border:1px solid #007d5826!important;border-radius:16px!important;padding:0 12px!important;font-weight:600!important;box-shadow:0 2px 6px #007d580a!important}.tracker-header .header-edit-btn:hover,.tracker-header .header-edit-text-btn:hover{background:var(--accent-tint)!important;color:var(--accent-deeper)!important;border-color:#007d5840!important;transform:translateY(-1px)!important}@media (width>=769px){.tracker-header .header-title .title-text-mobile{display:none!important}}@media (width<=768px){.tracker-header .header-title .title-text-desktop{display:none!important}}.tracker-hero{background:var(--bg-primary);flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 1.25rem;animation:.6s cubic-bezier(.16,1,.3,1) forwards heroFadeIn;display:flex}.tracker-hero .hero-date{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);letter-spacing:.02em;font-weight:500}.tracker-hero .hero-row{justify-content:center;align-items:center;gap:1.25rem;width:100%;display:flex}.hero-top{justify-content:flex-end;align-items:center;gap:1rem;width:100%;max-width:520px;min-height:64px;padding:0 1.25rem;display:flex;position:relative}.hero-date-area{text-align:center;flex-direction:column;align-items:center;gap:.5rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.today-date{font-family:var(--font-body);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;font-weight:700}.streak-text{font-size:var(--fs-14);font-weight:500}.progress-text-wrapper{flex-direction:column;align-items:center;gap:.1rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.streak-badge{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));color:var(--text-on-accent);font-family:var(--font-body);font-size:var(--fs-14);letter-spacing:.01em;white-space:nowrap;align-items:center;gap:.45rem;padding:.55rem 1.15rem;font-weight:600;display:inline-flex;box-shadow:0 4px 14px #d4af374d,inset 0 1px #ffffff2e}.streak-badge.active{animation:2.2s ease-in-out infinite streakPulse}.streak-badge .streak-fire{font-size:var(--fs-18);line-height:1}.streak-number{font-family:var(--font-body);font-size:var(--fs-18);font-weight:800;line-height:1}.stats-row{gap:.65rem;width:100%;max-width:520px;margin:0 auto;padding:0 1.25rem;display:flex}.stat-card{border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);flex-direction:column;flex:1;align-items:center;gap:.3rem;padding:.85rem .5rem;display:flex}.stat-card:hover{border-color:#d4af372e;transform:translateY(-2px);box-shadow:0 4px 16px #d4af370f}.stat-value{font-family:var(--font-body);font-size:var(--fs-22);color:var(--text-primary);font-weight:700;line-height:1.1}.stat-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-transform:uppercase;letter-spacing:.06em;text-align:center;font-weight:500}.week-calendar{justify-content:center;gap:.55rem;width:100%;max-width:420px;margin:0 auto;padding:1rem 1.25rem;display:flex}.week-day{cursor:default;transition:var(--transition-smooth);flex-direction:column;flex:1;align-items:center;gap:.3rem;display:flex}.week-day-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.week-day-date{border-radius:var(--radius-full);width:38px;height:38px;font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);background:var(--bg-secondary);border:1.5px solid var(--border-light);transition:var(--transition-smooth);justify-content:center;align-items:center;font-weight:600;display:flex}.week-day.today .week-day-date{border-color:var(--accent-primary);width:42px;height:42px;color:var(--accent-deep);border-width:2px;font-weight:700;box-shadow:0 0 0 3px #d4af371a}.week-day.today .week-day-label{color:var(--accent-primary);font-weight:600}.week-day.completed .week-day-date{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));color:var(--text-on-accent);border-color:#0000;box-shadow:0 3px 10px #d4af3740}.week-day.completed .week-day-label{color:var(--accent-deep)}.week-day.missed .week-day-date{background:var(--bg-primary);color:var(--text-light);opacity:.6;border-color:#0000000f}.checkin-section{margin-bottom:.5rem;padding:1.25rem 1.25rem .75rem}.checkin-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:.45rem;margin-bottom:.75rem;font-weight:600;display:flex}.checkin-count{font-family:var(--font-body);font-size:var(--fs-13);color:var(--accent-deep);background:var(--accent-soft);border-radius:var(--radius-full);margin-left:auto;padding:.15rem .6rem;font-weight:600}.pill-remove{border-radius:var(--radius-full);width:28px;height:28px;color:var(--text-light,#8e8e8e);cursor:pointer;transition:var(--transition-smooth);background:#00000008;border:1px solid #0000001a;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.pill-remove:hover{color:var(--text-primary);background:#00000014;border-color:#00000038}.checkin-title .checkin-icon{font-size:var(--fs-18);line-height:1}.checkin-time{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);margin-bottom:.85rem;padding-left:1.65rem;font-weight:400}.pill-list{flex-direction:column;gap:.5rem;display:flex}.pill-item{border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-light);min-height:56px;box-shadow:var(--shadow-sm);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.85rem;padding:.75rem 1rem;transition:background .35s,border-color .35s,box-shadow .35s,opacity .4s,transform .35s cubic-bezier(.16,1,.3,1);animation:.5s cubic-bezier(.16,1,.3,1) both pillListEntrance;display:flex}.pill-item:first-child{animation-delay:50ms}.pill-item:nth-child(2){animation-delay:.1s}.pill-item:nth-child(3){animation-delay:.15s}.pill-item:nth-child(4){animation-delay:.2s}.pill-item:nth-child(5){animation-delay:.25s}.pill-item:nth-child(6){animation-delay:.3s}.pill-item:nth-child(7){animation-delay:.35s}.pill-item:nth-child(8){animation-delay:.4s}.pill-item:hover{border-color:#d4af3726;box-shadow:0 4px 18px #d4af3712}.pill-item:active{transform:scale(.985)}.pill-item.checked{background:#007d580d;border-color:#007d5826;animation:.5s cubic-bezier(.16,1,.3,1) forwards itemComplete}.pill-item.checked .pill-name{color:var(--text-light);-webkit-text-decoration:line-through #007d5859;text-decoration:line-through #007d5859;text-decoration-thickness:1.5px}.pill-item.checked .pill-icon{opacity:.55}.pill-item.checked .pill-timing-tag{opacity:.5}.pill-checkbox{border-radius:var(--radius-full);background:var(--bg-secondary);border:2px solid #78788047;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;transition:background .3s,border-color .3s,box-shadow .3s;display:flex;position:relative}.pill-checkbox:after{content:"";border-left:2px solid var(--bg-secondary);border-bottom:2px solid var(--bg-secondary);width:10px;height:5.5px;margin-top:-1.5px;transition:transform .25s cubic-bezier(.34,1.56,.64,1);display:block;transform:rotate(-45deg)scale(0)}.pill-checkbox.checked{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));border-color:#0000;animation:.4s cubic-bezier(.34,1.56,.64,1) checkPop;box-shadow:0 2px 10px #007d5826}.pill-checkbox.checked:after{transform:rotate(-45deg)scale(1)}.pill-icon{font-size:var(--fs-22);flex-shrink:0;line-height:1;transition:opacity .35s}.pill-med-badge{font-family:var(--font-body);font-size:var(--fs-10);color:#b45309;background:#fef3c7;border-radius:999px;flex-shrink:0;padding:2px 7px;font-weight:700;line-height:1.4}.pill-name{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);flex:1;min-width:0;font-weight:500;line-height:1.35;transition:color .35s,text-decoration-color .35s}.pill-timing-tag{border-radius:var(--radius-full);color:var(--accent-deep);font-family:var(--font-body);font-size:var(--fs-10);letter-spacing:.03em;white-space:nowrap;background:#007d580f;align-items:center;padding:.2rem .55rem;font-weight:600;transition:opacity .35s;display:inline-flex}.progress-ring-container{flex-shrink:0;justify-content:center;align-items:center;width:90px;height:90px;animation:.7s cubic-bezier(.16,1,.3,1) .2s both ringFadeIn;display:flex;position:relative}.progress-ring{width:100%;height:100%;transform:rotate(-90deg)}.progress-ring circle{fill:none;stroke-linecap:round;transition:stroke-dashoffset 1s cubic-bezier(.16,1,.3,1)}.progress-ring .ring-bg{stroke:var(--border-light);stroke-width:5px}.progress-ring .ring-fill{stroke:url(#goldGradient);stroke-width:5px;stroke-dasharray:var(--circumference,264);stroke-dashoffset:var(--progress-offset,264);filter:drop-shadow(0 1px 4px #007d5826);animation:1.2s cubic-bezier(.16,1,.3,1) .4s forwards progressStroke}.progress-text{font-family:var(--font-body);font-size:var(--fs-18);color:var(--text-primary);font-weight:700;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-55%)}.progress-label{font-family:var(--font-body);font-size:var(--fs-10);text-transform:uppercase;letter-spacing:.08em;color:var(--text-light);white-space:nowrap;font-weight:500;position:absolute;top:50%;left:50%;transform:translate(-50%,55%)}.add-section{padding:.75rem 1.25rem 2rem}.add-btn{border-radius:var(--radius-md);width:100%;color:var(--accent-primary);font-family:var(--font-body);font-size:var(--fs-14);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:2px dashed #007d5840;justify-content:center;align-items:center;gap:.5rem;padding:.9rem 1.25rem;font-weight:500;display:flex}.add-btn:hover{border-color:var(--accent-primary);background:#007d580d;transform:translateY(-1px)}.add-btn:active{transform:translateY(0)}.add-btn .add-btn-icon{font-size:var(--fs-18);font-weight:400;line-height:1}.add-overlay{z-index:200;-webkit-backdrop-filter:blur(10px);background:#1a1a1a59;justify-content:center;align-items:center;padding:1.5rem;animation:.3s forwards modalFadeIn;display:flex;position:fixed;inset:0}.add-container{background:var(--bg-secondary);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:500px;max-height:80vh;animation:.45s cubic-bezier(.34,1.56,.64,1) forwards modalSlideUp;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 64px #0000001f,0 8px 24px #0000000f,0 0 0 1px #ffffff1a}.add-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.add-header h3{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);font-weight:600}.add-close{border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-primary);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);justify-content:center;align-items:center;display:inline-flex}.add-close:hover{background:var(--bg-secondary);color:var(--text-primary);transform:rotate(90deg)}.add-search-wrap{border-bottom:1px solid var(--border-light);background:var(--bg-primary);align-items:center;gap:.5rem;padding:0 1.25rem;display:flex}.add-search-icon{color:var(--text-light);flex-shrink:0}.add-search{width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);background:0 0;border:none;outline:none;padding:.85rem 0;font-weight:400}.add-search::placeholder{color:var(--text-light)}.add-cat-title{font-family:var(--font-body);font-size:var(--fs-11);text-transform:uppercase;letter-spacing:.06em;color:var(--text-light);background:var(--bg-primary);border-bottom:1px solid var(--border-light);z-index:1;padding:.65rem 1.25rem .35rem;font-weight:600;position:sticky;top:0}.add-empty{text-align:center;color:var(--text-light);font-size:var(--fs-14);padding:2rem 1rem}.add-list{overscroll-behavior:contain;-ms-overflow-style:none;scrollbar-width:thin;scrollbar-color:rgba(var(--p-accent-rgb), .12) transparent;flex:1;padding:.5rem 0;overflow-y:auto}.add-list::-webkit-scrollbar{width:4px}.add-list::-webkit-scrollbar-track{background:0 0}.add-list::-webkit-scrollbar-thumb{background:rgba(var(--p-accent-rgb), .12);border-radius:var(--radius-full)}.add-item{cursor:pointer;transition:var(--transition-smooth);border-left:3px solid #0000;align-items:center;gap:.75rem;padding:.8rem 1.25rem;display:flex}.add-item:hover{background:#007d580a}.add-item.selected{border-left-color:var(--accent-primary);background:#007d5814}.add-item-check{border-radius:var(--radius-full);border:2px solid var(--border-light);width:22px;height:22px;transition:var(--transition-smooth);font-size:var(--fs-11);color:#0000;background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.add-item.selected .add-item-check{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));color:var(--text-on-accent);border-color:#0000;box-shadow:0 2px 8px #d4af374d}.add-item .add-item-emoji{font-size:var(--fs-18);flex-shrink:0;line-height:1}.add-item .add-item-name,.add-item-name{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);font-weight:500}.add-item-main{cursor:pointer;flex:1;align-items:center;gap:.75rem;display:flex}.add-item-info{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.add-item-en{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light)}.add-item-icon{font-size:var(--fs-18);flex-shrink:0;line-height:1}.add-item-match{border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-10);color:var(--accent-deep);vertical-align:middle;background:#d4af3714;margin-left:.25rem;padding:.1rem .35rem;font-weight:500;display:inline-block}.add-timing-select{border-top:1px solid var(--border-light);background:var(--bg-primary);gap:.5rem;padding:.85rem 1.25rem;display:flex}.timing-btn{border-radius:var(--radius-full);border:1.5px solid var(--border-light);background:var(--bg-secondary);font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);flex:1;justify-content:center;align-items:center;gap:.35rem;padding:.6rem .75rem;font-weight:500;display:flex}.timing-btn:hover{color:var(--accent-deep);border-color:#d4af3740}.timing-btn.active{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));color:var(--text-on-accent);border-color:#0000;box-shadow:0 3px 12px #d4af374d}.add-actions{border-top:1px solid var(--border-light);gap:.65rem;padding:.85rem 1.25rem 1.15rem;display:flex}.add-actions button{border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-14);cursor:pointer;transition:var(--transition-smooth);border:none;flex:1;padding:.75rem 1rem;font-weight:600}.add-actions .cancel-btn{background:var(--bg-primary);border:1px solid var(--border-light);color:var(--text-secondary)}.add-actions .cancel-btn:hover{color:var(--text-primary);border-color:#0000001a}.add-actions .confirm-btn,.add-actions .add-confirm-btn{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));color:var(--text-on-accent);box-shadow:0 4px 14px #d4af374d}.add-actions .confirm-btn:hover,.add-actions .add-confirm-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #d4af3766}.add-actions .confirm-btn:active,.add-actions .add-confirm-btn:active{transform:translateY(0);box-shadow:0 2px 8px #d4af374d}.add-actions .confirm-btn:disabled,.add-actions .add-confirm-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.add-actions .cancel-btn,.add-actions .add-cancel-btn{background:var(--bg-primary);border:1px solid var(--border-light);color:var(--text-secondary)}.add-actions .cancel-btn:hover,.add-actions .add-cancel-btn:hover{color:var(--text-primary);border-color:#0000001a}.empty-tracker{text-align:center;box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;min-height:65vh;padding:4rem 2rem;display:flex}.empty-icon{font-size:var(--fs-56);filter:drop-shadow(0 4px 8px #0000000f);margin-bottom:1.25rem;line-height:1;animation:2.5s ease-in-out infinite emptyBounce}.empty-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;margin-bottom:.5rem;font-weight:600}.empty-desc{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-light);max-width:280px;line-height:1.6}@media (width<=640px){.tracker-header{padding:.75rem 1rem}.tracker-header .header-back,.tracker-header .header-edit{width:34px;height:34px;font-size:var(--fs-16)}.tracker-header .header-title{font-size:var(--fs-16)}.tracker-hero{padding-top:1.75rem;padding-left:1rem;padding-right:1rem}.progress-ring-container{width:78px;height:78px}.progress-text{font-size:var(--fs-18)}.stats-row{gap:.5rem;padding:0 1rem}.stat-card{padding:.7rem .35rem}.stat-value{font-size:var(--fs-18)}.stat-label{font-size:var(--fs-10)}.week-calendar{gap:.4rem;padding:.85rem 1rem}.week-day-date{width:34px;height:34px;font-size:var(--fs-12)}.week-day.today .week-day-date{width:38px;height:38px}.checkin-section{padding:1rem 1rem .5rem}.pill-item{gap:.7rem;padding:.65rem .85rem}.add-section{padding:.5rem 1rem 2rem}.add-overlay{align-items:flex-end;padding:0}.add-container{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-width:100%;max-height:90vh}.add-overlay .detail-modal{max-height:calc(100dvh - var(--safe-top) - 2.5rem)}}@media (width<=380px){.stats-row{flex-wrap:wrap}.stat-card{flex:calc(50% - .35rem);min-width:0}.stat-card:last-child{flex:100%}.streak-badge{font-size:var(--fs-13);padding:.45rem .95rem}.streak-number{font-size:var(--fs-18)}.week-day-date{width:30px;height:30px;font-size:var(--fs-11)}.week-day.today .week-day-date{width:34px;height:34px}.week-day-label{font-size:var(--fs-10)}}@media (prefers-reduced-motion:reduce){.pill-item,.pill-checkbox,.streak-badge.active,.progress-ring .ring-fill,.empty-icon{transition-duration:.01ms!important;animation:none!important}}.pill-item:focus-visible,.add-btn:focus-visible,.timing-btn:focus-visible,.add-item:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.pill-checkbox:focus-visible{box-shadow:0 0 0 3px #d4af374d}.pill-info{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.pill-ingredients-preview{flex-wrap:wrap;align-items:center;gap:.15rem .3rem;margin-top:.25rem;display:flex}.pill-ing-tag{font-family:var(--font-body);font-size:var(--fs-12);color:#7f8c8d;white-space:normal;word-break:keep-all;overflow-wrap:break-word;font-weight:400;display:inline-block}.pill-ing-tag:not(:last-of-type):after{content:",";color:#bdc3c7;margin-left:1px}.pill-ing-more{font-family:var(--font-body);font-size:var(--fs-10);color:#7f8c8d;background:#0000000d;border-radius:4px;margin-left:.1rem;padding:.05rem .3rem;font-weight:600;display:inline-block}.pill-detail-btn{width:30px;height:30px;color:var(--text-light);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:flex}.pill-item.resting{opacity:.55}.pill-item.resting .pill-checkbox{border-style:dashed}.pill-interval-badge{font-family:var(--font-body);font-size:var(--fs-10);font-variant-numeric:tabular-nums;color:var(--accent-deep);background:var(--accent-tint);border-radius:999px;flex-shrink:0;padding:2px 7px;font-weight:700;line-height:1.4}.pill-rest-badge{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-secondary);background:var(--surface-sunken);border-radius:999px;flex-shrink:0;padding:2px 7px;font-weight:700;line-height:1.4}.pill-skip-btn{border:1px solid var(--border-neutral);color:var(--text-light);font-family:var(--font-body);font-size:var(--fs-11);cursor:pointer;transition:var(--transition-smooth);background:0 0;border-radius:999px;flex-shrink:0;margin-left:auto;padding:3px 9px;font-weight:600}.pill-skip-btn:hover{color:var(--text-secondary);border-color:var(--text-light)}.pill-skip-btn.on{color:var(--text-secondary);background:var(--surface-sunken);border-color:#0000}.pill-skip-btn+.pill-detail-btn{margin-left:0}.pill-detail-btn:hover{color:var(--accent-deep);background:#d4af3714}.detail-modal{background:var(--bg-secondary);border-radius:var(--radius-lg);flex-direction:column;width:92%;max-width:480px;max-height:85vh;animation:.45s cubic-bezier(.34,1.56,.64,1) forwards modalSlideUp;display:flex;overflow:hidden;box-shadow:0 24px 64px #0000001f,0 8px 24px #0000000f}.detail-modal-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:1.25rem 1.25rem 1rem;display:flex}.detail-modal-title-area{align-items:center;gap:.75rem;display:flex}.detail-modal-icon{font-size:var(--fs-28);line-height:1}.detail-modal-name{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);margin:0;font-weight:600}.detail-modal-timing{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light)}.detail-modal-body{flex-direction:column;flex:1;gap:1.25rem;padding:1.25rem;display:flex;overflow-y:auto}.detail-modal-footer{border-top:1px solid var(--border-light);gap:.5rem;padding:1rem 1.25rem;display:flex}.detail-field{flex-direction:column;gap:.5rem;display:flex}.detail-field-label{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:.35rem;font-weight:600;display:flex}.detail-field-input{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-primary);width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);outline:none;padding:.65rem .85rem;transition:border-color .3s,box-shadow .3s}.detail-field-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #d4af3714}.detail-field-input::placeholder{color:var(--text-light)}.detail-field-textarea{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-primary);width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);resize:vertical;outline:none;min-height:50px;max-height:100px;padding:.65rem .85rem;line-height:1.5;transition:border-color .3s,box-shadow .3s}.detail-field-textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #d4af3714}.detail-field-textarea::placeholder{color:var(--text-light)}.ingredient-list{flex-direction:column;gap:.35rem;display:flex}.ingredient-item{border-radius:var(--radius-md);transition:var(--transition-smooth);background:0 0;border:none;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.ingredient-item:hover{background:#00000005}.ingredient-name{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-primary);flex:1;font-weight:500}.ingredient-amount{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);border-radius:var(--radius-full);white-space:nowrap;background:#0000000a;padding:.15rem .45rem;font-weight:600}.ingredient-delete{width:24px;height:24px;color:var(--text-light);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ingredient-delete:hover{color:var(--danger);background:#dc354514}.ingredient-add-row{align-items:center;gap:.35rem;display:flex}.ingredient-input{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-primary);font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-primary);outline:none;padding:.5rem .65rem;transition:border-color .3s}.ingredient-input:focus{border-color:var(--accent-primary)}.ingredient-input::placeholder{color:var(--text-light);font-size:var(--fs-12)}.ingredient-input-name{flex:1.2;min-width:0}.ingredient-input-amount{flex:.8;min-width:0}.ingredient-add-btn{border:1.5px solid var(--accent-primary);width:34px;height:34px;color:var(--accent-primary);cursor:pointer;transition:var(--transition-smooth);background:#007d580a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ingredient-add-btn:hover{background:var(--accent-primary);color:var(--text-on-accent)}.ingredient-add-btn:disabled{border-color:var(--border-light);color:var(--text-light);cursor:not-allowed;background:0 0}.ingredient-hint{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);border-radius:var(--radius-md);background:#007d5808;border:1px dashed #007d581f;margin:0;padding:.5rem;line-height:1.5}.add-no-result{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:2rem 1rem;display:flex}.add-no-result-text{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);margin:0}.add-custom-trigger{border-radius:var(--radius-full);border:2px dashed var(--accent-primary);color:var(--accent-deep);font-family:var(--font-body);font-size:var(--fs-13);cursor:pointer;transition:var(--transition-smooth);background:#007d580a;align-items:center;gap:.35rem;padding:.6rem 1.25rem;font-weight:600;display:inline-flex}.add-custom-trigger:hover{border-color:var(--accent-deep);background:#007d5814;transform:translateY(-1px)}.add-custom-section{border-top:1px solid var(--border-light);margin-top:.5rem;padding:.75rem .5rem}.add-custom-trigger-subtle{border-radius:var(--radius-md);width:100%;color:var(--text-light);font-family:var(--font-body);font-size:var(--fs-12);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;justify-content:center;align-items:center;gap:.35rem;padding:.55rem;font-weight:500;display:flex}.add-custom-trigger-subtle:hover{color:var(--accent-deep);background:#007d5808}.custom-form{border-radius:var(--radius-md);background:#007d5808;border:1.5px solid #007d581a;flex-direction:column;gap:.75rem;margin:.5rem .25rem;padding:1rem;display:flex}.custom-form-title{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-primary);font-weight:600}.custom-form-row{gap:.35rem;display:flex}.custom-form-input{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-secondary);font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);outline:none;flex:1;padding:.6rem .85rem;transition:border-color .3s}.custom-form-input:focus{border-color:var(--accent-primary)}.custom-form-input::placeholder{color:var(--text-light)}.custom-form-icons{flex-direction:column;gap:.35rem;display:flex}.custom-form-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);font-weight:500}.custom-icon-grid{flex-wrap:wrap;gap:.3rem;display:flex}.custom-icon-btn{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-secondary);width:34px;height:34px;font-size:var(--fs-18);cursor:pointer;transition:var(--transition-smooth);justify-content:center;align-items:center;display:flex}.custom-icon-btn:hover{border-color:#d4af374d;transform:scale(1.08)}.custom-icon-btn.selected{border-color:var(--accent-primary);background:#007d5826;transform:scale(1.1);box-shadow:0 2px 8px #007d581f}.custom-form-actions{justify-content:flex-end;gap:.4rem;display:flex}.custom-form-cancel{border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-secondary);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-12);cursor:pointer;transition:var(--transition-smooth);padding:.45rem .85rem;font-weight:500}.custom-form-cancel:hover{background:var(--bg-primary)}.custom-form-add{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));color:var(--text-on-accent);font-family:var(--font-body);font-size:var(--fs-12);cursor:pointer;transition:var(--transition-smooth);border:none;align-items:center;gap:.3rem;padding:.45rem .85rem;font-weight:600;display:flex}.custom-form-add:hover{transform:translateY(-1px);box-shadow:0 3px 10px #007d5840}.custom-form-add:disabled{cursor:not-allowed;box-shadow:none;background:#ccc;transform:none}.detail-modal-en{font-size:var(--fs-10);color:var(--text-light);font-weight:400}.detail-tabs{border-bottom:1px solid var(--border-light);display:flex}.detail-tab{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;flex:1;padding:.65rem .5rem;font-weight:500;position:relative}.detail-tab.active{color:var(--accent-primary);font-weight:600}.detail-tab.active:after{content:"";background:linear-gradient(90deg, var(--accent-primary), var(--accent-deep));border-radius:1px;height:2px;position:absolute;bottom:-1px;left:15%;right:15%}.detail-tab:hover:not(.active){color:var(--text-secondary)}.detail-info-section{flex-direction:column;gap:.5rem;display:flex}.detail-info-desc{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);border-radius:var(--radius-md);border-left:3px solid var(--accent-primary);background:#007d5805;margin:0;padding:.85rem;line-height:1.65}.detail-info-title{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-primary);align-items:center;gap:.3rem;margin:0;font-weight:600;display:flex}.detail-info-grid{flex-direction:column;gap:.35rem;display:flex}.detail-info-card{border-radius:var(--radius-md);background:var(--bg-primary);border:1px solid var(--border-light);flex-direction:column;gap:.2rem;padding:.6rem .75rem;display:flex}.detail-info-card-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.detail-info-card-value{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-primary);font-weight:500;line-height:1.4}.detail-warning-box{font-family:var(--font-body);font-size:var(--fs-12);color:var(--warning-deep);border-radius:var(--radius-md);background:#f59e0b0f;border:1px solid #f59e0b26;padding:.7rem .85rem;line-height:1.55}.detail-deficiency-box{font-family:var(--font-body);font-size:var(--fs-12);color:#7c3aed;border-radius:var(--radius-md);background:#7c3aed0a;border:1px solid #7c3aed1f;padding:.7rem .85rem;line-height:1.55}.detail-caution-box{font-family:var(--font-body);font-size:var(--fs-12);color:#dc2626;border-radius:var(--radius-md);background:#dc26260a;border:1px solid #dc26261a;padding:.7rem .85rem;line-height:1.55}.detail-food-list{flex-direction:column;gap:.25rem;display:flex}.detail-food-item{border-radius:var(--radius-md);background:var(--bg-primary);border:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:.45rem .7rem;display:flex}.detail-food-name{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-primary);font-weight:500}.detail-food-amount{font-family:var(--font-body);font-size:var(--fs-11);color:var(--accent-primary);border-radius:var(--radius-full);white-space:nowrap;background:#007d580f;padding:.12rem .4rem;font-weight:600}.detail-synergy-list{flex-direction:column;gap:.35rem;display:flex}.detail-synergy-item{border-radius:var(--radius-md);background:var(--bg-primary);border:1px solid var(--border-light);flex-direction:column;gap:.15rem;padding:.55rem .75rem;display:flex}.detail-synergy-name{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-primary);font-weight:600}.detail-synergy-reason{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light);line-height:1.4}.detail-evidence{border-radius:var(--radius-md);background:var(--bg-primary);border:1px solid var(--border-light);align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.detail-evidence-stars{gap:.15rem;display:flex}.detail-evidence-stars .star-filled{color:var(--accent-primary);font-size:var(--fs-16)}.detail-evidence-stars .star-empty{color:#0000001a;font-size:var(--fs-16)}.detail-evidence-label{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);font-weight:500}.detail-go-edit{border-radius:var(--radius-md);width:100%;font-family:var(--font-body);font-size:var(--fs-12);color:var(--accent-primary);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:1.5px dashed #007d5833;justify-content:center;align-items:center;gap:.35rem;margin-top:.5rem;padding:.6rem;font-weight:500;display:flex}.detail-go-edit:hover{border-color:var(--accent-primary);background:#007d580a}.add-section-flex{gap:.75rem;padding:.75rem 1.25rem 2rem;display:flex}.add-section-flex .add-btn{flex:1;width:auto}.edit-toggle-btn{border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-14);cursor:pointer;transition:var(--transition-smooth);background:0 0;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.9rem 1.25rem;font-weight:500;display:flex;border:1.5px solid #0000001f!important}.edit-toggle-btn:hover{border-color:rgba(var(--p-accent-rgb), .12);background:#007d5805}.edit-toggle-btn.active{box-shadow:0 4px 14px #007d5814;border:1.5px solid var(--accent-primary)!important;color:var(--accent-deep)!important;background:#007d580f!important;font-weight:600!important}.header-edit-text-btn{border:1px solid var(--border-light);border-radius:var(--radius-full);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-12);cursor:pointer;transition:var(--transition-smooth);white-space:nowrap;background:#ffffffa6;padding:.4rem .8rem;font-weight:500}.header-edit-text-btn:hover{background:var(--bg-secondary);border-color:rgba(var(--p-accent-rgb), .12);color:var(--accent-deep);transform:scale(1.04)}.header-edit-text-btn.active{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deep));border-color:#0000;font-weight:600;box-shadow:0 3px 10px #007d582e;color:var(--text-on-accent)!important}@media (width>=769px){.tracker-header{display:none}.tracker-page{max-width:520px;margin-left:auto;margin-right:auto}}.sdq-quota-notice{font-size:var(--fs-12);color:var(--text-secondary);background:#007d580d;border:1px solid #007d581f;border-radius:99px;align-items:center;gap:6px;width:fit-content;padding:7px 12px;display:flex}.sdq-quota-notice.at-limit{color:#b83232;background:#b832320f;border-color:#b832322e}.sdq-locked-state{color:#b83232;background:#b832320d;border:1px solid #b8323224;border-radius:12px;align-items:flex-start;gap:10px;padding:14px 16px;display:flex}.sdq-locked-state div{flex-direction:column;gap:3px;display:flex}.sdq-locked-state strong{font-size:var(--fs-14);font-weight:700}.sdq-locked-state span{font-size:var(--fs-12);opacity:.8}.sdq-history-section{padding:0;overflow:hidden}.sdq-history-toggle{width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:1rem 1.25rem;font-weight:700;transition:color .15s;display:flex}.sdq-history-toggle:hover{color:var(--text-primary)}.sdq-history-list{border-top:1px solid var(--border-light);flex-direction:column;display:flex}.sdq-history-item-wrap{border-bottom:1px solid var(--border-light)}.sdq-history-item-wrap:last-child{border-bottom:none}.sdq-history-item{width:100%;font-family:var(--font-body);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;transition:background .15s;display:flex}.sdq-history-item:hover{background:#007d5808}.sdq-history-breakdown{border-top:1px solid var(--border-light);background:#00000005;flex-direction:column;gap:.55rem;padding:.75rem 0 1rem;display:flex}.sdq-history-meta{flex-direction:column;gap:2px;display:flex}.sdq-history-date{font-size:var(--fs-14);color:var(--text-primary);font-weight:600}.sdq-history-ago{font-size:var(--fs-12);color:var(--text-light)}.sdq-history-score{font-size:var(--fs-18);align-items:center;gap:8px;font-weight:700;display:flex}.sdq-history-grade{font-size:var(--fs-12);border-radius:99px;padding:3px 10px;font-weight:700;display:inline-block}.sdq-last-result{flex-direction:column;gap:.5rem;padding:1.25rem;display:flex}.sdq-last-result-label{font-size:var(--fs-12);color:var(--text-light);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.sdq-last-result-row{justify-content:space-between;align-items:center;display:flex}.sdq-last-result-date{font-size:var(--fs-14);color:var(--text-secondary)}.sdq-last-result-score{font-size:var(--fs-18);align-items:center;gap:8px;font-weight:700;display:flex}.sdq-history-pass-hint{font-size:var(--fs-12);color:var(--text-light);border-top:1px solid var(--border-light);margin:0;padding-top:.25rem;line-height:1.5}.sdq-pane{flex-direction:column;gap:1rem;display:flex}.sdq-history-chip{font-size:var(--fs-12);color:var(--text-secondary);background:#007d580f;border:1px solid #007d581f;border-radius:99px;align-items:center;gap:6px;width:fit-content;padding:5px 12px;display:inline-flex}.sdq-history-chip strong{color:var(--text-primary)}.sdq-intro-card{flex-direction:column;gap:1rem;padding:1.75rem 1.5rem;display:flex}.sdq-badge{font-size:var(--fs-12);color:var(--accent-primary);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:5px;width:fit-content;font-weight:700;display:inline-flex}.sdq-title{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);margin:0;font-weight:700;line-height:1.25}.sdq-desc{font-size:var(--fs-14);color:var(--text-secondary);margin:0;line-height:1.65}.sdq-features{flex-direction:column;gap:.85rem;margin-top:.25rem;display:flex}.sdq-feature{align-items:flex-start;gap:.85rem;display:flex}.sdq-feat-num{background:var(--accent-primary);width:24px;height:24px;color:var(--text-on-accent);font-size:var(--fs-12);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-weight:700;display:flex}.sdq-feature h4{font-size:var(--fs-14);color:var(--text-primary);margin:0 0 .2rem;font-weight:700}.sdq-feature p{font-size:var(--fs-12);color:var(--text-secondary);margin:0;line-height:1.5}.sdq-autofill-notice{font-size:var(--fs-12);color:var(--accent-primary);background:#007d580d;border:1px solid #007d581f;border-radius:10px;align-items:center;gap:6px;padding:8px 12px;font-weight:500;display:flex}.sdq-start-btn{background:var(--accent-primary);width:100%;color:var(--text-on-accent);font-family:var(--font-body);font-size:var(--fs-16);cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;margin-top:.25rem;padding:.95rem;font-weight:700;transition:opacity .2s;display:flex}.sdq-start-btn:hover{opacity:.88}.sdq-progress-wrap{align-items:center;gap:10px;display:flex}.sdq-progress-bar{background:#007d581a;border-radius:99px;flex:1;height:4px;overflow:hidden}.sdq-progress-fill{background:var(--accent-primary);border-radius:99px;height:100%;transition:width .35s cubic-bezier(.16,1,.3,1)}.sdq-progress-label{font-size:var(--fs-12);color:var(--text-light);white-space:nowrap;font-weight:700}.sdq-q-card{flex-direction:column;gap:.85rem;padding:1.75rem 1.5rem;display:flex}.sdq-q-category{font-size:var(--fs-12);color:var(--accent-primary);letter-spacing:.04em;text-transform:uppercase;font-weight:700}.sdq-q-text{font-size:var(--fs-18);color:var(--text-primary);margin:0;font-weight:700;line-height:1.45}.sdq-q-hint{font-size:var(--fs-12);color:var(--text-light);margin:-.25rem 0 0}.sdq-options{flex-direction:column;gap:.6rem;margin-top:.25rem;display:flex}.sdq-option{border:1.5px solid var(--border-light);width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);text-align:left;cursor:pointer;background:0 0;border-radius:12px;padding:.85rem 1.1rem;font-weight:500;transition:border-color .18s,background .18s,color .18s}.sdq-option:hover{color:var(--text-primary);background:#007d5808;border-color:#007d584d}.sdq-option.selected{border-color:var(--accent-primary);color:var(--accent-primary);background:#007d5812;font-weight:700}.sdq-nav{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.sdq-nav-back{border:1.5px solid var(--border-light);font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:12px;align-items:center;gap:6px;padding:.75rem 1.1rem;font-weight:600;transition:all .18s;display:flex}.sdq-nav-back:hover{color:var(--text-primary);border-color:#007d5840}.sdq-nav-next{background:var(--accent-primary);font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-on-accent);cursor:pointer;border:none;border-radius:12px;align-items:center;gap:6px;padding:.75rem 1.4rem;font-weight:700;transition:opacity .18s;display:flex}.sdq-nav-next:disabled{opacity:.35;cursor:not-allowed}.sdq-nav-next:not(:disabled):hover{opacity:.88}.sdq-result-header{text-align:center;flex-direction:column;align-items:center;gap:.6rem;padding:2rem 1.5rem 1.75rem;display:flex}.sdq-score-wrap{align-items:baseline;gap:4px;display:flex}.sdq-score-num{font-family:var(--font-heading);font-size:var(--fs-48);font-weight:700;line-height:1}.sdq-score-denom{font-size:var(--fs-18);color:var(--text-light);font-weight:500}.sdq-grade-badge{font-size:var(--fs-14);letter-spacing:.02em;border-radius:99px;padding:4px 16px;font-weight:700;display:inline-block}.sdq-grade-desc{font-size:var(--fs-14);color:var(--text-secondary);max-width:28ch;margin:0;line-height:1.55}.sdq-breakdown{flex-direction:column;gap:.75rem;padding:1.5rem;display:flex}.sdq-section-title{font-size:var(--fs-11);color:var(--text-secondary);letter-spacing:.03em;text-transform:uppercase;margin:0 0 .25rem;font-weight:700}.sdq-bar-row{align-items:center;gap:10px;display:flex}.sdq-bar-label{font-size:var(--fs-12);color:var(--text-secondary);white-space:nowrap;flex:0 0 90px;font-weight:500}.sdq-bar-track{background:#0000000f;border-radius:99px;flex:1;height:6px;overflow:hidden}.sdq-bar-fill{border-radius:99px;height:100%;transition:width .5s cubic-bezier(.16,1,.3,1)}.sdq-bar-score{font-size:var(--fs-12);text-align:right;white-space:nowrap;flex:0 0 30px;font-weight:700}.sdq-recommendations{flex-direction:column;gap:1.1rem;padding:1.5rem;display:flex}.sdq-rec-item{flex-direction:column;gap:.5rem;display:flex}.sdq-rec-header{font-size:var(--fs-14);color:var(--text-primary);align-items:center;gap:6px;font-weight:700;display:flex}.sdq-rec-tips{flex-direction:column;gap:.3rem;margin:0;padding-left:1.1rem;display:flex}.sdq-rec-tips li{font-size:var(--fs-13);color:var(--text-secondary);line-height:1.55}.sdq-all-good{color:var(--accent-primary);font-size:var(--fs-14);align-items:center;gap:10px;padding:1.25rem 1.5rem;font-weight:600;display:flex}.sdq-supps{flex-direction:column;gap:.75rem;padding:1.5rem;display:flex}.sdq-supp-chips{flex-wrap:wrap;gap:.5rem;display:flex}.sdq-supps-hint{font-size:var(--fs-11);color:var(--text-light);text-transform:none;letter-spacing:0;margin-left:6px;font-weight:400}.sdq-supp-chip{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-primary);cursor:pointer;background:#007d580f;border:1px solid #007d581f;border-radius:99px;align-items:center;gap:6px;padding:6px 14px;font-weight:600;transition:background .18s,border-color .18s;display:inline-flex}.sdq-supp-chip:hover{background:#007d581c;border-color:#007d5840}.sdq-reset-btn{border:1.5px solid var(--border-light);width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:14px;justify-content:center;align-items:center;gap:7px;padding:.85rem;font-weight:600;transition:all .18s;display:flex}.sdq-reset-btn:hover{color:var(--text-primary);border-color:#007d5840}@keyframes fadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes savedPop{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.15)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes emptyFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.sleep-page{background-color:var(--bg-primary);background-image:radial-gradient(70% 50% at 50% 0,#5c6b640a 0%,#0000 65%);min-height:100vh;padding-bottom:4rem;position:relative}.sleep-header{z-index:100;-webkit-backdrop-filter:blur(20px)saturate(1.6);background:#ffffffe6;border-bottom:1px solid #007d5814;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 20px #00000008}.sleep-header .header-back,.sleep-header .back-btn{width:38px;height:38px;font-size:var(--fs-18);cursor:pointer;transition:var(--transition-smooth);justify-content:center;align-items:center;display:inline-flex;background:var(--bg-secondary)!important;color:var(--accent-primary)!important;border:1px solid #007d581f!important;border-radius:50%!important;box-shadow:0 2px 8px #007d5814!important}.sleep-header .header-back:hover,.sleep-header .back-btn:hover{background:var(--accent-tint)!important;color:var(--accent-deeper)!important;border-color:#007d5840!important;transform:translateY(-1px)scale(1.04)!important;box-shadow:0 4px 12px #007d5826!important}@media (width>=769px){.sleep-header .header-title .header-emoji,.sleep-header .header-title .title-text-sub{display:none!important}}.sleep-header .header-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.sleep-header .header-spacer{flex-shrink:0;width:38px;height:38px}.sleep-content{flex-direction:column;gap:1.5rem;max-width:520px;margin:0 auto;padding:1.5rem 1.25rem 0;display:flex}.checkin-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-md);flex-direction:column;gap:1.75rem;padding:2rem;animation:.6s cubic-bezier(.16,1,.3,1) forwards slideIn;display:flex}.checkin-card-top{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.checkin-card-title{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:.5rem;font-weight:600;line-height:1.3;display:flex}.checkin-card-title .checkin-icon{font-size:var(--fs-22);line-height:1}.checkin-date{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);letter-spacing:.01em;margin-top:-1rem;font-weight:400}.checkin-saved{border-radius:var(--radius-full);color:var(--success);font-family:var(--font-body);font-size:var(--fs-12);letter-spacing:.02em;background:linear-gradient(135deg,#48bb781f,#5c6b640d);border:1px solid #48bb7840;align-self:flex-start;align-items:center;gap:.35rem;margin-top:-.75rem;padding:.35rem .85rem;font-weight:600;animation:.5s cubic-bezier(.34,1.56,.64,1) forwards savedPop;display:inline-flex}.checkin-saved .saved-check{font-size:var(--fs-14);line-height:1}.sleep-input-group{flex-direction:column;gap:.85rem;display:flex}.sleep-label{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.4rem;font-weight:600;display:flex}.sleep-value-display{font-family:var(--font-body);font-size:var(--fs-40);color:var(--text-primary);text-align:center;letter-spacing:-.02em;font-weight:700;line-height:1.1;transition:color .3s}.sleep-value-display .value-unit{font-family:var(--font-body);font-size:var(--fs-16);color:var(--text-light);margin-left:.15rem;font-weight:500}.sleep-slider-wrapper{padding:.5rem 0;position:relative}.sleep-slider{appearance:none;background:linear-gradient(to right, #8ca096 0%, #8ca096 var(--slider-fill,50%), #0000000f var(--slider-fill,50%), #0000000f 100%);cursor:pointer;border-radius:3px;outline:none;width:100%;height:6px;transition:background .15s}.sleep-slider::-webkit-slider-thumb{appearance:none;background:linear-gradient(145deg, var(--bg-secondary), var(--surface-muted));cursor:pointer;border:2.5px solid #8ca096;border-radius:50%;width:24px;height:24px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .25s;box-shadow:0 2px 8px #5c6b6426,0 1px 3px #00000014}.sleep-slider::-webkit-slider-thumb:hover{transform:scale(1.18);box-shadow:0 4px 14px #5c6b6440,0 2px 6px #0000001a}.sleep-slider::-webkit-slider-thumb:active{border-color:var(--text-secondary);transform:scale(1.1);box-shadow:0 2px 10px #5c6b6459,0 0 0 4px #5c6b6414}.sleep-slider::-moz-range-thumb{background:linear-gradient(145deg, var(--bg-secondary), var(--surface-muted));cursor:pointer;border:2.5px solid #8ca096;border-radius:50%;width:24px;height:24px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .25s;box-shadow:0 2px 8px #5c6b6426,0 1px 3px #00000014}.sleep-slider::-moz-range-thumb:hover{transform:scale(1.18);box-shadow:0 4px 14px #5c6b6440,0 2px 6px #0000001a}.sleep-slider::-moz-range-thumb:active{border-color:var(--text-secondary);transform:scale(1.1);box-shadow:0 2px 10px #5c6b6459,0 0 0 4px #5c6b6414}.sleep-slider::-moz-range-track{background:#0000000f;border:none;border-radius:3px;height:6px}.sleep-slider::-moz-range-progress{background:#8ca096;border-radius:3px;height:6px}.sleep-slider-labels{justify-content:space-between;margin-top:.35rem;display:flex}.sleep-slider-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);letter-spacing:.02em;font-weight:500}.emoji-selector{justify-content:center;gap:.65rem;display:flex}.emoji-btn{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-secondary);cursor:pointer;width:56px;height:56px;font-size:var(--fs-28);-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;line-height:1;transition:transform .3s cubic-bezier(.34,1.56,.64,1),border-color .3s,background .3s,box-shadow .3s;display:flex;position:relative}.emoji-btn:hover{border-color:#5c6b6440;transform:translateY(-3px);box-shadow:0 4px 14px #5c6b640f}.emoji-btn:active{transform:scale(.95)}.emoji-btn.selected{border-color:var(--text-primary);background:#111a160d;transform:scale(1.15);box-shadow:0 4px 18px #111a161a,0 0 0 3px #111a160a}.emoji-btn.selected:hover{transform:scale(1.18)}.emoji-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-align:center;letter-spacing:.01em;white-space:nowrap;margin-top:.4rem;font-weight:500;transition:color .3s}.emoji-btn.selected+.emoji-label,.emoji-btn.selected~.emoji-label{color:var(--text-primary);font-weight:600}.emoji-col{flex-direction:column;align-items:center;gap:0;display:flex}.emoji-col .emoji-label{margin-top:.4rem}.emoji-col .emoji-btn.selected~.emoji-label{color:var(--text-primary);font-weight:600}.emoji-col:has(.emoji-btn.selected) .emoji-label{color:var(--text-primary);font-weight:600}.energy-selector{justify-content:center;align-items:center;gap:.25rem;width:100%;display:flex}.energy-dot{aspect-ratio:1;border-radius:var(--radius-full);border:1.5px solid var(--border-light);background:var(--bg-secondary);min-width:0;max-width:40px;font-family:var(--font-body);color:var(--text-light);cursor:pointer;-webkit-user-select:none;user-select:none;flex:1 1 0;justify-content:center;align-items:center;padding:0;font-size:clamp(.6rem,2.6vw,.82rem);font-weight:600;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .3s,border-color .3s,color .3s,box-shadow .3s;display:flex}.energy-dot:hover{border-color:#5c6b644d;transform:translateY(-2px);box-shadow:0 3px 10px #5c6b640d}.energy-dot:active{transform:scale(.95)}.energy-dot.active{color:var(--text-on-accent)!important;background:linear-gradient(135deg,#528a6d,#31644b)!important;border-color:#0000!important;box-shadow:0 3px 12px #31644b2e!important}.energy-dot.selected{color:var(--text-on-accent)!important;background:linear-gradient(135deg,#528a6d,#31644b)!important;border-color:#0000!important;transform:scale(1.1)!important;box-shadow:0 4px 16px #31644b40,0 0 0 4px #31644b14!important}.energy-level-labels{justify-content:space-between;margin-top:.35rem;padding:0 .25rem;display:flex}.energy-level-labels span,.energy-level-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);letter-spacing:.04em;text-align:center;min-width:28px;font-weight:500}.sleep-memo{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-primary);width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);resize:vertical;outline:none;min-height:56px;max-height:120px;padding:.75rem 1rem;line-height:1.5;transition:border-color .3s,box-shadow .3s}.sleep-memo::placeholder{color:var(--text-light)}.sleep-memo:focus{border-color:var(--text-secondary);box-shadow:0 0 0 3px #5c6b640d}.memo-count{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-align:right;margin-top:.25rem;display:block}.trend-item-memo{width:100%;font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);border-top:1px solid var(--border-light);white-space:pre-wrap;word-break:break-word;margin-top:.3rem;padding-top:.4rem;line-height:1.4}.save-btn{border-radius:var(--radius-full);width:100%;font-family:var(--font-body);font-size:var(--fs-16);letter-spacing:.01em;cursor:pointer;justify-content:center;align-items:center;gap:.5rem;min-height:52px;padding:1rem 1.5rem;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,background .35s,opacity .35s;display:flex;background:var(--accent-tint)!important;color:var(--accent-deep)!important;border:1px solid #007d582e!important;font-weight:700!important;box-shadow:0 2px 8px #007d580a,inset 0 1px #fff6!important}.save-btn:hover{transform:translateY(-2px);background:var(--accent-tint)!important;color:var(--accent-deep)!important;border-color:#007d5847!important;box-shadow:0 4px 12px #007d581a!important}.save-btn:active{transform:translateY(0)scale(.98);box-shadow:0 2px 8px #007d580f!important}.save-btn:disabled{color:#fff9;cursor:not-allowed;box-shadow:none;background:linear-gradient(135deg,#d0d0d0,#b8b8b8);transform:none}.save-btn:disabled:hover{box-shadow:none;transform:none}.save-btn.saved{background:linear-gradient(135deg, var(--success), var(--success));box-shadow:0 4px 16px #48bb784d}.save-btn.saved:hover{box-shadow:0 6px 20px #48bb7859}.save-btn .save-icon{font-size:var(--fs-18);line-height:1}.trend-section{flex-direction:column;gap:1rem;animation:.6s cubic-bezier(.16,1,.3,1) .15s both fadeInUp;display:flex}.trend-header{justify-content:space-between;align-items:center;display:flex}.trend-header .trend-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:.4rem;font-weight:600;display:flex}.trend-toggle{border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-secondary);display:flex;overflow:hidden}.trend-toggle-btn{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light);cursor:pointer;transition:var(--transition-smooth);letter-spacing:.01em;background:0 0;border:none;padding:.35rem .85rem;font-weight:500}.trend-toggle-btn:hover{color:var(--text-secondary);background:#00000005}.trend-toggle-btn.active{background:var(--accent-tint)!important;color:var(--accent-deep)!important;font-weight:700!important;box-shadow:0 2px 8px #007d580f!important}.trend-toggle-btn:hover{color:var(--accent-deep)!important}.trend-chart{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);padding:1.5rem 1rem 1rem;overflow:hidden}.trend-bars{justify-content:center;align-items:stretch;gap:.45rem;height:160px;padding:0 .25rem;display:flex}.trend-bar-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:.35rem;min-width:0;max-width:42px;height:100%;display:flex}.trend-bar-wrapper{flex:1;width:100%;min-height:0;position:relative}.trend-bar{border-radius:6px 6px 2px 2px;width:100%;max-width:28px;min-height:4px;transition:background .3s;position:absolute;bottom:0;left:50%;transform:translate(-50%);background:linear-gradient(180deg, var(--success) 0%, #c8e3d5 100%)!important}.trend-bar:hover{background:linear-gradient(180deg, var(--accent-deep) 0%, var(--success) 100%)!important}.trend-bar-col:first-child .trend-bar{animation-delay:50ms}.trend-bar-col:nth-child(2) .trend-bar{animation-delay:.1s}.trend-bar-col:nth-child(3) .trend-bar{animation-delay:.15s}.trend-bar-col:nth-child(4) .trend-bar{animation-delay:.2s}.trend-bar-col:nth-child(5) .trend-bar{animation-delay:.25s}.trend-bar-col:nth-child(6) .trend-bar{animation-delay:.3s}.trend-bar-col:nth-child(7) .trend-bar{animation-delay:.35s}.trend-bar-col:nth-child(8) .trend-bar{animation-delay:.4s}.trend-bar-col:nth-child(9) .trend-bar{animation-delay:.45s}.trend-bar-col:nth-child(10) .trend-bar{animation-delay:.5s}.trend-bar-col:nth-child(11) .trend-bar{animation-delay:.55s}.trend-bar-col:nth-child(12) .trend-bar{animation-delay:.6s}.trend-bar-col:nth-child(13) .trend-bar{animation-delay:.65s}.trend-bar-col:nth-child(14) .trend-bar{animation-delay:.7s}.trend-bar-value{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-align:center;white-space:nowrap;margin-bottom:.2rem;font-weight:600}.trend-bar-date{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-align:center;white-space:nowrap;letter-spacing:.01em;font-weight:500}.trend-bar-col.today .trend-bar{background:linear-gradient(180deg, var(--accent-deep) 0%, #468a69 100%)!important;box-shadow:0 2px 10px #00694a26!important}.trend-bar-col.today .trend-bar-date,.trend-bar-col.today .trend-bar-value{color:var(--text-primary);font-weight:700}.trend-list{flex-direction:column;gap:.45rem;display:flex}.trend-item{border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);flex-wrap:wrap;justify-content:space-between;align-items:center;padding:.85rem 1rem;animation:.5s cubic-bezier(.16,1,.3,1) both fadeInUp;display:flex}.trend-item.today{background:#5c6b6408;border-color:#5c6b6433}.trend-item-data{align-items:center;gap:.85rem;display:flex}.trend-item:first-child{animation-delay:40ms}.trend-item:nth-child(2){animation-delay:80ms}.trend-item:nth-child(3){animation-delay:.12s}.trend-item:nth-child(4){animation-delay:.16s}.trend-item:nth-child(5){animation-delay:.2s}.trend-item:nth-child(6){animation-delay:.24s}.trend-item:nth-child(7){animation-delay:.28s}.trend-item:hover{border-color:#5c6b641f;transform:translateY(-1px);box-shadow:0 4px 16px #5c6b640a}.trend-item-date{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);flex-shrink:0;min-width:96px;margin-right:1.2rem;font-weight:500}.trend-item-sleep{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);align-items:center;gap:.3rem;min-width:52px;font-weight:600;display:flex}.trend-item-sleep .moon-icon{font-size:var(--fs-14);line-height:1}.trend-item-emoji{font-size:var(--fs-18);flex-shrink:0;line-height:1}.trend-item-energy{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-primary);align-items:center;gap:3px;margin-left:auto;font-weight:600;display:flex}.trend-item-energy .mini-dot{background:#00000012;border-radius:50%;width:8px;height:8px;transition:background .3s}.trend-item-energy .mini-dot.filled{background:linear-gradient(135deg, var(--text-secondary), var(--text-primary));box-shadow:0 1px 3px #111a1626}.sleep-stats{gap:.65rem;animation:.6s cubic-bezier(.16,1,.3,1) .25s both fadeInUp;display:flex}.sleep-stat-card{border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);flex-direction:column;flex:1;align-items:center;gap:.3rem;padding:1rem .5rem;display:flex}.sleep-stat-card:hover{border-color:#5c6b6426;transform:translateY(-2px);box-shadow:0 4px 16px #5c6b640a}.sleep-stat-value{font-family:var(--font-body);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.02em;font-weight:700;line-height:1.1}.sleep-stat-value .stat-unit{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);margin-left:.1rem;font-weight:500}.sleep-stat-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-transform:uppercase;letter-spacing:.06em;text-align:center;font-weight:500}.sleep-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem 2rem;animation:.6s cubic-bezier(.16,1,.3,1) .1s both fadeInUp;display:flex}.sleep-empty-icon{font-size:var(--fs-56);filter:grayscale(.1);line-height:1;animation:3s ease-in-out infinite emptyFloat}.sleep-empty-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.sleep-empty-desc{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-light);max-width:280px;font-weight:400;line-height:1.5}@media (width<=480px){.checkin-card{padding:1.5rem 1.25rem}.sleep-value-display{font-size:var(--fs-36)}.emoji-btn{width:48px;height:48px;font-size:var(--fs-22);border-radius:10px}.emoji-selector{gap:.45rem}.emoji-label{font-size:var(--fs-10)}.energy-selector{justify-content:center;gap:.2rem;display:flex}.energy-level-label{display:none}.trend-bar{max-width:20px}.trend-bars{gap:.3rem;height:130px}.trend-bar-value,.trend-bar-date{font-size:var(--fs-10)}.sleep-stats{gap:.45rem}.sleep-stat-card{padding:.85rem .35rem}.sleep-stat-value{font-size:var(--fs-18)}.sleep-stat-label{font-size:var(--fs-10)}}@media (width<=340px){.sleep-content{padding-left:1rem;padding-right:1rem}.emoji-btn{width:44px;height:44px;font-size:var(--fs-18)}.emoji-selector{gap:.35rem}.trend-bar-col{max-width:30px}}@media (width>=600px){.sleep-content{gap:2rem;padding-top:2.5rem}.checkin-card{gap:2rem;padding:2.25rem 2.5rem}.checkin-card-title{font-size:var(--fs-22)}.sleep-value-display{font-size:var(--fs-48)}.emoji-btn{width:62px;height:62px;font-size:var(--fs-28)}.trend-chart{padding:2rem 1.5rem 1.25rem}.trend-bars{gap:.6rem;height:180px}.trend-bar{max-width:34px}}@media (pointer:coarse){.sleep-slider::-webkit-slider-thumb{width:28px;height:28px}.sleep-slider::-moz-range-thumb{width:28px;height:28px}.emoji-btn{min-width:48px;min-height:48px}.energy-dot{min-width:0;min-height:0}.trend-toggle-btn{font-size:var(--fs-12);padding:.45rem 1rem}}@media (prefers-reduced-motion:reduce){.checkin-card,.trend-section,.sleep-stats,.sleep-empty,.trend-item,.trend-bar{animation:none}.emoji-btn,.energy-dot,.save-btn,.sleep-stat-card,.trend-item{transition:none}.sleep-slider::-webkit-slider-thumb{transition:none}.sleep-slider::-moz-range-thumb{transition:none}.sleep-empty-icon{animation:none}}.emoji-btn:focus-visible,.energy-dot:focus-visible,.save-btn:focus-visible,.trend-toggle-btn:focus-visible,.sleep-header .header-back:focus-visible{outline:2px solid var(--text-secondary);outline-offset:2px}.sleep-slider:focus-visible{outline:none}.sleep-slider:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #5c6b642e,0 2px 8px #5c6b6426}.sleep-slider:focus-visible::-moz-range-thumb{box-shadow:0 0 0 4px #5c6b642e,0 2px 8px #5c6b6426}.meditation-overlay{z-index:200;opacity:1;background:radial-gradient(at 50% 45%,#111640 0%,#0a0e27 100%);flex-direction:column;justify-content:center;align-items:center;animation:.5s cubic-bezier(.16,1,.3,1) forwards fadeIn;display:flex;position:fixed;inset:0}.breathing-bubble{opacity:.75;will-change:transform, opacity, box-shadow;background:radial-gradient(circle at 38% 38%,#fffffff2 0%,#8b5cf6 40%,#5b21b6 100%);border-radius:50%;flex-shrink:0;width:160px;height:160px;position:relative;transform:scale(.6);box-shadow:0 0 40px 8px #8b5cf647,0 0 80px 20px #8b5cf621,0 0 120px 40px #5b21b60f}@keyframes breatheIn{0%{opacity:.7;transform:scale(.6);box-shadow:0 0 30px 4px #8b5cf62e,0 0 60px 12px #8b5cf614,0 0 90px 28px #5b21b608}to{opacity:1;transform:scale(1);box-shadow:0 0 50px 12px #8b5cf659,0 0 100px 30px #8b5cf629,0 0 150px 50px #5b21b612}}@keyframes breatheHold{0%,to{opacity:1;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}}@keyframes breatheOut{0%{opacity:1;transform:scale(1);box-shadow:0 0 50px 12px #8b5cf659,0 0 100px 30px #8b5cf629,0 0 150px 50px #5b21b612}to{opacity:.7;transform:scale(.6);box-shadow:0 0 30px 4px #8b5cf62e,0 0 60px 12px #8b5cf614,0 0 90px 28px #5b21b608}}.breathing-bubble.inhale{animation:4s ease-in-out forwards breatheIn}.breathing-bubble.hold{animation:7s ease-in-out forwards breatheHold}.breathing-bubble.exhale{animation:8s ease-in-out forwards breatheOut}.breathing-phase-text{font-family:var(--font-heading);font-size:var(--fs-22);color:#f4e7beeb;letter-spacing:.1em;text-transform:uppercase;text-align:center;-webkit-user-select:none;user-select:none;margin-top:2.5rem;font-weight:600;transition:opacity .4s}.breathing-phase-text.fade{opacity:0}.meditation-timer{top:env(safe-area-inset-top,1.5rem);font-family:var(--font-body);font-size:var(--fs-14);color:#fff9;letter-spacing:.06em;-webkit-user-select:none;user-select:none;padding-top:1.5rem;font-weight:500;position:absolute;left:50%;transform:translate(-50%)}.meditation-close-btn{top:env(safe-area-inset-top,1rem);-webkit-backdrop-filter:blur(8px);color:#ffffff80;width:44px;height:44px;font-size:var(--fs-18);cursor:pointer;z-index:210;background:#ffffff0a;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;padding-top:1rem;transition:background .3s,border-color .3s,color .3s;display:flex;position:absolute;right:1rem}.meditation-close-btn:hover{color:#fffc;background:#ffffff1a;border-color:#ffffff47}.meditation-close-btn:active{transform:scale(.93)}.meditation-card{border-radius:var(--radius-lg);background:linear-gradient(135deg, #6366f10a 0%, #4f46e505 100%), var(--bg-secondary);box-shadow:var(--shadow-md);border:1px solid #6366f11f;flex-direction:column;gap:1.5rem;padding:2rem 1.75rem;animation:.6s cubic-bezier(.16,1,.3,1) both fadeInUp;display:flex}.meditation-card-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:.5rem;font-weight:600;display:flex}.meditation-start-btn{border-radius:var(--radius-full);width:100%;font-family:var(--font-body);font-size:var(--fs-16);letter-spacing:.01em;cursor:pointer;justify-content:center;align-items:center;gap:.5rem;min-height:52px;padding:1rem 1.5rem;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,background .35s;display:flex;background:var(--accent-tint)!important;color:var(--accent-deep)!important;border:1px solid #007d582e!important;font-weight:700!important;box-shadow:0 2px 8px #007d580a,inset 0 1px #fff6!important}.meditation-start-btn:hover{transform:translateY(-2px);background:var(--accent-tint)!important;color:var(--accent-deep)!important;border-color:#007d5847!important;box-shadow:0 4px 12px #007d581a!important}.meditation-start-btn:active{transform:translateY(0)scale(.98);box-shadow:0 2px 8px #6366f14d;box-shadow:0 2px 8px #007d580f!important}.meditation-start-btn:disabled{color:#fff9;cursor:not-allowed;box-shadow:none;background:linear-gradient(135deg,#d0d0d0,#b8b8b8);transform:none}.meditation-start-btn .start-icon{font-size:var(--fs-18);line-height:1}.meditation-duration-selector{border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-secondary);display:flex;overflow:hidden}.meditation-duration-chip{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);cursor:pointer;transition:var(--transition-smooth);letter-spacing:.01em;white-space:nowrap;background:0 0;border:none;padding:.4rem .95rem;font-weight:500}.meditation-duration-chip:hover{color:var(--text-secondary);background:#6366f10a}.meditation-duration-chip.active{background:var(--accent-tint)!important;color:var(--accent-deep)!important;font-weight:700!important;box-shadow:0 2px 8px #007d580f,inset 0 1px #fff6!important}.meditation-badge{border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-11);letter-spacing:.01em;white-space:nowrap;align-items:center;gap:.3rem;padding:.25rem .65rem;font-weight:600;display:inline-flex;background:var(--accent-tint)!important;color:var(--accent-deep)!important;border:1px solid #007d581f!important}.meditation-badge .badge-emoji{font-size:var(--fs-14);line-height:1}@keyframes meditationScaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.meditation-complete{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px);text-align:center;background:#ffffff0f;border:1px solid #ffffff1a;flex-direction:column;align-items:center;gap:1.25rem;width:90%;max-width:320px;padding:2.5rem 2rem;animation:.5s cubic-bezier(.16,1,.3,1) both meditationScaleIn;display:flex}.meditation-complete-icon{font-size:var(--fs-48);line-height:1}.meditation-complete-title{font-family:var(--font-heading);font-size:var(--fs-22);color:#f4e7bef2;letter-spacing:-.01em;font-weight:600}.meditation-complete-stats{gap:1.5rem;display:flex}.meditation-complete-stat{flex-direction:column;align-items:center;gap:.2rem;display:flex}.meditation-complete-stat-value{font-family:var(--font-heading);font-size:var(--fs-28);color:var(--text-on-accent);font-weight:700;line-height:1.1}.meditation-complete-stat-label{font-family:var(--font-body);font-size:var(--fs-10);color:#ffffff73;text-transform:uppercase;letter-spacing:.08em;font-weight:500}.meditation-complete-btn{border-radius:var(--radius-full);color:#f4e7bee6;font-family:var(--font-body);font-size:var(--fs-14);cursor:pointer;background:#f4e7be14;border:1px solid #f4e7be40;margin-top:.5rem;padding:.75rem 2rem;font-weight:600;transition:background .3s,border-color .3s}.meditation-complete-btn:hover{background:#f4e7be26;border-color:#f4e7be66}.meditation-complete-btn:active{transform:scale(.97)}.breathing-ring{pointer-events:none;width:200px;height:200px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.breathing-ring circle{fill:none;stroke-width:2.5px;stroke-linecap:round}.breathing-ring .ring-track{stroke:#ffffff0f}.breathing-ring .ring-progress{stroke:#6366f1cc;stroke-dasharray:565.48;stroke-dashoffset:565.48px;transform-origin:50%;transition:stroke-dashoffset 1s linear,stroke .6s;transform:rotate(-90deg)}.breathing-ring .ring-progress.active{stroke:#8b5cf6e6}@media (width<=380px){.breathing-bubble{width:120px;height:120px}.breathing-ring{width:152px;height:152px}.breathing-phase-text{font-size:var(--fs-18);letter-spacing:.08em;margin-top:2rem}.meditation-timer{font-size:var(--fs-13)}.meditation-complete{padding:2rem 1.5rem}.meditation-complete-title{font-size:var(--fs-18)}.meditation-complete-stat-value{font-size:var(--fs-22)}.meditation-card{padding:1.5rem 1.25rem}.meditation-duration-chip{font-size:var(--fs-10);padding:.35rem .7rem}}@media (prefers-reduced-motion:reduce){.breathing-bubble,.breathing-bubble.inhale,.breathing-bubble.hold,.breathing-bubble.exhale{transition:transform 10ms,opacity 10ms;animation:none}.meditation-complete{animation:none}.meditation-overlay{transition:opacity 10ms}}.meditation-close-btn:focus-visible,.meditation-start-btn:focus-visible,.meditation-duration-chip:focus-visible,.meditation-complete-btn:focus-visible{outline:2px solid var(--text-secondary);outline-offset:2px}.breathing-bubble-container{flex-shrink:0;justify-content:center;align-items:center;width:200px;height:200px;display:flex;position:relative}.breathing-bubble-container .breathing-ring{position:absolute;inset:0}.breathing-phase-sub{font-family:var(--font-body);font-size:var(--fs-13);color:#fff6;letter-spacing:.02em;text-align:center;margin-top:.5rem;font-weight:400}.meditation-card-top{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.meditation-card-desc{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-light);margin:-.5rem 0 .25rem;font-weight:400;line-height:1.55}.meditation-done-btn{border-radius:var(--radius-full);width:100%;max-width:280px;font-family:var(--font-body);font-size:var(--fs-14);letter-spacing:.01em;cursor:pointer;justify-content:center;align-items:center;gap:.5rem;margin-top:.75rem;padding:.9rem 1.5rem;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s;display:flex;background:var(--accent-tint)!important;color:var(--accent-deep)!important;border:1px solid #007d582e!important;font-weight:700!important;box-shadow:0 2px 8px #007d580a,inset 0 1px #fff6!important}.meditation-done-btn:hover{transform:translateY(-2px);background:var(--accent-tint)!important;color:var(--accent-deep)!important;border-color:#007d5847!important;box-shadow:0 4px 12px #007d581a!important}.trend-item-meditation{font-family:var(--font-body);font-size:var(--fs-12);color:#6366f1;border-radius:var(--radius-full);white-space:nowrap;background:#6366f114;margin-left:.35rem;padding:.15rem .5rem;font-weight:600}.sleep-sub-tabs{-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-full);border:1px solid var(--border-light);background:#00000005;gap:.25rem;margin:0 0 1rem;padding:.25rem;display:flex;box-shadow:inset 0 1px 2px #00000005}.sleep-sub-tab-btn{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;background:0 0;border:none;outline:none;flex:1;padding:.65rem .5rem;font-weight:500;transition:all .3s cubic-bezier(.16,1,.3,1)}.sleep-sub-tab-btn:hover{color:var(--text-secondary);background:#00000004}.sleep-sub-tab-btn.active{transform:translateY(-.5px);background:var(--accent-tint)!important;color:var(--accent-deep)!important;font-weight:700!important;box-shadow:0 2px 8px #007d580f,inset 0 1px #fff6!important}.library-intro-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);margin:0 0 1.5rem;padding:1.5rem;position:relative;overflow:hidden}.library-intro-glow{pointer-events:none;background:radial-gradient(circle,#5c6b640f 0%,#0000 70%);width:150px;height:150px;position:absolute;top:-50px;right:-50px}.library-intro-content{z-index:1;flex-direction:column;align-items:flex-start;gap:.5rem;display:flex;position:relative}.library-intro-sparkle{margin-bottom:.25rem;animation:3s ease-in-out infinite emptyFloat}.library-title{font-family:var(--font-body);font-size:var(--fs-22);color:var(--text-secondary);letter-spacing:-.02em;font-weight:700}.library-desc{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-light);font-weight:400;line-height:1.55}.articles-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.25rem;padding:0 0 2rem;display:grid}.article-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);cursor:pointer;box-shadow:var(--shadow-sm);flex-direction:column;padding:1.25rem;transition:all .35s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden!important}.article-card:before{content:"";background:0 0;width:3px;transition:background-color .3s;position:absolute;top:0;bottom:0;left:0}.article-card:hover{border-color:#5c6b6433;transform:translateY(-4px);box-shadow:0 12px 24px #0000000f,0 2px 8px #5c6b640a}.article-card:hover:before{background:var(--text-secondary)}.article-card-header{align-items:center;gap:.7rem;margin-bottom:.55rem;display:flex}.article-card-heading{flex-direction:column;min-width:0;display:flex}.article-card-emoji{font-size:var(--fs-28);transform-origin:50%;flex-shrink:0;line-height:1.25;transition:transform .3s;display:inline-block}.article-card:hover .article-card-emoji{transform:scale(1.08)rotate(4deg)}.article-card-body{flex-direction:column;flex:1;display:flex}.article-card-journal{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.2rem;font-weight:600}.article-card-title{font-family:var(--font-body);font-size:var(--fs-16);color:var(--text-secondary);letter-spacing:-.01em;margin-bottom:0;font-weight:700;line-height:1.4}.article-card-summary{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);flex:1;margin-bottom:1.25rem;font-weight:400;line-height:1.5}.article-card-footer{justify-content:flex-start;align-items:center;margin-top:auto;display:flex}.read-more-btn{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);align-items:center;font-weight:600;transition:color .2s;display:inline-flex}.article-card:hover .read-more-btn{color:var(--text-primary)}.quiz-intro-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);flex-direction:column;align-items:flex-start;gap:1rem;margin:0 0 1.5rem;padding:1.75rem 1.5rem;display:flex}.quiz-badge{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-secondary);border-radius:var(--radius-full);background:#5c6b6414;align-items:center;gap:.25rem;font-weight:600;display:inline-flex}.quiz-title{font-family:var(--font-body);font-size:var(--fs-18);color:var(--text-secondary);letter-spacing:-.02em;font-weight:700}.quiz-desc{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-light);font-weight:400;line-height:1.55}.quiz-features{flex-direction:column;gap:1rem;width:100%;margin:.5rem 0;display:flex}.q-feature{align-items:flex-start;gap:.75rem;display:flex}.q-feat-num{width:24px;height:24px;color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-13);background:#5c6b641a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.q-feature h4{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);margin-bottom:.15rem;font-weight:700}.q-feature p{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);font-weight:400;line-height:1.45}.quiz-status-box{border-radius:var(--radius-md);background:#5c6b6408;border:1px dashed #5c6b6433;gap:.75rem;width:100%;padding:1rem;display:flex}.quiz-status-icon{font-size:var(--fs-22);line-height:1}.quiz-status-text{flex-direction:column;gap:.15rem;display:flex}.quiz-status-text strong{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);font-weight:700}.quiz-status-text span{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);line-height:1.4}.quiz-start-btn{border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-primary);width:100%;color:var(--text-light);font-family:var(--font-body);font-size:var(--fs-14);justify-content:center;align-items:center;padding:.85rem;font-weight:600;display:flex}.article-modal-backdrop{-webkit-backdrop-filter:blur(12px);z-index:1000;background:#0006;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.article-modal-content{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:calc(100dvh - 7rem - var(--safe-top) - var(--safe-bottom));flex-direction:column;animation:.4s cubic-bezier(.16,1,.3,1) forwards slideIn;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px #00000014,0 2px 10px #5c6b6408}.article-modal-topbar{justify-content:flex-end;padding:1rem 1.25rem 0;display:flex}.article-modal-close{border:1px solid var(--border-light);background:var(--bg-primary);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;z-index:10;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.article-modal-close:hover{background:#00000005;transform:rotate(90deg)}.article-modal-header{border-bottom:1px solid var(--border-light);align-items:center;gap:1rem;padding:.25rem 1.75rem 1.25rem;display:flex}.article-modal-emoji{font-size:var(--fs-40);flex-shrink:0;animation:3s ease-in-out infinite emptyFloat}.article-modal-journal{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.article-modal-title{font-family:var(--font-body);font-size:var(--fs-18);color:var(--text-secondary);letter-spacing:-.015em;margin-top:.15rem;font-weight:700;line-height:1.35}.article-modal-scroll-area{scroll-behavior:smooth;flex-direction:column;flex:1;gap:1.5rem;padding:1.5rem 1.75rem 2rem;display:flex;overflow-y:auto}.article-modal-scroll-area::-webkit-scrollbar{width:6px}.article-modal-scroll-area::-webkit-scrollbar-track{background:0 0}.article-modal-scroll-area::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#00000014}.article-modal-scroll-area::-webkit-scrollbar-thumb:hover{background:#5c6b644d}.article-modal-body{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);font-weight:400;line-height:1.65}.article-paragraph{white-space:pre-line;margin-bottom:1rem}.article-takeaways-box,.article-tips-box,.article-supplements-box{background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light);padding:1.25rem}.section-title{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);letter-spacing:-.01em;align-items:center;margin-bottom:.75rem;font-weight:700;display:flex}.article-takeaways-box ul{flex-direction:column;gap:.5rem;margin:0;padding-left:1.1rem;display:flex}.article-takeaways-box li{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);font-weight:500;line-height:1.5}.article-tips-box p{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);margin:0;font-weight:500;line-height:1.55}.article-supplements-box .supp-sub{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);margin-top:-.25rem;margin-bottom:.75rem}.article-supp-chips{flex-wrap:wrap;gap:.5rem;display:flex}.article-supp-chip{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-full);cursor:pointer;outline:none;align-items:center;gap:.35rem;padding:.35rem .75rem;transition:all .25s;display:flex}.article-supp-chip:hover{background:#5c6b6408;border-color:#5c6b644d;transform:translateY(-1px);box-shadow:0 4px 8px #00000008}.article-supp-chip:active{transform:translateY(0)}.chip-emoji{font-size:var(--fs-16)}.chip-name{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);font-weight:600}.chip-link-icon{color:var(--text-light);transition:color .2s}.article-supp-chip:hover .chip-link-icon{color:var(--text-primary)}.sleep-toast-overlay{z-index:2000;pointer-events:none;justify-content:center;width:auto;display:flex;position:fixed;bottom:5.5rem;left:1rem;right:1rem}.sleep-toast-content{-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-full);text-align:center;background:#0b1a12f2;border:1px solid #007d5833;width:100%;max-width:380px;padding:.75rem 1.25rem;animation:.35s cubic-bezier(.175,.885,.32,1.275) forwards savedPop;box-shadow:0 10px 25px #111a1633,0 2px 10px #007d5814}.sleep-toast-content span{font-family:var(--font-body);font-size:var(--fs-13);font-weight:600;line-height:1.4;color:var(--text-on-accent)!important}.animated{animation-duration:.4s;animation-fill-mode:both}.animated.fadeIn,.animated.fadeInUp{animation-name:fadeInUp}.animated.slideIn{animation-name:slideIn}.animated.savedPop{animation-name:savedPop}.sleep-tab-pane{flex-direction:column;gap:1.5rem;width:100%;display:flex}.sleep-page .date-quick-btn.active{background:var(--accent-tint)!important;color:var(--accent-deep)!important;border-color:#007d582e!important;font-weight:600!important;box-shadow:0 2px 8px #007d580a!important}.sleep-page .date-quick-btn:hover{color:var(--accent-deep)!important;border-color:#007d584d!important}.sleep-page .date-input:focus{border-color:#007d5840!important;box-shadow:0 0 0 3px #007d5814!important}.sleep-page .date-notice{color:var(--accent-deep)!important;background:var(--accent-tint)!important;border:1px solid #007d5814!important}.article-takeaways-box .section-title,.article-tips-box .section-title,.article-supplements-box .section-title{font-family:var(--font-body)!important;font-size:var(--fs-18)!important;color:var(--text-primary)!important;letter-spacing:-.01em!important;align-items:center!important;margin-bottom:.75rem!important;padding-left:.45rem!important;font-weight:700!important;display:flex!important;position:relative!important}.article-takeaways-box .section-title:before,.article-tips-box .section-title:before,.article-supplements-box .section-title:before{content:""!important;border-radius:var(--radius-full)!important;background:var(--accent-primary)!important;width:3px!important;position:absolute!important;top:.15rem!important;bottom:.15rem!important;left:-.45rem!important}.sleep-session-item.pending-delete{transform:scale(.985);opacity:.65!important;box-shadow:none!important;background:#b07a2a0f!important;border:1px dashed #b07a2a59!important;transition:all .25s cubic-bezier(.16,1,.3,1)!important}.sleep-session-item.pending-delete:hover{opacity:.8!important;background:#b07a2a14!important}.sleep-delete-confirm-btn:hover{transform:translateY(-1px);color:#7a5518!important;background:#b07a2a1f!important;border-color:#b07a2a66!important;box-shadow:0 4px 12px #b07a2a1a!important}.sleep-delete-confirm-btn:active{transform:translateY(0)scale(.985)}.sleep-week-navigator{background:var(--bg-card-nested,#00000008);border:1px solid var(--border-light,#0000000d);border-radius:8px;align-items:center;gap:4px;padding:4px;display:flex}.sleep-week-navigator .week-nav-btn{cursor:pointer;justify-content:center;align-items:center;display:flex;color:var(--text-primary)!important;background:0 0!important;border:none!important;border-radius:6px!important;width:26px!important;height:26px!important;padding:0!important;transition:all .25s cubic-bezier(.16,1,.3,1)!important}.sleep-week-navigator .week-nav-btn:hover:not(:disabled){transform:scale(1.08);background:var(--bg-secondary)!important;color:#528a6d!important;box-shadow:0 2px 6px #00000014!important}.sleep-week-navigator .week-nav-btn:active:not(:disabled){transform:scale(.92)!important}.sleep-week-navigator .week-nav-btn:disabled{cursor:not-allowed!important;opacity:.35!important}.sleep-week-navigator .week-nav-label{font-family:var(--font-body);text-align:center;-webkit-user-select:none;user-select:none;font-size:var(--fs-12)!important;min-width:46px!important;color:var(--text-secondary)!important;font-weight:700!important}@media (width>=769px){.sleep-header{display:none}}@keyframes typeCardPulse{0%{box-shadow:0 0 #d4af3740}to{box-shadow:0 0 0 8px #d4af3700}}@keyframes listEntrance{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.exercise-page{background-color:var(--bg-primary);background-image:radial-gradient(70% 50% at 50% 0,#007d580a 0%,#0000 65%);min-height:100vh;padding-bottom:4rem;position:relative}.exercise-header{z-index:100;-webkit-backdrop-filter:blur(20px)saturate(1.6);background:#ffffffe6;border-bottom:1px solid #007d5814;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 20px #00000008}.exercise-header .back-btn,.exercise-header .header-back{width:38px;height:38px;font-size:var(--fs-18);cursor:pointer;transition:var(--transition-smooth);justify-content:center;align-items:center;display:inline-flex;background:var(--bg-secondary)!important;color:var(--accent-primary)!important;border:1px solid #007d581f!important;border-radius:50%!important;box-shadow:0 2px 8px #007d5814!important}.exercise-header .back-btn:hover,.exercise-header .header-back:hover{background:var(--accent-tint)!important;color:var(--accent-deeper)!important;border-color:#007d5840!important;transform:translateY(-1px)scale(1.04)!important;box-shadow:0 4px 12px #007d5826!important}@media (width>=769px){.exercise-header .header-title .title-text-sub{display:none!important}}.exercise-header .header-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.exercise-header .header-spacer{flex-shrink:0;width:38px;height:38px}.exercise-content{flex-direction:column;gap:1.5rem;max-width:520px;margin:0 auto;padding:1.5rem 1.25rem 0;display:flex}.exercise-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-md);flex-direction:column;gap:1.75rem;padding:2rem;animation:.6s cubic-bezier(.16,1,.3,1) forwards slideIn;display:flex}.exercise-card-top{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.exercise-card-title{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:.5rem;font-weight:600;line-height:1.3;display:flex}.exercise-card-title .exercise-icon{font-size:var(--fs-22);line-height:1}.exercise-date{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);letter-spacing:.01em;white-space:nowrap;flex-shrink:0;font-weight:400}.exercise-saved{border-radius:var(--radius-full);color:var(--success);font-family:var(--font-body);font-size:var(--fs-12);letter-spacing:.02em;background:linear-gradient(135deg,#48bb781f,#d4af371a);border:1px solid #48bb7840;align-self:flex-start;align-items:center;gap:.35rem;margin-top:-.75rem;padding:.35rem .85rem;font-weight:600;animation:.5s cubic-bezier(.34,1.56,.64,1) forwards savedPop;display:inline-flex}.exercise-saved .saved-check{font-size:var(--fs-14);line-height:1}.exercise-type-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.exercise-type-card{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;height:80px;min-height:44px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),border-color .3s,background .3s,box-shadow .3s;display:flex}.exercise-type-card:hover{border-color:#d4af3740;transform:translateY(-3px);box-shadow:0 4px 14px #d4af3714}.exercise-type-card:active{transform:scale(.96)}.exercise-type-card.selected{border-color:var(--accent-primary);animation:.6s ease-out typeCardPulse;transform:scale(1.05);background:var(--accent-tint)!important;box-shadow:0 4px 18px #007d5814,0 0 0 3px #007d580a!important}.exercise-type-card.selected:hover{transform:scale(1.07)}.exercise-type-icon{font-size:var(--fs-22);line-height:1;transition:transform .3s}.exercise-type-card.selected .exercise-type-icon{transform:scale(1.1)}.exercise-type-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-align:center;letter-spacing:.01em;white-space:nowrap;font-weight:500;transition:color .3s}.exercise-type-card.selected .exercise-type-label{color:var(--accent-deeper);font-weight:600}.exercise-input-group{flex-direction:column;gap:.85rem;display:flex}.exercise-label{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.4rem;font-weight:600;display:flex}.exercise-label .label-icon{font-size:var(--fs-14);line-height:1}.duration-display{font-family:var(--font-body);font-size:var(--fs-40);color:var(--text-primary);text-align:center;letter-spacing:-.02em;font-weight:700;line-height:1.1;transition:color .3s}.duration-display .duration-unit{font-family:var(--font-body);font-size:var(--fs-16);color:var(--text-light);margin-left:.15rem;font-weight:500}.exercise-slider{appearance:none;cursor:pointer;border-radius:3px;outline:none;width:100%;height:6px;transition:background .15s;background:linear-gradient(to right, #007d5873 0%,  #007d5873 var(--slider-fill,50%), #0000000f var(--slider-fill,50%), #0000000f 100%)!important}.exercise-slider::-webkit-slider-thumb{appearance:none;background:linear-gradient(145deg, var(--bg-secondary), var(--surface-muted));cursor:pointer;border-radius:50%;width:24px;height:24px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .25s;border:2.5px solid #007d584d!important;box-shadow:0 2px 8px #007d581a,0 1px 3px #0000000f!important}.exercise-slider::-webkit-slider-thumb:hover{transform:scale(1.18);box-shadow:0 4px 14px #007d5826,0 2px 6px #00000014!important}.exercise-slider::-webkit-slider-thumb:active{transform:scale(1.1);border-color:#007d5899!important;box-shadow:0 2px 10px #007d5840,0 0 0 4px #007d580f!important}.exercise-slider::-moz-range-thumb{background:linear-gradient(145deg, var(--bg-secondary), var(--surface-muted));cursor:pointer;border-radius:50%;width:24px;height:24px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .25s;border:2.5px solid #007d584d!important;box-shadow:0 2px 8px #007d581a,0 1px 3px #0000000f!important}.exercise-slider::-moz-range-thumb:hover{transform:scale(1.18);box-shadow:0 4px 14px #007d5826,0 2px 6px #00000014!important}.exercise-slider::-moz-range-thumb:active{transform:scale(1.1);border-color:#007d5899!important;box-shadow:0 2px 10px #007d5840,0 0 0 4px #007d580f!important}.exercise-slider::-moz-range-track{background:#0000000f;border:none;border-radius:3px;height:6px}.exercise-slider::-moz-range-progress{border-radius:3px;height:6px;background:#007d5873!important}.exercise-slider-labels{justify-content:space-between;margin-top:.35rem;display:flex}.exercise-slider-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);letter-spacing:.02em;font-weight:500}.intensity-selector{justify-content:center;gap:.6rem;display:flex}.intensity-btn{border-radius:var(--radius-full);border:1.5px solid var(--border-light);background:var(--bg-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:.3rem;width:88px;height:42px;min-height:44px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .3s,border-color .3s,color .3s,box-shadow .3s;display:flex}.intensity-btn:hover{border-color:#007d5833;transform:translateY(-2px);box-shadow:0 3px 10px #007d580a}.intensity-btn:active{transform:scale(.95)}.intensity-dot{background:#cbd5e1;border-radius:50%;flex-shrink:0;width:8px;height:8px;transition:all .3s}.intensity-btn.light.selected{transform:scale(1.05);background:var(--accent-tint)!important;border-color:#007d5826!important;box-shadow:0 2px 8px #007d580a!important}.intensity-btn.light.selected .intensity-dot{background:var(--success)!important}.intensity-btn.light.selected .intensity-label{font-weight:700;color:var(--accent-primary)!important}.intensity-btn.moderate.selected{transform:scale(1.05);background:#fffdf0!important;border-color:#d9770626!important;box-shadow:0 2px 8px #d977060a!important}.intensity-btn.moderate.selected .intensity-dot{background:#d97706!important}.intensity-btn.moderate.selected .intensity-label{font-weight:700;color:var(--warning-deep)!important}.intensity-btn.hard.selected{transform:scale(1.05);background:#fed7d7!important;border-color:#dc262626!important;box-shadow:0 2px 8px #dc26260a!important}.intensity-btn.hard.selected .intensity-dot{background:#e53e3e!important}.intensity-btn.hard.selected .intensity-label{font-weight:700;color:#9b2c2c!important}.intensity-label{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);letter-spacing:.01em;font-weight:500;transition:color .3s}.exercise-memo{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-primary);width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);resize:vertical;outline:none;min-height:56px;max-height:120px;padding:.75rem 1rem;line-height:1.5;transition:border-color .3s,box-shadow .3s}.exercise-memo::placeholder{color:var(--text-light)}.exercise-memo:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #d4af3714}.exercise-memo-count{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-align:right;margin-top:.25rem;display:block}.exercise-save-btn{border-radius:var(--radius-full);width:100%;font-family:var(--font-body);font-size:var(--fs-16);letter-spacing:.01em;cursor:pointer;justify-content:center;align-items:center;gap:.5rem;min-height:52px;padding:1rem 1.5rem;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,background .35s,opacity .35s;display:flex;background:var(--accent-tint)!important;color:var(--accent-primary)!important;border:1px solid #007d582e!important;font-weight:700!important;box-shadow:0 2px 8px #007d580a,inset 0 1px #fff6!important}.exercise-save-btn:hover{transform:translateY(-2px);background:var(--accent-tint)!important;color:var(--accent-primary)!important;border-color:#007d5847!important;box-shadow:0 4px 12px #007d581a!important}.exercise-save-btn:active{transform:translateY(0)scale(.98);box-shadow:0 2px 8px #007d580f!important}.exercise-save-btn:disabled{color:#fff9;cursor:not-allowed;box-shadow:none;background:linear-gradient(135deg,#d0d0d0,#b8b8b8);transform:none}.exercise-save-btn:disabled:hover{box-shadow:none;transform:none}.exercise-save-btn.saved{background:linear-gradient(135deg, var(--success), var(--success));box-shadow:0 4px 16px #48bb784d}.exercise-save-btn.saved:hover{box-shadow:0 6px 20px #48bb7859}.exercise-save-btn .save-icon{font-size:var(--fs-18);line-height:1}.exercise-stats{gap:.65rem;animation:.6s cubic-bezier(.16,1,.3,1) .25s both fadeInUp;display:flex}.exercise-stat-card{border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);flex-direction:column;flex:1;align-items:center;gap:.3rem;padding:1rem .5rem;display:flex}.exercise-stat-card:hover{border-color:#d4af372e;transform:translateY(-2px);box-shadow:0 4px 16px #d4af370f}.exercise-stat-value{font-family:var(--font-body);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.02em;font-weight:700;line-height:1.1}.exercise-stat-value .stat-unit{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);margin-left:.1rem;font-weight:500}.exercise-stat-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-transform:uppercase;letter-spacing:.06em;text-align:center;font-weight:500}.exercise-trend-chart{background:0 0;width:100%;padding:.5rem 0 1rem}.exercise-trend-bars{justify-content:space-between;align-items:stretch;gap:.4rem;height:140px;padding:0;display:flex}.exercise-trend-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:.35rem;min-width:0;max-width:48px;height:100%;display:flex}.exercise-trend-wrap{flex:1;width:100%;min-height:0;position:relative}.exercise-trend-bar{border-radius:6px 6px 2px 2px;width:100%;max-width:32px;min-height:4px;transition:background .3s,height .4s;position:absolute;bottom:0;left:50%;transform:translate(-50%);background:linear-gradient(180deg, var(--success) 0%, #c8e3d5 100%)!important}.exercise-trend-bar:hover{background:linear-gradient(180deg, var(--accent-deep) 0%, var(--success) 100%)!important}.exercise-trend-col.empty .exercise-trend-bar{background:var(--border-light);opacity:.5}.exercise-trend-val{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-primary);min-height:14px;font-weight:700;line-height:1.2;animation:.4s both fadeInUp}.exercise-trend-date{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-secondary);flex-direction:column;justify-content:flex-start;align-items:center;min-height:28px;font-weight:500;display:flex}.trend-today-lbl{font-size:var(--fs-10);letter-spacing:-.01em;margin-top:1px;font-weight:800;color:var(--accent-primary)!important}.exercise-trend-col.today .exercise-trend-date{color:var(--accent-deeper);font-weight:700}.exercise-trend-col.today .exercise-trend-bar{background:linear-gradient(180deg, var(--success) 0%, #c8e3d5 100%)!important;box-shadow:0 2px 10px #007d5814!important}.exercise-trend{flex-direction:column;gap:1rem;animation:.6s cubic-bezier(.16,1,.3,1) .2s both fadeInUp;display:flex}.exercise-trend-header{justify-content:space-between;align-items:center;display:flex}.exercise-trend-header .trend-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:.4rem;font-weight:600;display:flex}.exercise-trend-toggle{border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-secondary);display:flex;overflow:hidden}.exercise-trend-toggle-btn{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light);cursor:pointer;transition:var(--transition-smooth);letter-spacing:.01em;background:0 0;border:none;padding:.35rem .85rem;font-weight:500}.exercise-trend-toggle-btn:hover{color:var(--text-secondary);background:#00000005}.exercise-trend-toggle-btn.active{background:var(--accent-tint)!important;color:var(--accent-primary)!important;font-weight:700!important;box-shadow:0 2px 8px #007d580f!important}.exercise-trend-toggle-btn:hover{color:var(--accent-primary)!important}.exercise-trend-list{flex-direction:column;gap:.45rem;display:flex}.exercise-trend-item{border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);flex-wrap:wrap;justify-content:space-between;align-items:center;padding:.85rem 1rem;animation:.5s cubic-bezier(.16,1,.3,1) both fadeInUp;display:flex}.exercise-trend-item:first-child{animation-delay:40ms}.exercise-trend-item:nth-child(2){animation-delay:80ms}.exercise-trend-item:nth-child(3){animation-delay:.12s}.exercise-trend-item:nth-child(4){animation-delay:.16s}.exercise-trend-item:nth-child(5){animation-delay:.2s}.exercise-trend-item:nth-child(6){animation-delay:.24s}.exercise-trend-item:nth-child(7){animation-delay:.28s}.exercise-trend-item:nth-child(8){animation-delay:.32s}.exercise-trend-item:nth-child(9){animation-delay:.36s}.exercise-trend-item:nth-child(10){animation-delay:.4s}.exercise-trend-item:hover{border-color:#d4af3726;transform:translateY(-1px);box-shadow:0 4px 16px #d4af370f}.exercise-trend-item.today{background:#f4e7be14;border-color:#d4af3740}.exercise-trend-date{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);flex-shrink:0;min-width:96px;margin-right:1.2rem;font-weight:500}.exercise-trend-data{flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.exercise-trend-type{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-primary);white-space:nowrap;align-items:center;gap:.3rem;font-weight:500;display:flex}.exercise-trend-type .type-emoji{font-size:var(--fs-16);line-height:1}.exercise-trend-duration{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-primary);white-space:nowrap;font-weight:600}.exercise-trend-intensity{border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-10);letter-spacing:.03em;white-space:nowrap;border:1px solid #0000;align-items:center;padding:.15rem .55rem;font-weight:600;transition:all .3s;display:inline-flex}.exercise-trend-intensity.light{background:var(--accent-tint);color:var(--accent-primary);border-color:#007d581f}.exercise-trend-intensity.moderate{color:var(--warning-deep);background:#fffdf0;border-color:#d977061f}.exercise-trend-intensity.hard{color:#9b2c2c;background:#fed7d7;border-color:#dc26261f}.exercise-trend-memo{width:100%;font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);border-top:1px solid var(--border-light);white-space:pre-wrap;word-break:break-word;margin-top:.3rem;padding-top:.4rem;line-height:1.4}.exercise-list{flex-direction:column;gap:.5rem;display:flex}.exercise-list-item{border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.7rem 1rem;animation:.5s cubic-bezier(.16,1,.3,1) both listEntrance;display:flex}.exercise-list-item:first-child{animation-delay:50ms}.exercise-list-item:nth-child(2){animation-delay:.1s}.exercise-list-item:nth-child(3){animation-delay:.15s}.exercise-list-item:nth-child(4){animation-delay:.2s}.exercise-list-item:nth-child(5){animation-delay:.25s}.exercise-list-item:hover{border-color:#d4af3726;box-shadow:0 4px 14px #d4af3712}.exercise-list-item .item-icon{font-size:var(--fs-22);flex-shrink:0;line-height:1}.exercise-list-item .item-name{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);flex:1;min-width:0;font-weight:500}.exercise-list-item .item-duration{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);white-space:nowrap;font-weight:600}.exercise-list-item .delete-btn{border-radius:var(--radius-full);width:28px;height:28px;color:var(--danger);font-size:var(--fs-12);cursor:pointer;transition:var(--transition-smooth);background:#dc35450d;border:1px solid #dc354533;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.exercise-list-item .delete-btn:hover{background:#dc35451f;border-color:#dc35454d;transform:scale(1.08)}.exercise-list-item .delete-btn:active{transform:scale(.95)}.exercise-add-more{border-radius:var(--radius-md);width:100%;color:var(--accent-primary);font-family:var(--font-body);font-size:var(--fs-14);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:2px dashed #d4af374d;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 1.25rem;font-weight:500;display:flex}.exercise-add-more:hover{border-color:var(--accent-primary);background:#f4e7be1a;transform:translateY(-1px)}.exercise-add-more:active{transform:translateY(0)}.exercise-add-more .add-icon{font-size:var(--fs-18);font-weight:400;line-height:1}.exercise-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem 2rem;animation:.6s cubic-bezier(.16,1,.3,1) .1s both fadeInUp;display:flex}.exercise-empty-icon{font-size:var(--fs-56);filter:grayscale(.1);line-height:1;animation:3s ease-in-out infinite emptyFloat}.exercise-empty-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.exercise-empty-desc{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-light);max-width:280px;font-weight:400;line-height:1.5}@media (width<=380px){.exercise-card{padding:1.5rem 1.25rem}.exercise-type-grid{grid-template-columns:repeat(3,1fr);gap:.4rem}.exercise-type-card{height:68px}.duration-display{font-size:var(--fs-36)}.intensity-btn{width:76px;height:38px}.intensity-selector{gap:.4rem}.intensity-label{font-size:var(--fs-10)}.exercise-stats{gap:.45rem}.exercise-stat-card{padding:.85rem .35rem}.exercise-stat-value{font-size:var(--fs-18)}.exercise-stat-label{font-size:var(--fs-10)}.exercise-week{gap:.35rem}.exercise-day-date{width:34px;height:34px;font-size:var(--fs-12)}.exercise-day.today .exercise-day-date{width:38px;height:38px}.exercise-day-label{font-size:var(--fs-10)}.exercise-trend-data{gap:.5rem}.exercise-trend-type,.exercise-trend-duration{font-size:var(--fs-12)}}@media (width<=340px){.exercise-content{padding-left:1rem;padding-right:1rem}.exercise-type-grid{grid-template-columns:repeat(2,1fr)}.intensity-btn{width:68px;height:36px;min-height:44px}.intensity-selector{gap:.3rem}.exercise-day-date{width:32px;height:32px;font-size:var(--fs-11)}}@media (width>=600px){.exercise-content{gap:2rem;padding-top:2.5rem}.exercise-card{gap:2rem;padding:2.25rem 2.5rem}.exercise-card-title{font-size:var(--fs-22)}.duration-display{font-size:var(--fs-48)}.exercise-type-card{height:88px}.exercise-type-icon{font-size:var(--fs-28)}.exercise-type-label{font-size:var(--fs-11)}.intensity-btn{width:100px;height:44px}.intensity-label{font-size:var(--fs-12)}.exercise-day-date{width:42px;height:42px}.exercise-day.today .exercise-day-date{width:46px;height:46px}}@media (pointer:coarse){.exercise-slider::-webkit-slider-thumb{width:28px;height:28px}.exercise-slider::-moz-range-thumb{width:28px;height:28px}.exercise-type-card{min-height:72px}.intensity-btn{min-width:76px;min-height:44px}.exercise-trend-toggle-btn{font-size:var(--fs-12);padding:.45rem 1rem}.exercise-list-item .delete-btn{width:36px;height:36px}}@media (prefers-reduced-motion:reduce){.exercise-card,.exercise-trend,.exercise-stats,.exercise-empty,.exercise-week,.exercise-trend-item,.exercise-list-item{animation:none}.exercise-type-card,.intensity-btn,.exercise-save-btn,.exercise-stat-card,.exercise-trend-item,.exercise-day,.exercise-list-item,.exercise-list-item .delete-btn,.exercise-add-more{transition:none}.exercise-slider::-webkit-slider-thumb{transition:none}.exercise-slider::-moz-range-thumb{transition:none}.exercise-empty-icon{animation:none}}.exercise-type-card:focus-visible,.intensity-btn:focus-visible,.exercise-save-btn:focus-visible,.exercise-trend-toggle-btn:focus-visible,.exercise-header .back-btn:focus-visible,.exercise-header .header-back:focus-visible,.exercise-add-more:focus-visible,.exercise-list-item .delete-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.exercise-slider:focus-visible{outline:none}.exercise-slider:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #d4af3733,0 2px 8px #d4af374d}.exercise-slider:focus-visible::-moz-range-thumb{box-shadow:0 0 0 4px #d4af3733,0 2px 8px #d4af374d}.exercise-memo:focus-visible{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #d4af3714}.exercise-overview{flex-direction:column;gap:.75rem;animation:.4s cubic-bezier(.16,1,.3,1) both fadeInUp;display:flex}.exercise-streak{border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-13);color:var(--accent-deeper);background:linear-gradient(135deg,#d4af371f,#d4af370f);border:1px solid #d4af3733;align-self:flex-start;align-items:center;gap:.4rem;padding:.4rem .9rem;font-weight:600;display:inline-flex}.streak-num{color:var(--accent-primary);font-weight:700}.exercise-list-title{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);margin-bottom:.25rem;font-weight:600}.exercise-list-icon{font-size:var(--fs-22);flex-shrink:0;line-height:1}.exercise-list-info{flex-direction:column;flex:1;min-width:0;display:flex}.exercise-list-name{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);font-weight:600}.exercise-list-detail{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light)}.exercise-list-memo{width:100%;font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-secondary);border-top:1px solid var(--border-light);word-break:break-word;min-width:0;margin-top:0;padding-top:.35rem}.exercise-delete-btn{width:28px;height:28px;color:var(--text-light);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.exercise-delete-btn:hover{color:var(--danger);background:#dc354514}.exercise-list-actions{flex-shrink:0;align-items:center;gap:2px;display:inline-flex}.exercise-edit-btn{width:28px;height:28px;color:var(--text-light);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.exercise-edit-btn:hover{color:var(--accent-primary);background:#007d5814}.exercise-list-item.editing{background:#007d5809;border-color:#007d5873!important;box-shadow:0 0 0 1px #007d5840,0 4px 14px #007d5814!important}.exercise-card.editing-mode{border-color:#007d584d;box-shadow:0 0 0 1px #007d582e,0 8px 30px #0000000f}.exercise-edit-banner{color:var(--accent-primary);font-family:var(--font-body);font-size:var(--fs-12);background:#007d580f;border:1px solid #007d5826;border-radius:10px;align-items:center;gap:6px;margin:-.25rem 0 .9rem;padding:.5rem .75rem;font-weight:600;display:flex}.exercise-edit-cancel-link{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-12);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:2px 4px;font-weight:600;text-decoration:underline}.exercise-edit-cancel-link:hover{color:var(--text-primary)}.exercise-edit-actions{align-items:stretch;gap:.6rem;display:flex}.exercise-edit-actions .exercise-save-btn{flex:1}.exercise-cancel-btn{border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-secondary);min-width:88px;color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-14);cursor:pointer;min-height:52px;transition:var(--transition-smooth);flex-shrink:0;padding:1rem 1.1rem;font-weight:700}.exercise-cancel-btn:hover{background:var(--bg-card-nested,#00000008);color:var(--text-primary);border-color:var(--text-light)}.exercise-cancel-btn:active{transform:scale(.98)}.exercise-trend-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);font-weight:600}.exercise-trend-session{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-primary);align-items:center;gap:.3rem;font-weight:500;display:inline-flex}.exercise-slider-wrapper{padding:.5rem 0}.exercise-page .date-quick-btn.active{background:var(--accent-tint)!important;color:var(--accent-primary)!important;border-color:#007d582e!important;font-weight:600!important;box-shadow:0 2px 8px #007d580a!important}.exercise-page .date-quick-btn:hover{color:var(--accent-primary)!important;border-color:#007d584d!important}.exercise-page .date-input:focus{border-color:#007d5840!important;box-shadow:0 0 0 3px #007d5814!important}.exercise-page .date-notice{color:var(--accent-deep)!important;background:var(--accent-tint)!important;border:1px solid #007d5814!important;font-weight:600!important}@media (width<=480px){.exercise-trend-bars{justify-content:space-between!important;gap:.25rem!important;height:120px!important;padding:0!important}.exercise-trend-col{gap:.2rem!important;max-width:36px!important}.exercise-trend-bar{max-width:24px!important}.exercise-trend-val,.exercise-trend-date{font-size:var(--fs-10)!important}.exercise-trend-val{min-height:12px!important}.exercise-trend-date{min-height:22px!important}.trend-today-lbl{font-size:var(--fs-10)!important}}@media (width<=340px){.exercise-trend-col{max-width:30px!important}.exercise-trend-bar{max-width:18px!important}.exercise-trend-date{min-height:20px!important}}.exercise-tab-bar{border-bottom:1.5px solid var(--border-light);gap:0;margin-bottom:-.5rem;display:flex}.exercise-tab{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:5px;margin-bottom:-1.5px;padding:.5rem .85rem .6rem;font-weight:500;transition:color .2s;display:inline-flex;position:relative}.exercise-tab:hover{color:var(--text-secondary)}.exercise-tab.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary);font-weight:700}.exercise-tab.locked{color:var(--text-light);opacity:.7;cursor:default}.exercise-tab-pass-badge{font-size:var(--fs-10);background:var(--accent-tint);color:var(--accent-primary);letter-spacing:.02em;border-radius:4px;padding:1px 5px;font-weight:700;line-height:1.5}.exercise-tab-pass-badge.locked{color:var(--text-light);background:#0000000d}.exercise-tab-locked-hint{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);text-align:center;margin-top:-1rem;padding:.5rem 0 0;animation:.3s both fadeInUp}.advanced-section{flex-direction:column;gap:1.5rem;display:flex}.advanced-metrics-row{grid-template-columns:repeat(3,1fr);align-items:end;gap:.6rem;display:grid}@media (width<=380px){.advanced-metrics-row{grid-template-columns:repeat(2,1fr)}}.advanced-field{flex-direction:column;gap:.45rem;display:flex}.advanced-input{border:1.5px solid var(--border-light);background:var(--bg-primary);width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);-moz-appearance:textfield;text-align:center;border-radius:10px;outline:none;padding:.55rem .7rem;font-weight:600;transition:border-color .2s,box-shadow .2s}.advanced-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.advanced-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.advanced-input::placeholder{color:var(--text-light);font-weight:400}.advanced-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #007d5812}.adv-mode-selector{flex-wrap:wrap;gap:.4rem;display:flex}.adv-mode-btn{border-radius:var(--radius-full);border:1.5px solid var(--border-light);background:var(--bg-primary);font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);cursor:pointer;min-height:36px;padding:.4rem .85rem;font-weight:500;transition:all .2s}.adv-mode-btn:hover{color:var(--accent-primary);border-color:#007d5840}.adv-mode-btn.selected{background:var(--accent-tint);color:var(--accent-deeper);border-color:#007d584d;font-weight:700}.weight-set-builder{background:var(--bg-primary);border:1.5px solid var(--border-light);border-radius:12px;flex-direction:column;gap:.4rem;padding:.85rem;display:flex}.weight-set-header{grid-template-columns:2fr 1fr 1fr 1fr 24px;gap:.4rem;padding:0 2px;display:grid}.weight-set-header span{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-transform:uppercase;letter-spacing:.06em;text-align:center;font-weight:600}.weight-set-header span:first-child{text-align:left}.weight-set-row{grid-template-columns:2fr 1fr 1fr 1fr 24px;align-items:center;gap:.4rem;display:grid}.weight-set-row .advanced-input{font-size:var(--fs-13);border-radius:8px;padding:.45rem .4rem}.weight-set-row .advanced-input:first-child{text-align:left;padding-left:.6rem}.weight-set-remove{width:24px;height:24px;color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.weight-set-remove:hover:not(:disabled){color:var(--danger);background:#dc354514}.weight-set-remove:disabled{opacity:.25;cursor:default}.adv-add-row-btn{font-family:var(--font-body);font-size:var(--fs-12);color:var(--accent-primary);cursor:pointer;background:0 0;border:1.5px dashed #007d5840;border-radius:8px;align-self:flex-start;align-items:center;gap:5px;margin-top:.3rem;padding:.45rem .75rem;font-weight:500;transition:all .2s;display:inline-flex}.adv-add-row-btn:hover{background:#007d5808;border-color:#007d5873}.pass-type-section{margin-top:.6rem}.exercise-type-card.pass-locked{opacity:.45;cursor:default;position:relative}.exercise-type-card.pass-locked:hover{box-shadow:none;border-color:var(--border-light);transform:none}.pass-lock-icon{color:var(--text-light);position:absolute;bottom:6px;right:6px}.adv-mode-btn.match-result-btn.win.selected{background:var(--accent-tint);color:var(--accent-primary);border-color:#007d584d}.adv-mode-btn.match-result-btn.draw.selected{color:var(--warning-deep);background:#fffdf0;border-color:#d977064d}.adv-mode-btn.match-result-btn.loss.selected{color:#9b2c2c;background:#fef2f2;border-color:#dc26264d}.adv-no-type-hint{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);text-align:center;padding:.5rem 0}.exercise-list-adv-summary{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light);margin-top:3px;line-height:1.4;display:block}.exercise-week-navigator{background:var(--bg-card-nested,#00000008);border:1px solid var(--border-light,#0000000d);border-radius:8px;align-items:center;gap:4px;padding:4px;display:flex}.week-nav-btn{cursor:pointer;justify-content:center;align-items:center;display:flex;color:var(--text-primary)!important;background:0 0!important;border:none!important;border-radius:6px!important;width:26px!important;height:26px!important;padding:0!important;transition:all .25s cubic-bezier(.16,1,.3,1)!important}.week-nav-btn:hover:not(:disabled){transform:scale(1.08);background:var(--bg-secondary)!important;color:var(--accent-primary)!important;box-shadow:0 2px 6px #00000014!important}.week-nav-btn:active:not(:disabled){transform:scale(.92)!important}.week-nav-btn:disabled{cursor:not-allowed!important;opacity:.35!important}.week-nav-label{font-family:var(--font-body);text-align:center;-webkit-user-select:none;user-select:none;font-size:var(--fs-12)!important;min-width:46px!important;color:var(--text-secondary)!important;font-weight:700!important}@media (width>=769px){.exercise-header{display:none}}.exercise-routines-row{justify-content:flex-end;margin-bottom:.25rem;display:flex}.exercise-routines-btn{color:var(--accent-primary);font-size:var(--fs-14);cursor:pointer;background:0 0;border:none;align-items:center;gap:5px;padding:6px 8px;font-weight:700;display:inline-flex}@keyframes celebrationPop{0%{opacity:0;transform:scale(.6)}50%{opacity:1;transform:scale(1.12)}75%{transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes cleanGlow{0%,to{box-shadow:0 0 #48bb784d}50%{box-shadow:0 0 0 8px #48bb7800}}.substance-page{background-color:var(--bg-primary);background-image:radial-gradient(70% 50% at 50% 0,#00694a0a 0%,#0000 65%);min-height:100vh;padding-bottom:4rem;position:relative}.substance-header{z-index:100;-webkit-backdrop-filter:blur(20px)saturate(1.6);background:#ffffffe6;border-bottom:1px solid #007d5814;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 20px #00000008}.substance-header .back-btn,.substance-header .header-back{width:38px;height:38px;font-size:var(--fs-18);cursor:pointer;transition:var(--transition-smooth);justify-content:center;align-items:center;display:inline-flex;background:var(--bg-secondary)!important;color:var(--accent-primary)!important;border:1px solid #007d581f!important;border-radius:50%!important;box-shadow:0 2px 8px #007d5814!important}.substance-header .back-btn:hover,.substance-header .header-back:hover{background:var(--accent-tint)!important;color:var(--accent-deeper)!important;border-color:#007d5840!important;transform:translateY(-1px)scale(1.04)!important;box-shadow:0 4px 12px #007d5826!important}@media (width>=769px){.substance-header .header-title .title-text-sub{display:none!important}}.substance-header .header-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.substance-header .header-spacer{flex-shrink:0;width:38px;height:38px}.substance-content{flex-direction:column;gap:1.5rem;max-width:520px;margin:0 auto;padding:1.5rem 1.25rem 0;display:flex}.substance-tabs{border-radius:var(--radius-full);background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);align-items:center;gap:.5rem;padding:.3rem;animation:.5s cubic-bezier(.16,1,.3,1) both fadeInUp;display:flex}.substance-tab{border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-light);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:.4rem;min-height:44px;padding:.65rem 1rem;font-weight:500;transition:background .35s cubic-bezier(.16,1,.3,1),color .3s,transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;display:flex}.substance-tab:hover{color:var(--text-secondary);background:#00000005}.substance-tab.active{transform:scale(1.02);background:var(--accent-tint)!important;color:var(--accent-deep)!important;box-shadow:none!important;border:1px solid #00694a26!important;font-weight:600!important}.substance-tab.active:hover{box-shadow:none!important;background:#e1f0e8!important}.substance-tab.active[data-tab=drink],.substance-tab.active.tab-drink,.substance-tab.active[data-tab=smoke],.substance-tab.active.tab-smoke{background:var(--accent-tint)!important;color:var(--accent-deep)!important;box-shadow:none!important;border:1px solid #00694a26!important}.substance-tab .tab-icon{font-size:var(--fs-16);line-height:1}.substance-tab .tab-label{letter-spacing:.01em}.substance-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-md);flex-direction:column;gap:1.75rem;padding:2rem;animation:.6s cubic-bezier(.16,1,.3,1) forwards slideIn;display:flex}.substance-card-top{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.substance-card-title{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:.5rem;font-weight:600;line-height:1.3;display:flex}.substance-card-title .substance-icon{font-size:var(--fs-22);line-height:1}.substance-date{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);letter-spacing:.01em;white-space:nowrap;flex-shrink:0;font-weight:400}.drink-type-grid{grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}.drink-type-card{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;height:80px;min-height:44px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),border-color .3s,background .3s,box-shadow .3s;display:flex}.drink-type-card:hover{border-color:#d4af3740;transform:translateY(-3px);box-shadow:0 4px 14px #d4af3714}.drink-type-card:active{transform:scale(.96)}.drink-type-card.selected{border-color:var(--border-light);box-shadow:0 2px 10px #00694a12;background:var(--accent-tint)!important}.drink-type-card.selected:hover{transform:translateY(-2px)}.drink-type-icon{color:var(--text-secondary);justify-content:center;align-items:center;line-height:1;transition:transform .3s,color .3s;display:flex}.drink-icon-img,.smoke-icon-img{object-fit:contain;border-radius:4px;width:36px;height:36px}.drink-icon-svg,.smoke-icon-svg{vertical-align:middle}.drink-type-card.selected .drink-type-icon{color:var(--accent-deep);transform:scale(1.08)}.drink-type-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-align:center;letter-spacing:.01em;white-space:nowrap;font-weight:500;transition:color .3s}.drink-type-card.selected .drink-type-label{color:var(--accent-deep)!important;font-weight:600!important}.smoke-type-grid{grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}.smoke-type-card{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;height:80px;min-height:44px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),border-color .3s,background .3s,box-shadow .3s;display:flex}.smoke-type-card:hover{border-color:#64748b40;transform:translateY(-3px);box-shadow:0 4px 14px #64748b14}.smoke-type-card:active{transform:scale(.96)}.smoke-type-card.selected{border-color:var(--border-light);box-shadow:0 2px 10px #00694a12;background:var(--accent-tint)!important}.smoke-type-card.selected:hover{transform:translateY(-2px)}.smoke-type-icon{font-size:var(--fs-22);color:var(--text-secondary);line-height:1;transition:transform .3s,color .3s}.smoke-type-card.selected .smoke-type-icon{color:var(--accent-deep);transform:scale(1.08)}.smoke-type-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-align:center;letter-spacing:.01em;white-space:nowrap;font-weight:500;transition:color .3s}.smoke-type-card.selected .smoke-type-label{color:var(--accent-deep)!important;font-weight:600!important}.container-selector{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.container-chip{border-radius:var(--radius-full);border:1.5px solid var(--border-light);background:var(--bg-secondary);font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:.3rem;min-height:44px;padding:.45rem 1rem;font-weight:500;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .3s,border-color .3s,color .3s,box-shadow .3s;display:flex}.container-chip:hover{border-color:#d4af374d;transform:translateY(-2px);box-shadow:0 3px 10px #d4af3714}.container-chip:active{transform:scale(.95)}.container-chip.active{transform:scale(1.05);background:var(--accent-tint)!important;color:var(--accent-deep)!important;box-shadow:none!important;border-color:#00694a26!important;font-weight:600!important}.container-chip.active:hover{transform:scale(1.08);box-shadow:0 6px 20px #d4af3766,inset 0 1px #fff3}.container-chip .chip-icon{font-size:var(--fs-14);line-height:1}.amount-selector{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;display:flex}.amount-btn{border-radius:var(--radius-full);border:1.5px solid var(--border-light);background:var(--bg-secondary);min-width:52px;height:42px;font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;min-height:44px;padding:.4rem .85rem;font-weight:500;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .3s,border-color .3s,color .3s,box-shadow .3s;display:flex}.amount-btn:hover{border-color:#d4af374d;transform:translateY(-2px);box-shadow:0 3px 10px #d4af3714}.amount-btn:active{transform:scale(.95)}.amount-btn.active{transform:scale(1.05);background:var(--accent-tint)!important;color:var(--accent-deep)!important;box-shadow:none!important;border-color:#00694a26!important;font-weight:600!important}.amount-btn.active:hover{transform:scale(1.08);box-shadow:0 6px 20px #d4af3766,inset 0 1px #fff3}.amount-custom{border-radius:var(--radius-full);border:1.5px solid var(--border-light);background:var(--bg-primary);width:72px;height:42px;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);text-align:center;outline:none;min-height:44px;padding:.4rem .65rem;font-weight:500;transition:border-color .3s,box-shadow .3s}.amount-custom::placeholder{color:var(--text-light);font-size:var(--fs-12)}.amount-custom:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #d4af3714}.substance-slider{appearance:none;background:linear-gradient(to right, var(--accent-primary) 0%, var(--accent-primary) var(--slider-fill,50%), #0000000f var(--slider-fill,50%), #0000000f 100%);cursor:pointer;border-radius:3px;outline:none;width:100%;height:6px;transition:background .15s}.substance-slider::-webkit-slider-thumb{appearance:none;background:linear-gradient(145deg, var(--bg-secondary), var(--surface-muted));border:2.5px solid var(--accent-primary);cursor:pointer;border-radius:50%;width:24px;height:24px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .25s;box-shadow:0 2px 8px #d4af374d,0 1px 3px #00000014}.substance-slider::-webkit-slider-thumb:hover{transform:scale(1.18);box-shadow:0 4px 14px #d4af3766,0 2px 6px #0000001a}.substance-slider::-webkit-slider-thumb:active{border-color:var(--accent-deeper);transform:scale(1.1);box-shadow:0 2px 10px #d4af3780,0 0 0 4px #d4af371f}.substance-slider::-moz-range-thumb{background:linear-gradient(145deg, var(--bg-secondary), var(--surface-muted));border:2.5px solid var(--accent-primary);cursor:pointer;border-radius:50%;width:24px;height:24px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .25s;box-shadow:0 2px 8px #d4af374d,0 1px 3px #00000014}.substance-slider::-moz-range-thumb:hover{transform:scale(1.18);box-shadow:0 4px 14px #d4af3766,0 2px 6px #0000001a}.substance-slider::-moz-range-thumb:active{border-color:var(--accent-deeper);transform:scale(1.1);box-shadow:0 2px 10px #d4af3780,0 0 0 4px #d4af371f}.substance-slider::-moz-range-track{background:#0000000f;border:none;border-radius:3px;height:6px}.substance-slider::-moz-range-progress{background:var(--accent-primary);border-radius:3px;height:6px}.substance-slider-labels{justify-content:space-between;margin-top:.35rem;display:flex}.substance-slider-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);letter-spacing:.02em;font-weight:500}.substance-slider-wrapper{padding:.5rem 0}.smoke-preset{grid-template-columns:repeat(4,1fr);gap:.45rem;display:grid}.smoke-preset-btn{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-secondary);font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;min-height:44px;padding:.55rem .5rem;font-weight:500;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .3s,border-color .3s,color .3s,box-shadow .3s;display:flex}.smoke-preset-btn:hover{border-color:#64748b4d;transform:translateY(-2px);box-shadow:0 3px 10px #64748b14}.smoke-preset-btn:active{transform:scale(.95)}.smoke-preset-btn.active{transform:scale(1.05);background:var(--accent-tint)!important;color:var(--accent-deep)!important;box-shadow:none!important;border-color:#00694a26!important;font-weight:600!important}.smoke-preset-btn.active:hover{transform:scale(1.07);box-shadow:0 6px 20px #47556959,inset 0 1px #ffffff26}.substance-scan-block{flex-direction:column;gap:.5rem;display:flex}.substance-scan-btn{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--accent-primary), #00936b);width:100%;color:var(--text-on-accent);font-family:var(--font-body);font-size:var(--fs-16);letter-spacing:.01em;cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;min-height:48px;padding:.9rem 1.5rem;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 14px #007d5838}.substance-scan-btn:hover{transform:translateY(-2px);box-shadow:0 6px 18px #007d5847}.substance-scan-btn:active{transform:translateY(0)scale(.98)}.substance-scan-hint{text-align:center;font-size:var(--fs-12);color:var(--text-light);margin:0;line-height:1.5}.substance-save-btn{border-radius:var(--radius-full);width:100%;font-family:var(--font-body);font-size:var(--fs-16);letter-spacing:.01em;cursor:pointer;justify-content:center;align-items:center;gap:.5rem;min-height:52px;padding:1rem 1.5rem;font-weight:600;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,background .35s,opacity .35s;display:flex;background:var(--accent-tint)!important;color:var(--accent-deep)!important;box-shadow:none!important;border:1px solid #00694a26!important}.substance-save-btn:hover{transform:translateY(-2px);box-shadow:none!important;background:#e1f0e8!important}.substance-save-btn:active{transform:translateY(0)scale(.98);box-shadow:0 2px 8px #d4af374d}.substance-save-btn:disabled{color:#fff9;cursor:not-allowed;box-shadow:none;background:linear-gradient(135deg,#d0d0d0,#b8b8b8);transform:none}.substance-save-btn:disabled:hover{box-shadow:none;transform:none}.substance-save-btn.saved{background:linear-gradient(135deg, var(--success), var(--success));box-shadow:0 4px 16px #48bb784d}.substance-save-btn.saved:hover{box-shadow:0 6px 20px #48bb7859}.substance-save-btn .save-icon{font-size:var(--fs-18);line-height:1}.substance-list{flex-direction:column;gap:.5rem;display:flex}.substance-list-title{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);margin-bottom:.25rem;font-weight:600}.substance-list-item{border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);align-items:center;gap:.75rem;padding:.7rem 1rem;animation:.5s cubic-bezier(.16,1,.3,1) both listEntrance;display:flex}.substance-list-item:first-child{animation-delay:50ms}.substance-list-item:nth-child(2){animation-delay:.1s}.substance-list-item:nth-child(3){animation-delay:.15s}.substance-list-item:nth-child(4){animation-delay:.2s}.substance-list-item:nth-child(5){animation-delay:.25s}.substance-list-item:nth-child(6){animation-delay:.3s}.substance-list-item:nth-child(7){animation-delay:.35s}.substance-list-item:nth-child(8){animation-delay:.4s}.substance-list-item:hover{border-color:#d4af3726;box-shadow:0 4px 14px #d4af3712}.substance-list-icon{font-size:var(--fs-22);color:var(--text-secondary);flex-shrink:0;align-items:center;line-height:1;display:flex}.substance-list-icon .drink-icon-img,.substance-list-icon .smoke-icon-img{width:28px;height:28px}.substance-list-info{flex-direction:column;flex:1;min-width:0;display:flex}.substance-list-name{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);font-weight:600}.substance-list-memo{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);margin-top:2px;font-weight:400;line-height:1.4}.substance-list-detail{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light)}.substance-list-amount{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);white-space:nowrap;font-weight:600}.substance-delete-btn{width:28px;height:28px;color:var(--text-light);font-size:var(--fs-12);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.substance-delete-btn:hover{color:var(--danger);background:#dc354514;transform:scale(1.08)}.substance-delete-btn:active{transform:scale(.95)}.alcohol-summary{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid #00694a14;flex-direction:column;gap:1.25rem;padding:1.75rem 2rem;animation:.6s cubic-bezier(.16,1,.3,1) .15s both fadeInUp;display:flex;box-shadow:0 4px 20px #00000008,inset 0 1px #fffc}.alcohol-summary-title{font-family:var(--font-heading);font-size:var(--fs-16);color:var(--accent-deeper);align-items:center;gap:.4rem;font-weight:600;display:flex}.alcohol-summary-title .summary-icon{font-size:var(--fs-18);line-height:1}.alcohol-amount{font-family:var(--font-body);font-size:var(--fs-36);color:var(--accent-deep);text-align:center;letter-spacing:-.02em;font-weight:700;line-height:1.1}.alcohol-amount .alcohol-unit{font-family:var(--font-body);font-size:var(--fs-14);color:var(--accent-primary);margin-left:.3rem;font-weight:500}.alcohol-range{font-family:var(--font-body);font-size:var(--fs-13);color:#4a5568;text-align:center;letter-spacing:.01em;font-weight:500}.alcohol-bar-track{background:#00694a0d;border-radius:4px;width:100%;height:8px;position:relative;overflow:hidden}.alcohol-bar-fill{height:100%;width:var(--bar-fill,0%);border-radius:4px;transition:width .8s cubic-bezier(.16,1,.3,1);animation:1s cubic-bezier(.16,1,.3,1) forwards barGrow;position:relative}.alcohol-bar-fill.level-safe{background:linear-gradient(90deg, var(--success), #68d391)}.alcohol-bar-fill.level-moderate{background:linear-gradient(90deg,#ecc94b,#f6e05e)}.alcohol-bar-fill.level-warning{background:linear-gradient(90deg,#ed8936,#f6ad55)}.alcohol-bar-fill.level-danger{background:linear-gradient(90deg, var(--warning-deep), #b45309)}.alcohol-bar-fill[data-level=low]{background:linear-gradient(90deg, var(--success), #68d391)}.alcohol-bar-fill[data-level=mid]{background:linear-gradient(90deg,#ecc94b,#f6e05e)}.alcohol-bar-fill[data-level=high]{background:linear-gradient(90deg,#ed8936,#f6ad55)}.alcohol-bar-fill[data-level=over]{background:linear-gradient(90deg, var(--warning-deep), #b45309)}.alcohol-level{border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-12);letter-spacing:.01em;align-self:center;align-items:center;gap:.35rem;padding:.4rem .9rem;font-weight:600;display:inline-flex;box-shadow:0 2px 6px #00000005}.alcohol-level.level-safe{background:var(--accent-tint)!important;color:var(--accent-deep)!important;border:1px solid #00694a26!important}.alcohol-level.level-moderate{color:#b7791f!important;background:#fffdf0!important;border:1px solid #ecc94b4d!important}.alcohol-level.level-warning{color:#c05621!important;background:#fff5ec!important;border:1px solid #ed89364d!important}.alcohol-level.level-danger{color:var(--warning-deep)!important;background:#fef3c7!important;border:1px solid #b4530959!important}.alcohol-level .level-dot{border-radius:50%;width:6px;height:6px}.alcohol-level.level-safe .level-dot{background:var(--success)}.alcohol-level.level-moderate .level-dot{background:#ecc94b}.alcohol-level.level-warning .level-dot{background:#ed8936}.alcohol-level.level-danger .level-dot{background:#b45309}.alcohol-guideline{font-family:var(--font-body);font-size:var(--fs-12);color:#4a5568;text-align:center;border-top:1px solid #00694a0f;padding-top:.75rem;font-weight:400;line-height:1.5}.alcohol-guideline strong{color:var(--accent-deep);font-weight:600}.substance-streak{border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-13);color:var(--accent-deeper);background:linear-gradient(135deg,#d4af371f,#d4af370f);border:1px solid #d4af3733;align-self:flex-start;align-items:center;gap:.4rem;padding:.4rem .9rem;font-weight:600;animation:.5s cubic-bezier(.16,1,.3,1) both fadeInUp;display:inline-flex}.substance-streak .streak-icon{font-size:var(--fs-16);line-height:1}.substance-streak .streak-num{color:var(--accent-primary);font-weight:700}.substance-clean-btn{border-radius:var(--radius-full);width:100%;font-family:var(--font-body);font-size:var(--fs-14);letter-spacing:.01em;cursor:pointer;justify-content:center;align-items:center;gap:.5rem;min-height:52px;padding:.85rem 1.5rem;font-weight:600;transition:transform .35s cubic-bezier(.16,1,.3,1),background .3s,border-color .3s,box-shadow .3s;display:flex;background:var(--accent-tint)!important;color:var(--accent-deep)!important;box-shadow:none!important;border:1px solid #00694a26!important}.substance-clean-btn:hover{transform:translateY(-2px);box-shadow:none!important;background:#e1f0e8!important}.substance-clean-btn:active{transform:translateY(0)scale(.98)}.substance-clean-btn .clean-icon{font-size:var(--fs-18);line-height:1}.substance-clean-badge{border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-13);letter-spacing:.01em;align-self:center;align-items:center;gap:.4rem;padding:.5rem 1.1rem;font-weight:600;animation:.6s cubic-bezier(.34,1.56,.64,1) forwards celebrationPop;display:inline-flex;background:var(--accent-tint)!important;color:var(--accent-deep)!important;border:1px solid #00694a26!important}.substance-clean-badge .badge-icon{font-size:var(--fs-16);line-height:1}.substance-stats{gap:.65rem;animation:.6s cubic-bezier(.16,1,.3,1) .25s both fadeInUp;display:flex}.substance-stat-card{border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);flex-direction:column;flex:1;align-items:center;gap:.3rem;padding:1rem .5rem;display:flex}.substance-stat-card:hover{border-color:#d4af372e;transform:translateY(-2px);box-shadow:0 4px 16px #d4af370f}.substance-stat-value{font-family:var(--font-body);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.02em;font-weight:700;line-height:1.1}.substance-stat-value .stat-unit{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);margin-left:.1rem;font-weight:500}.substance-stat-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-transform:uppercase;letter-spacing:.06em;text-align:center;font-weight:500}.substance-trend{flex-direction:column;gap:1rem;animation:.6s cubic-bezier(.16,1,.3,1) .2s both fadeInUp;display:flex}.substance-trend-header{justify-content:space-between;align-items:center;display:flex}.substance-trend-header .trend-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:.4rem;font-weight:600;display:flex}.substance-trend-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);font-weight:600}.substance-trend-toggle{border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-secondary);display:flex;overflow:hidden}.substance-trend-toggle-btn{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light);cursor:pointer;transition:var(--transition-smooth);letter-spacing:.01em;background:0 0;border:none;padding:.35rem .85rem;font-weight:500}.substance-trend-toggle-btn:hover{color:var(--text-secondary);background:#00000005}.substance-trend-toggle-btn.active{background:var(--accent-tint)!important;color:var(--accent-deep)!important;box-shadow:none!important;border:1px solid #00694a1a!important;font-weight:600!important}.substance-trend-list{flex-direction:column;gap:.45rem;display:flex}.substance-trend-item{border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);flex-wrap:wrap;justify-content:space-between;align-items:center;padding:.85rem 1rem;animation:.5s cubic-bezier(.16,1,.3,1) both fadeInUp;display:flex}.substance-trend-item:first-child{animation-delay:40ms}.substance-trend-item:nth-child(2){animation-delay:80ms}.substance-trend-item:nth-child(3){animation-delay:.12s}.substance-trend-item:nth-child(4){animation-delay:.16s}.substance-trend-item:nth-child(5){animation-delay:.2s}.substance-trend-item:nth-child(6){animation-delay:.24s}.substance-trend-item:nth-child(7){animation-delay:.28s}.substance-trend-item:nth-child(8){animation-delay:.32s}.substance-trend-item:nth-child(9){animation-delay:.36s}.substance-trend-item:nth-child(10){animation-delay:.4s}.substance-trend-item:hover{border-color:#d4af3726;transform:translateY(-1px);box-shadow:0 4px 16px #d4af370f}.substance-trend-item.today{background:#f4e7be14;border-color:#d4af3740}.substance-trend-item.clean-day{background:#48bb780a;border-color:#48bb7833}.substance-trend-date{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);flex-shrink:0;min-width:96px;margin-right:1.2rem;font-weight:500}.substance-trend-data{flex-wrap:wrap;flex:1;align-items:center;gap:.35rem .6rem;min-width:0;display:flex}.substance-trend-type{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-primary);white-space:nowrap;align-items:center;gap:.3rem;font-weight:500;display:flex}.substance-trend-type .type-emoji{font-size:var(--fs-16);line-height:1}.substance-trend-amount{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-primary);white-space:nowrap;font-weight:600}.substance-trend-icons{align-items:center;gap:.25rem;display:flex}.substance-trend-icons .trend-icon{font-size:var(--fs-16);line-height:1}.substance-trend-memo{width:100%;font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);border-top:1px solid var(--border-light);white-space:pre-wrap;word-break:break-word;margin-top:.3rem;padding-top:.4rem;line-height:1.4}.substance-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem 2rem;animation:.6s cubic-bezier(.16,1,.3,1) .1s both fadeInUp;display:flex}.substance-empty-icon{font-size:var(--fs-56);filter:grayscale(.1);line-height:1;animation:3s ease-in-out infinite emptyFloat}.substance-empty-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.substance-empty-desc{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-light);max-width:280px;font-weight:400;line-height:1.5}.substance-saved{border-radius:var(--radius-full);color:var(--success);font-family:var(--font-body);font-size:var(--fs-12);letter-spacing:.02em;background:linear-gradient(135deg,#48bb781f,#d4af371a);border:1px solid #48bb7840;align-self:flex-start;align-items:center;gap:.35rem;margin-top:-.75rem;padding:.35rem .85rem;font-weight:600;animation:.5s cubic-bezier(.34,1.56,.64,1) forwards savedPop;display:inline-flex}.substance-saved .saved-check{font-size:var(--fs-14);line-height:1}.substance-label{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.4rem;font-weight:600;display:flex}.substance-label .label-icon{font-size:var(--fs-14);line-height:1}.substance-input-group{flex-direction:column;gap:.85rem;display:flex}.substance-memo{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-primary);width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);resize:vertical;outline:none;min-height:56px;max-height:120px;padding:.75rem 1rem;line-height:1.5;transition:border-color .3s,box-shadow .3s}.substance-memo::placeholder{color:var(--text-light)}.substance-memo:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #d4af3714}.substance-memo-count{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-align:right;margin-top:.25rem;display:block}.substance-amount-display{font-family:var(--font-body);font-size:var(--fs-40);color:var(--text-primary);text-align:center;letter-spacing:-.02em;font-weight:700;line-height:1.1;transition:color .3s}.substance-amount-display .amount-unit{font-family:var(--font-body);font-size:var(--fs-16);color:var(--text-light);margin-left:.15rem;font-weight:500}.substance-overview{flex-direction:column;gap:.75rem;animation:.4s cubic-bezier(.16,1,.3,1) both fadeInUp;display:flex}.substance-trend-session{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-primary);align-items:center;gap:.3rem;font-weight:500;display:inline-flex}.substance-type-badge{border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-10);letter-spacing:.03em;white-space:nowrap;align-items:center;padding:.15rem .55rem;font-weight:600;display:inline-flex}.substance-type-badge.badge-drink{color:#92680e;background:#b8860b1a}.substance-type-badge.badge-smoke{color:#475569;background:#64748b1a}.substance-divider{background:var(--border-light);width:100%;height:1px;margin:.25rem 0}.substance-date-picker{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.date-quick-btn{border-radius:var(--radius-full);border:1.5px solid var(--border-light);background:var(--bg-secondary);font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);padding:.4rem .9rem;font-weight:500}.date-quick-btn:hover{color:var(--text-primary);border-color:#d4af374d}.date-quick-btn.active{background:var(--accent-tint)!important;color:var(--accent-deep)!important;box-shadow:none!important;border-color:#00694a26!important;font-weight:600!important}.date-input{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-secondary);font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);outline:none;padding:.35rem .6rem}.date-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #d4af3714}.date-notice{font-family:var(--font-body);font-size:var(--fs-12);color:var(--accent-primary);border-radius:var(--radius-full);white-space:nowrap;background:#d4af3714;padding:.3rem .7rem;font-weight:600;animation:.3s both fadeInUp}.weekly-alcohol-dashboard{border-radius:var(--radius-lg);background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);flex-direction:column;gap:1rem;padding:1.5rem;animation:.6s cubic-bezier(.16,1,.3,1) .15s both fadeInUp;display:flex}.weekly-alcohol-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.weekly-chart-container{gap:.5rem;height:200px;display:flex}.weekly-chart-yaxis{flex-direction:column;flex-shrink:0;justify-content:space-between;align-items:flex-end;min-width:32px;padding:0 0 34px;display:flex}.weekly-chart-yaxis span{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);font-weight:500;line-height:1}.weekly-chart-area{flex:1;margin-right:42px;position:relative;border-bottom:none!important;border-left:none!important}.weekly-guideline-line{z-index:2;pointer-events:none;border-bottom:1.5px dashed;height:0;position:absolute;left:0;right:0}.weekly-guideline-line.female,.weekly-guideline-line.male{border-color:#4a556840!important}.weekly-guideline-label{font-family:var(--font-body);font-size:var(--fs-10);border-radius:3px;padding:1px 5px;font-weight:600;line-height:1.3;position:absolute;top:-7px;right:-38px}.weekly-guideline-line.female .weekly-guideline-label,.weekly-guideline-line.male .weekly-guideline-label{color:#4a5568!important;background:#4a556814!important}.weekly-chart-bars{border-left:1px solid var(--border-light);border-bottom:1px solid var(--border-light);justify-content:space-around;align-items:stretch;gap:4px;height:calc(100% - 34px);padding:0 6px;display:flex;position:absolute;top:0;left:0;right:0}.weekly-bar-col{flex-direction:column;flex:1;align-items:center;max-width:56px;height:100%;display:flex;position:relative}.weekly-bar-wrapper{width:100%;height:100%;min-height:0;position:relative}.weekly-bar-range{opacity:.25;border-radius:4px 4px 0 0;width:70%;transition:height .5s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;background:#a3d4bc!important}.weekly-bar-range.safe,.weekly-bar-range.warning,.weekly-bar-range.danger{background:#a3d4bc!important}.weekly-bar-solid{z-index:1;border-radius:4px 4px 0 0;width:70%;transition:height .5s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;background:linear-gradient(180deg, #5ab88a, var(--accent-deep))!important}.weekly-bar-solid.safe,.weekly-bar-solid.warning,.weekly-bar-solid.danger{background:linear-gradient(180deg, #5ab88a, var(--accent-deep))!important}.weekly-bar-clean{font-size:var(--fs-14);opacity:.8;line-height:1;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.weekly-bar-value{font-family:var(--font-body);font-size:var(--fs-10);white-space:nowrap;text-align:center;font-weight:600;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%);color:var(--text-secondary)!important}.weekly-bar-date{font-family:var(--font-body);font-size:var(--fs-10);white-space:nowrap;text-align:center;font-weight:600;position:absolute;top:calc(100% + 18px);left:50%;transform:translate(-50%);color:var(--text-primary)!important}.weekly-bar-date.today{font-weight:700;color:var(--accent-deep)!important}.weekly-bar-col.today .weekly-bar-solid{box-shadow:0 0 8px #d4af374d}.weekly-alcohol-legend{border-top:1px solid var(--border-light);flex-wrap:wrap;gap:.75rem;padding-top:.5rem;display:flex}.weekly-legend-item{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);align-items:center;gap:.3rem;font-weight:500;display:flex}.weekly-legend-box{border-radius:2px;flex-shrink:0;width:12px;height:8px}.weekly-legend-box.solid{background:var(--success)}.weekly-legend-box.range{background:#48bb784d}.weekly-legend-line-unified{border-bottom:1.5px dashed #4a556840;flex-shrink:0;width:14px;height:0}.alcohol-feedback{border-radius:var(--radius-md);border:1px solid;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;animation:.5s cubic-bezier(.16,1,.3,1) both fadeInUp;display:flex}.alcohol-feedback.safe{background:linear-gradient(135deg,#48bb780f,#48bb7805);border-color:#48bb7833}.alcohol-feedback.moderate{background:linear-gradient(135deg,#ed89360f,#ed893605);border-color:#ed893633}.alcohol-feedback.danger{background:linear-gradient(135deg,#b4530917,#b453090a);border-color:#b4530947}.alcohol-feedback-icon{font-size:var(--fs-22);flex-shrink:0;margin-top:1px;line-height:1}.alcohol-feedback-text{flex-direction:column;gap:.3rem;display:flex}.alcohol-feedback-text strong{font-family:var(--font-body);font-size:var(--fs-13);font-weight:700;line-height:1.3}.alcohol-feedback.safe strong{color:#2f855a}.alcohol-feedback.moderate strong{color:#c05621}.alcohol-feedback.danger strong{color:var(--warning-deep)}.alcohol-feedback-text p{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);margin:0;font-weight:400;line-height:1.55}.substance-trend-tag{font-family:var(--font-body);font-size:var(--fs-13);white-space:nowrap;align-items:center;min-width:0;max-width:100%;font-weight:500;display:inline-flex;color:var(--text-primary)!important;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;padding:0!important}.substance-trend-tag>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.substance-trend-tag .drink-icon-img,.substance-trend-tag .smoke-icon-img{flex-shrink:0}.substance-trend-tag.drink-tag,.substance-trend-tag.smoke-tag,.substance-trend-tag.clean-tag{color:var(--text-primary)!important;background:0 0!important;border:none!important}.trend-bullet{font-weight:700;font-size:var(--fs-14);vertical-align:middle;margin-right:4px;line-height:1;display:inline-block;color:var(--accent-primary)!important}@media (width<=380px){.substance-card{padding:1.5rem 1.25rem}.drink-type-grid,.smoke-type-grid{grid-template-columns:repeat(3,1fr);gap:.45rem}.drink-type-card,.smoke-type-card{height:72px}.smoke-preset{grid-template-columns:repeat(3,1fr)}.alcohol-amount{font-size:var(--fs-36)}.alcohol-summary{padding:1.5rem 1.25rem}.amount-btn{min-width:46px;font-size:var(--fs-12);padding:.35rem .7rem}.amount-custom{width:64px}.container-chip{font-size:var(--fs-12);padding:.4rem .75rem}.substance-stats{gap:.45rem}.substance-stat-card{padding:.85rem .35rem}.substance-stat-value{font-size:var(--fs-18)}.substance-stat-label{font-size:var(--fs-10)}.substance-trend-data{gap:.25rem .4rem}.substance-trend-type,.substance-trend-amount{font-size:var(--fs-12)}.substance-amount-display{font-size:var(--fs-36)}.substance-tabs{gap:.35rem}.substance-tab{font-size:var(--fs-13);padding:.55rem .75rem}}@media (width<=340px){.substance-content{padding-left:1rem;padding-right:1rem}.drink-type-grid,.smoke-type-grid,.smoke-preset{grid-template-columns:repeat(2,1fr)}.amount-btn{min-width:42px;height:38px;min-height:44px}.container-chip{min-height:44px}.alcohol-summary{padding:1.25rem 1rem}.substance-tab{font-size:var(--fs-12);padding:.5rem .6rem}}@media (width>=600px){.substance-content{gap:2rem;padding-top:2.5rem}.substance-card{gap:2rem;padding:2.25rem 2.5rem}.substance-card-title{font-size:var(--fs-22)}.drink-type-card,.smoke-type-card{height:88px}.drink-type-icon,.smoke-type-icon{font-size:var(--fs-28)}.drink-type-label,.smoke-type-label{font-size:var(--fs-11)}.amount-btn{min-width:60px;height:44px}.container-chip{font-size:var(--fs-13);padding:.5rem 1.15rem}.alcohol-summary{padding:2rem 2.5rem}.alcohol-amount,.substance-amount-display{font-size:var(--fs-48)}.substance-tab{font-size:var(--fs-14);padding:.7rem 1.25rem}.smoke-preset{grid-template-columns:repeat(5,1fr)}}@media (pointer:coarse){.substance-slider::-webkit-slider-thumb{width:28px;height:28px}.substance-slider::-moz-range-thumb{width:28px;height:28px}.drink-type-card,.smoke-type-card{min-height:72px}.amount-btn{min-width:52px;min-height:44px}.container-chip{min-height:44px}.substance-trend-toggle-btn{font-size:var(--fs-12);padding:.45rem 1rem}.substance-delete-btn{width:36px;height:36px}.smoke-preset-btn,.substance-tab{min-height:48px}}@media (prefers-reduced-motion:reduce){.substance-card,.substance-trend,.substance-stats,.substance-empty,.substance-tabs,.substance-trend-item,.substance-list-item,.substance-clean-badge,.substance-streak,.alcohol-summary{animation:none}.drink-type-card,.smoke-type-card,.amount-btn,.container-chip,.substance-save-btn,.substance-stat-card,.substance-trend-item,.substance-list-item,.substance-delete-btn,.substance-tab,.substance-clean-btn,.smoke-preset-btn{transition:none}.substance-slider::-webkit-slider-thumb{transition:none}.substance-slider::-moz-range-thumb{transition:none}.substance-empty-icon,.alcohol-bar-fill,.substance-clean-badge{animation:none}}.drink-type-card:focus-visible,.smoke-type-card:focus-visible,.amount-btn:focus-visible,.container-chip:focus-visible,.substance-save-btn:focus-visible,.substance-trend-toggle-btn:focus-visible,.substance-header .back-btn:focus-visible,.substance-header .header-back:focus-visible,.substance-delete-btn:focus-visible,.substance-tab:focus-visible,.substance-clean-btn:focus-visible,.smoke-preset-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.substance-slider:focus-visible{outline:none}.substance-slider:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #d4af3733,0 2px 8px #d4af374d}.substance-slider:focus-visible::-moz-range-thumb{box-shadow:0 0 0 4px #d4af3733,0 2px 8px #d4af374d}.substance-memo:focus-visible,.amount-custom:focus-visible{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #d4af3714}.substance-edit-btn{cursor:pointer;color:var(--text-light);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .2s;display:inline-flex}.substance-edit-btn:hover{color:var(--text-secondary)}.sub-edit-card{flex-direction:column;align-items:stretch;gap:.7rem;width:100%;display:flex}.sub-edit-title{font-size:var(--fs-12);color:var(--text-secondary);font-weight:700}.sub-edit-row{gap:.6rem;display:flex}.sub-edit-row>.substance-input-group{flex:1}.sub-edit-input{border:1.5px solid var(--border-light);background:var(--bg-primary);width:100%;color:var(--text-primary);font-size:var(--fs-14);border-radius:10px;padding:.55rem .7rem;font-family:inherit}.sub-edit-input:focus{border-color:var(--accent-deep);outline:none;box-shadow:0 0 0 3px #00694a14}.sub-edit-actions{gap:.6rem;display:flex}.sub-edit-cancel{border:1.5px solid var(--border-light);background:var(--bg-primary);color:var(--text-secondary);font-family:inherit;font-weight:700;font-size:var(--fs-14);cursor:pointer;border-radius:12px;flex:1;padding:.8rem}.sub-edit-save{background:var(--accent-tint);color:var(--accent-deep);font-family:inherit;font-weight:700;font-size:var(--fs-14);cursor:pointer;border:none;border-radius:12px;flex:2;padding:.8rem}.sub-edit-save:disabled{opacity:.5;cursor:not-allowed}@media (width>=769px){.substance-header{display:none}}@keyframes weightFadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes weightSavedPop{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.15)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes weightSlideIn{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes weightEmptyFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes weightLineDraw{0%{opacity:0}to{opacity:1}}.weight-page{background-color:var(--bg-primary);background-image:radial-gradient(70% 50% at 50% 0,#5c6b640a 0%,#0000 65%);min-height:100vh;padding-bottom:4rem;position:relative}.weight-header{z-index:100;-webkit-backdrop-filter:blur(20px)saturate(1.6);background:#ffffffe6;border-bottom:1px solid #007d5814;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 20px #00000008}.weight-header .back-btn{width:38px;height:38px;font-size:var(--fs-18);cursor:pointer;transition:var(--transition-smooth);justify-content:center;align-items:center;display:inline-flex;background:var(--bg-secondary)!important;color:var(--accent-primary)!important;border:1px solid #007d581f!important;border-radius:50%!important;box-shadow:0 2px 8px #007d5814!important}.weight-header .back-btn:hover{background:var(--accent-tint)!important;color:var(--accent-deeper)!important;border-color:#007d5840!important;transform:translateY(-1px)scale(1.04)!important;box-shadow:0 4px 12px #007d5826!important}.weight-content{flex-direction:column;gap:1.25rem;max-width:520px;margin:0 auto;padding:1.5rem 1.25rem 0;display:flex}.weight-chart-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);padding:1.5rem 1.25rem 1.25rem;animation:.6s cubic-bezier(.16,1,.3,1) forwards weightSlideIn}.weight-chart-head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.weight-chart-title{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);align-items:center;gap:6px;font-weight:700;display:flex}.weight-range-toggle{border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-secondary);display:flex;overflow:hidden}.weight-range-btn{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light);cursor:pointer;transition:var(--transition-smooth);letter-spacing:.01em;white-space:nowrap;background:0 0;border:none;padding:.35rem .75rem;font-weight:500}.weight-range-btn:hover{color:var(--accent-deep);background:#00000005}.weight-range-btn.active{background:var(--accent-tint)!important;color:var(--accent-deep)!important;font-weight:700!important;box-shadow:0 2px 8px #007d580f!important}.weight-chart-svg-wrap{width:100%}.weight-chart-svg{width:100%;height:auto;animation:.6s both weightLineDraw;display:block}.weight-axis-label{font-family:var(--font-body);font-size:var(--fs-10);fill:var(--text-light,#8a948e);font-weight:500}.weight-grid-line{stroke:#0000000d;stroke-width:1px;stroke-dasharray:2 3}.weight-trend-line{stroke:var(--accent-deep);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.weight-trend-dot{fill:var(--text-on-accent);stroke:var(--accent-deep);stroke-width:1.8px}.weight-latest-label{font-family:var(--font-body);font-size:var(--fs-11);fill:var(--accent-deep);font-weight:700}.weight-goal-line{stroke:var(--warning);stroke-width:1.4px;stroke-dasharray:5 4;opacity:.75}.weight-goal-line-label{font-family:var(--font-body);font-size:var(--fs-10);fill:var(--warning);font-weight:600}.weight-chart-empty{text-align:center;font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);padding:2.25rem 1rem}.weight-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.85rem;padding:2.5rem 1.5rem;animation:.6s cubic-bezier(.16,1,.3,1) .1s both weightFadeInUp;display:flex}.weight-empty-icon{font-size:var(--fs-48);filter:grayscale(.1);line-height:1;animation:3s ease-in-out infinite weightEmptyFloat}.weight-empty-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.weight-empty-desc{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);max-width:300px;font-weight:400;line-height:1.55}.weight-stats{gap:.6rem;animation:.6s cubic-bezier(.16,1,.3,1) .15s both weightFadeInUp;display:flex}.weight-stat-card{border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);flex-direction:column;flex:1;align-items:center;gap:.3rem;min-width:0;padding:1rem .4rem;display:flex}.weight-stat-card:hover{border-color:#5c6b6426;transform:translateY(-2px);box-shadow:0 4px 16px #5c6b640a}.weight-stat-value{font-family:var(--font-body);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.02em;white-space:nowrap;font-weight:700;line-height:1.1}.weight-stat-value .stat-unit,.weight-goal-num .stat-unit{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);margin-left:.1rem;font-weight:500}.weight-stat-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-transform:uppercase;letter-spacing:.04em;text-align:center;white-space:nowrap;font-weight:500}.weight-form-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-md);flex-direction:column;gap:1.35rem;padding:1.75rem;animation:.6s cubic-bezier(.16,1,.3,1) .1s both weightSlideIn;display:flex}.weight-form-top{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.weight-form-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;font-weight:600;line-height:1.3}.weight-form-date{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);letter-spacing:.01em;white-space:nowrap;font-weight:400}.weight-saved{border-radius:var(--radius-full);color:var(--success);font-family:var(--font-body);font-size:var(--fs-12);letter-spacing:.02em;background:linear-gradient(135deg,#48bb781f,#5c6b640d);border:1px solid #48bb7840;align-self:flex-start;align-items:center;gap:.35rem;margin-top:-.5rem;padding:.35rem .85rem;font-weight:600;animation:.5s cubic-bezier(.34,1.56,.64,1) forwards weightSavedPop;display:inline-flex}.weight-input-group{flex-direction:column;gap:.7rem;display:flex}.weight-label{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.4rem;font-weight:600;display:flex}.weight-input-row{align-items:center;gap:.6rem;display:flex}.weight-number-input{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-primary);width:100%;font-family:var(--font-body);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.01em;appearance:textfield;outline:none;flex:1;padding:.8rem 1rem;font-weight:700;transition:border-color .3s,box-shadow .3s}.weight-number-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.weight-number-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.weight-number-input::placeholder{color:var(--text-light);font-size:var(--fs-16);font-weight:500}.weight-number-input:focus{border-color:var(--text-secondary);box-shadow:0 0 0 3px #5c6b640d}.weight-input-unit{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);flex-shrink:0;font-weight:600}.weight-memo{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-primary);width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);resize:vertical;outline:none;min-height:56px;max-height:120px;padding:.75rem 1rem;line-height:1.5;transition:border-color .3s,box-shadow .3s}.weight-memo::placeholder{color:var(--text-light)}.weight-memo:focus{border-color:var(--text-secondary);box-shadow:0 0 0 3px #5c6b640d}.weight-save-btn{border-radius:var(--radius-full);width:100%;font-family:var(--font-body);font-size:var(--fs-16);letter-spacing:.01em;cursor:pointer;justify-content:center;align-items:center;gap:.5rem;min-height:50px;padding:.95rem 1.5rem;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,background .35s,opacity .35s;display:flex;background:var(--accent-tint)!important;color:var(--accent-deep)!important;border:1px solid #007d582e!important;font-weight:700!important;box-shadow:0 2px 8px #007d580a,inset 0 1px #fff6!important}.weight-save-btn:hover{transform:translateY(-2px);background:var(--accent-tint)!important;color:var(--accent-deep)!important;border-color:#007d5847!important;box-shadow:0 4px 12px #007d581a!important}.weight-save-btn:active{transform:translateY(0)scale(.98);box-shadow:0 2px 8px #007d580f!important}.weight-save-btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none!important}.weight-save-btn:disabled:hover{transform:none}.weight-delete-btn{border-radius:var(--radius-full);color:#7a5518;width:100%;font-family:var(--font-body);font-size:var(--fs-13);cursor:pointer;background:#b07a2a12;border:1px solid #b07a2a40;justify-content:center;align-items:center;gap:.45rem;min-height:44px;margin-top:-.4rem;padding:.75rem 1.25rem;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 2px 8px #b07a2a0f}.weight-delete-btn:hover{background:#b07a2a1f;border-color:#b07a2a66;transform:translateY(-1px)}.weight-delete-btn:active{transform:translateY(0)scale(.98)}.weight-goal-card{background:linear-gradient(135deg, #007d5809 0%, #b07a2a05 100%), var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid #007d581f;flex-direction:column;gap:1.1rem;padding:1.5rem 1.5rem 1.35rem;animation:.6s cubic-bezier(.16,1,.3,1) .2s both weightFadeInUp;display:flex}.weight-goal-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.weight-goal-title{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);align-items:center;gap:6px;font-weight:700;display:flex}.weight-goal-actions{align-items:center;gap:.35rem;display:flex}.weight-goal-icon-btn{border:1px solid var(--border-light);background:var(--bg-secondary);width:30px;height:30px;color:var(--text-light);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex}.weight-goal-icon-btn:hover{color:var(--accent-deep);background:var(--accent-tint);border-color:#007d5840}.weight-goal-body{flex-direction:column;gap:1rem;display:flex}.weight-goal-numbers{justify-content:space-around;align-items:stretch;gap:.5rem;display:flex}.weight-goal-num-col{flex-direction:column;align-items:center;gap:.25rem;min-width:0;display:flex}.weight-goal-num{font-family:var(--font-body);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.02em;white-space:nowrap;font-weight:700;line-height:1.1}.weight-goal-num-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);letter-spacing:.03em;white-space:nowrap;align-items:center;gap:3px;font-weight:500;display:inline-flex}.weight-progress-track{border-radius:var(--radius-full);background:#0000000d;width:100%;height:10px;overflow:hidden}.weight-progress-fill{border-radius:var(--radius-full);background:linear-gradient(90deg, var(--success) 0%, var(--accent-deep) 100%);min-width:0;height:100%;transition:width .6s cubic-bezier(.16,1,.3,1);box-shadow:0 1px 4px #00694a40}.weight-goal-start-note{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light);align-items:center;gap:4px;font-weight:500;display:inline-flex}.weight-goal-empty{flex-direction:column;gap:.85rem;display:flex}.weight-goal-empty-desc{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);margin:0;font-weight:400;line-height:1.5}.weight-goal-form{flex-direction:column;gap:.85rem;display:flex}.weight-goal-form-btns{gap:.6rem;display:flex}.weight-goal-form-btns .weight-save-btn{flex:1}.weight-goal-cancel-btn{border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-secondary);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-14);cursor:pointer;flex-shrink:0;min-height:50px;padding:.75rem 1.25rem;font-weight:600;transition:all .2s}.weight-goal-cancel-btn:hover{color:var(--text-primary);border-color:#5c6b6440}.weight-toast-overlay{z-index:2000;pointer-events:none;justify-content:center;width:auto;display:flex;position:fixed;bottom:5.5rem;left:1rem;right:1rem}.weight-toast-content{-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-full);text-align:center;background:#0b1a12f2;border:1px solid #007d5833;width:100%;max-width:380px;padding:.75rem 1.25rem;animation:.35s cubic-bezier(.175,.885,.32,1.275) forwards weightSavedPop;box-shadow:0 10px 25px #111a1633,0 2px 10px #007d5814}.weight-toast-content span{font-family:var(--font-body);font-size:var(--fs-13);font-weight:600;line-height:1.4;color:var(--text-on-accent)!important}@media (width<=480px){.weight-form-card{padding:1.5rem 1.25rem}.weight-chart-card{padding:1.25rem 1rem 1rem}.weight-stats{flex-wrap:wrap;gap:.45rem}.weight-stat-card{flex:calc(50% - .45rem);padding:.85rem .35rem}.weight-stat-value{font-size:var(--fs-18)}.weight-stat-label{font-size:var(--fs-10)}.weight-goal-num,.weight-number-input{font-size:var(--fs-18)}}@media (width<=340px){.weight-content{padding-left:1rem;padding-right:1rem}.weight-range-btn{font-size:var(--fs-10);padding:.3rem .55rem}}@media (width>=600px){.weight-content{gap:1.75rem;padding-top:2.5rem}.weight-form-card{padding:2.25rem 2.5rem}.weight-form-title{font-size:var(--fs-22)}}@media (pointer:coarse){.weight-range-btn{font-size:var(--fs-12);padding:.45rem .85rem}.weight-goal-icon-btn{width:36px;height:36px}}@media (prefers-reduced-motion:reduce){.weight-chart-card,.weight-form-card,.weight-goal-card,.weight-stats,.weight-empty,.weight-chart-svg,.weight-saved,.weight-toast-content,.weight-empty-icon{animation:none}.weight-save-btn,.weight-delete-btn,.weight-stat-card,.weight-progress-fill,.weight-goal-icon-btn{transition:none}}.weight-range-btn:focus-visible,.weight-save-btn:focus-visible,.weight-delete-btn:focus-visible,.weight-goal-icon-btn:focus-visible,.weight-goal-cancel-btn:focus-visible,.weight-header .back-btn:focus-visible{outline:2px solid var(--text-secondary);outline-offset:2px}@media (width>=769px){.weight-header{display:none}}@keyframes cycleFadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes cycleSlideIn{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes cyclePop{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.15)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes cycleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.cycle-page .animated{animation-duration:.4s;animation-fill-mode:both}.cycle-page .animated.cycleFadeIn,.cycle-page .animated.cycleFadeInUp{animation-name:cycleFadeInUp}.cycle-page .animated.cycleSlideIn,.cycle-modal-backdrop .animated.cycleSlideIn{animation-name:cycleSlideIn}.cycle-toast-overlay .animated.cyclePop{animation-name:cyclePop;animation-duration:.35s}.cycle-page{background-color:var(--bg-primary);background-image:radial-gradient(70% 50% at 50% 0,#c2517e0a 0%,#0000 65%);min-height:100vh;padding-bottom:4rem;position:relative}.cycle-header{z-index:100;-webkit-backdrop-filter:blur(20px)saturate(1.6);background:#ffffffe6;border-bottom:1px solid #007d5814;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 20px #00000008}.cycle-header .back-btn{width:38px;height:38px;font-size:var(--fs-18);cursor:pointer;transition:var(--transition-smooth);justify-content:center;align-items:center;display:inline-flex;background:var(--bg-secondary)!important;color:var(--accent-primary)!important;border:1px solid #007d581f!important;border-radius:50%!important;box-shadow:0 2px 8px #007d5814!important}.cycle-header .back-btn:hover{background:var(--accent-tint)!important;color:var(--accent-deeper)!important;border-color:#007d5840!important;transform:translateY(-1px)scale(1.04)!important;box-shadow:0 4px 12px #007d5826!important}.cycle-content{flex-direction:column;gap:1.5rem;max-width:520px;margin:0 auto;padding:1.5rem 1.25rem 0;display:flex}.cycle-tab-pane{flex-direction:column;gap:1.5rem;width:100%;display:flex}.cycle-sub-tabs{-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-full);border:1px solid var(--border-light);background:#00000005;gap:.25rem;margin:0 0 -.5rem;padding:.25rem;display:flex;box-shadow:inset 0 1px 2px #00000005}.cycle-sub-tab-btn{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;background:0 0;border:none;outline:none;flex:1;padding:.65rem .5rem;font-weight:500;transition:all .3s cubic-bezier(.16,1,.3,1)}.cycle-sub-tab-btn:hover{color:var(--text-secondary);background:#00000004}.cycle-sub-tab-btn.active{transform:translateY(-.5px);background:var(--cycle-tint)!important;color:var(--cycle-accent-deep)!important;font-weight:700!important;box-shadow:0 2px 8px #c2517e14,inset 0 1px #fff6!important}.cycle-calendar-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-md);padding:1.25rem 1rem 1rem;animation:.6s cubic-bezier(.16,1,.3,1) forwards cycleSlideIn}.cycle-cal-header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.9rem;display:flex}.cycle-cal-title{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:6px;font-weight:700;display:flex}.cycle-cal-header-right{align-items:center;gap:6px;display:flex}.cycle-cal-nav-btn{border:1px solid var(--border-light);background:var(--bg-primary);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.cycle-cal-nav-btn:hover{color:var(--cycle-accent-deep);background:var(--cycle-tint);border-color:#c2517e4d}.cycle-cal-today-btn{border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-primary);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-11);cursor:pointer;padding:.3rem .7rem;font-weight:600;transition:all .2s}.cycle-cal-today-btn:hover{color:var(--cycle-accent-deep);background:var(--cycle-tint);border-color:#c2517e4d}.cycle-cal-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.cycle-cal-dow{text-align:center;font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);letter-spacing:.02em;padding:.3rem 0 .45rem;font-weight:600}.cycle-cal-dow.sun{color:#c2517ebf}.cycle-cal-dow.sat{color:#526c8abf}.cycle-cal-day{aspect-ratio:1;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:1.5px solid #0000;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;min-height:38px;padding:2px 0;transition:transform .2s cubic-bezier(.34,1.56,.64,1),background .2s,border-color .2s,box-shadow .2s;display:flex;position:relative}.cycle-cal-day.blank{cursor:default;pointer-events:none}.cycle-cal-day-num{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);font-weight:500;line-height:1.2}.cycle-cal-day:hover:not(.blank):not(:disabled){background:#c2517e0d;transform:translateY(-1px)}.cycle-cal-day.period{box-shadow:0 2px 8px #c2517e40;background:linear-gradient(145deg, #d06a92, var(--cycle-accent))!important}.cycle-cal-day.period .cycle-cal-day-num{color:var(--text-on-accent);font-weight:700}.cycle-cal-day.predicted{background:#c2517e0a;border:1.5px dashed #c2517e8c}.cycle-cal-day.predicted .cycle-cal-day-num{color:var(--cycle-accent-deep);font-weight:600}.cycle-cal-day.ovulation{background:#b07a2a0f;border:1.5px solid #b07a2a99}.cycle-cal-day.ovulation .cycle-cal-day-num{color:#8a5f1e;font-weight:700}.cycle-cal-day.today{box-shadow:0 0 0 2px #111a168c}.cycle-cal-day.period.today{box-shadow:0 0 0 2px #111a168c,0 2px 8px #c2517e40}.cycle-cal-day.selected:not(.period){background:#111a160f;border-color:#111a1633}.cycle-cal-day.selected.predicted{border-style:dashed}.cycle-cal-day.future{cursor:not-allowed;opacity:.55}.cycle-cal-day.future .cycle-cal-day-num{color:var(--text-light)}.cycle-cal-marks{justify-content:center;align-items:center;gap:2px;height:5px;margin-top:1px;display:flex}.cycle-cal-fertile-dot{background:#b07a2abf;border-radius:50%;width:4px;height:4px}.cycle-cal-log-dot{background:#5c6b648c;border-radius:50%;width:4px;height:4px}.cycle-cal-legend{border-top:1px solid var(--border-light);flex-wrap:wrap;align-items:center;gap:.4rem .9rem;margin-top:.9rem;padding-top:.75rem;display:flex}.cycle-legend-item{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);align-items:center;gap:5px;font-weight:500;display:inline-flex}.legend-swatch{border-radius:4px;width:11px;height:11px;display:inline-block}.legend-swatch.period{background:linear-gradient(145deg, #d06a92, var(--cycle-accent))}.legend-swatch.predicted{background:#c2517e0d;border:1.5px dashed #c2517e99}.legend-swatch.fertile{background:0 0;position:relative}.legend-swatch.fertile:after{content:"";background:#b07a2abf;border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.legend-swatch.ovulation{background:#b07a2a0f;border:1.5px solid #b07a2a99}.legend-swatch.today{background:0 0;border:2px solid #111a168c;border-radius:6px}.cycle-form-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-md);flex-direction:column;gap:1.4rem;padding:1.75rem 1.5rem;display:flex}.cycle-form-top{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.cycle-form-title{font-family:var(--font-heading);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:.45rem;font-weight:600;display:flex}.cycle-form-title svg{color:var(--cycle-accent)}.cycle-form-date{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);font-weight:500}.cycle-input-group{flex-direction:column;gap:.65rem;display:flex}.cycle-label{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.4rem;font-weight:600;display:flex}.cycle-period-toggle{border:1.5px solid var(--border-light);background:var(--bg-primary);cursor:pointer;border-radius:14px;align-items:center;gap:.75rem;width:100%;padding:.85rem 1rem;transition:all .25s;display:flex}.cycle-period-toggle:hover{border-color:#c2517e59}.cycle-period-toggle.on{background:var(--cycle-tint);border-color:#c2517e73}.cycle-toggle-track{border-radius:var(--radius-full);background:#0000001f;flex-shrink:0;width:42px;height:24px;transition:background .25s;display:inline-block;position:relative}.cycle-period-toggle.on .cycle-toggle-track{background:var(--cycle-accent)}.cycle-toggle-thumb{background:var(--bg-secondary);border-radius:50%;width:18px;height:18px;transition:transform .25s cubic-bezier(.34,1.56,.64,1);position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0003}.cycle-period-toggle.on .cycle-toggle-thumb{transform:translate(18px)}.cycle-toggle-label{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);font-weight:600}.cycle-period-toggle.on .cycle-toggle-label{color:var(--cycle-accent-deep)}.cycle-chip-row{flex-wrap:wrap;gap:.5rem;display:flex}.cycle-chip{border-radius:var(--radius-full);border:1.5px solid var(--border-light);background:var(--bg-secondary);font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.35rem;padding:.45rem .8rem;font-weight:500;transition:transform .25s cubic-bezier(.34,1.56,.64,1),border-color .25s,background .25s,box-shadow .25s;display:inline-flex}.cycle-chip:hover{border-color:#c2517e4d;transform:translateY(-1px);box-shadow:0 3px 10px #c2517e0f}.cycle-chip:active{transform:scale(.96)}.cycle-chip.active{font-weight:700;box-shadow:0 2px 8px #c2517e1a;background:var(--cycle-tint)!important;color:var(--cycle-accent-deep)!important;border-color:#c2517e73!important}.cycle-chip-emoji{font-size:var(--fs-16);line-height:1}.cycle-memo-input{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-primary);width:100%;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);outline:none;padding:.75rem 1rem;transition:border-color .3s,box-shadow .3s}.cycle-memo-input::placeholder{color:var(--text-light)}.cycle-memo-input:focus{border-color:#c2517e73;box-shadow:0 0 0 3px #c2517e0f}.cycle-save-btn{border-radius:var(--radius-full);background:var(--accent-tint);width:100%;color:var(--accent-deep);font-family:var(--font-body);font-size:var(--fs-16);letter-spacing:.01em;cursor:pointer;border:1px solid #007d582e;justify-content:center;align-items:center;gap:.5rem;min-height:52px;padding:1rem 1.5rem;font-weight:700;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,background .35s;display:flex;box-shadow:0 2px 8px #007d580a,inset 0 1px #fff6}.cycle-save-btn:hover{background:var(--accent-tint);border-color:#007d5847;transform:translateY(-2px);box-shadow:0 4px 12px #007d581a}.cycle-save-btn:active{transform:translateY(0)scale(.98)}.cycle-clear-btn{color:#7a5518;width:100%;font-family:var(--font-body);font-size:var(--fs-14);cursor:pointer;background:#b07a2a12;border:1px solid #b07a2a40;border-radius:14px;justify-content:center;align-items:center;gap:.4rem;margin-top:-.6rem;padding:.8rem 1.5rem;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.cycle-clear-btn:hover{background:#b07a2a1c;border-color:#b07a2a66}.cycle-insight-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);flex-direction:column;gap:1rem;padding:1.4rem 1.35rem;display:flex}.cycle-insight-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.cycle-insight-title{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:.4rem;font-weight:700;display:flex}.cycle-insight-title svg{color:var(--cycle-accent)}.cycle-confidence-badge{border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-11);letter-spacing:.01em;align-items:center;padding:.28rem .7rem;font-weight:700;display:inline-flex}.cycle-confidence-badge.low{color:#8a5f1e;background:#b07a2a1a;border:1px solid #b07a2a4d}.cycle-confidence-badge.medium{color:#40587a;background:#526c8a14;border:1px solid #526c8a40}.cycle-confidence-badge.high{color:#2f855a;background:#48bb781a;border:1px solid #48bb7847}.cycle-predict-main{flex-wrap:wrap;align-items:baseline;gap:.75rem;display:flex}.cycle-predict-dday{font-family:var(--font-heading);font-size:var(--fs-32);color:var(--cycle-accent);letter-spacing:-.02em;font-weight:700;line-height:1}.cycle-predict-date{font-family:var(--font-body);font-size:var(--fs-16);color:var(--text-secondary);font-weight:600}.cycle-predict-rows{border-top:1px solid var(--border-light);flex-direction:column;gap:.5rem;padding-top:.85rem;display:flex}.cycle-predict-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.predict-row-label{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);font-weight:500}.predict-row-value{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);font-weight:600}.cycle-onboarding{border-radius:var(--radius-md);background:#c2517e0a;border:1px dashed #c2517e40;align-items:flex-start;gap:.75rem;padding:1rem;display:flex}.cycle-onboarding-emoji{font-size:var(--fs-22);line-height:1;animation:3s ease-in-out infinite cycleFloat}.cycle-onboarding-text{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);margin:0;line-height:1.55}.cycle-phase-card{border-top:3px solid var(--phase-color,var(--cycle-accent))}.cycle-day-badge{border-radius:var(--radius-full);border:1px solid var(--border-light);font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-secondary);background:#111a160d;align-items:center;padding:.28rem .7rem;font-weight:700;display:inline-flex}.cycle-phase-unknown{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);margin:0;line-height:1.55}.cycle-phase-head{align-items:center;gap:.85rem;display:flex}.cycle-phase-emoji{font-size:var(--fs-36);line-height:1;animation:3s ease-in-out infinite cycleFloat}.cycle-phase-name-box{flex-direction:column;gap:.15rem;display:flex}.cycle-phase-name{font-family:var(--font-body);font-size:var(--fs-18);color:var(--phase-color,var(--text-primary));letter-spacing:-.01em;font-weight:700}.cycle-phase-days{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light)}.cycle-phase-summary{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);margin:0;line-height:1.6}.cycle-phase-tips-box{background:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--border-light);padding:.9rem 1rem}.cycle-tips-title{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);margin:0 0 .5rem;font-weight:700}.cycle-tips-list{flex-direction:column;gap:.4rem;margin:0;padding-left:1.05rem;display:flex}.cycle-tips-list li{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);line-height:1.5}.cycle-phase-supps{flex-direction:column;gap:.35rem;display:flex}.cycle-stats-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.cycle-stat-tile{border-radius:var(--radius-md);background:var(--bg-primary);border:1px solid var(--border-light);flex-direction:column;align-items:center;gap:.25rem;padding:.85rem .5rem;display:flex}.cycle-stat-value{font-family:var(--font-heading);font-size:var(--fs-22);color:var(--text-primary);letter-spacing:-.01em;font-weight:700;line-height:1}.cycle-stat-value em{font-style:normal;font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light);margin-left:1px;font-weight:500}.cycle-stat-label{font-family:var(--font-body);font-size:var(--fs-10);color:var(--text-light);text-align:center;font-weight:500}.cycle-irregular-notice{border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--fs-12);color:#7a5518;background:#b07a2a0f;border:1px dashed #b07a2a4d;align-items:center;gap:.45rem;padding:.7rem .9rem;font-weight:600;line-height:1.4;display:flex}.cycle-settings-desc{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);margin:-.4rem 0 0;line-height:1.5}.cycle-settings-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.cycle-settings-label{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);font-weight:600}.cycle-settings-input-wrap{align-items:center;gap:.4rem;display:flex}.cycle-settings-input{border-radius:var(--radius-md);border:1.5px solid var(--border-light);background:var(--bg-primary);width:80px;font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);text-align:center;outline:none;padding:.55rem .7rem;font-weight:600;transition:border-color .25s,box-shadow .25s}.cycle-settings-input::placeholder{color:var(--text-light);font-weight:400}.cycle-settings-input:focus{border-color:#c2517e73;box-shadow:0 0 0 3px #c2517e0f}.cycle-settings-unit{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light)}.cycle-disclaimer{border-radius:var(--radius-md);background:#5c6b640a;border:1px dashed #5c6b6438;align-items:flex-start;gap:.55rem;padding:.9rem 1rem;display:flex}.cycle-disclaimer svg{color:var(--text-light);flex-shrink:0;margin-top:2px}.cycle-disclaimer p{font-family:var(--font-body);font-size:var(--fs-11);color:var(--text-light);margin:0;line-height:1.55}.cycle-library-intro{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);padding:1.5rem;position:relative;overflow:hidden}.cycle-library-glow{pointer-events:none;background:radial-gradient(circle,#c2517e12 0%,#0000 70%);width:150px;height:150px;position:absolute;top:-50px;right:-50px}.cycle-library-content{z-index:1;flex-direction:column;align-items:flex-start;gap:.5rem;display:flex;position:relative}.cycle-library-sparkle{color:var(--warning);margin-bottom:.25rem;animation:3s ease-in-out infinite cycleFloat}.cycle-library-title{font-family:var(--font-body);font-size:var(--fs-22);color:var(--text-secondary);letter-spacing:-.02em;font-weight:700}.cycle-library-desc{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-light);font-weight:400;line-height:1.55}.cycle-articles-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.25rem;padding:0 0 2rem;display:grid}.cycle-article-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);cursor:pointer;box-shadow:var(--shadow-sm);flex-direction:column;padding:1.25rem;transition:all .35s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden!important}.cycle-article-card:before{content:"";background:0 0;width:3px;transition:background-color .3s;position:absolute;top:0;bottom:0;left:0}.cycle-article-card:hover{border-color:#c2517e40;transform:translateY(-4px);box-shadow:0 12px 24px #0000000f,0 2px 8px #c2517e0d}.cycle-article-card:hover:before{background:var(--cycle-accent)}.cycle-article-emoji{font-size:var(--fs-32);transform-origin:50%;margin-bottom:.75rem;transition:transform .3s;display:inline-block}.cycle-article-card:hover .cycle-article-emoji{transform:scale(1.08)rotate(4deg)}.cycle-article-body{flex-direction:column;flex:1;display:flex}.cycle-article-journal{font-family:var(--font-body);font-size:var(--fs-11);color:var(--cycle-accent-deep);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.35rem;font-weight:600}.cycle-article-title{font-family:var(--font-body);font-size:var(--fs-16);color:var(--text-secondary);letter-spacing:-.01em;margin-bottom:.5rem;font-weight:700;line-height:1.4}.cycle-article-summary{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);flex:1;margin-bottom:1.25rem;font-weight:400;line-height:1.5}.cycle-article-footer{justify-content:flex-start;align-items:center;margin-top:auto;display:flex}.cycle-read-more{font-family:var(--font-body);font-size:var(--fs-12);color:var(--cycle-accent-deep);align-items:center;font-weight:600;transition:color .2s;display:inline-flex}.cycle-article-card:hover .cycle-read-more{color:var(--text-primary)}.cycle-modal-backdrop{-webkit-backdrop-filter:blur(12px);z-index:1000;background:#0006;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.cycle-modal-content{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);flex-direction:column;width:100%;max-width:600px;max-height:85vh;animation:.4s cubic-bezier(.16,1,.3,1) forwards cycleSlideIn;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px #00000014,0 2px 10px #c2517e0a}.cycle-modal-close{border:1px solid var(--border-light);background:var(--bg-primary);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;z-index:10;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.cycle-modal-close:hover{background:#00000005;transform:rotate(90deg)}.cycle-modal-header{border-bottom:1px solid var(--border-light);align-items:center;gap:1rem;padding:1.75rem 3.5rem 1.25rem 1.75rem;display:flex}.cycle-modal-emoji{font-size:var(--fs-40);flex-shrink:0;animation:3s ease-in-out infinite cycleFloat}.cycle-modal-journal{font-family:var(--font-body);font-size:var(--fs-12);color:var(--cycle-accent-deep);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.cycle-modal-title{font-family:var(--font-body);font-size:var(--fs-18);color:var(--text-secondary);letter-spacing:-.015em;margin-top:.15rem;font-weight:700;line-height:1.35}.cycle-modal-scroll-area{scroll-behavior:smooth;flex-direction:column;flex:1;gap:1.5rem;padding:1.5rem 1.75rem 2rem;display:flex;overflow-y:auto}.cycle-modal-scroll-area::-webkit-scrollbar{width:6px}.cycle-modal-scroll-area::-webkit-scrollbar-track{background:0 0}.cycle-modal-scroll-area::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#00000014}.cycle-modal-scroll-area::-webkit-scrollbar-thumb:hover{background:#c2517e4d}.cycle-modal-body{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);font-weight:400;line-height:1.65}.cycle-article-paragraph{white-space:pre-line;margin-bottom:1rem}.cycle-takeaways-box,.cycle-tips-box,.cycle-supplements-box{background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light);padding:1.25rem}.cycle-box-title{font-family:var(--font-body);font-size:var(--fs-18);color:var(--text-primary);letter-spacing:-.01em;align-items:center;margin-bottom:.75rem;padding-left:.45rem;font-weight:700;display:flex;position:relative}.cycle-box-title:before{content:"";border-radius:var(--radius-full);background:var(--cycle-accent);width:3px;position:absolute;top:.15rem;bottom:.15rem;left:-.45rem}.cycle-takeaways-box ul{flex-direction:column;gap:.5rem;margin:0;padding-left:1.1rem;display:flex}.cycle-takeaways-box li{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);font-weight:500;line-height:1.5}.cycle-tips-box p{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);margin:0;font-weight:500;line-height:1.55}.cycle-supp-sub{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);margin-top:-.25rem;margin-bottom:.75rem}.cycle-supp-chips{flex-wrap:wrap;gap:.5rem;display:flex}.cycle-supp-chip{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-full);cursor:pointer;outline:none;align-items:center;gap:.35rem;padding:.35rem .75rem;transition:all .25s;display:flex}.cycle-supp-chip:hover{background:#c2517e0a;border-color:#c2517e59;transform:translateY(-1px);box-shadow:0 4px 8px #00000008}.cycle-supp-chip:active{transform:translateY(0)}.cycle-supp-chip .chip-emoji{font-size:var(--fs-16)}.cycle-supp-chip .chip-name{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-secondary);font-weight:600}.cycle-supp-chip .chip-link-icon{color:var(--text-light);margin-left:4px;transition:color .2s}.cycle-supp-chip:hover .chip-link-icon{color:var(--text-primary)}.cycle-toast-overlay{z-index:2000;pointer-events:none;justify-content:center;width:auto;display:flex;position:fixed;bottom:5.5rem;left:1rem;right:1rem}.cycle-toast-content{-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-full);text-align:center;background:#0b1a12f2;border:1px solid #c2517e40;width:100%;max-width:380px;padding:.75rem 1.25rem;box-shadow:0 10px 25px #111a1633,0 2px 10px #c2517e1a}.cycle-toast-content span{font-family:var(--font-body);font-size:var(--fs-13);font-weight:600;line-height:1.4;color:var(--text-on-accent)!important}@media (width<=400px){.cycle-cal-day{border-radius:8px;min-height:34px}.cycle-cal-day-num{font-size:var(--fs-12)}.cycle-form-card{padding:1.4rem 1.1rem}.cycle-stats-grid{gap:.4rem}.cycle-stat-value{font-size:var(--fs-18)}}@media (width>=769px){.cycle-header{display:none}}.sleep-result-container{box-shadow:0 24px 80px #0000001f,0 0 0 1px #4a6fa514}.sleep-result-header{border-bottom-color:#4a6fa514!important}.sleep-result-header .result-close-btn:hover{color:var(--sleep-accent);background:#4a6fa51a}.sleep-result-hero{background:radial-gradient(at 50% 0,#4a6fa51f 0%,#0000 65%),linear-gradient(#4a6fa508 0%,#0000 100%)!important}.sleep-age-number{background:linear-gradient(135deg, #2d4f7a 0%, var(--sleep-accent) 50%, #7ba4d9 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.sleep-result-container .result-section+.result-section{border-top-color:#4a6fa514}.sleep-result-container .section-title:before{background:var(--sleep-accent)}.sleep-badge-good{color:var(--accent-primary);background:#007d5814;border:1px solid #007d5833}.sleep-badge-ok{color:var(--warning);background:#b07a2a14;border:1px solid #b07a2a33}.sleep-badge-warn{color:#c45a1a;background:#c45a1a14;border:1px solid #c45a1a33}.sleep-badge-critical{color:#b83232;background:#b8323214;border:1px solid #b8323233}.sleep-result-container .tip-card{border-color:#4a6fa514}.sleep-result-container .tip-card:hover{border-color:#4a6fa533;box-shadow:0 8px 28px #4a6fa514,inset 0 1px #ffffffe6}.sleep-result-container .tip-icon{color:var(--sleep-accent);background:#4a6fa50f;border-color:#4a6fa514}.sleep-result-container .result-cta{background:linear-gradient(#0000 0%,#4a6fa505 100%);border-top-color:#4a6fa514}.sleep-retake-btn{color:var(--sleep-accent)!important;border-color:#4a6fa533!important}.sleep-retake-btn:hover{border-color:var(--sleep-accent)!important;background:#4a6fa50d!important}@keyframes sleepPulseGlow{0%,to{box-shadow:0 0 #4a6fa533}50%{box-shadow:0 0 28px 6px #4a6fa51a}}.sleep-age-reveal{animation:3s ease-in-out 1.6s infinite sleepPulseGlow}.landing-container{--landing-bg:var(--bg-primary);--border-accent:rgba(var(--p-accent-rgb), .08);--border-accent-hover:rgba(var(--p-accent-rgb), .2);--card-glass:#ffffffd9;background-color:var(--landing-bg);background-image:radial-gradient(circle at center top, #e8ece9 0%, var(--landing-bg) 70%);min-height:100vh;color:var(--text-primary);font-family:var(--font-body);padding-bottom:2rem;overflow-x:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:.4s ease-out forwards fadeIn}.animate-slideUp{animation:.8s cubic-bezier(.16,1,.3,1) forwards slideUp}.delay-100{animation-delay:.15s}.delay-200{animation-delay:.3s}.landing-hero{border-bottom:1px solid null;justify-content:center;align-items:center;min-height:95vh;padding:8rem 2rem 5rem;display:flex;position:relative}.hero-glow{background:radial-gradient(circle, null 0%, #14503214 50%, transparent 70%);filter:blur(40px);pointer-events:none;width:550px;height:550px;position:absolute;top:10%;left:50%;transform:translate(-50%,-10%)}.hero-grid-wrapper{z-index:10;grid-template-columns:1.15fr .85fr;align-items:center;gap:4.5rem;width:100%;max-width:1200px;margin:0 auto;display:grid}.hero-content{text-align:left;flex-direction:column;align-items:flex-start;display:flex}.brand-badge{background:var(--highlight-glow);border:1px solid var(--highlight-border);font-size:var(--fs-14);letter-spacing:.05em;color:var(--highlight);box-shadow:0 0 15px null;border-radius:99px;align-items:center;gap:8px;margin-bottom:1.75rem;padding:.5rem 1.25rem;font-weight:600;display:inline-flex}.hero-title{font-size:var(--fs-56);letter-spacing:-.03em;color:var(--text-primary);font-weight:800;line-height:1.15;font-family:var(--font-body);margin-bottom:1.5rem}.text-charcoal-green{font-weight:800;display:inline-block;color:var(--accent-deeper)!important;background:0 0!important;-webkit-background-clip:initial!important;-webkit-text-fill-color:initial!important;filter:none!important}.hero-subtitle{font-size:var(--fs-18);color:var(--text-secondary);margin-bottom:3rem;line-height:1.65}.hero-visual{justify-content:center;align-items:center;width:100%;display:flex;position:relative}.hero-visual-img{border:1px solid var(--highlight-border);width:100%;max-width:460px;height:auto;box-shadow:0 25px 60px #0000008c, 0 0 40px null;border-radius:28px;animation:4.5s ease-in-out infinite alternate visualFloat}.hero-visual-glow{background:radial-gradient(circle, null 0%, transparent 70%);filter:blur(40px);z-index:-1;pointer-events:none;width:320px;height:320px;position:absolute}@keyframes visualFloat{0%{transform:translateY(0)scale(1)}to{transform:translateY(-16px)scale(1.025)}}.floating-science-card{position:absolute;-webkit-backdrop-filter:blur(12px)!important;z-index:15!important;background:#ffffffeb!important;border:1px solid #007d5826!important;border-radius:14px!important;align-items:center!important;gap:10px!important;padding:.65rem 1rem!important;transition:all .3s!important;display:flex!important;box-shadow:0 10px 25px #0b221614,0 2px 8px #007d580a!important}.floating-science-card:hover{border-color:var(--accent-primary)!important;transform:scale(1.05)!important;box-shadow:0 12px 30px #0b221626,0 4px 12px #007d5814!important}.pulse-dot{border-radius:50%;width:8px;height:8px;position:relative}.pulse-dot:after{content:"";opacity:0;border:2px solid;border-radius:50%;animation:2s ease-out infinite dotPulse;position:absolute;inset:-4px}.dot-green{background-color:var(--success);color:var(--success)}.dot-gold{background-color:var(--highlight-bright);color:var(--highlight-bright)}.dot-blue{color:#3b82f6;background-color:#3b82f6}@keyframes dotPulse{0%{opacity:.8;transform:scale(.5)}to{opacity:0;transform:scale(2.2)}}.card-info{flex-direction:column;align-items:flex-start;line-height:1.2;display:flex}.card-lbl{font-size:var(--fs-10)!important;color:var(--text-secondary)!important;letter-spacing:.05em!important;text-transform:uppercase!important;font-weight:700!important}.card-val{font-size:var(--fs-13)!important;color:var(--text-primary)!important;font-weight:800!important}.card-val.val-green{color:var(--success)!important}.card-val.val-gold{color:#b8860b!important}.card-val.val-blue{color:#2563eb!important}.card-sirt1{animation:6s ease-in-out infinite alternate floatSirt1;top:15%;left:-5%}.card-mitochondria{animation:7s ease-in-out infinite alternate floatMito;bottom:25%;right:-8%}.card-autophagy{animation:5.5s ease-in-out infinite alternate floatAuto;bottom:8%;left:2%}@keyframes floatSirt1{0%{transform:translate(0)}to{transform:translate(8px,-15px)}}@keyframes floatMito{0%{transform:translate(0)}to{transform:translate(-12px,-8px)}}@keyframes floatAuto{0%{transform:translate(0)}to{transform:translate(6px,12px)}}.hero-cta-wrapper{flex-direction:column;align-items:center;gap:1.25rem;display:flex}.hero-app-install{-webkit-backdrop-filter:blur(8px);background:#ffffffb8;border:1px solid #007d581f;border-radius:18px;align-items:center;gap:1rem;max-width:400px;margin-top:1.5rem;padding:.85rem 1rem;display:flex;box-shadow:0 10px 28px #0a28190f}.hero-qr-link{flex-shrink:0;line-height:0;display:block}.hero-qr-img{background:var(--bg-secondary);border-radius:10px;width:104px;height:104px;padding:6px;display:block;box-shadow:0 2px 8px #0000000d}.hero-app-install-text{text-align:left;flex-direction:column;gap:3px;min-width:0;display:flex}.hero-app-install-title{font-size:var(--fs-16);color:var(--text-primary);align-items:center;font-weight:800;display:inline-flex}.hero-app-install-sub{font-size:var(--fs-13);color:var(--text-secondary);line-height:1.45}.hero-app-install-cta{font-size:var(--fs-13);color:var(--accent-primary);align-items:center;gap:4px;margin-top:6px;font-weight:700;transition:gap .2s;display:inline-flex}.hero-app-install-cta:hover{gap:8px}@media (width<=768px){.hero-app-install{justify-content:center;width:100%;max-width:340px;margin-left:auto;margin-right:auto}.hero-qr-link{display:none}.hero-app-install-text{text-align:center;align-items:center;width:100%}.hero-app-install-cta{background:linear-gradient(135deg, var(--accent-primary), var(--accent-deeper));color:var(--text-on-accent);border-radius:999px;justify-content:center;margin-top:8px;padding:.7rem 1.3rem}}.btn-hero-cta{font-size:var(--fs-18);cursor:pointer;letter-spacing:-.01em;border:none;border-radius:16px;align-items:center;gap:12px;padding:1.15rem 2.8rem;font-weight:800;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex;background:linear-gradient(135deg, var(--accent-primary) 0%, var(--accent-deeper) 100%)!important;color:var(--text-on-accent)!important;box-shadow:0 8px 24px #007d5826,0 4px 12px #00000026!important}.btn-hero-cta:hover{transform:translateY(-2px)scale(1.02);background:linear-gradient(135deg, #00a878 0%, var(--accent-primary) 100%)!important;color:var(--text-on-accent)!important;box-shadow:0 10px 30px #007d584d,0 6px 20px #0003!important}.sub-cta-text{font-size:var(--fs-14);color:var(--text-secondary)}.sub-cta-text .login-link{color:var(--accent-deeper);cursor:pointer;margin-left:4px;font-weight:700;text-decoration:underline;transition:color .2s}.sub-cta-text .login-link:hover{color:var(--accent-primary)}.app-badge-group{color:var(--text-secondary);font-size:var(--fs-13);opacity:.8;justify-content:center;align-items:center;gap:12px;margin-top:1.5rem;display:flex}.app-store-badge{align-items:center;gap:6px;display:inline-flex}.app-badge-group .divider{opacity:.3}.landing-section{max-width:1200px;margin:0 auto;padding:8rem 2rem}.section-header{text-align:left;max-width:800px;margin-bottom:3.5rem}.section-badge{color:var(--accent-primary);font-size:var(--fs-11);letter-spacing:.05em;background:#007d580d;border:1px solid #007d581f;border-radius:99px;align-items:center;gap:6px;margin-bottom:.75rem;padding:.4rem 1rem;font-weight:700;display:inline-flex}.section-title{font-size:var(--fs-36);color:var(--text-primary);letter-spacing:-.01em;margin-bottom:.75rem;font-weight:800}.section-subtitle{font-size:var(--fs-18);color:var(--text-secondary);max-width:650px;margin:0;line-height:1.6}.science-grid{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.science-card.glass-panel{background:var(--card-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-accent);border-radius:24px;padding:2.5rem 2rem;transition:all .3s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;box-shadow:0 10px 30px #0003}.science-card.glass-panel:before{content:"";background:linear-gradient(90deg, transparent, var(--accent-primary), transparent);opacity:0;height:4px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.science-card.glass-panel:hover{border-color:var(--border-accent-hover);transform:translateY(-5px);box-shadow:0 15px 40px #007d580f}.science-card.glass-panel:hover:before{opacity:1}.card-top-meta{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.journal-badge{font-size:var(--fs-12);color:var(--accent-primary);background:#007d580f;border:1px solid #007d581f;border-radius:6px;padding:.25rem .65rem;font-weight:700}.pmid-badge{font-size:var(--fs-11);color:var(--text-secondary);opacity:.8;font-weight:600}.card-title{font-size:var(--fs-18);color:var(--text-primary);font-weight:700;line-height:1.45;font-family:var(--font-body);letter-spacing:-.02em;margin-bottom:.85rem}.card-author-info{flex-direction:column;gap:2px;margin-bottom:1.25rem;display:flex}.card-author-info .author-label{font-size:var(--fs-10);text-transform:uppercase;color:var(--text-secondary);letter-spacing:.05em;font-weight:700}.card-author-info .author-name{font-size:var(--fs-13);color:var(--accent-primary);font-weight:700}.card-research-summary{font-size:var(--fs-16);color:var(--text-secondary);text-align:justify;margin-top:1rem;line-height:1.7}.pubmed-modal-overlay{-webkit-backdrop-filter:blur(12px);z-index:2500;background-color:#0b1e16a6;justify-content:center;align-items:center;padding:2rem;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0}.pubmed-modal-content{background:#fffffff7;border:1px solid #007d582e;border-radius:28px;flex-direction:column;width:100%;max-width:820px;max-height:85vh;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 60px #0b221640,0 0 50px #007d5814}.pubmed-modal-close{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;z-index:10;background:#0000000a;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:1.5rem;right:1.5rem}.pubmed-modal-close:hover{color:var(--text-primary);background:#00000014;transform:rotate(90deg)}.pubmed-modal-header{background:linear-gradient(#007d5808 0%,#0000 100%);border-bottom:1px solid #0000000f;padding:2.25rem 2.25rem 1.5rem}.pmc-emblem{align-items:center;gap:8px;margin-bottom:.75rem;display:flex}.pmc-emblem-badge{background:var(--accent-primary);color:var(--text-on-accent);font-size:var(--fs-10);text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:.2rem .5rem;font-weight:800}.pmc-emblem-title{font-size:var(--fs-14);color:var(--accent-deeper);font-weight:700}.pubmed-badge-group{flex-wrap:wrap;gap:8px;display:flex}.pub-meta-chip{font-size:var(--fs-12);color:var(--text-secondary);background:#0000000d;border-radius:6px;padding:.3rem .75rem;font-weight:700}.pub-meta-chip.pmid{color:var(--accent-primary);background:#007d5814;border:1px solid #007d5826}.pub-meta-chip.if{background:null;color:#b8860b;border:1px solid var(--highlight-border)}.pubmed-modal-body{flex:1;padding:2rem 2.25rem;overflow-y:auto}.modal-paper-title-en{font-size:var(--fs-22);color:var(--text-primary);font-weight:800;line-height:1.3;font-family:var(--font-body);letter-spacing:-.01em;margin-bottom:.5rem}.modal-paper-title-ko{font-size:var(--fs-18);color:var(--accent-deeper);margin-bottom:1.5rem;font-weight:700;line-height:1.4}.modal-author-strip{background:#00000005;border:1px solid #0000000d;border-radius:12px;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:2rem;padding:1rem 1.25rem;display:grid}.author-strip-item{flex-direction:column;gap:2px;display:flex}.author-strip-item .label{font-size:var(--fs-10);text-transform:uppercase;color:var(--text-secondary);letter-spacing:.05em;font-weight:700}.author-strip-item .value{font-size:var(--fs-13);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.pubmed-tab-section{margin-bottom:2rem}.pubmed-tab-title{font-size:var(--fs-14);color:var(--text-secondary);letter-spacing:.03em;align-items:center;gap:8px;margin-bottom:.75rem;font-weight:800;display:flex}.pubmed-tab-title.text-emerald{color:var(--accent-primary)}.abstract-text-en{font-size:var(--fs-14);color:var(--text-secondary);text-align:justify;line-height:1.65;font-family:var(--font-body);letter-spacing:-.01em}.pubmed-tab-section.translation-section{background:#007d5805;border:1px solid #007d5814;border-radius:18px;padding:1.5rem}.abstract-text-ko{font-size:var(--fs-16);color:var(--text-primary);margin-bottom:1.5rem;line-height:1.7}.discoveries-list{border-top:1px dashed #007d5826;padding-top:1.25rem}.discoveries-header{font-size:var(--fs-14);color:var(--accent-primary);margin-bottom:.75rem;font-weight:800}.discovery-item{gap:10px;margin-bottom:.65rem;display:flex}.discovery-bullet{color:var(--accent-primary);font-size:var(--fs-12);background:#007d5814;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-weight:800;display:flex}.discovery-content{font-size:var(--fs-14);color:#333;font-weight:600;line-height:1.5}.pubmed-disclaimer{font-size:var(--fs-12);color:var(--text-light);background:#f3f4f6;border-radius:10px;margin-top:2rem;padding:.85rem 1.25rem;line-height:1.5}.pubmed-modal-footer{background:#f9fafb;border-top:1px solid #0000000f;justify-content:space-between;align-items:center;padding:1.5rem 2.25rem;display:flex}.citations-count{font-size:var(--fs-14);color:var(--accent-deeper);align-items:center;gap:6px;font-weight:700;display:flex}.btn-pubmed-link{background:var(--accent-primary);font-size:var(--fs-14);border-radius:12px;align-items:center;gap:8px;padding:.8rem 1.5rem;font-weight:800;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #007d581f;color:var(--text-on-accent)!important}.btn-pubmed-link:hover{background:#085441;transform:translateY(-1.5px);box-shadow:0 6px 16px #007d5833}.features-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.feature-item.glass-panel{background:var(--card-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-accent);text-align:center;border-radius:20px;padding:2rem 1.5rem;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 8px 25px #0000004d,0 4px 12px #00000026}.feature-item.glass-panel:hover{border-color:var(--border-accent-hover);box-shadow:0 12px 35px null;transform:translateY(-4px)}.feature-icon{opacity:.9;filter:drop-shadow(0 0 8px #007d5838);margin:0 auto 1.25rem}.feature-title{font-size:var(--fs-18);color:var(--text-primary);margin-bottom:.75rem;font-weight:700}.feature-desc{font-size:var(--fs-14);color:var(--text-secondary);line-height:1.5}.landing-bottom-cta{text-align:center;border-top:1px solid null;border-bottom:1px solid null;padding:8rem 2rem;position:relative;overflow:hidden}.cta-glow{background:radial-gradient(circle, null 0%, #1450320d 50%, transparent 70%);filter:blur(35px);pointer-events:none;width:450px;height:450px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cta-content{z-index:10;max-width:700px;margin:0 auto;position:relative}.cta-title{font-size:var(--fs-40);color:var(--text-primary);margin-bottom:1.25rem;font-weight:800}.cta-subtitle{font-size:var(--fs-18);color:var(--text-secondary);margin-bottom:2.5rem;line-height:1.6}.landing-footer{border-top:1px solid #007d580f;max-width:1200px;margin:0 auto;padding:3.5rem 2rem 2rem}.footer-content{text-align:center;flex-direction:column;align-items:center;gap:1.25rem;display:flex}.footer-logo{font-family:var(--font-brand);font-size:var(--fs-22);letter-spacing:.06em;color:var(--text-primary);align-items:center;gap:.5rem;font-weight:500;display:flex}.footer-logo-icon{object-fit:contain;width:24px;height:24px}.footer-tagline{max-width:450px;font-size:var(--fs-16);color:var(--text-secondary);margin:0;line-height:1.6}.footer-divider{background:#007d580f;width:100%;height:1px;margin-top:.75rem}.footer-business{font-size:var(--fs-12);color:var(--text-light,#9ca3af);flex-direction:column;gap:2px;line-height:1.6;display:flex}.footer-business p{margin:0}.footer-business a{color:inherit;text-decoration:none;transition:color .2s}.footer-business a:hover{color:var(--accent-primary)}.footer-copyright{font-size:var(--fs-13);color:#8e8e8e;margin:0}.footer-links{font-size:var(--fs-13);align-items:center;gap:8px;font-weight:500;display:flex}.footer-links span,.footer-links a{cursor:pointer;color:var(--text-secondary);text-decoration:none;transition:color .2s}.footer-links span:hover,.footer-links a:hover{color:var(--accent-primary)}.footer-links .divider{opacity:.4;cursor:default}@media (width<=1024px){.science-grid{grid-template-columns:1fr;gap:1.5rem}.features-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}}@media (width<=768px){.landing-hero{min-height:auto;padding-top:6rem;padding-bottom:3rem}.hero-grid-wrapper{text-align:center;grid-template-columns:1fr;gap:3rem}.hero-content{text-align:center;align-items:center}.hero-title{font-size:var(--fs-48)}.hero-subtitle{font-size:var(--fs-18)}.btn-hero-cta{font-size:var(--fs-18);justify-content:center;width:100%;padding:1rem 2rem}.hero-visual-img{max-width:320px}.section-title{font-size:var(--fs-28)}.features-grid{grid-template-columns:1fr}.cta-title{font-size:var(--fs-28)}}.btn-bottom-cta{animation:3s infinite alternate landingPulseGlow;background:linear-gradient(135deg, #00a878 0%, var(--accent-primary) 50%, var(--accent-deeper) 100%)!important;color:var(--text-on-accent)!important;padding:1.35rem 3.5rem!important;font-weight:800!important;box-shadow:0 0 40px #007d5840,0 4px 15px #00000026!important}.btn-bottom-cta:hover{color:var(--text-on-accent)!important;transform:translateY(-3px)scale(1.02)!important;box-shadow:0 0 50px #007d5880,0 8px 25px #0003!important}@keyframes landingPulseGlow{0%{box-shadow:0 0 30px #007d5826,0 4px 15px #00000026}to{box-shadow:0 0 50px #007d5866,0 6px 20px #00000026}}.lsh-card{text-align:left;background:var(--bg-secondary);border:1px solid var(--border-neutral);border-radius:var(--radius-lg);width:100%;max-width:560px;box-shadow:var(--shadow-md);margin:0 auto;padding:1.25rem 1.4rem 1.1rem;position:relative;overflow:hidden}.lsh-card:before{content:"";background:radial-gradient(circle, rgba(var(--p-accent-bright-rgb), .07) 0%, transparent 62%);pointer-events:none;width:300px;height:300px;position:absolute;top:-70px;left:-60px}.lsh-card>*{position:relative}.lsh-axis-num,.lsh-delta,.lsh-streak{font-variant-numeric:tabular-nums;font-family:ui-monospace, "SF Mono", "Cascadia Mono", "Roboto Mono", Consolas, var(--font-body)}.lsh-score,.lsh-empty-score{font-variant-numeric:tabular-nums;font-family:var(--font-body)}.lsh-head{justify-content:space-between;align-items:center;margin-bottom:.35rem;display:flex}.lsh-overline{font-size:var(--fs-12);letter-spacing:.08em;color:var(--text-secondary);align-items:center;gap:5px;font-weight:600;display:inline-flex}.lsh-info-btn{color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:50%;align-items:center;padding:2px;display:inline-flex}.lsh-info-btn:hover{color:var(--accent-primary)}.lsh-sheet{background:var(--bg-secondary);border-radius:var(--radius-lg) var(--radius-lg) 0 0;text-align:left;padding:1.15rem 1.3rem 1.3rem}.lsh-sheet-head{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.lsh-sheet-head h4{font-size:var(--fs-16);color:var(--text-primary);font-weight:700}.lsh-sheet-close{color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:50%;padding:4px;display:inline-flex}.lsh-sheet-lead{font-size:var(--fs-13);color:var(--text-secondary);margin-bottom:.9rem;line-height:1.6}.lsh-sheet-lead strong{color:var(--accent-deep)}.lsh-sheet-rows{flex-direction:column;display:flex}.lsh-sheet-row{border-top:1px solid var(--border-neutral);padding:.6rem 0}.lsh-sheet-row-head{color:var(--text-primary);align-items:center;gap:7px;margin-bottom:2px;display:flex}.lsh-sheet-row-head svg{color:var(--accent-primary);flex-shrink:0}.lsh-sheet-axis{font-size:var(--fs-14);font-weight:700}.lsh-sheet-weight{font-size:var(--fs-12);font-variant-numeric:tabular-nums;color:var(--accent-deep);background:var(--accent-tint);border-radius:var(--radius-full);margin-left:auto;padding:1px 8px;font-weight:700}.lsh-sheet-weight.excluded{color:var(--text-secondary);background:var(--surface-sunken)}.lsh-sheet-row.excluded .lsh-sheet-axis,.lsh-sheet-row.excluded .lsh-sheet-rule{color:var(--text-light)}.lsh-sheet-row.excluded .lsh-sheet-row-head svg{color:var(--text-disabled)}.lsh-sheet-renorm-note{background:var(--accent-soft);font-size:var(--fs-12);color:var(--text-secondary);border-radius:10px;margin-top:.7rem;padding:.6rem .8rem;line-height:1.55}.lsh-sheet-rule{font-size:var(--fs-13);color:var(--text-primary);line-height:1.5}.lsh-sheet-source{font-size:var(--fs-11);color:var(--text-light);margin-top:1px}.lsh-sheet-disclaimer{border-top:1px solid var(--border-neutral);font-size:var(--fs-11);color:var(--text-light);margin-top:.8rem;padding-top:.7rem;line-height:1.5}.lsh-streak{font-size:var(--fs-11);color:var(--accent-deep);background:var(--accent-tint);border-radius:var(--radius-full);align-items:center;gap:4px;padding:3px 9px;font-weight:600;display:inline-flex}.lsh-score-row{align-items:center;gap:18px;margin-top:.45rem;display:flex}.lsh-ring{flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.lsh-ring svg{position:absolute;inset:0}.lsh-ring-track{fill:none;stroke:var(--surface-sunken)}.lsh-ring-fill{fill:none;stroke-linecap:round;transition:stroke-dashoffset .9s cubic-bezier(.16,1,.3,1)}.lsh-ring:not(.ghost) .lsh-ring-fill{filter:drop-shadow(0 1px 5px rgba(var(--p-accent-bright-rgb), .35))}.lsh-score{font-size:var(--fs-40);letter-spacing:-.02em;color:var(--text-primary);font-weight:800;line-height:1}.lsh-ring.ghost .lsh-score{color:var(--text-disabled);font-weight:700}.lsh-score-side{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.lsh-delta{font-size:var(--fs-13);border-radius:var(--radius-full);padding:3px 10px;font-weight:700}.lsh-delta.up{color:var(--accent-deep);background:var(--accent-tint)}.lsh-delta.down{color:var(--warning-deep);background:#b07a2a1f}.lsh-delta em{color:var(--text-light);font-style:normal;font-weight:500;font-size:var(--fs-11)}.lsh-dots{align-items:center;gap:5px;display:inline-flex}.lsh-dot{background:var(--surface-sunken);border:1px solid var(--border-neutral);width:8px;height:8px;transition:var(--transition-smooth);border-radius:50%}.lsh-dot.on{background:var(--accent-bright);border-color:var(--accent-bright);box-shadow:0 0 0 3px rgba(var(--p-accent-bright-rgb), .15)}.lsh-dots-label{font-style:normal;font-size:var(--fs-11);font-variant-numeric:tabular-nums;color:var(--text-light);margin-left:4px;font-weight:600}.lsh-empty{flex-direction:column;gap:.9rem;display:flex}.lsh-empty-row{align-items:center;gap:16px;margin-top:.45rem;display:flex}.lsh-empty-caption{font-size:var(--fs-13);color:var(--text-light)}.lsh-start-btn{width:100%;font-size:var(--fs-14);color:var(--text-on-accent);background:var(--accent-primary);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-smooth);border:none;justify-content:center;align-items:center;gap:7px;padding:.7rem 1rem;font-weight:600;display:inline-flex}.lsh-start-btn:hover{background:var(--accent-deep)}.lsh-spark{margin:1rem 0 .2rem;position:relative}.lsh-spark svg{width:100%;height:56px;display:block}.lsh-spark-axis{stroke:var(--border-neutral);stroke-width:1px;vector-effect:non-scaling-stroke}.lsh-spark-grid{stroke:var(--border-neutral);stroke-width:1px;stroke-dasharray:3 4;vector-effect:non-scaling-stroke;opacity:.7}.lsh-spark-ceiling{font-variant-numeric:tabular-nums;color:var(--text-disabled);background:var(--bg-secondary);padding-right:5px;font-size:9px;font-weight:600;line-height:1.2;position:absolute;left:0}.lsh-bar{stroke:var(--chart-muted);stroke-width:6px;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.55;animation:.45s cubic-bezier(.16,1,.3,1) both lshBarIn;animation-delay:calc(var(--i,0) * 24ms);transform-box:fill-box}.lsh-bar.today{stroke:var(--accent-bright);stroke-width:7px;opacity:1;filter:drop-shadow(0 1px 4px rgba(var(--p-accent-bright-rgb), .45))}.lsh-bar-stub{stroke:var(--border-neutral);stroke-width:6px;stroke-linecap:round;vector-effect:non-scaling-stroke;animation:.45s cubic-bezier(.16,1,.3,1) both lshBarIn;animation-delay:calc(var(--i,0) * 24ms);transform-box:fill-box}@keyframes lshBarIn{0%{opacity:0;transform:translateY(7px)}to{transform:translateY(0)}}.lsh-spark-caption{font-size:var(--fs-10);color:var(--text-light);justify-content:space-between;margin-top:3px;display:flex}@media (prefers-reduced-motion:reduce){.lsh-bar,.lsh-bar-stub{animation:none}.lsh-ring-fill{transition:none}}.lsh-axes{border-top:1px solid var(--border-neutral);flex-direction:column;margin-top:.75rem;padding-top:.6rem;display:flex}.lsh-axis{cursor:pointer;background:0 0;border:none;border-radius:8px;grid-template-columns:18px 64px 1fr 56px 14px;align-items:center;gap:10px;padding:.42rem .2rem;transition:background .15s;display:grid}.lsh-axis:hover{background:var(--accent-soft)}.lsh-axis-icon{color:var(--text-secondary)}.lsh-axis-label{font-size:var(--fs-13);color:var(--text-secondary);text-align:left;white-space:nowrap}.lsh-axis-bar{background:var(--surface-sunken);border-radius:2px;height:4px;overflow:hidden}.lsh-axis-fill{background:var(--accent-bright);border-radius:2px;height:100%;transition:width .5s cubic-bezier(.16,1,.3,1);display:block}.lsh-axis-fill.weak{background:var(--warning)}.lsh-axis-fill.pending{background:var(--chart-muted);opacity:.4}.lsh-axis-num{font-size:var(--fs-13);color:var(--text-primary);text-align:right;justify-content:flex-end;align-items:baseline;gap:4px;font-weight:600;display:inline-flex}.lsh-axis-num em{font-style:normal;font-size:var(--fs-11);font-weight:600}.lsh-axis-num em.up{color:var(--accent-deep)}.lsh-axis-num em.down{color:var(--warning-deep)}.lsh-axis-log{font-size:var(--fs-12);color:var(--accent-primary);font-weight:600}.lsh-axis-chev{color:var(--text-disabled)}.lsh-hint{font-size:var(--fs-11);color:var(--text-light);margin-top:.6rem;line-height:1.5}@media (width<=640px){.lsh-card{padding:1.05rem 1.1rem .9rem}.lsh-score-row{gap:15px}.lsh-axis{grid-template-columns:16px 58px 1fr 52px 12px;gap:8px}}.nav-link-btn{cursor:pointer;font-family:var(--font-body);font-weight:500;font-size:var(--fs-14);color:var(--text-secondary);letter-spacing:.01em;background:0 0;border:none;align-items:center;gap:.45rem;padding:.25rem 0;transition:all .25s;display:inline-flex}.nav-link-btn:hover{color:var(--text-primary)}.nav-link-btn:hover .icon-frame{background:0 0;border-color:#0000}.nav-link-btn:hover .icon-frame svg{color:var(--text-primary)}.icon-frame{background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:all .25s;display:inline-flex}.icon-frame svg{color:var(--text-secondary);transition:color .25s}.icon-frame--lg{border-width:1.5px;width:30px;height:30px}.btn .icon-frame{background:#ffffff1a;border-color:#ffffff4d;width:24px;height:24px}.btn .icon-frame svg{color:inherit}.btn-outline .icon-frame{background:#007d580a;border-color:#007d5833}.btn-outline .icon-frame svg{color:var(--accent-primary)}.btn-outline--neutral .icon-frame{background:#00000005;border-color:#00000014}.btn-outline--neutral .icon-frame svg{color:var(--accent-primary)}.btn-outline:hover .icon-frame{background:#007d5814;border-color:#007d5866}.main-nav{padding:1rem 2rem;padding-top:calc(1rem + var(--safe-top));z-index:150;border-bottom:1px solid #007d581a;width:100%;position:fixed;top:0;-webkit-backdrop-filter:blur(24px)!important;background:#fffffff7!important;border-radius:0!important}.main-nav-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.main-nav-logo{cursor:pointer;align-items:center;gap:.5rem;display:flex}.logo-text{font-family:var(--font-brand);font-size:var(--fs-22);letter-spacing:.06em;font-weight:500}.main-nav-menu{align-items:center;gap:1.25rem;display:flex}.main-nav-center-menu{align-items:center;gap:1.5rem;margin:0 auto;display:flex}.main-nav-right-menu{align-items:center;gap:1.25rem;display:flex}@media (width<=768px){.main-nav{padding:.75rem 1rem;padding-top:calc(.75rem + var(--safe-top))}.main-nav-container{flex-direction:row;justify-content:space-between;align-items:center;width:100%}.main-nav-logo{margin-bottom:0}.main-nav-menu{white-space:nowrap;align-items:center;gap:1rem;width:auto;padding-bottom:0;display:flex;overflow:visible}.nav-link-btn{font-size:var(--fs-14);flex-shrink:0;padding:.4rem .2rem}.main-nav-menu .btn-primary{flex-shrink:0;font-size:var(--fs-13)!important;padding:.45rem 1rem!important}}.research-modal-backdrop{-webkit-backdrop-filter:blur(12px);z-index:1000;background:#0006;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.research-modal-content{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);flex-direction:column;width:100%;max-width:800px;max-height:85vh;animation:.4s cubic-bezier(.16,1,.3,1) forwards slideIn;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px #00000026,0 2px 10px #007d580d}.research-modal-close{border:1px solid var(--border-light);background:var(--bg-primary);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;z-index:10;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:1.25rem;right:1.25rem}.research-modal-close:hover{background:#00000005;transform:rotate(90deg)}.research-modal-header{border-bottom:1px solid var(--border-light);align-items:flex-start;padding:2rem 3.5rem 1.25rem 2rem;display:flex}.research-modal-icon{margin-top:.15rem;animation:3s ease-in-out infinite emptyFloat}.research-modal-main-title{font-family:var(--font-body);font-size:var(--fs-22);color:var(--text-secondary);letter-spacing:-.02em;margin-bottom:.5rem;font-weight:700}.research-modal-desc{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-light);font-weight:400;line-height:1.55}.research-modal-scroll-area{flex-direction:column;flex:1;padding:1.5rem 2rem 2rem;display:flex;overflow-y:auto}.research-modal-scroll-area::-webkit-scrollbar{width:6px}.research-modal-scroll-area::-webkit-scrollbar-track{background:0 0}.research-modal-scroll-area::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#00000014}.research-modal-scroll-area::-webkit-scrollbar-thumb:hover{background:#007d584d}.research-articles-grid{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:1.25rem;display:grid}.research-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);cursor:pointer;box-shadow:var(--shadow-sm);flex-direction:column;padding:1.5rem;transition:all .35s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden!important}.research-card:before{content:"";background:0 0;width:3px;transition:background-color .3s;position:absolute;top:0;bottom:0;left:0}.research-card:hover{border-color:#007d5840;transform:translateY(-4px);box-shadow:0 12px 24px #0000000f,0 2px 8px #007d5814}.research-card:hover:before{background:var(--accent-primary)}.research-card-header{align-items:center;gap:.7rem;margin-bottom:.55rem;display:flex}.research-card-heading{flex-direction:column;min-width:0;display:flex}.research-card-emoji{font-size:var(--fs-28);transform-origin:50%;flex-shrink:0;line-height:1.25;transition:transform .3s;display:inline-block}.research-card:hover .research-card-emoji{transform:scale(1.08)rotate(4deg)}.research-card-body{flex-direction:column;flex:1;display:flex}.research-card-journal{font-family:var(--font-body);font-size:var(--fs-11);color:var(--accent-primary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.2rem;font-weight:600}.research-card-title{font-family:var(--font-body);font-size:var(--fs-16);color:var(--text-secondary);letter-spacing:-.01em;margin-bottom:0;font-weight:700;line-height:1.4}.research-card-summary{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-light);flex:1;margin-bottom:.8rem;font-weight:400;line-height:1.5}.research-card-footer{justify-content:flex-start;align-items:center;margin-top:auto;display:flex}.research-read-btn{font-family:var(--font-body);font-size:var(--fs-12);align-items:center;font-weight:600;transition:color .2s;display:inline-flex}.research-card:hover .research-read-btn{color:var(--accent-primary)}.research-detail-backdrop{-webkit-backdrop-filter:blur(12px);z-index:1100;background:#0006;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.research-detail-content{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);flex-direction:column;width:100%;max-width:600px;max-height:85vh;animation:.4s cubic-bezier(.16,1,.3,1) forwards slideIn;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px #00000026,0 2px 10px #007d580d}.research-detail-close{border:1px solid var(--border-light);background:var(--bg-primary);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;z-index:10;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.research-detail-close:hover{background:#00000005;transform:rotate(90deg)}.research-detail-header{border-bottom:1px solid var(--border-light);align-items:center;gap:1rem;padding:1.75rem 3.5rem 1.25rem 1.75rem;display:flex}.research-detail-emoji{font-size:var(--fs-40);flex-shrink:0;animation:3s ease-in-out infinite emptyFloat}.research-detail-journal{font-family:var(--font-body);font-size:var(--fs-12);color:var(--accent-primary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.research-detail-title{font-family:var(--font-body);font-size:var(--fs-18);color:var(--text-secondary);letter-spacing:-.015em;margin-top:.15rem;font-weight:700;line-height:1.35}.research-detail-subtitle{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);margin-top:.25rem;font-style:italic;line-height:1.4}.research-detail-scroll-area{scroll-behavior:smooth;flex-direction:column;flex:1;gap:1.5rem;padding:1.5rem 1.75rem 2rem;display:flex;overflow-y:auto}.research-detail-scroll-area::-webkit-scrollbar{width:6px}.research-detail-scroll-area::-webkit-scrollbar-track{background:0 0}.research-detail-scroll-area::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#00000014}.research-detail-scroll-area::-webkit-scrollbar-thumb:hover{background:#007d584d}.research-detail-body{font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-secondary);font-weight:400;line-height:1.65}.research-paragraph{white-space:pre-line;margin-bottom:1rem}.research-takeaways-box,.research-tips-box,.research-supplements-box{background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light);padding:1.25rem}.research-takeaways-box ul{flex-direction:column;gap:.5rem;margin:0;padding-left:1.1rem;display:flex}.research-takeaways-box li{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);font-weight:500;line-height:1.5}.research-tips-box p{font-family:var(--font-body);font-size:var(--fs-13);color:var(--text-secondary);margin:0;font-weight:500;line-height:1.55}.research-supplements-box .supp-sub{font-family:var(--font-body);font-size:var(--fs-12);color:var(--text-light);margin-top:-.25rem;margin-bottom:.75rem}.research-supp-chips{flex-wrap:wrap;gap:.5rem;display:flex}.research-supp-chip{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-full);cursor:pointer;outline:none;align-items:center;gap:.35rem;padding:.35rem .75rem;transition:all .25s;display:flex}.research-supp-chip:hover{background:#007d580d;border-color:#007d584d;transform:translateY(-1px);box-shadow:0 4px 8px #00000008}.research-supp-chip:active{transform:translateY(0)}.research-toast-overlay{pointer-events:none;z-index:2200;justify-content:center;padding:0 1rem;transition:all .3s;display:flex;position:fixed;bottom:5.5rem;left:0;right:0}.research-toast-content{-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-full);text-align:center;box-sizing:border-box;background:#fffffff5;border:1.5px solid #007d5824;width:auto;max-width:380px;padding:.8rem 1.5rem;animation:.35s cubic-bezier(.175,.885,.32,1.275) forwards savedPop;box-shadow:0 12px 30px #007d5814,0 4px 12px #00000005}.research-toast-content span{font-family:var(--font-body);font-size:var(--fs-13);color:var(--accent-primary);letter-spacing:-.01em;font-weight:700;line-height:1.45}@media (width<=768px){.research-toast-overlay{padding:0 1rem!important;inset:5.25rem 0 auto!important}.research-modal-backdrop,.research-detail-backdrop{padding:.5rem}.research-modal-content,.research-detail-content{max-height:calc(100dvh - 3.5rem - var(--safe-top) - var(--safe-bottom));border-radius:var(--radius-lg)}.research-modal-header{padding:1.5rem 1.25rem 1rem}.research-modal-main-title{font-size:var(--fs-18)}.research-modal-scroll-area{padding:1rem 1rem 1.5rem}.research-articles-grid{grid-template-columns:1fr;gap:1rem}.research-detail-header{gap:.75rem;padding:1.5rem 1.25rem 1rem}.research-detail-emoji{font-size:var(--fs-36)}.research-detail-title{font-size:var(--fs-16)}.research-detail-scroll-area{gap:1.25rem;padding:1.25rem 1.25rem 1.5rem}}@media (width<=580px){.research-search-bar-container{background:0 0;flex-direction:column;gap:.5rem;padding:0}.research-search-input{background:#0b1a12b3;width:100%;padding:.7rem .85rem}.research-search-btn{justify-content:center;width:100%;padding:.7rem 1.25rem}}.research-search-bar-container{background:#007d580a;border:1px solid #007d5814;border-radius:14px;gap:.5rem;margin-bottom:1.5rem;padding:.35rem;display:flex}.research-search-input{background:var(--bg-secondary);font-family:var(--font-body);font-size:var(--fs-14);color:var(--text-primary);border:1px solid #007d5826;border-radius:10px;outline:none;flex:1;padding:.75rem 1rem;transition:all .2s}.research-search-input::placeholder{color:#a0a0a5}.research-search-input:focus{background:var(--bg-secondary);border-color:#007d5866;box-shadow:0 0 8px #007d5814}.research-search-btn{background:var(--accent-primary);color:var(--text-on-accent);font-family:var(--font-body);font-weight:600;font-size:var(--fs-14);cursor:pointer;border:none;border-radius:10px;flex-shrink:0;align-items:center;gap:.5rem;padding:.75rem 1.25rem;transition:all .2s;display:flex}.research-search-btn:hover{background:var(--accent-deep);transform:translateY(-1px)}.research-search-btn:active{transform:translateY(0)}.research-search-btn:disabled{opacity:.6;cursor:not-allowed}.research-section-title{font-family:var(--font-body);font-size:var(--fs-22);color:var(--text-secondary);letter-spacing:-.01em;align-items:center;gap:.5rem;margin-bottom:1rem;font-weight:700;display:flex}.pubmed-badge{font-family:var(--font-body);font-size:var(--fs-10);border-radius:var(--radius-full);color:var(--accent-primary);letter-spacing:.03em;text-transform:uppercase;background:#007d5814;border:1px solid #007d5826;padding:.15rem .45rem;font-weight:800;position:absolute;top:.75rem;right:.75rem}.research-card.is-pubmed{border-style:dashed}.research-card.is-pubmed:hover{border-style:solid}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin;display:inline-block}.bottom-nav{width:100%;max-width:100%;height:calc(72px + var(--safe-bottom));-webkit-backdrop-filter:blur(24px);z-index:200;padding:0 1rem;padding-bottom:var(--safe-bottom);background:#fffffff7;border:none;border-top:1px solid #007d581a;border-radius:0;justify-content:space-around;align-items:center;transition:all .3s cubic-bezier(.25,.8,.25,1);display:none;position:fixed;bottom:0;left:0;box-shadow:0 -4px 30px #0000000a}.bottom-nav-item{color:var(--text-secondary);cursor:pointer;font-family:var(--font-body);font-weight:700;font-size:var(--fs-10);background:0 0;border:none;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:60px;padding:.4rem .6rem;transition:all .25s cubic-bezier(.25,.8,.25,1);display:flex}.bottom-nav-item:active{transform:scale(.9)}.bottom-nav-item.active{color:var(--accent-primary);filter:drop-shadow(0 0 4px #007d580f)}.bottom-nav-icon-container{justify-content:center;align-items:center;width:24px;height:24px;transition:transform .25s;display:flex}.bottom-nav-item.active .bottom-nav-icon-container{transform:translateY(-2px)}@media (width<=768px){.bottom-nav{display:flex}.main-nav-menu .nav-link-btn{display:none!important}.app-main-content{padding-bottom:calc(64px + var(--safe-bottom))!important}}.bottom-nav-scan-btn{background:#007d5814!important;border:1px solid #007d5838!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;min-width:48px!important;height:48px!important;padding:0!important;transition:all .25s cubic-bezier(.25,.8,.25,1)!important;display:flex!important;box-shadow:0 4px 12px #007d581f!important}.bottom-nav-scan-btn:active{background:#007d5829!important;transform:scale(.88)!important}.profile-management-hub{box-shadow:0 12px 30px #0000000a,0 2px 8px #00694a05!important}.profile-manage-card{transition:all .25s cubic-bezier(.16,1,.3,1)!important}.profile-manage-card:hover{transform:translateY(-1.5px);background:#00694a05!important;border-color:#00694a40!important}.profile-manage-card.active{box-shadow:0 8px 20px #00694a14,0 2px 4px #00694a0a!important}.profile-manage-card.active:hover{transform:none;border-color:var(--accent-deep)!important;background:#00694a0d!important}.cellular-dna-card{background:var(--bg-secondary);text-align:left;border:1px solid #007d581a;border-radius:16px;grid-template-columns:1.2fr .8fr;align-items:center;gap:1.25rem;width:100%;max-width:800px;margin:1rem auto 0;padding:1.15rem 1.25rem;display:grid;box-shadow:0 8px 30px #0b221608}.dna-card-left{flex-direction:column;align-items:flex-start;display:flex}.dna-status-badge{font-size:var(--fs-11);color:var(--accent-primary);letter-spacing:.02em;background:#007d580d;border:1px solid #007d5826;border-radius:99px;align-items:center;gap:6px;padding:.25rem .65rem;font-weight:800;display:inline-flex}.status-dot{background-color:var(--success);width:5px;height:5px;box-shadow:0 0 6px var(--success);border-radius:50%;animation:1.5s infinite alternate pulseGreen}@keyframes pulseGreen{0%{opacity:.6}to{opacity:1;transform:scale(1.1)}}.dna-card-title{font-size:var(--fs-18);color:var(--text-primary);font-weight:800;font-family:var(--font-heading);margin:.5rem 0 .25rem}.dna-card-desc{font-size:var(--fs-13);color:var(--text-secondary);margin:0;line-height:1.5}.dna-card-right{justify-content:center;align-items:center;display:flex}.dna-svg{filter:drop-shadow(0 4px 8px #007d580a);width:100%;height:80px}.dna-helix-group{transform-origin:50%;animation:5s ease-in-out infinite alternate dnaFloat}@keyframes dnaFloat{0%{transform:translateY(-2px)rotate(0)}to{transform:translateY(2px)rotate(.5deg)}}.dna-helix-group circle{animation:2s ease-in-out infinite alternate nodePulse}@keyframes nodePulse{0%{r:3.5px}to{r:4.8px}}.precision-console-card{width:100%;max-width:800px;box-shadow:none;background:0 0;border:none;flex-direction:column;gap:.9rem;margin:1.25rem auto 0;padding:0;display:flex}.console-row{flex-wrap:wrap;justify-content:center;gap:.6rem;width:100%;display:flex}.console-horizontal-divider{background:linear-gradient(90deg,#0000 0%,#007d581f 50%,#0000 100%);width:60%;height:1px;margin:.15rem auto}.console-row .btn{font-size:var(--fs-14)!important;letter-spacing:-.01em!important;white-space:nowrap!important;background:var(--bg-secondary)!important;height:46px!important;color:var(--text-primary)!important;border:1px solid #007d581a!important;border-radius:12px!important;justify-content:center!important;align-items:center!important;gap:.45rem!important;padding:.6rem 1.05rem!important;font-weight:500!important;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1),border-color .25s cubic-bezier(.16,1,.3,1),background .25s cubic-bezier(.16,1,.3,1)!important;display:inline-flex!important;box-shadow:0 1px 2px #1018280a,0 1px 3px #1018280f!important}.console-row .btn svg{opacity:.9;flex-shrink:0;width:15px!important;height:15px!important;color:var(--accent-primary)!important;transition:transform .25s cubic-bezier(.16,1,.3,1)!important}.console-row .btn:hover{background:var(--bg-secondary)!important;border-color:#007d5847!important;transform:translateY(-2px)!important;box-shadow:0 6px 16px #007d581a,0 2px 4px #1018280f!important}.console-row .btn:hover svg{transform:scale(1.08)!important}.console-row .btn-primary{background:linear-gradient(135deg, #00986f 0%, var(--accent-primary) 55%, var(--accent-deeper) 100%)!important;color:var(--text-on-accent)!important;border:none!important;font-weight:600!important;box-shadow:0 4px 12px #007d5833,inset 0 1px #ffffff1f!important}.console-row .btn-primary svg{opacity:1;color:var(--text-on-accent)!important}.console-row .btn-primary:hover{background:linear-gradient(135deg, #00a878 0%, #00986f 55%, var(--accent-primary) 100%)!important;box-shadow:0 8px 22px #007d5847,inset 0 1px #ffffff29!important}.console-row .btn.detail-btn{color:var(--accent-primary)!important;background:#007d580a!important;border-color:#007d5838!important}.console-row .btn.detail-btn:hover{background:#007d5812!important;border-color:#007d5866!important}.status-board{text-align:left;flex-direction:column;gap:1rem;width:100%;max-width:840px;margin:1.5rem auto 0;display:flex}.status-board-head{justify-content:space-between;align-items:flex-end;gap:1rem;padding:0 .15rem;display:flex}.status-board-eyebrow{font-size:var(--fs-11);letter-spacing:.1em;text-transform:uppercase;color:#00a074;opacity:.85;font-weight:700;display:block}.status-board-title{font-size:var(--fs-18);letter-spacing:-.01em;color:var(--text-primary);margin:.2rem 0 0;font-weight:700}.status-board-progress{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.status-board-progress-track{background:#007d581a;border-radius:999px;width:110px;height:6px;overflow:hidden}.status-board-progress-fill{background:linear-gradient(90deg, var(--accent-primary), #22a96e);border-radius:999px;height:100%;transition:width .5s cubic-bezier(.16,1,.3,1)}.status-board-progress-label{font-size:var(--fs-12);color:var(--text-secondary);white-space:nowrap;font-weight:600}.status-card-grid{grid-template-columns:repeat(5,1fr);gap:.65rem;display:grid}.status-card-grid[data-count="4"]{grid-template-columns:repeat(4,1fr)}.status-card-grid[data-count="6"]{grid-template-columns:repeat(3,1fr)}.status-card-grid[data-count="7"]{grid-template-columns:repeat(4,1fr)}.status-card{background:var(--bg-secondary);cursor:pointer;text-align:left;border:1px solid #007d5817;border-radius:16px;align-items:center;gap:.6rem;padding:.85rem .8rem;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1),border-color .25s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 1px 2px #1018280a,0 2px 6px #1018280d}.status-card:hover{border-color:#007d5847;transform:translateY(-2px);box-shadow:0 8px 20px #007d581a,0 2px 4px #1018280f}.status-card-icon{color:#6b7280;background:#007d5812;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;transition:background .25s,color .25s;display:flex}.status-card-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.status-card-title{font-size:var(--fs-13);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:600;line-height:1.2;overflow:hidden}.status-card-value{font-size:var(--fs-12);color:var(--text-light,#9ca3af);white-space:nowrap;text-overflow:ellipsis;font-weight:500;line-height:1.25;overflow:hidden}.status-card-chevron{color:#c4c9cf;flex-shrink:0}.status-card-check{background:var(--accent-primary);width:20px;height:20px;color:var(--text-on-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.status-card.is-done{background:linear-gradient(135deg,#007d580e,#007d5805);border-color:#007d5833}.status-card.is-done .status-card-icon{color:var(--accent-primary);background:#007d5821}.status-card.is-done .status-card-value{color:#1f7a52;font-weight:600}.status-board-actions{border-top:1px solid #007d5814;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.35rem;padding-top:1rem;display:flex}.status-action-chip{font-size:var(--fs-13);letter-spacing:-.01em;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #007d5824;border-radius:999px;align-items:center;gap:.4rem;padding:.5rem .95rem;font-weight:500;transition:all .22s cubic-bezier(.16,1,.3,1);display:inline-flex}.status-action-chip svg{color:#00a074;opacity:.85}.status-action-chip:hover{color:var(--accent-primary);background:#007d580a;border-color:#007d5852;transform:translateY(-1px)}@media (width<=900px) and (width>=769px){.status-card-grid,.status-card-grid[data-count]{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.precision-console-card{gap:.5rem;margin:.85rem auto 0;padding:0}.console-row{grid-template-columns:repeat(2,1fr);gap:.35rem;display:grid}.console-row .btn{font-size:var(--fs-12)!important;height:35px!important;padding:.45rem .5rem!important}.diagnostics-row{grid-template-columns:repeat(2,1fr)!important}.console-row .btn:last-child:nth-child(odd){grid-column:1/-1!important}.cellular-dna-card{text-align:center;grid-template-columns:1fr;gap:.75rem;padding:1rem}.dna-card-left{align-items:center}.dna-svg{height:70px}}.tracker-header{background:#ffffffd9!important;border-bottom:1px solid #007d5814!important;box-shadow:0 4px 20px #0b221608!important}.tracker-header h2,.tracker-header .header-back,.tracker-header .header-action,.tracker-header button{color:var(--text-primary)!important}.tracker-header svg{color:var(--accent-primary)!important}.quick-log-switcher,.user-switcher-panel{background:var(--bg-secondary)!important;border:1px solid #007d5814!important;box-shadow:0 4px 15px #0b221608!important}.switcher-btn{color:var(--text-secondary)!important;background:#f4f6f5!important;border:1px solid #007d580f!important}.switcher-btn.active{background:var(--accent-primary)!important;color:var(--text-on-accent)!important;border-color:var(--accent-primary)!important}.quiz-container,.question-card,.result-card,.result-header,.assessment-card{background:var(--bg-secondary)!important;color:var(--text-primary)!important;border:1px solid #007d5814!important;box-shadow:0 8px 30px #0b22160a!important}.supplement-card,.supplement-search-container,.category-chip,.detail-modal-content{background:var(--bg-secondary)!important;color:var(--text-primary)!important;border:1px solid #007d5814!important}.category-chip.active{background:var(--accent-primary)!important;color:var(--text-on-accent)!important}.text-body,.section-subtitle,.card-description,.feature-desc{color:var(--text-secondary)!important}.research-takeaways-box .section-title,.research-tips-box .section-title,.research-supplements-box .section-title{font-family:var(--font-body)!important;font-size:var(--fs-18)!important;color:var(--text-primary)!important;letter-spacing:-.01em!important;margin-bottom:.75rem!important;padding-left:.45rem!important;font-weight:700!important}.research-takeaways-box .section-title:before,.research-tips-box .section-title:before,.research-supplements-box .section-title:before{border-radius:var(--radius-full)!important;background:var(--accent-primary)!important;width:3px!important;top:.15rem!important;bottom:.15rem!important;left:-.45rem!important}.celure-eb{z-index:100000;background:#f6f8f6;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.celure-eb__card{background:var(--bg-secondary);text-align:center;border-radius:20px;width:100%;max-width:360px;padding:32px 24px;box-shadow:0 12px 40px #00000014}.celure-eb__emoji{font-size:var(--fs-40);line-height:1}.celure-eb__title{font-size:var(--fs-18);color:#1f2a24;margin:16px 0 8px;font-weight:700}.celure-eb__desc{font-size:var(--fs-14);color:#5b6b62;margin:0 0 22px;line-height:1.6}.celure-eb__actions{justify-content:center;gap:10px;display:flex}.celure-eb__btn{background:var(--bg-secondary);color:#2f4a3c;font-size:var(--fs-14);cursor:pointer;border:1px solid #e2e8e4;border-radius:12px;flex:1;padding:12px 16px;font-weight:600}.celure-eb__btn--primary{background:var(--success);border-color:var(--success);color:var(--text-on-accent)}.celure-eb__btn:active{transform:translateY(1px)}
