:root {
--sf-symbols-data:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCEtLQogIEQ6XFN1bl9JdFxzdGF0aWNcYXBwbGVfZGVzaWduXHNmLXN5bWJvbHMuc3ZnCiAgU0YgU3ltYm9scyA3IOKAlCBBcHBsZSBISUcgLyBtYWNPUyBTZXF1b2lhCiAg66qo65OgIGdseXBo64qUIGN1cnJlbnRDb2xvcuuhnCDroIzrjZTrp4EuIOyDieydgCDrtoDrqqjsnZggY29sb3Ig7IaN7ISx7J2EIOuUsOumhC4KICDsgqzsmqnrspU6CiAgICA8c3ZnIGNsYXNzPSJzZiI+PHVzZSBocmVmPSIvc3RhdGljL2FwcGxlX2Rlc2lnbi9zZi1zeW1ib2xzLnN2ZyNob21lIi8+PC9zdmc+CgogIOyekeyEsSDrj4Tqtaw6IHRvb2xzL2VtaXRfc2Zfc3ltYm9scy5weQogIOuPhOuplOyduDogUm95YWwgQ2x1YiBIb3VzZSAo7ZqM7JuQL+y5tOuTnC/qsrDsoJwv7KCV7IKwL+y2nOyehS/qtIDrpqwpCiAg7Yyo7YS0OiAyNHgyNCB2aWV3Qm94LCBzdHJva2UgMS43NSAob3V0bGluZSkgLyBmaWxsIGN1cnJlbnRDb2xvciAoZmlsbGVkKQogIO2RnOykgDogU0YgU3ltYm9scyBSZWd1bGFyIHdlaWdodCAoQXBwbGUgSElHKQotLT4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJkaXNwbGF5Om5vbmUiIGFyaWEtaGlkZGVuPSJ0cnVlIj4KICA8ZGVmcz4KCiAgICA8IS0tIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkAogICAgICAgICBOQVZJR0FUSU9OICg4KQogICAgICAgICDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgLS0+CiAgICA8c3ltYm9sIGlkPSJob21lIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxwYXRoIGQ9Ik0zIDExbDktOCA5IDgiLz48cGF0aCBkPSJNNSAxMHYxMGgxNFYxMCIvPjxwYXRoIGQ9Ik05IDIwdi01aDZ2NSIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJob21lLWZpbGwiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iY3VycmVudENvbG9yIiBzdHJva2U9Im5vbmUiPgogICAgICA8cGF0aCBkPSJNMyAxMWw5LTggOSA4djlhMSAxIDAgMCAxLTEgMWgtNXYtN2gtNnY3SDRhMSAxIDAgMCAxLTEtMXYtOXoiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0ic2VhcmNoIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxjaXJjbGUgY3g9IjExIiBjeT0iMTEiIHI9IjciLz48cGF0aCBkPSJNMjEgMjFsLTQuMy00LjMiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0ibGlzdCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cmVjdCB4PSI0IiB5PSI0IiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHJ4PSIyIi8+PHBhdGggZD0iTTggOWg4TTggMTNoOE04IDE3aDUiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0ibGlzdC1idWxsZXQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPHBhdGggZD0iTTkgNmgxMk05IDEyaDEyTTkgMThoMTIiLz48Y2lyY2xlIGN4PSI0LjUiIGN5PSI2IiByPSIxIi8+PGNpcmNsZSBjeD0iNC41IiBjeT0iMTIiIHI9IjEiLz48Y2lyY2xlIGN4PSI0LjUiIGN5PSIxOCIgcj0iMSIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJzaWRlYmFyLWxlZnQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPHJlY3QgeD0iMyIgeT0iNCIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE2IiByeD0iMiIvPjxwYXRoIGQ9Ik05IDR2MTYiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0iY2hldnJvbi1sZWZ0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxwYXRoIGQ9Ik0xNSA2bC02IDYgNiA2Ii8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9ImNoZXZyb24tcmlnaHQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPHBhdGggZD0iTTkgNmw2IDYtNiA2Ii8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9ImNoZXZyb24tZG93biIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cGF0aCBkPSJNNiA5bDYgNiA2LTYiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0iY2hldnJvbi11cCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cGF0aCBkPSJNNiAxNWw2LTYgNiA2Ii8+CiAgICA8L3N5bWJvbD4KCiAgICA8IS0tIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkAogICAgICAgICBBQ1RJT05TICgxMCkg4oCUIOydvOuwmCDslaHshZggLyDsg4Htg5wKICAgICAgICAg4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQIC0tPgogICAgPHN5bWJvbCBpZD0ieG1hcmsiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIj4KICAgICAgPHBhdGggZD0iTTYgNmwxMiAxMk0xOCA2TDYgMTgiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0icGx1cyIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiPgogICAgICA8cGF0aCBkPSJNMTIgNXYxNE01IDEyaDE0Ii8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9Im1pbnVzIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCI+CiAgICAgIDxwYXRoIGQ9Ik01IDEyaDE0Ii8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9ImNoZWNrIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxwYXRoIGQ9Ik01IDEybDQgNCAxMC0xMCIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJwZW5jaWwiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPHBhdGggZD0iTTQgMjBoNGwxMS0xMS00LTRMNCAxNnY0eiIvPjxwYXRoIGQ9Ik0xNCA1bDQgNCIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJ0cmFzaCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cGF0aCBkPSJNNCA3aDE2Ii8+PHBhdGggZD0iTTkgN1Y0aDZ2MyIvPjxwYXRoIGQ9Ik02IDdsMSAxM2EyIDIgMCAwIDAgMiAyaDZhMiAyIDAgMCAwIDItMmwxLTEzIi8+PHBhdGggZD0iTTEwIDExdjZNMTQgMTF2NiIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJzcXVhcmUtYXJyb3ctdXAiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPHBhdGggZD0iTTkgMTZoNiIvPjxwYXRoIGQ9Ik0xMiAxNFY2Ii8+PHBhdGggZD0iTTE2IDEwbC00LTQtNCA0Ii8+PHJlY3QgeD0iMyIgeT0iMyIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4IiByeD0iMyIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJhcnJvdy1yaWdodCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cGF0aCBkPSJNNCAxMmgxNiIvPjxwYXRoIGQ9Ik0xNCA2bDYgNi02IDYiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0iYXJyb3ctY2xvY2t3aXNlIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxwYXRoIGQ9Ik0zIDEyYTkgOSAwIDAgMSAxNS02LjdMMjEgOCIvPjxwYXRoIGQ9Ik0yMSAzdjVoLTUiLz48cGF0aCBkPSJNMjEgMTJhOSA5IDAgMCAxLTE1IDYuN0wzIDE2Ii8+PHBhdGggZD0iTTMgMjF2LTVoNSIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJxciIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cmVjdCB4PSIzIiB5PSIzIiB3aWR0aD0iNyIgaGVpZ2h0PSI3IiByeD0iMSIvPjxyZWN0IHg9IjE0IiB5PSIzIiB3aWR0aD0iNyIgaGVpZ2h0PSI3IiByeD0iMSIvPjxyZWN0IHg9IjMiIHk9IjE0IiB3aWR0aD0iNyIgaGVpZ2h0PSI3IiByeD0iMSIvPjxwYXRoIGQ9Ik0xNCAxNGgzdjNNMjEgMTR2M00xNCAyMWgzTTIxIDE4djMiLz4KICAgIDwvc3ltYm9sPgoKICAgIDwhLS0g4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQCiAgICAgICAgIFBFT1BMRSAmIFVTRVJTICg0KQogICAgICAgICDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgLS0+CiAgICA8c3ltYm9sIGlkPSJwZXJzb24iIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPGNpcmNsZSBjeD0iMTIiIGN5PSI4IiByPSI0Ii8+PHBhdGggZD0iTTQgMjFjMC00IDQtNiA4LTZzOCAyIDggNiIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJhZGR1c2VyIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxjaXJjbGUgY3g9IjkiIGN5PSI4IiByPSI0Ii8+PHBhdGggZD0iTTIgMjFjMC00IDMtNiA3LTZzNyAyIDcgNiIvPjxwYXRoIGQ9Ik0xOSA4djZNMTYgMTFoNiIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJwZXJzb24tYmFkZ2Utc2hpZWxkIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxwYXRoIGQ9Ik0xMSA1bC02IDJ2NmMwIDQgMyA2IDYgOCAzLTIgNi00IDYtOFY3bC02LTJ6Ii8+PGNpcmNsZSBjeD0iMTEiIGN5PSIxMSIgcj0iMS41Ii8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9InBlcnNvbi0yIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxjaXJjbGUgY3g9IjkiIGN5PSI4IiByPSIzIi8+PGNpcmNsZSBjeD0iMTciIGN5PSI5IiByPSIyLjUiLz48cGF0aCBkPSJNMyAyMGMwLTMgMy01IDYtNXM2IDIgNiA1Ii8+PHBhdGggZD0iTTE1IDIwYzAtMiAxLTMgMy0zczMgMSAzIDMiLz4KICAgIDwvc3ltYm9sPgoKICAgIDwhLS0g4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQCiAgICAgICAgIENPTU1VTklDQVRJT04gKDUpCiAgICAgICAgIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAtLT4KICAgIDxzeW1ib2wgaWQ9ImJlbGwiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPHBhdGggZD0iTTYgOGE2IDYgMCAwIDEgMTIgMGMwIDcgMyA5IDMgOUgzczMtMiAzLTkiLz48cGF0aCBkPSJNMTAuMyAyMWExLjk0IDEuOTQgMCAwIDAgMy40IDAiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0iYmVsbC1maWxsIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9ImN1cnJlbnRDb2xvciIgc3Ryb2tlPSJub25lIj4KICAgICAgPHBhdGggZD0iTTYgOGE2IDYgMCAwIDEgMTIgMGMwIDcgMyA5IDMgOUgzczMtMiAzLTl6TTEwLjMgMjFhMS45NCAxLjk0IDAgMCAwIDMuNCAweiIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJlbnZlbG9wZSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cmVjdCB4PSIzIiB5PSI1IiB3aWR0aD0iMTgiIGhlaWdodD0iMTQiIHJ4PSIyIi8+PHBhdGggZD0iTTMgN2w5IDcgOS03Ii8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9InBob25lIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxwYXRoIGQ9Ik01IDRoNGwyIDUtMyAyYTEyIDEyIDAgMCAwIDUgNWwyLTMgNSAydjRhMiAyIDAgMCAxLTIgMkExNiAxNiAwIDAgMSAzIDZhMiAyIDAgMCAxIDItMnoiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0ibWVzc2FnZSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cGF0aCBkPSJNMjEgMTJhOCA4IDAgMCAxLTExIDcuNEw0IDIxbDEuNi02QTggOCAwIDEgMSAyMSAxMnoiLz4KICAgIDwvc3ltYm9sPgoKICAgIDwhLS0g4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQCiAgICAgICAgIEZJTkFOQ0UgJiBDT01NRVJDRSAoNSkg4oCUIFN1bl9JdCDrj4TrqZTsnbgg7ZW17IusCiAgICAgICAgIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAtLT4KICAgIDxzeW1ib2wgaWQ9ImNhcmQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPHJlY3QgeD0iMiIgeT0iNSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjE0IiByeD0iMyIvPjxwYXRoIGQ9Ik0yIDEwaDIwIi8+PHBhdGggZD0iTTYgMTVoNCIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJiYW5rIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxwYXRoIGQ9Ik0zIDEwbDktNiA5IDYiLz48cGF0aCBkPSJNNSAxMHY5aDE0di05Ii8+PHBhdGggZD0iTTggMTR2NU0xMiAxNHY1TTE2IDE0djUiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0iZG9sbGFyc2lnbiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cGF0aCBkPSJNMTIgMnYyMCIvPjxwYXRoIGQ9Ik0xNyA3SDkuNWEzLjUgMy41IDAgMCAwIDAgN0gxNC41YTMuNSAzLjUgMCAwIDEgMCA3SDYiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0iY3JlZGl0Y2FyZC1maWxsIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9ImN1cnJlbnRDb2xvciIgc3Ryb2tlPSJub25lIj4KICAgICAgPHBhdGggZD0iTTIgNWEzIDMgMCAwIDEgMy0zaDE0YTMgMyAwIDAgMSAzIDN2MTRhMyAzIDAgMCAxLTMgM0g1YTMgMyAwIDAgMS0zLTNWNXptMCA1aDIwdi0ySDJ2MnoiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0id2FsbGV0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxyZWN0IHg9IjMiIHk9IjYiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxNCIgcng9IjIiLz48cGF0aCBkPSJNMTYgMTRoMiIvPjxwYXRoIGQ9Ik0zIDEwaDE4Ii8+CiAgICA8L3N5bWJvbD4KCiAgICA8IS0tIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkAogICAgICAgICBDSEFSVFMgJiBEQVRBICgzKQogICAgICAgICDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgLS0+CiAgICA8c3ltYm9sIGlkPSJjaGFydCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cGF0aCBkPSJNMyAzdjE4aDE4Ii8+PHJlY3QgeD0iNyIgeT0iMTIiIHdpZHRoPSIzIiBoZWlnaHQ9IjYiLz48cmVjdCB4PSIxMiIgeT0iOCIgd2lkdGg9IjMiIGhlaWdodD0iMTAiLz48cmVjdCB4PSIxNyIgeT0iNSIgd2lkdGg9IjMiIGhlaWdodD0iMTMiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0iY2hhcnQtcGllIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxwYXRoIGQ9Ik0yMSAxMmE5IDkgMCAxIDEtOS05djloOXoiLz48cGF0aCBkPSJNMTIgM2E5IDkgMCAwIDEgOSA5aC05VjN6IiBmaWxsPSJjdXJyZW50Q29sb3IiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0iY2hhcnQtbGluZSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cGF0aCBkPSJNMyAzdjE4aDE4Ii8+PHBhdGggZD0iTTcgMTRsNC00IDQgMyA1LTciLz4KICAgIDwvc3ltYm9sPgoKICAgIDwhLS0g4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQCiAgICAgICAgIE1FRElBICg0KSDigJQgcGxheS9zdG9wL3BhdXNlL2ZvcndhcmQKICAgICAgICAg4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQIC0tPgogICAgPHN5bWJvbCBpZD0icGxheSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJjdXJyZW50Q29sb3IiIHN0cm9rZT0ibm9uZSI+CiAgICAgIDxwYXRoIGQ9Ik03IDV2MTRsMTEtN3oiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0ic3RvcCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJjdXJyZW50Q29sb3IiIHN0cm9rZT0ibm9uZSI+CiAgICAgIDxyZWN0IHg9IjYiIHk9IjYiIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgcng9IjEuNSIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJwYXVzZSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJjdXJyZW50Q29sb3IiIHN0cm9rZT0ibm9uZSI+CiAgICAgIDxyZWN0IHg9IjYiIHk9IjUiIHdpZHRoPSI0IiBoZWlnaHQ9IjE0IiByeD0iMSIvPjxyZWN0IHg9IjE0IiB5PSI1IiB3aWR0aD0iNCIgaGVpZ2h0PSIxNCIgcng9IjEiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0ic3BlYWtlciIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cGF0aCBkPSJNMTEgNUw2IDlIM3Y2aDNsNSA0VjV6Ii8+PHBhdGggZD0iTTE2IDlhNCA0IDAgMCAxIDAgNk0xOSA2YTggOCAwIDAgMSAwIDEyIi8+CiAgICA8L3N5bWJvbD4KCiAgICA8IS0tIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkAogICAgICAgICBUSEVNRSAmIERJU1BMQVkgKDQpIOKAlCBzdW4vbW9vbi9oYWxmL2dlYXIKICAgICAgICAg4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQIC0tPgogICAgPHN5bWJvbCBpZD0ic3VuIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjQiLz48cGF0aCBkPSJNMTIgMnYyTTEyIDIwdjJNNC45MyA0LjkzbDEuNDEgMS40MU0xNy42NiAxNy42NmwxLjQxIDEuNDFNMiAxMmgyTTIwIDEyaDJNNC45MyAxOS4wN2wxLjQxLTEuNDFNMTcuNjYgNi4zNGwxLjQxLTEuNDEiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0ibW9vbiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJjdXJyZW50Q29sb3IiIHN0cm9rZT0ibm9uZSI+CiAgICAgIDxwYXRoIGQ9Ik0yMSAxMi43OUE5IDkgMCAxIDEgMTEuMjEgMyA3IDcgMCAwIDAgMjEgMTIuNzl6Ii8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9ImhhbGYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSI+CiAgICAgIDxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjkiLz48cGF0aCBkPSJNMTIgM2E5IDkgMCAwIDEgMCAxOHoiIGZpbGw9ImN1cnJlbnRDb2xvciIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJnZWFyIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjMiLz4KICAgICAgPHBhdGggZD0iTTE5LjQgMTVhMS42NSAxLjY1IDAgMCAwIC4zMyAxLjgybC4wNi4wNmEyIDIgMCAwIDEgMCAyLjgzIDIgMiAwIDAgMS0yLjgzIDBsLS4wNi0uMDZhMS42NSAxLjY1IDAgMCAwLTEuODItLjMzIDEuNjUgMS42NSAwIDAgMC0xIDEuNTFWMjFhMiAyIDAgMCAxLTQgMHYtLjA5QTEuNjUgMS42NSAwIDAgMCA5IDE5LjRhMS42NSAxLjY1IDAgMCAwLTEuODIuMzNsLS4wNi4wNmEyIDIgMCAwIDEtMi44MyAwIDIgMiAwIDAgMSAwLTIuODNsLjA2LS4wNmExLjY1IDEuNjUgMCAwIDAgLjMzLTEuODIgMS42NSAxLjY1IDAgMCAwLTEuNTEtMUgzYTIgMiAwIDAgMSAwLTRoLjA5QTEuNjUgMS42NSAwIDAgMCA0LjYgOWExLjY1IDEuNjUgMCAwIDAtLjMzLTEuODJsLS4wNi0uMDZhMiAyIDAgMCAxIDAtMi44MyAyIDIgMCAwIDEgMi44MyAwbC4wNi4wNmExLjY1IDEuNjUgMCAwIDAgMS44Mi4zM0g5YTEuNjUgMS42NSAwIDAgMCAxLTEuNTFWM2EyIDIgMCAwIDEgNCAwdi4wOWExLjY1IDEuNjUgMCAwIDAgMSAxLjUxIDEuNjUgMS42NSAwIDAgMCAxLjgyLS4zM2wuMDYtLjA2YTIgMiAwIDAgMSAyLjgzIDAgMiAyIDAgMCAxIDAgMi44M2wtLjA2LjA2YTEuNjUgMS42NSAwIDAgMC0uMzMgMS44MlY5YTEuNjUgMS42NSAwIDAgMCAxLjUxIDFIMjFhMiAyIDAgMCAxIDAgNGgtLjA5YTEuNjUgMS42NSAwIDAgMC0xLjUxIDF6Ii8+CiAgICA8L3N5bWJvbD4KCiAgICA8IS0tIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkAogICAgICAgICBUSU1FICYgQ0FMRU5EQVIgKDMpCiAgICAgICAgIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAtLT4KICAgIDxzeW1ib2wgaWQ9ImNsb2NrIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjkiLz48cGF0aCBkPSJNMTIgN3Y1bDMgMyIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJjYWxlbmRhciIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cmVjdCB4PSIzIiB5PSI1IiB3aWR0aD0iMTgiIGhlaWdodD0iMTYiIHJ4PSIyIi8+PHBhdGggZD0iTTMgMTBoMThNOCAzdjRNMTYgM3Y0Ii8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9ImNhbGVuZGFyLWNoZWNrIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxyZWN0IHg9IjMiIHk9IjUiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxNiIgcng9IjIiLz48cGF0aCBkPSJNMyAxMGgxOE04IDN2NE0xNiAzdjQiLz48cGF0aCBkPSJNOSAxNmwyIDIgNC00Ii8+CiAgICA8L3N5bWJvbD4KCiAgICA8IS0tIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkAogICAgICAgICBET01BSU4gU1BFQ0lGSUMg4oCUIFN1bl9JdCAoOCkKICAgICAgICAg7ZqM7JuQL+y5tOuTnC/stpzsnoUv7KCV7IKwL+q0gOumrCDrj4TrqZTsnbgKICAgICAgICAg4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQIC0tPgogICAgPHN5bWJvbCBpZD0iZ29sZiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjQiIHI9IjEuNSIgZmlsbD0iY3VycmVudENvbG9yIi8+PHBhdGggZD0iTTEyIDZ2MTVNOSAyMWg2Ii8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9ImlkY2FyZCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cmVjdCB4PSIyIiB5PSI1IiB3aWR0aD0iMjAiIGhlaWdodD0iMTQiIHJ4PSIyIi8+PGNpcmNsZSBjeD0iOSIgY3k9IjEyIiByPSIyLjUiLz48cGF0aCBkPSJNMTQgMTBoNE0xNCAxNGgzIi8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9ImxvY2siIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPHJlY3QgeD0iNCIgeT0iMTEiIHdpZHRoPSIxNiIgaGVpZ2h0PSIxMCIgcng9IjIiLz48cGF0aCBkPSJNOCAxMVY3YTQgNCAwIDAgMSA4IDB2NCIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJsb2NrLWZpbGwiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iY3VycmVudENvbG9yIiBzdHJva2U9Im5vbmUiPgogICAgICA8cGF0aCBkPSJNOCAxMVY3YTQgNCAwIDAgMSA4IDB2NGgyYTIgMiAwIDAgMSAyIDJ2OGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMnYtOGEyIDIgMCAwIDEgMi0yaDJ6bTIgMGg0VjdhMiAyIDAgMCAwLTQgMHY0eiIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJrZXkiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPGNpcmNsZSBjeD0iOCIgY3k9IjE1IiByPSI0Ii8+PHBhdGggZD0iTTExIDEybDktOU0xNiA3bDMgM00xOSA0bDIgMiIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJkb29yIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxwYXRoIGQ9Ik01IDIxVjVhMiAyIDAgMCAxIDItMmgxMGEyIDIgMCAwIDEgMiAydjE2Ii8+PHBhdGggZD0iTTUgMjFoMTQiLz48Y2lyY2xlIGN4PSIxNSIgY3k9IjEyIiByPSIwLjUiIGZpbGw9ImN1cnJlbnRDb2xvciIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJkb2MtdGV4dCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cGF0aCBkPSJNMTQgM0g2YTIgMiAwIDAgMC0yIDJ2MTRhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjl6Ii8+PHBhdGggZD0iTTE0IDN2Nmg2TTggMTNoOE04IDE3aDUiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0icHJpbnRlciIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgogICAgICA8cGF0aCBkPSJNNiA5VjNoMTJ2NiIvPjxyZWN0IHg9IjMiIHk9IjkiIHdpZHRoPSIxOCIgaGVpZ2h0PSI5IiByeD0iMiIvPjxwYXRoIGQ9Ik02IDE1aDEydjZINnoiLz4KICAgIDwvc3ltYm9sPgoKICAgIDwhLS0g4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQCiAgICAgICAgIE1JU0MgKDgpIOKAlCDrqZTribQsIOuPhO2KuCwg7JWM66a8LCDtlbjrk5ztj7AKICAgICAgICAg4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQIC0tPgogICAgPHN5bWJvbCBpZD0ibWVudSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiPgogICAgICA8cGF0aCBkPSJNNCA3aDE2TTQgMTJoMTZNNCAxN2gxNiIvPgogICAgPC9zeW1ib2w+CiAgICA8c3ltYm9sIGlkPSJlbGxpcHNpcyIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJjdXJyZW50Q29sb3IiIHN0cm9rZT0ibm9uZSI+CiAgICAgIDxjaXJjbGUgY3g9IjYiIGN5PSIxMiIgcj0iMS41Ii8+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMS41Ii8+PGNpcmNsZSBjeD0iMTgiIGN5PSIxMiIgcj0iMS41Ii8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9ImdlYXItYmFkZ2UiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMyIvPgogICAgICA8cGF0aCBkPSJNMTkuNCAxNWExLjY1IDEuNjUgMCAwIDAgLjMzIDEuODJsLjA2LjA2YTIgMiAwIDAgMSAwIDIuODMgMiAyIDAgMCAxLTIuODMgMGwtLjA2LS4wNmExLjY1IDEuNjUgMCAwIDAtMS44Mi0uMzMgMS42NSAxLjY1IDAgMCAwLTEgMS41MVYyMWEyIDIgMCAwIDEtNCAwdi0uMDlBMS42NSAxLjY1IDAgMCAwIDkgMTkuNGExLjY1IDEuNjUgMCAwIDAtMS44Mi4zM2wtLjA2LjA2YTIgMiAwIDAgMS0yLjgzIDAgMiAyIDAgMCAxIDAtMi44M2wuMDYtLjA2YTEuNjUgMS42NSAwIDAgMCAuMzMtMS44MiAxLjY1IDEuNjUgMCAwIDAtMS41MS0xSDNhMiAyIDAgMCAxIDAtNGguMDlBMS42NSAxLjY1IDAgMCAwIDQuNiA5YTEuNjUgMS42NSAwIDAgMC0uMzMtMS44MmwtLjA2LS4wNmEyIDIgMCAwIDEgMC0yLjgzIDIgMiAwIDAgMSAyLjgzIDBsLjA2LjA2YTEuNjUgMS42NSAwIDAgMCAxLjgyLjMzSDlhMS42NSAxLjY1IDAgMCAwIDEtMS41MVYzYTIgMiAwIDAgMSA0IDB2LjA5YTEuNjUgMS42NSAwIDAgMCAxIDEuNTEgMS42NSAxLjY1IDAgMCAwIDEuODItLjMzbC4wNi0uMDZhMiAyIDAgMCAxIDIuODMgMCAyIDIgMCAwIDEgMCAyLjgzbC0uMDYuMDZhMS42NSAxLjY1IDAgMCAwLS4zMyAxLjgyVjlhMS42NSAxLjY1IDAgMCAwIDEuNTEgMUgyMWEyIDIgMCAwIDEgMCA0aC0uMDlhMS42NSAxLjY1IDAgMCAwLTEuNTEgMXoiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0iZXhjbGFtYXRpb24tdHJpYW5nbGUiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPHBhdGggZD0iTTEyIDRsOSAxNkgzbDktMTZ6Ii8+PHBhdGggZD0iTTEyIDEwdjRNMTIgMTd2LjUiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0iaW5mby1jaXJjbGUiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS43NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICAgICAgPGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iOSIvPjxwYXRoIGQ9Ik0xMiAxMXY1TTEyIDh2LjUiLz4KICAgIDwvc3ltYm9sPgogICAgPHN5bWJvbCBpZD0iY2hlY2stY2lyY2xlIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgIDxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjkiLz48cGF0aCBkPSJNOCAxMmwzIDMgNS02Ii8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9InhtYXJrLWNpcmNsZSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiPgogICAgICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSI5Ii8+PHBhdGggZD0iTTkgOWw2IDZNMTUgOWwtNiA2Ii8+CiAgICA8L3N5bWJvbD4KICAgIDxzeW1ib2wgaWQ9ImdlYXItZmlsbCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJjdXJyZW50Q29sb3IiIHN0cm9rZT0ibm9uZSI+CiAgICAgIDxwYXRoIGQ9Ik0xMiA5YTMgMyAwIDEgMCAwIDYgMyAzIDAgMCAwIDAtNnptNy40IDZhMS42NSAxLjY1IDAgMCAwIC4zMyAxLjgybC4wNi4wNmEyIDIgMCAwIDEgMCAyLjgzIDIgMiAwIDAgMS0yLjgzIDBsLS4wNi0uMDZhMS42NSAxLjY1IDAgMCAwLTEuODItLjMzIDEuNjUgMS42NSAwIDAgMC0xIDEuNTFWMjFhMiAyIDAgMCAxLTQgMHYtLjA5QTEuNjUgMS42NSAwIDAgMCA5IDE5LjRhMS42NSAxLjY1IDAgMCAwLTEuODIuMzNsLS4wNi4wNmEyIDIgMCAwIDEtMi44MyAwIDIgMiAwIDAgMSAwLTIuODNsLjA2LS4wNmExLjY1IDEuNjUgMCAwIDAgLjMzLTEuODIgMS42NSAxLjY1IDAgMCAwLTEuNTEtMUgzYTIgMiAwIDAgMSAwLTRoLjA5QTEuNjUgMS42NSAwIDAgMCA0LjYgOWExLjY1IDEuNjUgMCAwIDAtLjMzLTEuODJsLS4wNi0uMDZhMiAyIDAgMCAxIDAtMi44MyAyIDIgMCAwIDEgMi44MyAwbC4wNi4wNmExLjY1IDEuNjUgMCAwIDAgMS44Mi4zM0g5YTEuNjUgMS42NSAwIDAgMCAxLTEuNTFWM2EyIDIgMCAwIDEgNCAwdi4wOWExLjY1IDEuNjUgMCAwIDAgMSAxLjUxIDEuNjUgMS42NSAwIDAgMCAxLjgyLS4zM2wuMDYtLjA2YTIgMiAwIDAgMSAyLjgzIDAgMiAyIDAgMCAxIDAgMi44M2wtLjA2LjA2YTEuNjUgMS42NSAwIDAgMC0uMzMgMS44MlY5YTEuNjUgMS42NSAwIDAgMCAxLjUxIDFIMjFhMiAyIDAgMCAxIDAgNGgtLjA5YTEuNjUgMS42NSAwIDAgMC0xLjUxIDF6Ii8+CiAgICA8L3N5bWJvbD4KCiAgPC9kZWZzPgo8L3N2Zz4=");
--font-system: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'SF Pro KR', 'SF Pro Text', 'Segoe UI', sans-serif;
--space-5: 20px;
--theme-gradient: radial-gradient(ellipse 130% 110% at 50% 0%, #26466F 0%, #0E1A2A 48%, #050B14 100%);
--tertiary-bg: #192336;
--quaternary-bg: #233049;
--quinary-bg: #2E3D5C;
--quinary-label: rgba(158, 176, 212, 0.15);
--separator-opaque: #192336;
--accent-blue-deep: #1B64C4;
--accent-green-deep: #30DB5B;
--accent-red-deep: #FF6961;
--accent-brand: #D4AF37;
--accent-brand-deep: #B8903F;
--accent-blue-rgb: 47, 128, 237;
--glass-bg-light: rgba(14, 21, 36, 0.78);
--glass-bg-mid: rgba(14, 21, 36, 0.60);
--glass-bg-thin: rgba(14, 21, 36, 0.44);
--glass-blur: blur(30px) saturate(200%);
--ipad-gold: #FFD60A;
--ipad-bg: #000000;
--ipad-sidebar: rgba(28, 28, 30, 0.78);
--ipad-card: rgba(28, 28, 30, 0.78);
--ipad-card-hover: rgba(58, 58, 60, 0.92);
--ipad-border: rgba(255, 255, 255, 0.10);
--ipad-text: #FFFFFF;
--ipad-text-sub: #8E8E93;
--ipad-tab-bar-bg: rgba(28, 28, 30, 0.78);
--ipad-tab-active: rgba(255, 255, 255, 0.15);
--ipad-surface: rgba(255, 255, 255, 0.05);
--ipad-surface-hover: rgba(255, 255, 255, 0.10);
--type-body: 12px;
--type-headline: 18px;
--bg-main: color-mix(in srgb, var(--system-bg) 10%, transparent);
--bg-drawer: #1C1C1E;
--bg-surface: rgb(18, 18, 18, 0.7);
--bg-surface-active: rgb(18, 18, 18, 0.9);
--text-main: #FFFFFF;
--text-muted: #EBEBF5;
--text-dim: #8E8E93;
--border-light: rgba(255, 255, 255, 0.10);
--border-dim: rgba(255, 255, 255, 0.05);
--border-gold: rgba(255, 214, 10, 0.30);
--danger: #FF453A;
--danger-alt: #FF6961;
--success: #30D158;
--info: #70D7FF;
--link: #0A84FF;
--link-dim: #64D2FF;
--ipad-text-dim: #8E8E93;
--ipad-border-hover: rgba(255, 214, 10, 0.35);
--royal-surface-glass: rgba(255, 255, 255, 0.08);
--royal-surface-glass-hover: rgba(255, 255, 255, 0.14);
--royal-border-glass: rgba(255, 255, 255, 0.10);
--royal-text-primary: #FFFFFF;
--royal-text-secondary: #EBEBF5;
--royal-text-gold: #FFD60A;
--app-card-bg: rgba(255, 255, 255, 0.05);
--royal-text-muted: #8E8E93;
--royal-bg-body: #000000;
--royal-bg-dark: #080C10;
--royal-border-glass-hover: rgba(255, 214, 10, 0.35);
--bg-surface-alt: rgba(255, 255, 255, 0.08);
--sf-size: 48px;
--tint-rgb: 162, 132, 94;
--tint-surface: rgba(162, 132, 94, 0.06);
--tint-surface-strong: rgba(var(--tint-rgb), 0.12);
--tint-glow: rgba(162, 132, 94, 0.18);
--close: "\2715";
--minimize: "\2212";
--maximize: "+";
--type-mult-xs:0.82;
--type-mult-sm:0.88;
--type-mult-md:0.94;
--type-mult-lg:1.00;
--type-mult-xl:1.12;
--type-mult-xxl:   1.24;
--type-mult-xxxl:  1.35;
--type-mult-ax1:   1.62;
--type-mult-ax2:   1.92;
--type-mult-ax3:   2.25;
--type-mult-ax4:   2.62;
--type-mult-ax5:   3.07;
--radius-appicon: 22.37%;
--radius-xs: 6px;
--radius-sm: 10px;
--radius-md: 14px;
--radius-lg: 20px;
--radius-xl: 28px;
--radius-2xl: 36px;
--radius-pill: 999px;
--radius-button: 8px;
--radius-button-pill: 999px;
--radius-button-rounded: 12px;
--radius-card: 24px;
--radius-card-hig: 10px;
--radius-sheet: 18px;
--radius-sheet-hig: 10px;
--radius-alert: 14px;
--radius-textfield: 10px;
--radius-segmented: 9px;
--radius-toggle: 999px;
--radius-context-menu: 13px;
--radius-popover: 16px;
--radius-window: 12px;--radius-card-hig: 10px;
--radius-sheet-hig:10px;
--radius-sheet:18px;
--radius-alert:14px;
--radius-textfield:10px;
--radius-segmented:9px;
--radius-toggle:   999px;
--radius-context-menu: 13px;
--radius-popover:  16px;
--radius-button:   8px;
--radius-caption:  4px;
--radius-avatar:   50%;
--statusbar-h-iphone:  56px;
--statusbar-h-ipad:24px;
--statusbar-h: 56px;
--navbar-h-compact:44px;
--navbar-h-large:  98px;
--navbar-h:var(--navbar-h-compact);
--ipad-navbar-h:   50px;
--tab-bar-h-iphone: 49px;
--tab-bar-h-ipad:   50px;
--toolbar-h:   49px;
--segmented-h: 28px;
--textfield-h: 44px;
--slider-h:44px;
--stepper-h:   44px;
--pagecontrol-h:   44px;
--button-h-small:  28px;
--button-h-medium: 36px;
--button-h-large:  44px;
--sheet-h-mini:154px;
--sheet-h-medium:  437px;
--sheet-h-large:   803px;
--sheet-h-fullscreen:  874px;
--sheet-h-default: var(--sheet-h-medium);
--alert-h-iphone:  178px;
--alert-h-ipad:178px;
--alert-radius:14px;
--keyboard-h-iphone:   291px;
--keyboard-h-ipad: 834px;
--progressbar-h:   4px;
--progressind-h:   44px;
--safe-top-iphone: 47px;
--safe-top-iphone-classic: 24px;
--safe-top-iphone-large:   56px;
--safe-top-ipad:   24px;
--safe-bottom-iphone:  34px;
--safe-bottom-ipad:20px;
--spring-smooth:   cubic-bezier(0.25, 0.46, 0.45, 0.94);
--duration-spring: 600ms;
--glass-blur-thin: blur(20px) saturate(180%);
--glass-blur-thick:blur(40px) saturate(180%);
--glass-blur-ultra-thick:  blur(50px) saturate(200%);
--glass-blur-default:  var(--glass-blur-regular);
--space-1: 4px;
--space-2: 6px;
--space-3: 8px;
--space-4: 10px;
--space-6: 12px;
--space-7: 14px;
--space-8: 16px;
--space-9: 18px;
--space-10: 20px;
--space-11: 25px;
--space-12: 30px;
--space-13: 35px;
--space-14: 40px;
--space-15: 45px;
--space-16: 50px;
--icon-size-small: 16px;
--icon-size-medium:20px;
--icon-size-large: 24px;
--icon-size-xlarge:32px;
--icon-size-xxlarge:   40px;
--glass-ultra-thin: rgba(255, 255, 255, 0.45);
--glass-ultra-thin-dark:   rgba(28, 28, 30, 0.55);
--glass-thin-dark: rgba(28, 28, 30, 0.70);
--glass-regular-dark:  rgba(28, 28, 30, 0.82);
--glass-thick-dark:rgba(28, 28, 30, 0.92);
--glass-blur-ultra-thin:   blur(16px) saturate(180%);
--glass-blur-thin: blur(20px) saturate(180%);
--glass-blur-regular:  blur(30px) saturate(180%);
--glass-blur-thick:blur(40px) saturate(200%);
--mac-light-size:  12px;
--mac-light-gap:   8px;
--mac-menubar-h:   30px;
--mac-titlebar-h:  38px;
--mac-titlebar-h-large:52px;
--mac-light-close: #FF5F57;
--mac-light-minimize:  #FEBC2E;
--mac-light-maximize:  #28C840;
--mac-light-close-dark:#FF6058;
--mac-light-minimize-dark: #FFBD2E;
--mac-light-maximize-dark: #28CA42;
--mac-viewport-template-dark:  1440px 900px;
--mac-viewport-template-light:  1440px 900px;
--mac-window-min-w:400px;
--mac-window-min-h:640px;
--mac-window-default-w:900px;
--mac-window-default-h:1200px;
--mac-window-max-w:100%;
--mac-window-max-h:100%;
--mac-toolbar-h:   52px;
--mac-toolbar-h-large: 64px;
--mac-toolbar-bg:  rgba(255, 255, 255, 0.72);
--mac-sidebar-min-w:   180px;
--mac-sidebar-ideal-w: 240px;
--mac-sidebar-max-w:   320px;
--mac-sidebar-icon-size:   18px;
--mac-sidebar-row-h:   32px;
--mac-sidebar-bg:  var(--glass-ultra-thin);
--mac-font-display:"SF Pro Display", -apple-system, BlinkMacSystemFont, sans-serif;
--mac-font-text:   "SF Pro Text", -apple-system, BlinkMacSystemFont, sans-serif;
--mac-font-rounded:"SF Pro Rounded", -apple-system, BlinkMacSystemFont, sans-serif;
--mac-font-mono:   "SF Mono", ui-monospace, monospace;
--mac-type-largetitle: 26pt;
--mac-type-title1: 22pt;
--mac-type-title2: 17pt;
--mac-type-title3: 15pt;
--mac-type-headline:   13pt;
--mac-type-body:   13pt;
--mac-type-callout:12pt;
--mac-type-subhead:11pt;
--mac-type-footnote:   10pt;
--mac-type-caption1:   10pt;
--mac-type-caption2:   9pt;
--glass-blur:  rgba(255, 255, 255, 0.72);
--radius-window:   10px;
--font-system: -apple-system, BlinkMacSystemFont,"SF Pro KR", "Apple SD Gothic Neo", "Helvetica Neue", system-ui, sans-serif;
--glass-regular:   rgba(255, 255, 255, 0.72);


--tabbar-h-iphone: 49px;
--tabbar-h-ipad: 50px;
--tabbar-h: var(--tabbar-h-iphone);
--toolbar-h: 49px;

--segmented-h: 28px;

--status-bar-h: env(safe-area-inset-top, 0);
--home-bar-h: env(safe-area-inset-bottom, 0);
--header-h: var(--navbar-h-compact);

--safe-left-ipad-landscape: 0;
--safe-right-ipad-landscape: 0;


--ipad-split-sidebar-w: 280px;
--ipad-split-detail-w: 360px;
--ipad-sidebar-w: var(--ipad-split-sidebar-w);
--ipad-detail-w: var(--ipad-split-detail-w);


--viewport-iphone-16pro: 402px 874px;
--viewport-iphone-16: 393px 852px;
--viewport-iphone-15: 393px 852px;
--viewport-iphone-14: 390px 844px;
--viewport-ipad-11: 834px 1210px;
--viewport-ipad-13: 1024px 1366px;
--viewport-ipad-mini: 744px 1133px;

--tint-surface-thin: rgba(120, 120, 128, 0.18);
--tint-surface-regular: rgba(120, 120, 128, 0.32);
--tint-surface-thick: rgba(120, 120, 128, 0.50);
--tint-surface-ultra-thick: rgba(120, 120, 128, 0.70);

--type-largetitle: 34px;
--type-title1: 28px;
--type-title2: 22px;
--type-title3: 20px;
--type-headline: 17px;
--type-callout: 16px;
--type-subhead: 15px;
--type-footnote: 13px;
--type-caption1: 12px;
--type-caption2: 11px;

--weight-regular: 400;
--weight-medium: 500;
--weight-semibold: 600;
--weight-bold: 700;
--weight-heavy: 800;







--spring-soft: cubic-bezier(0.36, 1.10, 0.30, 1.00);
--spring-bouncy: cubic-bezier(0.34, 1.56, 0.64, 1.00);
--spring-smooth: cubic-bezier(0.25, 0.46, 0.45, 0.94);
--spring-ios: cubic-bezier(0.32, 0.72, 0.00, 1.00);
--ease-in-out: cubic-bezier(0.42, 0, 0.58, 1);

--duration-fast: 200ms;
--duration-base: 350ms;
--duration-slow: 500ms;
--duration-spring: 600ms;


--white: #FFFFFF;
--label-on-gold: #0a0a0a;
--photo-placeholder: rgba(0, 0, 0, 0.3);
--dynamic-island-bg: #000000;
--capsule-radius: 999px;
--z-toast: 9999;
--z-modal: 2000;
--z-drawer: 1500;
--glass-bg-dark: rgba(45, 45, 45, 0.8);

--system-bg: transparent;
--theme-gradient: linear-gradient(145deg, #FFFFFF 0%, #F2F2F7 52%, #E5E5EA 100%);
--secondary-bg: #FFFFFF;
--tertiary-bg: #E5E5EA;
--quaternary-bg: #D1D1D6;
--quinary-bg: #E9E9EB;
--tint-bg: #FFFFFF;

--label: #000000;
--secondary-label: #3C3C43;
--tertiary-label: rgba(60, 60, 67, 0.6);
--quaternary-label: rgba(60, 60, 67, 0.3);
--quinary-label: rgba(60, 60, 67, 0.18);

--fill-primary: rgba(120, 120, 128, 0.2);
--fill-secondary: rgba(120, 120, 128, 0.16);
--fill-tertiary: rgba(118, 118, 128, 0.12);
--fill-quaternary: rgba(116, 116, 128, 0.08);

--separator: rgba(60, 60, 67, 0.15);
--separator-opaque: #C6C6C8;
--hairline: 1px solid var(--separator);


--accent-blue: #007AFF;
--accent-blue-rgb: 0, 122, 255;
--accent-blue-deep: #0040DD;
--accent-cyan: #64D2FF;
--accent-green: #34C759;
--accent-green-rgb: 52, 199, 89;
--accent-green-deep: #248A3D;
--accent-yellow: #FFCC00;
--accent-yellow-rgb: 255, 204, 0;
--accent-orange: #FF9500;
--accent-orange-rgb: 255, 149, 0;
--accent-red: #FF3B30;
--accent-red-rgb: 255, 59, 48;
--accent-red-deep: #D70015;
--accent-pink: #FF375F;
--accent-pink-rgb: 255, 55, 95;
--accent-purple: #AF52DE;
--accent-purple-rgb: 175, 82, 222;
--accent-indigo: #5856D6;
--accent-indigo-rgb: 88, 86, 214;
--accent-teal: #5AC8FA;
--accent-teal-rgb: 90, 200, 250;
--accent-mint: #00C7BE;
--accent-mint-rgb: 0, 199, 190;
--accent-brown: #A2845E;
--accent-brown-rgb: 162, 132, 94;


--RoyalGold-50: #FDF8ED;
--RoyalGold-100: #FBF0D9;
--RoyalGold-200: #F7E1B3;
--RoyalGold-300: #F3D28D;
--RoyalGold-400: #EFC367;
--RoyalGold-500: #C5A059;
--RoyalGold-600: #B8903F;
--RoyalGold-700: #A07830;
--RoyalGold-800: #886025;
--RoyalGold-900: #70481C;
--RoyalGold-500-rgb: 197, 160, 89;
--RoyalGold-glow: 0 0 12px rgba(197, 160, 89, 0.4);

--accent-gold: #C9A74E;
--accent-gold-rgb: 201, 167, 78;
--accent-gold-gradient: linear-gradient(135deg, #fcd34d, #f59e0b, #d97706);
--accent-brand: var(--accent-gold);
--accent-brand-deep: var(--accent-gold-deep, #B8903F);

--tint-elevation: 0 1px 2px rgba(0, 0, 0, 0.04), 0 4px 12px rgba(0, 0, 0, 0.06);


--glass-bg-light: rgba(255, 255, 255, 0.72);
--glass-bg-mid: rgba(255, 255, 255, 0.55);
--glass-bg-thin: rgba(255, 255, 255, 0.35);
--glass-bg-thin1: rgba(255, 255, 255, 0.15);
--glass-bg: rgba(39, 39, 39, 0.10);
--glass-border: rgba(255, 255, 255, 0.5);
--glass-highlight: rgba(255, 255, 255, 0.6);
--glass-shadow: 0 8px 32px rgba(0, 0, 0, 0.12), 0 2px 8px rgba(0, 0, 0, 0.06);


--shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.04);
--shadow-md: 0 2px 6px rgba(0, 0, 0, 0.08), 0 4px 12px rgba(0, 0, 0, 0.04);
--shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.10), 0 2px 6px rgba(0, 0, 0, 0.06);
--shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.14), 0 4px 12px rgba(0, 0, 0, 0.08);
--shadow-focus: 0 0 0 4px rgba(0, 122, 255, 0.20);


--system-gray-1-light: #F2F2F7;
--system-gray-2-light: #E5E5EA;
--system-gray-3-light: #D1D1D6;
--system-gray-4-light: #C7C7CC;
--system-gray-5-light: #AEAEB2;
--system-gray-6-light: #8E8E93;


--bg-main: var(--system-bg);
--bg-drawer: #FFFFFF;
--bg-surface: rgba(0, 0, 0, 0.7);
--bg-surface-active: rgba(0, 0, 0, 0.9);
--bg-surface-alt: rgba(0, 0, 0, 0.05);
--text-main: var(--label);
--text-muted: var(--secondary-label);
--text-dim: var(--tertiary-label);
--border-light: rgba(60, 60, 67, 0.10);
--border-dim: rgba(60, 60, 67, 0.06);
--border-gold: rgba(0, 122, 255, 0.25);
--danger: #FF3B30;
--danger-alt: #D70015;
--success: #34C759;
--info: #5AC8FA;
--link: #007AFF;
--link-dim: #409CFF;

--ipad-gold: var(--accent-gold);
--ipad-bg: var(--system-bg);
--ipad-sidebar: rgba(255, 255, 255, 0.78);
--ipad-card: rgba(255, 255, 255, 0.85);
--ipad-card-hover: rgba(255, 255, 255, 0.95);
--ipad-border: rgba(60, 60, 67, 0.12);
--ipad-text: #1C1C1E;
--ipad-text-dim: #6E6E73;
--ipad-text-sub: #6E6E73;
--ipad-tabbar-bg: rgba(255, 255, 255, 0.78);
--ipad-tab-active: rgba(0, 122, 255, 0.12);
--ipad-surface: rgba(0, 0, 0, 0.04);
--ipad-surface-hover: rgba(0, 0, 0, 0.08);
--ipad-border-hover: rgba(0, 122, 255, 0.30);

--royal-surface-glass: rgba(255, 255, 255, 0.65);
--royal-surface-glass-hover: rgba(255, 255, 255, 0.85);
--royal-border-glass: rgba(60, 60, 67, 0.12);
--royal-border-glass-hover: rgba(0, 122, 255, 0.30);
--royal-text-primary: #1C1C1E;
--royal-text-secondary: #6E6E73;
--royal-text-muted: #8E8E93;
--royal-text-gold: var(--accent-blue);
--royal-bg-body: var(--system-bg);
--royal-bg-dark: var(--secondary-bg);
--app-card-bg: rgba(0, 0, 0, 0.03);


--accent: var(--accent-blue);
--bg: var(--system-bg);
--muted: var(--tertiary-label);
--text: var(--label);
--app-color: #FFD60A;
  --g-bg:var(--system-bg);--g-s1:var(--secondary-bg);--g-fg:var(--label);
            --g-dim:var(--secondary-label);--g-dim2:var(--tertiary-label);
            --g-ac:var(--accent-blue);--g-gr:var(--accent-green);--g-rd:var(--accent-red);
            --g-ye:#ffcc00;--g-purple:#5856d6;--g-teal:#00a7a7;--g-orange:#ff9500;
            --g-border:var(--separator);--g-br2:rgba(255,255,255,.12);
            --g-rad:10px;--g-rad2:14px;--g-left:340px;
}
    @import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+KR:wght@400;600;700&family=IBM+Plex+Mono:wght@500&display=swap');
        .hdr{
            height:52px;background:var(--glass-bg-light);backdrop-filter:var(--glass-blur);
            -webkit-backdrop-filter:var(--glass-blur);border-bottom:.5px solid var(--ipad-border);
            display:flex;align-items:center;justify-content:space-between;padding:0 18px;
            position:fixed;top:0;left:0;right:0;z-index:100;/* zi-100 */
        }
        .hdr-l{display:flex;align-items:center;gap:12px}
        .hdr-back{display:none;align-items:center;gap:5px;color:var(--secondary-label);text-decoration:none;
            font-size:.8rem;font-weight:600;padding:6px 11px;border-radius:999px;
            border:.5px solid var(--g-br2);background:var(--secondary-bg);cursor:pointer;transition:all .15s}
        .hdr-back:hover{color:var(--label);border-color:var(--accent-blue)}
        .hdr-back.show{display:flex}
        .hdr-brand{display:flex;align-items:center;gap:8px;font-size:.95rem;font-weight:700;color:var(--label)}
        .hdr-brand small{color:var(--secondary-label);font-weight:400;font-size:.72rem;margin-left:4px}
        .hdr-r{display:flex;align-items:center;gap:10px}
        .hdr-clock{font-size:.82rem;color:var(--secondary-label);font-family:'IBM Plex Mono',monospace;letter-spacing:.5px;white-space:nowrap}
        .hdr-lang{padding:5px 10px;border:.5px solid var(--g-br2);border-radius:999px;font-size:.73rem;
            background:var(--secondary-bg);color:var(--label);cursor:pointer;outline:none;font-family:inherit}
        .hdr-lang:focus{border-color:var(--accent-blue)}


        .app-root{position:fixed;top:52px;left:0;right:0;bottom:0;overflow:hidden}
        .app-view{height:100%}
        .app-view.active{display:flex;flex-direction:column}


        .dash-scroll{flex:1;overflow-y:auto;padding:24px 20px}
        .dash-scroll::-webkit-scrollbar{width:4px}
        .dash-scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:2px}
        .dash-max{max-width:1100px;margin:0 auto}
        .dash-stats{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}
.dash-stats .dash-stat{min-width:180px}
@media(max-width:600px){.dash-stats{justify-content:center}}
        @media(max-width:600px){.dash-stats{grid-template-columns:1fr}}
        .dash-stat{padding:16px;text-align:left}
        .dash-stat .ds-lbl{font-size:var(--type-caption1);font-weight:var(--weight-semibold);color:var(--tertiary-label);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}
        .dash-stat .ds-val{font-size:1.6rem;font-weight:var(--weight-heavy);font-family:'IBM Plex Mono',monospace}
        .dash-stat .ds-sub{font-size:.7rem;color:var(--tertiary-label);margin-top:2px}
        .dash-stat.s-blue .ds-val{color:var(--accent-blue)}
        .dash-stat.s-green .ds-val{color:var(--accent-green)}
        .dash-stat.s-yellow .ds-val{color:var(--g-ye)}
        .dash-sec{font-size:var(--type-caption1);font-weight:var(--weight-semibold);color:var(--tertiary-label);
            text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px 2px}
        .dash-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
        @media(max-width:768px){.dash-grid{grid-template-columns:repeat(2,1fr)}}
        @media(max-width:480px){.dash-grid{grid-template-columns:1fr}}
        .dash-card{padding:24px 20px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:flex-start;gap:10px;text-decoration:none;color:inherit;position:relative}
        .dash-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}
        .dash-card .dc-icon{font-size:2rem;line-height:1}
        .dash-card .dc-title{font-size:.95rem;font-weight:var(--weight-bold);color:var(--label)}
        .dash-card .dc-desc{font-size:.75rem;color:var(--secondary-label);line-height:1.4}
        .dash-card .dc-arrow{position:absolute;bottom:14px;right:16px;color:var(--tertiary-label);font-size:.9rem;transition:color .2s}
        .dash-card:hover .dc-arrow{color:var(--accent-blue)}


        .guest-layout{display:flex;flex:1;overflow:hidden}


        .guest-left{width:var(--g-left);flex-shrink:0;background:var(--glass-bg-light);
            backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);
            border-right:.5px solid var(--ipad-border);display:flex;flex-direction:column;overflow:hidden}
        .glp-top{padding:12px;border-bottom:.5px solid var(--g-border);flex-shrink:0}
        .glp-title{font-size:.8rem;font-weight:700;color:var(--accent-blue);margin-bottom:8px;display:flex;align-items:center;gap:6px}
        .gupload{border:1px dashed var(--g-br2);border-radius:var(--g-rad2);padding:10px 12px;cursor:pointer;
            transition:all .18s;display:flex;align-items:center;gap:9px;background:var(--secondary-bg);
            position:relative;overflow:hidden;margin-bottom:8px}
        .gupload:hover{border-color:var(--accent-blue);background:rgba(0,122,255,.05)}
        .gupload input{position:absolute;inset:0;opacity:0;cursor:pointer}
        .gupload .upico{font-size:1.1rem;flex-shrink:0}
        .gupload .upmain{font-size:.78rem;font-weight:600;color:var(--label)}
        .gupload .upsub{font-size:.68rem;color:var(--secondary-label);margin-top:1px}
        .gupload.done{border-color:var(--g-gr);border-style:solid;background:rgba(48,209,88,.04)}
        .gsearch{display:flex;gap:6px}
        .gsearch input{flex:1;padding:7px 10px;border-radius:6px;border:.5px solid var(--g-br2);
            background:var(--secondary-bg);color:var(--label);font-size:.78rem;outline:none;font-family:inherit}
        .gsearch input:focus{border-color:var(--g-purple)}
        .gdatenav{display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:.5px solid var(--g-border);flex-shrink:0}
        .gdbtn{width:30px;height:30px;border-radius:50%;border:.5px solid var(--g-br2);
            background:var(--secondary-bg);color:var(--label);font-weight:800;cursor:pointer;font-family:inherit}
        .gdbtn:hover{border-color:var(--accent-blue);color:var(--accent-blue)}
        .gdcur{flex:1;text-align:center;font-weight:800;font-size:.82rem;font-family:'IBM Plex Mono',monospace;color:var(--label)}
        .gdtoday{padding:7px 10px;border-radius:999px;border:.5px solid var(--g-br2);
            background:var(--secondary-bg);color:var(--accent-blue);font-size:.72rem;font-weight:800;cursor:pointer;font-family:inherit}
        .gstrip{display:flex;gap:5px;padding:7px 10px;overflow-x:auto;border-bottom:.5px solid var(--g-border);flex-shrink:0}
        .gstrip::-webkit-scrollbar{height:2px}
        .gpill{padding:5px 10px;border-radius:999px;border:.5px solid var(--g-br2);font-size:.7rem;font-weight:800;
            cursor:pointer;white-space:nowrap;background:var(--secondary-bg);color:var(--secondary-label);
            font-family:'IBM Plex Mono',monospace;flex-shrink:0;transition:all .13s}
        .gpill.on{background:var(--g-purple);border-color:var(--g-purple);color:#fff}
        .grescnt{font-size:.68rem;color:var(--secondary-label);padding:5px 10px;border-bottom:.5px solid var(--g-border);flex-shrink:0}
        .greslist{flex:1;overflow-y:auto;padding:8px}
        .greslist::-webkit-scrollbar{width:3px}
        .greslist::-webkit-scrollbar-thumb{background:var(--g-br2);border-radius:2px}
        .grrow{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:var(--g-rad2);
            border:.5px solid var(--g-border);background:var(--secondary-bg);margin-bottom:6px;cursor:pointer;transition:all .13s}
        .grrow:hover{border-color:var(--g-purple);background:rgba(88,86,214,.06)}
        .grrow.sel{border-color:var(--g-purple);background:rgba(88,86,214,.15)}
        .grrow.registered{border-color:rgba(48,209,88,.3);background:rgba(48,209,88,.04)}
        .grnum{width:24px;height:24px;border-radius:5px;background:var(--tertiary-bg);display:flex;align-items:center;
            justify-content:center;font-size:.68rem;font-weight:700;color:var(--secondary-label);
            font-family:'IBM Plex Mono',monospace;flex-shrink:0}
        .grrow.sel .grnum{background:var(--g-purple);color:#fff}
        .grrow.registered .grnum{background:rgba(48,209,88,.2);color:var(--g-gr)}
        .grinfo{flex:1;min-width:0}
        .grname{font-weight:700;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .grmeta{display:flex;gap:6px;color:var(--secondary-label);font-size:.68rem;margin-top:1px;flex-wrap:wrap}
        .gsbadge{display:inline-flex;align-items:center;padding:1px 6px;border-radius:8px;font-size:.63rem;font-weight:700}
        .gs-CONFIRMED{background:rgba(48,209,88,.15);color:var(--g-gr);border:1px solid rgba(48,209,88,.35)}
        .gs-PENDING{background:rgba(255,204,0,.15);color:var(--g-ye);border:1px solid rgba(255,204,0,.35)}
        .gs-OPEN{background:rgba(90,200,250,.12);color:var(--g-teal);border:1px solid rgba(90,200,250,.3)}
        .gs-CLOSED{background:rgba(120,120,128,.16);color:var(--secondary-label)}
        .gs-CANCELLED{background:rgba(255,69,58,.12);color:var(--g-rd);border:1px solid rgba(255,69,58,.3)}
        .gregmark{font-size:.65rem;color:var(--g-gr);font-weight:700}
        .gnodata{text-align:center;padding:24px;color:var(--secondary-label);font-size:.8rem}


        .guest-right{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--system-bg)}
        .grscroll{flex:1;overflow-y:auto;padding:16px 18px}
        .grscroll::-webkit-scrollbar{width:4px}
        .grscroll::-webkit-scrollbar-thumb{background:var(--g-br2);border-radius:2px}
        .gbb{display:none;background:var(--secondary-bg);border:.5px solid var(--g-br2);
            border-left:3px solid var(--accent-blue);border-radius:var(--g-rad2);padding:11px 14px;margin-bottom:14px}
        .gbb.show{display:block}
        .gbb-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}
        .gbb-lbl{font-size:.67rem;color:var(--secondary-label);font-weight:700;letter-spacing:1px;text-transform:uppercase}
        .gbb-clr{cursor:pointer;color:var(--g-rd);font-size:.78rem;font-weight:600}
        .gbb-chips{display:flex;gap:6px;flex-wrap:wrap}
        .gchip{display:inline-flex;align-items:center;gap:4px;background:var(--tertiary-bg);
            border:1px solid var(--g-br2);padding:3px 9px;border-radius:5px;font-size:.74rem}
        .gchip-l{color:var(--secondary-label);font-size:.64rem}
        .gchip-v{color:var(--label);font-weight:600;font-family:'IBM Plex Mono',monospace}
        .gwalk{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--secondary-bg);
            border:.5px solid var(--g-br2);border-radius:var(--g-rad);margin-bottom:14px;cursor:pointer;
            transition:all .15s;font-size:.8rem;font-weight:600;color:var(--secondary-label)}
        .gwalk:hover{border-color:var(--g-gr);color:var(--g-gr)}
        .gwalk.on{border-color:var(--g-gr);border-width:2px;background:rgba(48,209,88,.07);color:var(--g-gr)}
        .gcard{background:var(--glass-bg-light);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);
            border:.5px solid var(--ipad-border);border-radius:var(--g-rad2);padding:12px 14px;margin-bottom:9px}
        .gcard-hd{font-size:.82rem;font-weight:800;color:var(--accent-blue);margin-bottom:9px;
            display:flex;align-items:center;gap:6px;padding-bottom:7px;border-bottom:.5px solid var(--g-border)}
        .gfrow{display:flex;gap:8px;margin-bottom:7px;flex-wrap:wrap}
        .gfield{flex:1;min-width:110px}
        .gfield label{display:block;font-size:.67rem;color:var(--secondary-label);margin-bottom:3px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}
        .gfield input,.gfield select{width:100%;padding:7px 9px;border-radius:var(--g-rad);
            border:.5px solid var(--g-br2);background:var(--system-bg);color:var(--label);font-size:.82rem;font-family:inherit;outline:none}
        .gfield input:focus,.gfield select:focus{border-color:var(--accent-blue)}
        .gdual{display:flex;gap:7px}
        .gdual .gfield{flex:1}
        .kinp{border-left:3px solid var(--g-ye)}
        .einp{border-left:3px solid var(--g-teal)}
        .ggc{background:var(--fill-quaternary);border:.5px solid var(--g-border);border-radius:var(--g-rad2);padding:8px 10px;margin-bottom:6px}
        .ggline{display:grid;grid-template-columns:24px 1fr 1fr .9fr 1fr;gap:7px;align-items:end}
        .ggcn{width:22px;height:22px;border-radius:50%;background:var(--accent-blue);color:#fff;
            display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700}
        .grbtm{flex-shrink:0;padding:12px 18px;border-top:.5px solid var(--g-border);
            background:var(--glass-bg-light);backdrop-filter:var(--glass-blur);
            -webkit-backdrop-filter:var(--glass-blur);display:flex;gap:8px;align-items:center}
        .gbtn{padding:11px 22px;border-radius:999px;border:none;font-size:.84rem;font-weight:800;cursor:pointer;font-family:inherit}
        .gbtn-save{background:var(--accent-blue);color:#fff;flex:1}
        .gbtn-save:hover{filter:brightness(1.1)}
        .gbtn-reset{background:var(--fill-secondary);color:var(--label);border:1px solid var(--g-br2)}
        .gregsec{margin-bottom:14px}
        .gregltitle{font-size:.7rem;font-weight:700;color:var(--secondary-label);letter-spacing:.8px;
            text-transform:uppercase;margin-bottom:7px;display:flex;align-items:center;gap:6px}
        .gregitem{display:flex;align-items:center;justify-content:space-between;padding:9px 11px;
            border-radius:var(--g-rad2);background:var(--secondary-bg);border:.5px solid var(--g-border);
            margin-bottom:5px;cursor:pointer}
        .gregitem:hover{background:var(--tertiary-bg)}
        .griname{font-weight:600;font-size:.84rem}
        .grien{color:var(--g-teal);font-size:.74rem;margin-left:4px}
        .griright{display:flex;align-items:center;gap:7px}
        .gritime{color:var(--secondary-label);font-size:.7rem;font-family:'IBM Plex Mono',monospace}
        .gripax{color:var(--accent-blue);font-size:.7rem;font-weight:600}
        .grtag{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;border-radius:7px;font-size:.62rem;font-weight:700;margin-left:4px}
        .grtag-r{background:rgba(88,86,214,.13);border:1px solid rgba(88,86,214,.35);color:var(--g-purple)}
        .grtag-w{background:rgba(48,209,88,.1);border:1px solid rgba(48,209,88,.3);color:var(--g-gr)}
        .gemptyreg{text-align:center;padding:20px;color:var(--secondary-label);font-size:.78rem}


        .gtoast{position:fixed;top:62px;right:16px;z-index:400;/* zi-400 */padding:10px 16px;border-radius:var(--g-rad);
            font-weight:600;font-size:.8rem;transform:translateX(130%);transition:transform .2s ease;
            box-shadow:var(--shadow-lg);max-width:250px}
        .gtoast.show{transform:translateX(0)}
        .gtoast.success{background:var(--g-gr);color:#000}
        .gtoast.error{background:var(--g-rd);color:#fff}
        .gtoast.info{background:var(--accent-blue);color:#fff}

        @media(max-width:768px){
            .guest-layout{flex-direction:column}
            .guest-left{width:100%;height:360px;border-right:none;border-bottom:1px solid var(--g-border)}
            .guest-right{height:auto}
            .grscroll{overflow:visible}
            .gfrow{flex-direction:column}
            .gdual{flex-direction:column}.gfield{min-width:100%}
            .ggline{grid-template-columns:24px 1fr}
            .ggline .gfield:nth-child(n+4){grid-column:2}
        }
/* 배경 스택: mesh(-1) < login-bg(0) < backdrop(2) */
.bg{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background-size:cover;background-position:center}
.bg-layer{opacity:0;background-size:cover;background-position:center;transition:opacity 1.5s ease}
.bg-layer.active{opacity:1}
.bg::after{content:"";position:absolute;inset:0;z-index:2;/* zi-2 */background:rgba(5,11,20,0.15);backdrop-filter:blur(14px) saturate(120%);-webkit-backdrop-filter:blur(14px) saturate(120%);pointer-events:none}
.mesh-gradient{position:fixed;inset:0;z-index:-1;/* 맨 아래 배경 */background:linear-gradient(rgba(5,11,20,0.35),rgba(5,11,20,0.35)),var(--theme-gradient);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);overflow:hidden;pointer-events:none}
.mesh-blob{position:absolute;width:800px;height:800px;border-radius:50%;filter:blur(20px);opacity:.6;mix-blend-mode:normal;animation:meshMove 25s infinite alternate ease-in-out;will-change:transform}
  .blob-1{background:radial-gradient(circle,rgba(47,128,237,0.7));top:-200px;left:-200px;animation-duration:30s}
  .blob-2{background:radial-gradient(circle,rgba(255,105,97,0.7));bottom:-300px;right:-100px;animation-duration:35s;animation-delay:-5s}
  .blob-3{background:radial-gradient(circle,rgba(48,217,88,0.7));top:10%;right:10%;animation-duration:28s;animation-delay:-10s}
  .blob-4{background:radial-gradient(circle,rgba(197,160,89,0.7));bottom:10%;left:10%;animation-duration:32s;animation-delay:-15s}
@keyframes meshMove{0%{transform:translate(0,0) scale(1) rotate(0)}33%{transform:translate(100px,150px) scale(1.2) rotate(45deg)}66%{transform:translate(-150px,50px) scale(.8) rotate(-45deg)}100%{transform:translate(0,0) scale(1) rotate(0)}}
 .login-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,0.22);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:8px;vertical-align:-2px}
@keyframes spin{to{transform:rotate(360deg)}}
/* ── z-index 계층 ── */
.zi-0{position:fixed;z-index:0}/* login-bg base */
.zi-1{position:fixed;z-index:1}/* mesh-gradient */
.zi-2{position:fixed;z-index:2}/* login-bg::after */
.zi-10{position:fixed;z-index:10}/* topbar */
.zi-50{position:fixed;z-index:50}/* sub results */
.zi-100{position:fixed;z-index:100}/* mac-menubar */
.zi-150{position:fixed;z-index:150}/* dropdown/menu */
.zi-200{position:fixed;z-index:200}/* modal overlay */
.zi-250{position:fixed;z-index:250}/* register overlay */
.zi-300{position:fixed;z-index:300}/* docs modal */
.zi-350{position:fixed;z-index:350}/* docs panel */
.zi-400{position:fixed;z-index:400}/* global toast */
.zi-450{position:fixed;z-index:450}/* popup toast */
.zi-500{position:fixed;z-index:500}/* document toast */
.zi-550{position:fixed;z-index:550}/* card print overlay */
.zi-600{position:fixed;z-index:600}/* topbar layer2 */
.zi-650{position:fixed;z-index:650}/* popup/dropdown layer2 */
.zi-700{position:fixed;z-index:700}/* dynamic sheet */
.zi-750{position:fixed;z-index:750}/* apple modal overlay */
.zi-800{position:fixed;z-index:800}/* apple toast */
.dynamic-type-sheet {
position: fixed;
inset: 0;
z-index:700;
/* zi-700 */
pointer-events: none;
}
.dynamic-type-sheet[hidden] { display: none; }
.dynamic-type-sheet.open { pointer-events: auto; }
.dynamic-type-sheet-backdrop {
position: absolute;
background: rgba(0, 0, 0, 0);
transition: background var(--duration-base, 350ms) var(--ease-in-out, ease);
}
.dynamic-type-sheet.open .dynamic-type-sheet-backdrop {
background: rgba(0, 0, 0, 0.35);
}
.dynamic-type-sheet-card {
left: 50%;
bottom: 0;
transform: translate(-50%, 100%);
width: min(560px, 100%);
background: var(--glass-bg-light, rgba(255,255,255,0.72));
backdrop-filter: var(--glass-blur, blur(40px) saturate(180%));
-webkit-backdrop-filter: var(--glass-blur, blur(40px) saturate(180%));
border-radius: var(--radius-xl, 28px) var(--radius-xl, 28px) 0 0;
box-shadow: var(--shadow-xl, 0 16px 48px rgba(0,0,0,0.14));
padding: var(--space-3, 12px) var(--space-5, 20px) var(--space-6, 24px);
transition: transform var(--duration-base, 350ms) var(--spring-ios, cubic-bezier(0.32, 0.72, 0.00, 1.00));
}
.dynamic-type-sheet.open .dynamic-type-sheet-card {
transform: translate(-50%, 0);
}
.dynamic-type-sheet-handle {
width: 40px;
height: 5px;
background: var(--quaternary-label, rgba(60, 60, 67, 0.3));
border-radius: var(--capsule-radius, 999px);
margin: 0 auto var(--space-4, 16px);
}
.dynamic-type-sheet-title {
font-size: var(--type-title3, 20px);
font-weight: var(--weight-bold, 700);
color: var(--label, #000);
margin: 0 0 var(--space-4, 16px);
text-align: center;
}
.dynamic-type-slider {
-webkit-appearance: none;
appearance: none;
width: 100%;
height: 6px;
border-radius: 3px;
background: linear-gradient(to right,
var(--accent-blue, #007AFF) 0%,
var(--accent-blue, #007AFF) var(--type-progress, 50%),
var(--fill-tertiary, rgba(118,118,128,0.12)) var(--type-progress, 50%),
var(--fill-tertiary, rgba(118,118,128,0.12)) 100%);
margin: 16px 0 24px;
cursor: pointer;
}
.dynamic-type-slider::-webkit-slider-thumb {
width: 28px;
height: 28px;
border-radius: 50%;
background: var(--ipad-text, #FFFFFF);
border: 0.5px solid var(--separator, rgba(60,60,67,0.15));
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
transition: transform 200ms var(--spring-bouncy, cubic-bezier(0.34, 1.56, 0.64, 1));
}
.dynamic-type-slider::-webkit-slider-thumb:hover { transform: scale(1.1); }
.dynamic-type-sample {
padding: 16px 20px;
background: var(--secondary-bg, #fff);
border-radius: var(--radius-md, 14px);
margin-bottom: 16px;
}
.dynamic-type-sample-text {
font-size: calc(17px * var(--type-mult, 1));
font-weight: 500;
transition: font-size 300ms var(--spring-ios, cubic-bezier(0.32, 0.72, 0.00, 1.00));
line-height: 1.4;
}
.dynamic-type-stages {
display: flex;
justify-content: space-between;
font-size: 13px;
color: var(--tertiary-label, rgba(60,60,67,0.6));
padding: 0 4px;
}
.dynamic-type-stages button {
background: none;
border: none;
padding: 0;
font: inherit;
color: inherit;
align-items: center;
justify-content: center;
min-width: 28px;
border-radius: 6px;
transition: background 150ms, transform 100ms;
}
.dynamic-type-stages button:hover { background: var(--fill-secondary, rgba(120,120,128,0.16)); }
.dynamic-type-stages button:active { transform: scale(0.92); }
.dynamic-type-stages button.active { background: var(--accent-blue, #007AFF); color: #fff; }
.dynamic-type-stages button.active span b { color: #fff; }
.dynamic-type-reset {
display: block;
margin: 0 auto;
padding: 8px 20px;
background: var(--fill-tertiary, rgba(118,118,118,0.12));
color: var(--accent-blue, #007AFF);
border-radius: var(--radius-pill, 999px);
font-size: 14px;
transition: background 150ms;
}
.dynamic-type-reset:hover { background: var(--fill-secondary, rgba(120,120,128,0.16)); }
.dynamic-type-reset:active { transform: scale(0.96); }

@keyframes toastIn {
  from { opacity: 0; transform: translateY(-12px); }
  to   { opacity: 1; transform: translateY(0); }
}
.webp-toast-msg {
  position: fixed;
  top: 20px;
  right: 20px;
  padding: 12px 20px;
  border-radius: var(--radius-lg, 14px);
  color: var(--label, #000);
  font-weight: 600;
  font-family: var(--font-system, -apple-system, BlinkMacSystemFont, sans-serif);
  font-size: 0.9rem;
  z-index:800;/* zi-800 */
  animation: toastIn .3s var(--spring-ios, cubic-bezier(0.32, 0.72, 0.00, 1.00));
  box-shadow: var(--shadow-lg, 0 8px 24px rgba(0,0,0,0.10));
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
}
.toast-ok  { background: rgba(52, 199, 89, 0.92); color: #fff; }
.toast-err { background: rgba(255, 59, 48, 0.92); color: #fff; }
.toast-warn{ background: rgba(255, 149, 0, 0.92); color: #fff; }
.doc-modal-overlay {
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(24px) saturate(180%);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  z-index:750;/* zi-750 */
  display: none;
  padding: 24px;
}
.doc-modal-overlay.active,
.doc-modal-overlay.open { display: flex; }
@keyframes fadeInDoc { from{opacity:0} to{opacity:1} }
.doc-modal-box {
  background: var(--secondary-bg, #FFFFFF);
  border: 0.5px solid var(--separator, rgba(60,60,67,0.15));
  border-radius: var(--radius-2xl, 36px);
  box-shadow: var(--shadow-xl, 0 16px 48px rgba(0,0,0,0.14));
  width: 100%;
  max-width: 35%;
  max-height: 100vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.doc-modal-head {
  justify-content: space-between;
  padding: 20px 28px;
  border-bottom: 0.5px solid var(--separator, rgba(60,60,67,0.15));
  flex-shrink: 0;
}
.doc-modal-head h5 {
  margin: 0;
  font-size: 1.1rem;
  font-weight: 800;
  letter-spacing: -0.3px;
  gap: 10px;
}
.icon-gold { color: var(--accent-yellow, #FFCC00); }
.doc-modal-close {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: none;
  background: var(--fill-tertiary, rgba(118,118,128,0.12));
  line-height: 1;
  display: grid;
  place-items: center;
  transition: background .15s ease;
}
.doc-modal-close:hover { background: var(--fill-secondary, rgba(120,120,128,0.16)); }
.doc-modal-close:active { transform: scale(0.94); }
.doc-modal-body {
  padding: 28px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.doc.webp-canvas-wrap {
  display: flex;
  justify-content: center;
  background: var(--tertiary-bg, #E5E5EA);
  border-radius: var(--radius-xl, 28px);
  padding: 16px;
}
.doc.webp-canvas {
  max-width: 100%;
  height: auto;
  border-radius: var(--radius-lg, 20px);
  background: var(--ipad-text, #FFFFFF);
  box-shadow: var(--shadow-md, 0 2px 6px rgba(0,0,0,0.08));
}
.doc.webp-reverse-wrap {
  margin-top: 12px;
  display: none;
}
.doc.webp-reverse-label {
  display: inline-flex;
  gap: 8px;
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--secondary-label, #3C3C43);
  margin-bottom: 8px;
}
.doc.webp-reverse-img {
  width: 100%;
  border: 0.5px solid var(--separator, rgba(60,60,67,0.15));
}
.webp-state {
  display: flex;
  gap: 12px;
  padding: 48px 24px;
  color: var(--tertiary-label, rgba(60,60,67,0.6));
}
[hidden] + .webp-state,
.webp-state[hidden] { display: none; }
.webp-state-icon { font-size: 2rem; opacity: 0.6; }
.webp-state-text { margin: 0; font-size: 0.95rem; font-weight: 600; }
.webp-state--error .webp-state-icon { color: var(--accent-red, #FF3B30); }
.webp-state--error .webp-state-text { color: var(--accent-red, #FF3B30); }
.webp-state--empty .webp-state-icon { color: var(--tertiary-label, rgba(60,60,67,0.6)); }
.doc.webp-actions {
  gap: 20%;
  padding: 4px;
  border-top: 1px solid var(--separator, rgba(60,60,67,0.15));
  justify-content: flex-end;
}
.webp-btn {
  height: 42px;
  padding: 0 18px;
  border-radius: var(--radius-pill, 999px);
  border: none;
  font-size: 0.95rem;
  letter-spacing: -0.2px;
  display: inline-flex;
  gap: 8px;
  transition: transform .15s var(--spring-ios, cubic-bezier(0.32,0.72,0.00,1.00)),
  opacity .15s ease,
  background .15s ease;
}
.webp-btn:active { transform: scale(0.96); opacity: 0.88; }
.webp-btn--print {
  background: var(--fill-secondary, rgba(120,120,128,0.16));
  color: var(--label, #000);
}
.webp-btn--save {
  background: var(--accent-blue, #007AFF);
  color: #fff;
}
.webp-btn--save:hover { opacity: 0.92; }
.webp-btn--close {
  background: var(--fill-tertiary, rgba(118,118,128,0.12));
  color: var(--label, #000);
}
.doc-viewer-empty { text-align:center; padding:40px 20px; color:var(--royal-text-muted); }
.doc-viewer-empty i { font-size:2.5rem; opacity:0.3; margin-bottom:10px; display:block; }
.doc-viewer-empty p { margin:0; }
.doc-viewer-docs-grid { display:grid; grid-template-columns:1fr; gap:8px; margin-top:4px; }
.doc-viewer-doc-card {
display:flex; align-items:center; gap:10px; padding:10px 12px;
border:1px solid var(--royal-border-glass,rgba(197,160,89,0.2)); border-radius:10px;
background:var(--ipad-text, #FFFFFF); cursor:pointer; transition:all 0.15s;
}
.doc-viewer-doc-card:hover { border-color:var(--RoyalGold-500,#C5A059); background:rgba(197,160,89,0.04); box-shadow:0 2px 8px rgba(197,160,89,0.08); }
.doc-viewer-doc-card .doc-thumb {
width:44px; height:44px; border-radius:6px; overflow:hidden; flex-shrink:0;
display:flex; align-items:center; justify-content:center; background:rgba(197,160,89,0.06);
}
.doc-viewer-doc-card .doc-thumb img { width:100%; height:100%; object-fit:cover; }
.doc-viewer-doc-card .doc-thumb i { font-size:1.3rem; }
.doc-viewer-doc-card .doc-card-info { flex:1; min-width:0; }
.doc-viewer-doc-card .doc-card-name {
font-weight:700; font-size:0.82rem; color:var(--royal-text-primary);
white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.doc-viewer-doc-card .doc-card-meta { font-size:0.68rem; color:var(--royal-text-secondary); margin-top:2px; }
.doc-viewer-doc-card .doc-card-actions { display:flex; gap:4px; flex-shrink:0; }
.doc-viewer-tabs { display:flex; gap:4px; margin-bottom:12px; flex-wrap:wrap; }
.doc-viewer-tab {
padding:5px 5px; border-radius:8px; font-size:0.78rem; font-weight:600;
cursor:pointer; transition:all 0.2s; background:var(--glass-bg-light, rgba(14,21,36,0.78));
color:var(--royal-text-secondary); border:1px solid rgba(39,39,39,0.4);
display:inline-flex; align-items:center; gap:4px;
}
.doc-viewer-tab:hover { background:rgba(197,160,89,0.1); color:var(--royal-text-primary); }
.doc-viewer-tab.active {
background:var(--royal-surface-glass,rgba(255,255,255,0.1)); color:var(--RoyalGold-500,#C5A059);
border-color:var(--royal-border-glass); box-shadow:0 2px 8px rgba(197,160,89,0.15);
}
.doc-viewer-tab .tab-badge {
display:inline-block; background:rgba(197,160,89,0.18); color:var(--RoyalGold-500,#C5A059);
border-radius:10px; padding:1px 6px; font-size:0.65rem; font-weight:700; min-width:16px; text-align:center;
}
.doc-viewer-tab.active .tab-badge { background:var(--RoyalGold-500,#C5A059); color:#fff; }
.doc-upload-zone {
border:2px dashed rgba(197,160,89,0.35); border-radius:12px; padding:24px;
text-align:center; cursor:pointer; transition:all 0.2s; background:rgba(197,160,89,0.04);
}
.doc-upload-zone:hover { border-color:var(--RoyalGold-500,#C5A059); background:rgba(197,160,89,0.08); }
.doc-upload-zone i { font-size:2rem; color:var(--RoyalGold-500); margin-bottom:8px; display:block; }
.doc-upload-zone p { margin:4px 0; font-size:0.85rem; color:var(--royal-text-secondary); }
.doc-upload-zone .upload-hint { font-size:0.72rem; color:var(--royal-text-muted); }
.doc-list { margin-top:16px; }
.doc-list-item {
display:flex; align-items:center; gap:12px; padding:12px 14px;
border:1px solid var(--royal-border-glass,rgba(197,160,89,0.2)); border-radius:10px;
margin-bottom:8px; background:rgba(255,255,255,0.5); transition:all 0.15s;
}
.doc-list-item:hover { background:rgba(255,255,255,0.8); border-color:rgba(197,160,89,0.4); }
.doc-icon { font-size:1.4rem; flex-shrink:0; }
.doc-icon.icon.webp { color:#dc3545; }
.doc-icon.icon-img { color:#0ea5e9; }
.doc-icon.icon-doc { color:#6366f1; }
.doc-icon.icon-default { color:#94a3b8; }
.doc-info { flex:1; min-width:0; }
.doc-name {
font-weight:700; font-size:0.85rem; color:var(--royal-text-primary);
}
.doc-meta { font-size:0.72rem; color:var(--royal-text-secondary); margin-top:2px; }
.doc-actions { display:flex; gap:6px; flex-shrink:0; }
.doc-btn {
padding:4px 10px; font-size:0.7rem; border-radius:6px; border:1px solid; cursor:pointer;
background:rgba(39,39,39,0.4); display:inline-flex; align-items:center; gap:4px; font-weight:600;
transition:all 0.15s;
}
.doc-btn-view { color:#38bdf8; border-color:rgba(56,189,248,0.3); }
.doc-btn-view:hover { background:rgba(56,189,248,0.1); }
.doc-btn-del { color:#ef4444; border-color:rgba(239,68,68,0.3); }
.doc-btn-del:hover { background:rgba(239,68,68,0.1); }
.doc-empty { text-align:center; padding:30px 10px; color:var(--royal-text-muted); }
.doc-empty i { font-size:2rem; opacity:0.3; margin-bottom:8px; display:block; }
.doc-upload-form { margin-top:12px; display:none; }
.doc-upload-form.active { display:block; }
.doc-upload-form select,
.doc-upload-form input[type="text"] {
width:100%; padding:8px 12px; border:1px solid var(--royal-border-glass-hover);
border-radius:8px; font-size:0.85rem; margin-bottom:8px; background:var(--ipad-text, #FFFFFF);
color:var(--royal-text-primary);
}
.doc-upload-form select:focus,
.doc-upload-form input[type="text"]:focus { outline:none; border-color:var(--RoyalGold-500); }
.doc-upload-form .btn-submit {
padding:8px 20px; background:var(--RoyalGold-gradient); color:#fff; border:none;
border-radius:8px; font-weight:700; cursor:pointer; font-size:0.85rem;
}
.doc-upload-form .btn-submit:hover { opacity:0.9; }
.doc-upload-form .btn-cancel {
padding:8px 14px; background:rgba(39,39,39,0.4); border:1px solid var(--royal-border-glass);
border-radius:8px; font-weight:600; cursor:pointer; font-size:0.85rem; color:var(--royal-text-secondary);
}

:root, * {
-webkit-tap-highlight-color: rgba(39,39,39,0.4);
box-sizing: border-box;
}

html, body {
padding: 0;
overflow-x: hidden;
}

body {
  background-color: transparent ;
  color:var(--label)   ;
font-family: var(--font-system), sans-serif;
font-size: var(--type-body);
line-height: 1.42;
font-weight: var(--weight-regular);
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-rendering: optimizeLegibility;
font-feature-settings: "ss01", "ss02", "cv01", "cv11";
background-attachment: fixed;
background-repeat: no-repeat;
background-size: cover;
transition: background-color var(--duration-slow, 500ms) var(--spring-soft),
color var(--duration-slow, 500ms) var(--spring-soft),
background-image var(--duration-slow, 1500ms) var(--spring-soft);
}

[data-color-scheme="auto"]:not([data-theme]) body,
[data-color-scheme="auto"][data-theme="dark"] body

a { color: var(--accent-brand); text-decoration: none; }
button { font-family: inherit; cursor: pointer; }
input, select, textarea { font-family: inherit; }

.member-card,
.glass-card {
background: var(--glass-bg);
backdrop-filter: var(--glass-blur);
-webkit-backdrop-filter: var(--glass-blur);
border: 0.5px solid var(--glass-border);
border-radius: var(--radius-card);
box-shadow: var(--glass-shadow), inset 0 1px 0 var(--glass-highlight);
margin-bottom: var(--space-5);
position: relative;
transition: transform var(--duration-base) var(--spring-soft),
box-shadow var(--duration-base) var(--spring-soft);
}

.member-card::before,
.glass-card::before {
content: "";
position: absolute;
border-radius: inherit;
background: linear-gradient(180deg,
rgba(255, 255, 255, 0.10) 0%,
rgba(255, 255, 255, 0.00) 30%,
rgba(255, 255, 255, 0.00) 100%);
mix-blend-mode: overlay;
}

.primary-member {
padding: var(--space-5) var(--space-5);
display: flex;
gap: var(--space-4);
}

.primary-member .avatar-circle {
width: 60px;
height: 60px;
border-radius: 50%;
background: var(--accent-blue, #007AFF);
justify-content: center;
color: #fff;
font-weight: var(--weight-heavy);
font-size: 22px;
box-shadow: 0 4px 14px rgba(0, 122, 255, 0.30),
inset 0 1px 0 rgba(255, 255, 255, 0.20);
}

.primary-member .info-main { flex: 1; min-width: 0; }
.primary-member .name {
font-size: var(--type-title3);
font-weight: var(--weight-bold);
display: block;
color: var(--label);
letter-spacing: -0.4px;
}
.primary-member .sub {
font-size: var(--type-footnote);
color: var(--tertiary-label);
margin-top: 2px;
}

.sub-avatar-strip {
display: flex;
flex-wrap: wrap;
gap: var(--space-5);
padding: var(--space-4) var(--space-5) var(--space-5);
background: var(--fill-quaternary);
border-top: var(--hairline);
}

.avatar-item {
width: 56px;
}

.avatar-box {
width: 50px;
height: 50px;
background: var(--tertiary-bg);
margin-bottom: var(--space-2);
border: 0.5px solid var(--separator);
font-size: 16px;
font-weight: var(--weight-semibold);
transition: transform var(--duration-fast) var(--spring-bouncy);
}

.avatar-box:active { transform: scale(0.92); }
 .nmw-body { padding: 16px; }
  .nmw-columns { display:flex; gap:16px; min-height:0; }
  .nmw-col-title { font-size:12px; font-weight:800; color:#C5A059; text-transform:uppercase; letter-spacing:.08em; margin-bottom:12px; padding-bottom:6px; border-bottom:2px solid rgba(197,160,89,0.2); display:flex; align-items:center; gap:6px; }
  .nmw-fgroup { margin-bottom:12px; }
  .nmw-fgroup label { display:block; font-size:11px; font-weight:700; color:#888; letter-spacing:.05em; margin-bottom:4px; text-transform:uppercase; }
  .nmw-fgroup input,.nmw-fgroup select { width:100%; padding:8px 10px; border:1px solid rgba(255,255,255,0.12); border-radius:7px; font-size:13px; background:rgba(255,255,255,0.06); color:#fff; box-sizing:border-box; }
  .nmw-fgroup input:focus,.nmw-fgroup select:focus { outline:none; border-color:#C5A059; }
  .nmw-row { display:flex; gap:10px; }
  .nmw-row > * { flex:1; min-width:0; }
  .nmw-photo-box { display:flex; align-items:center; gap:12px; padding:12px; background:transparent; border-radius:10px; border:1px dashed rgba(197,160,89,0.4); cursor:pointer; }
  .nmw-photo-icon { width:56px; height:56px; border-radius:50%; background:rgba(255,255,255,0.06); display:flex; align-items:center; justify-content:center; border:2px solid rgba(197,160,89,0.2); flex-shrink:0; overflow:hidden; }
  .nmw-photo-icon img { width:100%; height:100%; object-fit:cover; }
  .nmw-actions { display:flex; gap:10px; margin-top:6px; justify-content:flex-end; }
  .dup-ok { color:#28a745; font-size:12px; font-weight:600; }
  .dup-fail { color:#dc3545; font-size:12px; font-weight:600; }
  .dup-wait { color:#888; font-size:12px; }
  @media (max-width:768px) { .nmw-row { flex-direction:column; } }

.avatar-name {
font-size: var(--type-caption1);
font-weight: var(--weight-medium);
color: var(--secondary-label);
text-align: center;
white-space: nowrap;
text-overflow: ellipsis;
width: 100%;
}

.apple-header {
height: calc(5.5% + var(--status-bar-h));
padding: var(--status-bar-h) var(--space-4) 0;
justify-content: space-between;
background: var(--glass-bg-light);
border-bottom: var(--hairline);
position: fixed;
display: flex;
top: 0;
left: 0;
right: 0;
z-index:600;/* zi-600 */
-webkit-app-region: drag;
}
/* 드래그 영역 안의 클릭 요소는 no-drag로 재설정해야 클릭이 동작함 */
.apple-header .hdr-icon-btn,
.apple-header .theme-dropdown,
.apple-header .theme-dropdown-menu,
.apple-header .search-input-group,
.apple-header input,
.apple-header select,
.apple-header button,
.apple-header a,
.macos-traffic-light,
.macos-traffic-light button {
  -webkit-app-region: no-drag;
}
.apple-header .search-input-group { width: 100px; min-width: 80px; }
.apple-header .search-input-group input { width: 100%; }

.ipad-floating-tab-bar {
bottom: calc(var(--space-3) + var(--home-bar-h));
left: 50%;
transform: translateX(-50%);
gap: var(--space-1);
padding: var(--space-2);
border: 0.5px solid var(--glass-border);
border-radius: var(--radius-pill);
box-shadow: var(--shadow-lg), inset 0 1px 0 var(--glass-highlight);
z-index:500;/* zi-500 */
}

.ipad-tab-item {
gap: var(--space-2);
padding: var(--space-2) var(--space-4);
font-size: var(--type-footnote);
font-weight: var(--weight-semibold);
text-decoration: none;
transition: all var(--duration-fast) var(--spring-soft);
}

.ipad-tab-item:hover {
background: var(--fill-quaternary);
color: var(--label);
}

.ipad-tab-item.active {
background: var(--accent-brand);
color: #fff;
box-shadow: 0 2px 8px rgba(0, 122, 255, 0.30);
}

.ipad-tab-item i { font-size: 16px; }

.dynamic-island {
width: 126px;
height: 37px;
background: var(--dynamic-island-bg);
border-radius: var(--capsule-radius);
position: relative;
}

.dynamic-island .island-content {
position: absolute;
justify-content: center;
font-size: var(--type-caption2);
}

.btn-apple {
display: inline-flex;
padding: var(--space-3) var(--space-5);
background: var(--accent-brand);
border: none;
border-radius: var(--radius-pill);
font-size: var(--type-headline);
letter-spacing: -0.2px;
cursor: pointer;
transition: transform var(--duration-fast) var(--spring-soft),
opacity var(--duration-fast) var(--ease-in-out);
box-shadow: 0 2px 8px rgba(0, 122, 255, 0.25);
}

.btn-apple:hover { opacity: 0.92; }
.btn-apple:active { transform: scale(0.97); opacity: 0.85; }

.btn-apple-secondary {
background: var(--fill-secondary);
color: var(--label);
box-shadow: none;
}

.btn-apple-ghost {
background: transparent;
color: var(--accent-brand);
}

.list-apple {
background: var(--glass-bg-light);
border-radius: var(--radius-md);
margin: var(--space-3) 0;
}

.list-apple-item {
display: flex;
gap: var(--space-3);
padding: var(--space-3) var(--space-4);
transition: background-color var(--duration-fast) var(--ease-in-out);
}

.list-apple-item:last-child { border-bottom: none; }
.list-apple-item:active { background: var(--fill-quaternary); }

@media (prefers-reduced-motion: reduce) {
*, *::before, *::after {
animation-duration: 0.01ms ;
transition-duration: 0.01ms ;
}
}

@media (min-width: 800px) {
.glass-card, .member-card { border-radius: var(--radius-xl); }
.ipad-floating-tab-bar { gap: var(--space-2); padding: var(--space-2) var(--space-3); }
.ipad-tab-item { padding: var(--space-2) var(--space-5); }
}

.home-indicator {
position: fixed;
bottom: var(--space-1);
z-index:999;/* zi-999 */
width: 134px;
height: 5px;
background: var(--label);
border-radius: var(--capsule-radius);
opacity: 0.5;
}

[data-color-scheme="auto"] .home-indicator { background: var(--ipad-text, #FFFFFF); }

[data-color-scheme="auto"] .stat-box,
[data-color-scheme="auto"] .member-card,
[data-color-scheme="auto"] .glass-card,
[data-color-scheme="light"] .stat-box,
[data-color-scheme="light"] .member-card,
[data-color-scheme="light"] .glass-card {
background: var(--ipad-card) ;
border-color: var(--ipad-border) ;
color: var(--ipad-text) ;
}
[data-color-scheme="light"] .stat-box,
[data-color-scheme="light"] .member-card,
[data-color-scheme="light"] .glass-card {
box-shadow: var(--shadow-md) ;
}

[data-color-scheme="light"] .view-header h1 {
color: var(--label);
background: none;
-webkit-background-clip: border-box;
-webkit-text-fill-color: var(--label);
}
[data-color-scheme="auto"] .view-header h1 {
color: #fff;
-webkit-text-fill-color: #fff;
}

[data-color-scheme="light"] .main-lang-switch {
background: var(--fill-tertiary) ;
border-color: var(--separator) ;
}
[data-color-scheme="light"] .main-lang-switch button {
color: var(--secondary-label) ;
}
[data-color-scheme="light"] .main-lang-switch button.active {
background: var(--secondary-bg) ;
color: var(--label) ;
box-shadow: var(--shadow-sm) ;
}

.spa-drawer {
background: var(--bg-drawer) ;
border-right: 1px solid var(--ipad-border) ;
}

[data-color-scheme="light"] .ipad-floating-tab-bar {
background: var(--ipad-tab-bar-bg) ;
border-color: var(--ipad-border) ;
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10), 0 2px 6px rgba(0, 0, 0, 0.06) ;
}
[data-color-scheme="light"] .ipad-tab-item { color: var(--secondary-label); }
[data-color-scheme="light"] .ipad-tab-item:hover { background: var(--fill-quaternary); color: var(--label); }
[data-color-scheme="light"] .ipad-tab-item.active { background: var(--accent-brand) ; color: #fff ; }

[data-color-scheme="light"] .hdr-segmented { background: var(--fill-tertiary) ; }
[data-color-scheme="light"] .hdr-seg-item { color: var(--secondary-label) ; }
[data-color-scheme="light"] .hdr-seg-item.active {
background: var(--secondary-bg) ;
box-shadow: var(--shadow-sm) ;
}

[data-color-scheme="light"] .tint-sheet-card {
background: rgba(255, 255, 255, 0.92) ;
border: 1px solid var(--ipad-border) ;
}

.sf {
display: inline-block;
width: var(--sf-size, 20px);
height: var(--sf-size, 20px);
color: currentColor;
vertical-align: middle;
fill: none;
stroke: currentColor;
stroke-width: 1.75;
stroke-linecap: round;
stroke-linejoin: round;
transition: transform var(--duration-fast) var(--spring-soft);
}
.sf--xs  { --sf-size: 14px; }
.sf--sm  { --sf-size: 16px; }
.sf--md  { --sf-size: 20px; }
.sf--lg  { --sf-size: 28px; }
.sf--xl  { --sf-size: 36px; }
.sf--2xl { --sf-size: 48px; }

.sf--filled { fill: currentColor; stroke: none; }

.sf-hierarchical { fill: currentColor; stroke: none; opacity: 0.95; }

[data-tint="purple"] { --tint-rgb: 175, 82, 222;   --tint-surface: rgba(175, 82, 222, 0.06);   --tint-glow: rgba(175, 82, 222, 0.18); }
[data-tint="pink"]   { --tint-rgb: 255, 55, 95;--tint-surface: rgba(255, 55, 95, 0.06);--tint-glow: rgba(255, 55, 95, 0.18); }
[data-tint="red"]{ --tint-rgb: 255, 59, 48;--tint-surface: rgba(255, 59, 48, 0.06);--tint-glow: rgba(255, 59, 48, 0.18); }
[data-tint="orange"] { --tint-rgb: 255, 149, 0;--tint-surface: rgba(255, 149, 0, 0.06);--tint-glow: rgba(255, 149, 0, 0.18); }
[data-tint="yellow"] { --tint-rgb: 255, 204, 0;--tint-surface: rgba(255, 204, 0, 0.06);--tint-glow: rgba(255, 204, 0, 0.18); }
[data-tint="green"]  { --tint-rgb: 52, 199, 89;--tint-surface: rgba(52, 199, 89, 0.06);--tint-glow: rgba(52, 199, 89, 0.18); }
[data-tint="teal"]   { --tint-rgb: 90, 200, 250;   --tint-surface: rgba(90, 200, 250, 0.06);   --tint-glow: rgba(90, 200, 250, 0.18); }
[data-tint="indigo"] { --tint-rgb: 88, 86, 214;--tint-surface: rgba(88, 86, 214, 0.06);--tint-glow: rgba(88, 86, 214, 0.18); }
[data-tint="mint"]   { --tint-rgb: 0, 199, 190;--tint-surface: rgba(0, 199, 190, 0.06);--tint-glow: rgba(0, 199, 190, 0.18); }
[data-tint="brown"]  { --tint-rgb: 162, 132, 94;   --tint-surface: rgba(162, 132, 94, 0.06);   --tint-glow: rgba(162, 132, 94, 0.18); }

[data-tint][data-color-scheme="light"] body,
[data-tint][data-color-scheme="auto"]:not([data-theme]) body,
[data-tint][data-color-scheme="auto"][data-theme="dark"] body,

[data-tint] .glass-card,
[data-tint] .member-card,
[data-tint] .stat-box,
[data-tint] .list-apple {
background: var(--tint-surface);
border-color: rgba(var(--tint-rgb), 0.20);
}
[data-tint] .spa-drawer,
[data-tint] .apple-header {
background: var(--glass-bg-light);
}

.macos-window {
position: relative;
background: var(--glass-bg-light);
border-radius: var(--radius-window);
border: 0.5px solid var(--ipad-border);
box-shadow: var(--shadow-xl);
}

.macos-titlebar {
height: 38px;
display: flex;
gap: 8px;
padding: 0 12px;
background: linear-gradient(180deg, rgba(255, 255, 255, 0.10) 0%, rgba(255, 255, 255, 0.00) 100%);
border-bottom: 0.5px solid var(--ipad-border);
user-select: none;
-webkit-user-select: none;
}

.macos-traffic-light {
display: inline-flex;
}
.macos-traffic-light button {
width: 12px;
height: 12px;
border-radius: 50%;
border: 0.5px solid rgba(0, 0, 0, 0.12);
padding: 0;
transition: filter var(--duration-fast) var(--ease-in-out);
background-clip: padding-box;
}
.macos-traffic-light button:hover { filter: brightness(0.85); }
.macos-traffic-light button:active { filter: brightness(0.65); }

.macos-light--close{ background: #FF5F57; }
.macos-light--minimize { background: #FEBC2E; }
.macos-light--maximize { background: #28C840; }

[data-color-scheme="auto"] .macos-light--close{ background: #FF6058; }
[data-color-scheme="auto"] .macos-light--minimize { background: #FFBD2E; }
[data-color-scheme="auto"] .macos-light--maximize { background: #28CA42; }

.macos-traffic-light button::after {
position: absolute;
display: flex;
color: rgba(0, 0, 0, 0.6);
font-size: 8px;
font-weight: var(--weight-bold);
line-height: 1;
opacity: 0;
transition: opacity var(--duration-fast, 150ms) var(--ease-in-out, ease);
}
.macos-traffic-light button:hover::after { opacity: 1; }
.macos-light--close:hover::after{ content: "\2715"; }
.macos-light--minimize:hover::after { content: "\2212"; }
.macos-light--maximize:hover::after { content: "+"; }

.macos-title {
flex: 1;
font-size: var(--type-footnote);
font-weight: var(--weight-semibold);
color: var(--secondary-label);
}

.macos-window-body {
padding: var(--space-4);
}

.ipad-split-view {
display: grid;
grid-template-columns: 360px 1fr;
height: calc(100vh - var(--header-h, 56px) - var(--tab-bar-h, 56px));
background: var(--system-bg);
}

.ipad-split-view--with-detail {
grid-template-columns: 280px 1fr 360px;
}

.ipad-split-sidebar {
background: var(--ipad-sidebar);
border-right: 0.5px solid var(--ipad-border);
padding: var(--space-3) 0;
}

.ipad-split-content {
padding: var(--space-5);
}

.ipad-split-detail {
display: flex;
position: relative;
background: var(--bg-drawer);
border-left: 0.5px solid var(--ipad-border);
padding: var(--space-4);
}

.ipad-nav-item {
gap: var(--space-3);
padding: var(--space-2) var(--space-4);
margin: 0 var(--space-2);
border-radius: var(--radius-md);
color: var(--label);
font-size: var(--type-subhead);
font-weight: var(--weight-medium);
transition: background-color var(--duration-fast) var(--ease-in-out);
}
.ipad-nav-item:hover  { background: var(--fill-quaternary); }
.ipad-nav-item.active {
background: var(--accent-brand) ;
color: #fff ;
font-weight: var(--weight-semibold);
box-shadow: 0 1px 3px rgba(0, 122, 255, 0.30);
}
.ipad-nav-item.active .sf { color: #fff; }
.ipad-nav-item .sf { color: var(--accent-brand); }

[data-color-scheme="auto"] .ipad-nav-item .sf { color: var(--accent-brand); }

.ipad-nav-section {
padding: var(--space-3) var(--space-5) var(--space-1);
font-size: var(--type-caption1);
color: var(--tertiary-label);
text-transform: uppercase;
letter-spacing: 0.5px;
}

@media (max-width: 1024px) {
.ipad-split-view--with-detail {
grid-template-columns: 280px 1fr;
}
.ipad-split-detail { display: none; }
}
@media (max-width: 768px) {
.ipad-split-view,
.ipad-split-view--with-detail {
grid-template-columns: 1fr;
}
.ipad-split-sidebar { display: none; }
}

.ipad-stack-toolbar {
position: sticky;
z-index:100;/* zi-100 */
justify-content: space-between;
padding: var(--space-3) var(--space-4);
background: var(--glass-bg-light);
margin: calc(var(--space-5) * -1) calc(var(--space-5) * -1) var(--space-4);
}
.ipad-stack-title {
font-size: var(--type-title3);
font-weight: var(--weight-bold);
color: var(--label);
letter-spacing: -0.4px;
}
.ipad-stack-actions {
gap: var(--space-2);
}

.theme-dropdown {
position: relative;
display: inline-block;
}

 .theme-dropdown-menu {
 position: absolute;
 top: calc(100% + 8px);
 min-width: 180px;
 border: 0.5px solid var(--ipad-border);
 box-shadow: var(--shadow-lg);
 padding: var(--space-1);
 z-index:650;/* zi-650 */
 opacity: 0;
 visibility: hidden;
 pointer-events: none;
 transform: translateY(-8px) scale(0.96);
 transform-origin: top right;
 transition: opacity var(--duration-fast) var(--ease-in-out),
 transform var(--duration-fast) var(--spring-soft),
 visibility var(--duration-fast) var(--ease-in-out);
 }
 .theme-dropdown.open .theme-dropdown-menu {
 opacity: 1;
 visibility: visible;
 pointer-events: auto;
 transform: translateY(0) scale(1);
 }
.theme-dropdown-menu[hidden] {
display: none;
}

.theme-dropdown-item {
display: flex;
gap: var(--space-3);
width: 100%;
padding: var(--space-2) var(--space-3);
background: transparent;
border: none;
border-radius: var(--radius-sm);
font-size: var(--type-subhead);
font-weight: var(--weight-medium);
text-align: left;
transition: background-color var(--duration-fast) var(--ease-in-out);
font-family: inherit;
}
.theme-dropdown-item:hover  { background: var(--fill-quaternary); }
.theme-dropdown-item.active {
background: var(--accent-brand) ;
color: #fff ;
font-weight: var(--weight-semibold);
}
.theme-dropdown-item.active .sf { color: #fff; }
.theme-dropdown-item .sf { color: var(--accent-brand); }

[data-color-scheme="auto"] .theme-dropdown-item .sf { color: var(--accent-brand); }
[data-color-scheme="auto"] .theme-dropdown-item.active .sf { color: #fff; }

.header-col { display: flex; align-items: center; gap: var(--space-2); min-width: 0; }
.header-col--center { justify-content: center; }
.header-col--right  { justify-content: flex-end; flex-wrap: wrap; }
.header-col--left   > * { flex-shrink: 0; }
.spa-title {
font-size: var(--type-headline);
color: var(--label);
letter-spacing: -0.2px;
}

.welcome-main {
font-size: var(--type-subhead);
color: var(--secondary-label);
}
.welcome-main .fw-bold { color: var(--label); font-weight: var(--weight-semibold); }
.welcome-date {
font-size: var(--type-caption1);
color: var(--tertiary-label);
margin-left: var(--space-2);
}

.hdr-icon-btn {
width: 60px;
background: transparent;
color: var(--accent-brand);
border-radius: 50%;
display: inline-flex;
justify-content: center;
transition: background-color var(--duration-fast) var(--ease-in-out),
transform var(--duration-fast) var(--spring-soft);
position: relative;
}
.hdr-icon-btn:hover  { background: var(--fill-quaternary); }
.hdr-icon-btn:active { transform: scale(0.92); background: var(--fill-tertiary); }
.hdr-icon-btn--accent { color: var(--accent-brand); }

.hdr-pill {
gap: var(--space-2);
height: 32px;
padding: 0 var(--space-4);
border-radius: var(--radius-pill);
font-size: var(--type-footnote);
transition: transform var(--duration-fast) var(--spring-soft),
opacity var(--duration-fast) var(--ease-in-out);
}
.hdr-pill--in  { background: var(--accent-green); color: #fff; }
.hdr-pill--out { background: var(--accent-red);   color: #fff; }
.hdr-pill:active { transform: scale(0.96); }

.hdr-segmented {
background: var(--fill-tertiary);
border-radius: var(--radius-md);
padding: 2px;
gap: 0;
}
.hdr-seg-item {
background: transparent;
padding: var(--space-1) var(--space-3);
font-size: var(--type-caption1);
color: var(--secondary-label);
border-radius: 11px;
transition: all var(--duration-fast) var(--spring-soft);
min-width: 32px;
}
.hdr-seg-item:hover  { color: var(--label); }
.hdr-seg-item.active {
background: var(--secondary-bg);
color: var(--label);
box-shadow: var(--shadow-sm);
}
[data-color-scheme="auto"] .hdr-seg-item.active {
background: var(--quaternary-bg);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.30);
}

.tint-dot {
width: 18px; height: 18px;
border-radius: 50%;
background: var(--accent-brand);
border: 2px solid var(--secondary-bg);
box-shadow: 0 0 0 1px var(--separator);
transition: background var(--duration-base) var(--spring-soft);
}
.tint-dot[data-current-tint="blue"]   { background: #007AFF; }
.tint-dot[data-current-tint="purple"] { background: #AF52DE; }
.tint-dot[data-current-tint="pink"]   { background: #FF375F; }
.tint-dot[data-current-tint="red"]{ background: #FF3B30; }
.tint-dot[data-current-tint="orange"] { background: #FF9500; }
.tint-dot[data-current-tint="yellow"] { background: #FFCC00; }
.tint-dot[data-current-tint="green"]  { background: #34C759; }
.tint-dot[data-current-tint="teal"]   { background: #5AC8FA; }
.tint-dot[data-current-tint="indigo"] { background: #5856D6; }
.tint-dot[data-current-tint="mint"]   { background: #00C7BE; }
.tint-dot[data-current-tint="brown"]  { background: #A2845E; }

.tint-sheet {
position: fixed; inset: 0;
z-index:700;/* zi-700 */
}
.tint-sheet[hidden] { display: none; }
.tint-sheet.open{ pointer-events: auto; }
.tint-sheet-backdrop {
position: absolute; inset: 0;
background: rgba(0, 0, 0, 0);
transition: background var(--duration-base) var(--ease-in-out);
}
.tint-sheet.open .tint-sheet-backdrop { background: rgba(0, 0, 0, 0.35); }
.tint-sheet-card {
position: absolute;
bottom: 0;
transform: translate(-50%, 100%);
width: min(560px, 100%);
background: var(--glass-bg-light);
border-radius: var(--radius-xl) var(--radius-xl) 0 0;
box-shadow: var(--shadow-xl);
padding: var(--space-3) var(--space-5) var(--space-6);
transition: transform var(--duration-base) var(--spring-soft);
}
.tint-sheet.open .tint-sheet-card { transform: translate(-50%, 0); }
.tint-sheet-handle {
width: 40px; height: 5px;
background: var(--quaternary-label);
border-radius: var(--capsule-radius);
margin: 0 auto var(--space-4);
}
.tint-sheet-title {
font-size: var(--type-title3);
font-weight: var(--weight-bold);
margin: 0 0 var(--space-4);
text-align: center;
}
.tint-grid {
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: var(--space-4);
}
.tint-swatch {
aspect-ratio: 1 / 1;
border: none;
background: var(--c);
border-radius: 50%;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
transition: transform var(--duration-fast) var(--spring-bouncy);
position: relative;
}
.tint-swatch:hover  { transform: scale(1.08); }
.tint-swatch:active { transform: scale(0.92); }
.tint-swatch.active::after {
content: "✓";
position: absolute;
display: flex;
color: #fff;
}

.ipad-sym { width: 22px; height: 22px; display: inline-block; }
.ipad-sym--home{ background: currentColor; -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 11l9-8 9 8'/><path d='M5 10v10h14V10'/></svg>") center/contain no-repeat; mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 11l9-8 9 8'/><path d='M5 10v10h14V10'/></svg>") center/contain no-repeat; }
.ipad-sym--search  { background: currentColor; -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><path d='M21 21l-4.3-4.3'/></svg>") center/contain no-repeat; mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><path d='M21 21l-4.3-4.3'/></svg>") center/contain no-repeat; }
.ipad-sym--card{ background: currentColor; -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='2' y='5' width='20' height='14' rx='3'/><path d='M2 10h20'/><path d='M6 15h4'/></svg>") center/contain no-repeat; mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='2' y='5' width='20' height='14' rx='3'/><path d='M2 10h20'/><path d='M6 15h4'/></svg>") center/contain no-repeat; }
.ipad-sym--bank{ background: currentColor; -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 10l9-6 9 6'/><path d='M5 10v9h14v-9'/><path d='M8 14v5M12 14v5M16 14v5'/></svg>") center/contain no-repeat; mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 10l9-6 9 6'/><path d='M5 10v9h14v-9'/><path d='M8 14v5M12 14v5M16 14v5'/></svg>") center/contain no-repeat; }
.ipad-sym--adduser { background: currentColor; -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='9' cy='8' r='4'/><path d='M2 21c0-4 3-6 7-6s7 2 7 6'/><path d='M19 8v6M16 11h6'/></svg>") center/contain no-repeat; mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='9' cy='8' r='4'/><path d='M2 21c0-4 3-6 7-6s7 2 7 6'/><path d='M19 8v6M16 11h6'/></svg>") center/contain no-repeat; }
.ipad-sym--list{ background: currentColor; -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='4' y='4' width='16' height='16' rx='2'/><path d='M8 9h8M8 13h8M8 17h5'/></svg>") center/contain no-repeat; mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='4' y='4' width='16' height='16' rx='2'/><path d='M8 9h8M8 13h8M8 17h5'/></svg>") center/contain no-repeat; }

.spa-notif-badge {
top: 4px; right: 4px;
min-width: 16px; height: 16px;
background: var(--accent-red);
border-radius: var(--capsule-radius);
font-size: 10px;
font-weight: 700;
padding: 0 4px;
}

[data-time-of-day="dawn"] body,
[data-time-of-day="morning"] body,
[data-time-of-day="day"] body,
[data-time-of-day="sunset"] body,
[data-time-of-day="night"] body
[data-color-scheme="auto"]:not([data-theme])[data-time-of-day="dawn"] body,
[data-color-scheme="auto"]:not([data-theme])[data-time-of-day="morning"] body,
[data-color-scheme="auto"]:not([data-theme])[data-time-of-day="day"] body,
[data-color-scheme="auto"]:not([data-theme])[data-time-of-day="sunset"] body,
[data-color-scheme="auto"]:not([data-theme])[data-time-of-day="night"] body,
[data-color-scheme="auto"][data-theme="dark"][data-time-of-day="dawn"] body,
[data-color-scheme="auto"][data-theme="dark"][data-time-of-day="morning"] body,
[data-color-scheme="auto"][data-theme="dark"][data-time-of-day="day"] body,
[data-color-scheme="auto"][data-theme="dark"][data-time-of-day="sunset"] body,
[data-color-scheme="auto"][data-theme="dark"][data-time-of-day="night"] body,

[data-theme="RoyalGold"][data-time-of-day] body,

[data-theme="RoyalNavy"][data-time-of-day] body,

#spaRoot,
.spa-main

.stat-grid {
display: grid;
gap: 10px;
margin-bottom: 24px;
}
.stat-item {
background: var(--fill-quaternary);
border: 0.5px solid var(--separator);
border-radius: var(--radius-md, 14px);
padding: var(--space-3) var(--space-2);
position: relative;
transition: all 0.2s;
}
.stat-item .icon { font-size: 1.1rem; margin-bottom: 0; opacity: 0.85; }
.stat-item .stat-content {
display: flex;
gap: 2px;
min-height: 0;
}
.stat-item .value {
font-family: "SF Mono", Consolas, monospace;
font-size: clamp(0.9rem, 5.5cqi, 1.4rem);
font-weight: 900;
}
.stat-item .label {
font-size: clamp(0.55rem, 2.8cqi, 0.72rem);
color: #94a3b8;
font-weight: 700;
letter-spacing: 0.3px;
}
.stat-arrow { font-size: 10px; color: #666; position: absolute; top: 4px; right: 8px; }
.stat-clickable { cursor: pointer; }
.stat-clickable:hover { border-color: var(--RoyalGold-500, #C9A74E); }

.hdr-dropdown {
padding: 0 10px;
background: var(--fill-tertiary);
border-radius: var(--radius-md);
color: var(--label);
font-size: var(--type-footnote);
font-weight: var(--weight-semibold);
outline: none;
transition: background 0.15s ease;
}
.hdr-dropdown:hover { background: var(--fill-secondary); }
.hdr-dropdown:focus { background: var(--fill-secondary); border-color: var(--accent-brand); }

.main-lang-switch {
height: 100vh;
}
.main-lang-switch option { color: var(--label); background: var(--secondary-bg); }

.clock-btn {
display: inline-flex;
height: 32px;
padding: 0 14px;
border: none;
border-radius: var(--radius-pill);
transition: transform 0.15s var(--spring-soft), opacity 0.15s;
}
.clock-btn.clock-in  { background: var(--accent-green); color: #fff; }
.clock-btn.clock-out { background: var(--accent-red);   color: #fff; }
.clock-btn:active { transform: scale(0.96); }
.clock-btn[hidden] { display: none; }

.spa-notif {
width: 36px; height: 36px;
display: inline-flex; align-items: center; justify-content: center;
border-radius: 50%;
color: var(--accent-brand);
transition: background 0.15s ease;
}
.spa-notif:hover { background: var(--fill-quaternary); }

.spa-notif-dropdown {
position: fixed;
top: 56px; right: 12px;
width: 320px; max-height: 420px;
background: var(--glass-bg-light); backdrop-filter: var(--glass-blur-regular);
border: 0.5px solid var(--separator);
border-radius: var(--radius-xl);
box-shadow: 0 12px 40px rgba(0,0,0,0.18);
/* zi-650 */
opacity: 0; transform: translateY(-8px) scale(0.96);
transition: opacity 0.2s var(--spring-soft), transform 0.25s var(--spring-soft);
}
.spa-notif-dropdown.open {
opacity: 1; transform: translateY(0) scale(1);
pointer-events: auto;
}
.spa-notif-item {
display: flex; align-items: flex-start; gap: 10px;
padding: var(--space-3) var(--space-4); cursor: pointer;
border-bottom: 0.5px solid var(--separator);
transition: background 0.15s;
}
.spa-notif-item:hover { background: var(--fill-quaternary); }
.spa-notif-item .n-icon {
width: 32px; height: 32px; border-radius: 50%;
display: flex; align-items: center; justify-content: center;
flex-shrink: 0; font-size: 13px;
}
.spa-notif-item .n-text { flex: 1; min-width: 0; }
.spa-notif-item .n-title { font-size: 13px; font-weight: var(--weight-semibold); color: var(--label); }
.spa-notif-item .n-desc  { font-size: 11px; color: var(--secondary-label); margin-top: 2px; }
.spa-notif-empty  { padding: 32px 16px; text-align: center; color: var(--tertiary-label); font-size: 13px; }

.guest-live-section {
background: var(--glass-bg-light);
backdrop-filter: var(--glass-blur, blur(20px) saturate(180%));
-webkit-backdrop-filter: var(--glass-blur, blur(20px) saturate(180%));
border-radius: var(--radius-md, 14px);
padding: var(--space-3) var(--space-4);
margin-bottom: 12px;
}
.guest-live-section .guest-live-header {
display: flex;
justify-content: space-between;
margin-bottom: 8px;
font-weight: 700;
font-size: 0.9rem;
color: var(--label, #fff);
}
.guest-live-section .guest-live-badge {
background: var(--accent-green, #34C759);
color: #fff;
font-size: 0.7rem;
font-weight: 800;
padding: 2px 8px;
border-radius: 8px;
min-width: 20px;
}
.guest-live-section .guest-live-list {
background: rgba(46, 204, 113, 0.08);
padding: 6px;
min-height: 28px;
}
.guest-live-section .guest-live-list .guest-live-row {
padding: 5px 8px; background: var(--fill-quaternary);
border-radius: 6px; margin-bottom: 3px; font-size: 0.8rem;
color: var(--label, #fff);
}
.guest-live-section .guest-live-list .guest-live-row:last-child { margin-bottom: 0; }
.guest-live-section .guest-live-list .guest-live-time {
color: var(--tertiary-label, #94a3b8);
}
.guest-live-section .guest-live-empty {
font-size: 0.75rem;
padding: 4px;
}

.section-title {
font-size: 1.1rem;
margin-bottom: 16px;
color: var(--royal-text-gold, #c9a74e);
gap: 10px;
}
.section-title i { color: var(--royal-text-gold, #c9a74e); font-size: 0.9rem; }

.dept-compact {
display: flex; justify-content: space-evenly; gap: 8px; margin-bottom: 24px;
}
.dept-row {
display: flex; flex-direction: column; gap: 6px; padding: var(--space-2) var(--space-3);
background: var(--glass-bg-light);
border-radius: var(--radius-md, 14px);
transition: all 0.15s var(--spring-soft);
}
.dept-row:hover {
border-color: rgba(201,167,78,0.3);
background: rgba(201,167,78,0.04);
}
.dept-row-top { display: flex; align-items: center; gap: 10px; }
.dept-row-icon { width: 28px; text-align: center; font-size: 1rem; }
.dept-row-name { flex: 1; font-weight: 700; color: var(--label, #fff); }
.dept-row-count { font-size: 0.8rem; color: var(--tertiary-label, #94a3b8); }
.dept-row-members { display: flex; align-items: center; gap: 4px; padding-left: 38px; }
.dept-avatar {
width: 24px; height: 24px; border-radius: 50%;
background: var(--accent-blue, #007AFF);
color: #fff; font-size: 0.7rem; font-weight: 800;
display: inline-flex; align-items: center; justify-content: center;
border: 2px solid var(--system-bg, #000);
margin-left: -6px;
}
.dept-avatar:first-child { margin-left: 0; }
.dept-more { font-size: 0.7rem; color: var(--tertiary-label, #94a3b8); margin-left: 4px; }

.shortcut-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
margin-bottom: 24px;
}
.shortcut-card {
display: flex; flex-direction: column; align-items: center; gap: 12px;
padding: var(--space-3) var(--space-2);
color: var(--label, #fff);
background: var(--glass-bg-light);
border: 0.5px solid var(--separator);
transition: transform 0.3s var(--spring-soft, cubic-bezier(0.2, 1, 0.2, 1)),
background 0.2s, border-color 0.2s;
}
.shortcut-card:hover {
transform: scale(1.05);
background: var(--glass-bg-light, rgba(14,21,36,0.78));
}
.shortcut-icon {
width: 56px; height: 56px; border-radius: var(--radius-md, 14px);
display: flex; align-items: center; justify-content: center;
font-size: 1.5rem;
box-shadow: 0 4px 14px rgba(0,0,0,0.25);
}
.shortcut-info { text-align: center; }
.shortcut-name { font-size: 0.85rem; font-weight: 700; color: var(--label, #fff); }
.shortcut-desc { font-size: 0.7rem; color: var(--tertiary-label, #94a3b8); margin-top: 2px; }

.admin-section {
background: rgba(201,167,78,0.04);
padding: var(--space-4);
}

.d-flex { display: flex; }
.flex-wrap { flex-wrap: wrap; }
.gap-2 { gap: 0.5rem; }
.fw-bold { font-weight: 700; }

.home-cal-week { margin-bottom: 24px; }

.week-calendar { margin-bottom: 0; }
.week-nav {
display: flex; align-items: center; justify-content: space-between;
margin-bottom: 12px; gap: 10px;
}
.week-nav-btn {
background: var(--fill-quaternary, rgba(255,255,255,0.03));
border-radius: 10px;
padding: 8px 16px;
font-size: 0.85rem;
font-weight: 700;
transition: all 0.2s var(--spring-soft);
display: inline-flex; align-items: center; gap: 6px;
font-family: inherit;
}
.week-nav-btn:hover {
border-color: var(--ipad-border-hover, rgba(197,160,89,0.35));
background: var(--fill-tertiary, rgba(255,255,255,0.06));
}
.week-range {
font-size: 0.95rem; font-weight: 700;
letter-spacing: 0.5px;
}
.week-legend {
display: flex; gap: 16px; margin-bottom: 10px; padding: 0 4px;
}
.legend-item { font-size: 0.72rem; color: var(--tertiary-label, #94a3b8); }
.legend-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 4px; }
.dot-work { background: #4ade80; }
.dot-off { background: #f87171; }
.dot-absent { background: #ef4444; }
.week-grid {
display: grid;
grid-template-columns: repeat(7, 1fr);
gap: 6px;
width: 100%;
}
@media (max-width: 900px) {
.week-grid { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 600px) {
.week-grid { grid-template-columns: repeat(2, 1fr); }
}
.week-day {
background: var(--fill-quaternary, rgba(255,255,255,0.03));
border-radius: var(--radius-md, 14px);
padding: 10px 8px;
min-height: 60px;
transition: all 0.15s;
}
.week-day:hover
.week-day.today {
border-color: var(--ipad-gold, #c9a74e);
box-shadow: 0 0 14px rgba(201,167,78,0.18);
}
.week-day-header {
border-bottom: 1px solid var(--ipad-border, rgba(255,255,255,0.06));
padding-bottom: 4px;
margin-bottom: 4px;
}
.week-day-section { font-size: 0.72rem; }
.week-day-section .section-label { opacity: 0.7; margin-bottom: 2px; }
.week-day-section .work-label { color: #4ade80; }
.week-day-section .off-label  { color: #f87171; }
.day-name  { color: #c9a74e; font-weight: 700; font-size: 0.78rem; }
.day-date { color: #94a3b8; font-weight: 400; font-size: 0.7rem; margin-left: 4px; }
.sched-row {
display: flex; align-items: center; gap: 4px; padding: 2px 0;
font-size: 0.72rem;
}
.sched-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
.sched-dot-off { opacity: 0.5; }
.sched-name { color: var(--label, #fff); }
.sched-name-off { color: #f87171; opacity: 0.7; }
.sched-name.regular-off { color: #fbbf24; }
.sched-note { color: var(--tertiary-label, #94a3b8); font-size: 0.7rem; margin-left: 4px; }

.sched-badge {
font-size: 0.7rem; padding: 1px 6px; border-radius: 4px;
font-weight: 700; cursor: default; flex-shrink: 0; line-height: 1.4;
}
.sched-badge.badge-work{ background: rgba(74,222,128,0.15);  color: #4ade80; }
.sched-badge.badge-off { background: rgba(248,113,113,0.15); color: #f87171; }
.sched-badge.badge-absent  { background: rgba(239,68,68,0.25);   color: #f87171; border: 1px solid rgba(239,68,68,0.4); }
.sched-badge.badge-clickable { cursor: pointer; transition: all 0.15s; }
.sched-badge.badge-clickable:hover { transform: scale(1.08); box-shadow: 0 0 8px rgba(197,160,89,0.2); }
.sched-badge.badge-readonly { opacity: 0.5; cursor: default; }

.pop-stat-item {
background: var(--glass-bg-light);
padding: var(--space-3) var(--space-2);
position: relative;
transition: all 0.2s;
}
.pop-stat-item .icon { font-size: 1.1rem; margin-bottom: 4px; opacity: 0.85; }
.pop-stat-item .value { font-size: 1.05rem; font-weight: 900; color: var(--label, #fff); }
.pop-stat-item .label {
font-size: 0.62rem; color: var(--tertiary-label, #94a3b8);
margin-top: 2px; text-transform: uppercase; letter-spacing: 0.3px;
}
.pop-stat-clickable { cursor: pointer; }
.pop-stat-clickable:hover {
border-color: var(--RoyalGold-500, #C9A74E);
background: rgba(201,167,78,0.08);
}
.pop-stat-arrow { font-size: 10px; color: #666; position: absolute; top: 4px; right: 8px; }

.m-stat-card {
background: var(--glass-bg-light);
}
.m-stat-card:hover {
background: rgba(201,167,78,0.08);
}
.m-stat-card.paid   { border-color: rgba(74,222,128,0.3);  color: #4ade80; }
.m-stat-card.unpaid { border-color: rgba(248,113,113,0.3); color: #f87171; }
.m-stat-label { font-size: 0.7rem; color: var(--tertiary-label, #94a3b8); font-weight: 700; margin-bottom: 4px; }
.m-stat-value { font-size: 1.1rem; font-weight: 900; color: var(--label, #fff); }
.m-stat-type-pill {
flex: 0 0 auto;
background: var(--fill-quaternary);
border: 0.5px solid rgba(255,255,255,0.08);
border-radius: 20px;
padding: 6px 14px;
font-size: 0.78rem;
}
.m-stat-type-pill:hover { border-color: var(--RoyalGold-500, #C9A74E); background: rgba(201,167,78,0.08); }
.m-stat-type-pill strong { color: #c9a74e; margin-left: 4px; }

.fw-bold { font-weight: 700; }
.d-flex { display: flex; }
.flex-wrap { flex-wrap: wrap; }
.gap-2 { gap: 0.5rem; }
.mb-4 { margin-bottom: 1.5rem; }

.ios-badge {
display: inline-block; padding: 1px 6px; border-radius: 6px;
font-size: 9px; font-weight: 700;
background: var(--app-card-bg, rgba(255,255,255,0.05)); color: rgba(255,255,255,0.8);
}
.badge-item {
display: inline-block;
background: rgba(34,197,94,0.12);
color: #22c55e;
padding: 3px 10px;
font-size: 11px;
font-weight: 700;
letter-spacing: 0.3px;
}
.login-gate { opacity: 0.5; }
.login-gate:hover { opacity: 0.8; }

.guest-live-list {
background: rgba(46, 204, 113, 0.08);
border-radius: 8px;
padding: 6px;
min-height: 28px;
}
.guest-live-list .guest-live-row {
display: flex; justify-content: space-between; align-items: center;
padding: 5px 8px; background: var(--fill-quaternary);
border-radius: 6px; margin-bottom: 3px; font-size: 0.8rem;
color: var(--label, #fff);
}
.guest-live-list .guest-live-row:last-child { margin-bottom: 0; }
.guest-live-time { color: var(--tertiary-label, #94a3b8); font-size: 0.7rem; }
.guest-live-empty {
text-align: center; color: var(--tertiary-label, #94a3b8);
font-size: 0.75rem; padding: 4px;
}
.guest-live-badge {
background: var(--accent-green, #34C759);
color: #fff;
font-size: 0.7rem; font-weight: 800;
padding: 2px 8px; border-radius: 8px;
min-width: 20px; text-align: center;
}
.guest-live-header {
display: flex; align-items: center; justify-content: space-between;
margin-bottom: 8px; font-weight: 700; font-size: 0.9rem;
color: var(--label, #fff);
}

.spa-modal-overlay {
position: fixed;
background: rgba(0, 0, 0, 0.45);
backdrop-filter: blur(24px) saturate(180%);
-webkit-backdrop-filter: blur(24px) saturate(180%);
/* zi-750 */
display: flex;
justify-content: center;
padding: 24px;
}

.ipad-nav-link span {
flex: 1 1 auto;
min-width: 0;
}

.mac-login-overlay {
  position: fixed;
  inset: 0;
  /* zi-2 */
  display: flex;
  align-items: center;
  justify-content: center;
}
.mac-login-overlay.hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}


.mac-login-card {
  text-align: center;
  color: var(--label);
  max-width: 900px;
  max-height: 100dvh;
  scrollbar-width: none;
  -ms-overflow-style: none;
  border-radius: 48px;
  background: rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(40px) saturate(200%);
  -webkit-backdrop-filter: blur(40px) saturate(200%);
  border: 1px solid rgba(255, 255, 255, 0.12);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  text-decoration: none;
  transition: all 0.6s var(--spring-ios);
  position: relative;
  box-shadow: 0 30px 60px rgba(0, 0, 0, 0.3), inset 0 0 0 1px rgba(255, 255, 255, 0.05);
  animation: cardIn 1.2s var(--spring-ios) both;
  overflow: hidden;
}
.mac-login-card::-webkit-scrollbar { display: none; }

@keyframes macLoginFadeIn {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}


.mac-login-welcome {
  color: var(--label);
  font-size: var(--mac-type-body);
  font-weight: 500;
  margin-bottom: 32px;
  opacity: 0.8;
}


.mac-login-switcher {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px 24px;
  margin-bottom: 0;
  padding: 8px 0;
}

.mac-login-user {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 80px;
  cursor: pointer;
  transition: transform 0.2s var(--spring-ios);
}
.mac-login-user:hover { transform: translateY(-3px); }
.mac-login-user:active { transform: scale(0.95); }

.mac-login-user-avatar {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--fill-primary), var(--fill-quaternary));
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: all 0.2s var(--spring-ios);
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
.mac-login-user.active .mac-login-user-avatar {
  box-shadow: 0 0 0 3px var(--accent-blue), 0 4px 16px rgba(0,0,0,0.25);
}
.mac-login-user-avatar img {
  width: 100%; height: 100%;
  object-fit: cover;
}
.mac-login-user-avatar i {
  font-size: 28px;
  color: var(--secondary-label);
}

.mac-login-user-name {
  font-size: var(--mac-type-caption1);
  color: var(--label);
  font-weight: 500;
  text-align: center;
  line-height: 1.2;
  max-width: 80px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


#macLoginForm {
  animation: macLoginFadeIn 0.35s ease both;
}

.mac-login-avatar {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--fill-primary), var(--fill-quaternary));
  box-shadow: 0 4px 20px rgba(0,0,0,0.2);
  margin: 0 auto 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.mac-login-avatar img {
  width: 100%; height: 100%;
  object-fit: cover;
}
.mac-login-avatar i {
  font-size: 36px;
  color: var(--secondary-label);
}

.mac-login-name {
  font-size: var(--mac-type-title2);
  font-weight: 600;
  margin-bottom: 24px;
}

.mac-login-hint {
  font-size: var(--mac-type-footnote);
  color: var(--secondary-label);
  margin-bottom: 10px;
  min-height: 1.3em;
  transition: color 0.2s ease;
}
.mac-login-hint.error { color: var(--accent-red); }

.mac-login-input-wrap {
  position: relative;
  width: 240px;
  margin: 0 auto 16px;
}

.mac-login-input {
  width: 100%;
  padding: 10px 40px 10px 16px;
  border-radius: 10px;
  border: 1px solid var(--separator);
  background: var(--fill-primary);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  color: var(--label);
  font-size: var(--mac-type-body);
  text-align: center;
  outline: none;
  transition: all 0.2s ease;
  letter-spacing: 0.3em;
}
.mac-login-input::placeholder {
  color: var(--tertiary-label);
  letter-spacing: 0;
}
.mac-login-input:focus {
  background: var(--fill-secondary);
  border-color: var(--accent-blue);
  box-shadow: 0 0 0 3px rgba(0,122,255,0.15);
}
.mac-login-input::-ms-reveal,
.mac-login-input::-ms-clear { display: none; }

.mac-login-toggle {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: var(--secondary-label);
  cursor: pointer;
  font-size: 13px;
  padding: 4px;
  transition: color 0.15s ease;
}
.mac-login-toggle:hover { color: var(--label); }


.mac-login-actions {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 4px;
}

.mac-login-btn {
  padding: 8px 20px;
  border-radius: 8px;
  border: none;
  background: var(--fill-secondary);
  color: var(--label);
  font-size: var(--mac-type-body);
  font-weight: 500;
  cursor: pointer;
  transition: all 0.15s ease;
}
.mac-login-btn:hover { background: var(--fill-primary); }
.mac-login-btn:active { transform: scale(0.97); }

.mac-login-back {
  margin-top: 18px;
  background: none;
  border: none;
  color: var(--secondary-label);
  font-size: var(--mac-type-footnote);
  cursor: pointer;
  transition: color 0.15s ease;
}
.mac-login-back:hover { color: var(--label); }


.mac-login-shutdown {
  position: absolute;
  bottom: 32px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: var(--secondary-label);
  font-size: var(--mac-type-caption1);
  cursor: pointer;
  background: none;
  border: none;
  transition: color 0.15s ease;
}
.mac-login-shutdown:hover { color: var(--label); }
.mac-login-shutdown i {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  background: var(--fill-primary);
  transition: background 0.15s ease;
}
.mac-login-shutdown:hover i { background: var(--fill-secondary); }


@media (max-height: 600px) {
  .mac-login-card { padding: 20px 16px; }
  .mac-login-user-avatar { width: 56px; height: 56px; }
  .mac-login-user { width: 68px; gap: 4px; }
  .mac-login-switcher { gap: 12px 16px; }
  .mac-login-avatar { width: 80px; height: 80px; margin-bottom: 14px; }
  .mac-login-name { margin-bottom: 16px; }
}

/* ── Auto-update indicator & toast ─────────────────────────────── */
.menubar-update {
  padding: 4px 8px;
  border-radius: 6px;
  transition: background 0.15s ease;
  user-select: none;
}
.menubar-update:hover {
  background: var(--app-card-bg, rgba(255,255,255,0.05));
}
.menubar-update:active {
  background: var(--glass-bg-mid, rgba(14,21,36,0.60));
}

@keyframes slideIn {
  from { opacity: 0; transform: translateX(20px); }
  to { opacity: 1; transform: translateX(0); }
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

.update-toast .fa-spin {
  display: inline-block;
}
.menubar-divider{height:1px;background:var(--separator, rgba(60,60,67,0.15));margin:4px 0}
.shortcut{opacity:.5;margin-left:auto;font-size:var(--type-caption1);color:var(--tertiary-label)}

/* ── Toast/Overlay ── */
.webp-toast-msg{position:fixed;top:20px;right:20px;padding:12px 20px;border-radius:10px;color:#fff;font-weight:600;animation:toastIn .3s ease;box-shadow:0 5px 15px rgba(0,0,0,.5);}
.toast-ok{background:#2d8f5e;}
.toast-err{background:#c0392b;}
.toast-warn{background:#333;}
@keyframes toastIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}

/* ══════════════════════════════════════════
   누락 클래스 추가 (Apple theme 일관)
   ══════════════════════════════════════════ */

/* ── register.js ── */
.reg-page{width:100%;min-height:100vh;box-sizing:border-box;color:var(--label);font-family:var(--font-system)}
.reg-card{background:var(--app-card-bg);border:.5px solid var(--royal-border-glass);border-radius:var(--radius-card);box-shadow:var(--shadow-md);padding:var(--space-3) var(--space-4)}
.reg-fg{display:flex;flex-direction:column;flex:1;min-width:0;margin-bottom:var(--space-1)}
.reg-fg label{display:block;font-size:var(--type-caption1);color:var(--tertiary-label);font-weight:var(--weight-semibold);letter-spacing:.3px;text-transform:uppercase;margin-bottom:var(--space-1)}
.reg-fg input,.reg-fg select{width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-textfield);border:.5px solid var(--royal-border-glass);background:var(--fill-quaternary);color:var(--label);font-size:var(--type-caption1);font-family:var(--font-system);outline:none;transition:border-color var(--duration-fast) var(--ease-in-out)}
.reg-fg input:focus,.reg-fg select:focus{border-color:var(--accent-blue);box-shadow:var(--shadow-focus)}
.reg-grid-row{display:grid;gap:var(--space-1) var(--space-1);padding:var(--space-1) 0}
.reg-grid-3{display:grid;gap:var(--space-3) var(--space-4);padding:var(--space-1) 0}
.reg-info-top{display:flex;gap:var(--space-5);margin-top:var(--space-5);align-items:flex-start}
.reg-info-photo-col{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);flex-shrink:0;width:100px}
.reg-photo-box{width:var(--space-16);height:140px;border:2px dashed var(--royal-border-glass);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:var(--fill-quaternary);cursor:pointer;overflow:hidden;color:var(--tertiary-label);font-size:var(--space-5);transition:border-color var(--duration-fast) var(--ease-in-out);flex-shrink:0}
.reg-photo-box:hover{border-color:var(--accent-blue)}
.reg-photo-box img{width:100%;height:100%;object-fit:cover}
.reg-photo-actions{display:flex;gap:var(--space-2);justify-content:center}
.reg-info-fields{flex:1;min-width:0;display:flex;flex-direction:column}
.reg-inline-tools{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap}
.reg-dup-result{font-size:var(--type-caption1);font-weight:var(--weight-semibold);white-space:nowrap;line-height:1.4}
.reg-payment-box{background:var(--fill-quaternary);border:.5px solid var(--royal-border-glass);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-top:var(--space-4)}
.reg-pb-title{font-size:var(--type-caption1);font-weight:var(--weight-bold);color:var(--royal-text-gold);margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:.5px solid var(--royal-border-glass);display:flex;align-items:center;gap:var(--space-1)}
.reg-btn-row{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-5);padding-top:var(--space-4);border-top:.5px solid var(--royal-border-glass)}
.reg-section-title{font-size:var(--type-headline);font-weight:var(--weight-bold);color:var(--royal-text-gold);display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);line-height:1.3}
.reg-compact-grid{display:grid;grid-template-columns:1fr auto;gap:var(--space-5);align-items:flex-start}
.reg-member-num-readonly{width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-textfield);border:.5px solid var(--royal-border-glass);background:var(--fill-quaternary);color:var(--royal-text-gold);font-family:'IBM Plex Mono',monospace;font-weight:var(--weight-semibold);font-size:var(--type-caption1);cursor:default;opacity:.85}
.app-input{width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-textfield);border:.5px solid var(--royal-border-glass);background:var(--fill-quaternary);color:var(--label);font-size:var(--type-caption1);font-family:var(--font-system);outline:none;transition:border-color var(--duration-fast) var(--ease-in-out)}
.app-input:focus{border-color:var(--accent-blue);box-shadow:var(--shadow-focus)}
.app-input:read-only{opacity:.8;cursor:default}
.req{color:var(--danger);margin-left:2px;font-weight:var(--weight-bold)}
.reg-sub-photo{width:60px;height:60px;border-radius:var(--radius-avatar);border:2px dashed var(--royal-border-glass);display:flex;align-items:center;justify-content:center;background:var(--fill-quaternary);cursor:pointer;overflow:hidden;flex-shrink:0;color:var(--tertiary-label);font-size:1.2rem;transition:border-color var(--duration-fast) var(--ease-in-out)}
.reg-sub-photo:hover{border-color:var(--accent-blue)}
.reg-sub-photo img{width:100%;height:100%;object-fit:cover}
.reg-sub-meta-row{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}
.reg-sub-panel-col{display:flex;flex-direction:column;width:100%}
.reg-sub-done-row{display:flex;justify-content:flex-end;margin-top:var(--space-5);padding-top:var(--space-3);border-top:.5px solid var(--royal-border-glass)}
.reg-sub-tab-nav{display:flex;gap:var(--space-1);margin-bottom:var(--space-4);overflow-x:auto;padding-bottom:2px}
.reg-sub-tab-nav::-webkit-scrollbar{height:2px}
.reg-sub-tab-nav::-webkit-scrollbar-thumb{background:var(--royal-border-glass);border-radius:1px}
.reg-sub-tab-btn{flex:1;padding:var(--space-3) var(--space-1);border:.5px solid var(--royal-border-glass);border-radius:var(--radius-segmented);background:var(--fill-quaternary);color:var(--royal-text-secondary);font-size:var(--type-caption1);font-weight:var(--weight-semibold);cursor:pointer;transition:all var(--duration-fast) var(--ease-in-out);text-align:center;white-space:nowrap}
.reg-sub-tab-btn.active{background:var(--accent-blue);color:#fff;border-color:var(--accent-blue)}
.reg-sub-tab-btn.done{border-color:var(--accent-green)}
.reg-sub-tab-btn:hover{background:var(--royal-surface-glass-hover)}
.reg-sub-tab-panel{display:none}
.reg-sub-tab-panel.active{display:block}
.reg-sub-num{font-family:'IBM Plex Mono',monospace;font-weight:var(--weight-semibold);color:var(--royal-text-gold)}
.reg-sub-num-readonly{background:var(--fill-quaternary);cursor:default;opacity:.85}
.reg-sub-only-results{margin-top:var(--space-1);max-height:var(--space-16);overflow:auto;border:.5px solid var(--royal-border-glass);border-radius:var(--radius-md);background:var(--glass-bg-light);backdrop-filter:var(--glass-blur-thin);-webkit-backdrop-filter:var(--glass-blur-thin)}
.reg-sub-only-item{display:flex;gap:var(--space-3);align-items:center;padding:var(--space-2) var(--space-3);cursor:pointer;border-bottom:.5px solid var(--royal-border-glass);transition:background var(--duration-fast) var(--ease-in-out)}
.reg-sub-only-item:hover{background:var(--royal-surface-glass-hover)}
.reg-sub-only-num{font-size:var(--type-caption1);font-family:'IBM Plex Mono',monospace;color:var(--royal-text-gold);min-width:var(--space-11)}
.reg-sub-only-name{font-size:var(--type-caption1);color:var(--label);flex:1}
.spa-loading{display:flex;align-items:center;justify-content:center;width:100%;min-height:var(--sheet-h-medium);color:var(--tertiary-label)}
.spa-spinner{width:var(--space-8);height:var(--space-8);border:3px solid var(--fill-tertiary);border-top-color:var(--accent-blue);border-radius:50%;animation:spin .8s linear infinite}
.spa-error{display:flex;align-items:center;justify-content:center;width:100%;min-height:var(--sheet-h-medium);padding:var(--space-5);text-align:center;color:var(--danger);font-size:var(--type-subhead);font-weight:var(--weight-semibold)}

/* ── card_print.js ── */
.pw-member-name{font-weight:var(--weight-bold);color:var(--royal-text-gold)}
.pw-btn-photo-save,.pw-btn-qr-save,.pw-btn-card-save,.pw-btn-data-save,.pw-btn-back-save,.pw-btn-print{}

/* ── stat-utils.js ── */
.acc-stat-card{background:var(--app-card-bg);border:.5px solid var(--royal-border-glass);border-radius:var(--radius-md);padding:var(--space-4);text-align:center;box-shadow:var(--shadow-md)}
.acc-stat-label{font-size:var(--type-caption1);color:var(--tertiary-label);font-weight:var(--weight-semibold);margin-bottom:var(--space-1)}
.acc-stat-value{font-size:var(--type-headline);font-weight:var(--weight-heavy);letter-spacing:-.5px}
.acc-stat-sub{font-size:var(--type-caption2);color:var(--quaternary-label);margin-top:var(--space-1)}
.set-stat-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--fill-quaternary);border-radius:var(--radius-sm)}
.pop-guest-name-track{font-size:var(--type-largetitle);font-weight:var(--weight-heavy);min-height:1.6em;text-align:center}
.pop-pop-guest-name-track-empty{opacity:.6}

/* ── _mobRow.js ── */
.detail-info-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0;border-bottom:.5px solid var(--royal-border-glass)}
.detail-info-row.full{flex-direction:column;align-items:stretch}
.detail-info-label{font-size:var(--type-caption1);font-weight:var(--weight-semibold);color:var(--tertiary-label);margin-right:var(--space-5);flex-shrink:0}
.detail-info-input{background:var(--fill-quaternary);border:.5px solid var(--royal-border-glass);border-radius:var(--radius-xs);padding:var(--space-2) var(--space-3);color:var(--label);font-size:var(--type-caption1);flex:1;min-width:0}
.detail-info-value{font-size:var(--type-caption1);color:var(--label);text-align:right;flex:1}
.detail-info-value.highlight{color:var(--royal-text-gold);font-weight:var(--weight-bold)}

/* ── doc_modal /.webp_form_buttons /.webp_form_viewer ── */
.doc-form-buttons{margin-top:var(--space-5);padding:var(--space-4);background:var(--app-card-bg);border:.5px solid var(--royal-border-glass);border-radius:var(--radius-md)}
.doc-form-label{font-size:var(--type-subhead);font-weight:var(--weight-bold);color:var(--tertiary-label);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2)}
.doc-modal-box--viewer{max-width:70%;max-height:90vh}
.doc.webp-body{display:flex;flex-direction:column;align-items:center;gap:var(--space-5)}

/* ── member.js ── */
.member-page{min-height:100vh}

/* ── menubar.js ── */
.has-menubar{padding-top:var(--mac-menubar-h)}
.search-result-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease-in-out)}
.search-result-item:hover{background:var(--royal-surface-glass-hover)}

/* ── index.html ── */
.noise-overlay{position:fixed;inset:0;pointer-events:none;opacity:.03;z-index:1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");background-repeat:repeat}
.avatar-img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-avatar)}

/* ── membership-types.js ── */
.type-cb{width:13px;height:13px;accent-color:var(--accent-gold);cursor:pointer}

/* doc placeholder — Apple */
.doc-placeholder { padding:32px 20px; text-align:center; background: var(--glass-bg); backdrop-filter: var(--glass-blur); border:0.5px solid var(--separator); border-radius: var(--radius-card); }
.doc-placeholder-title { font-size:1.1rem; font-weight:700; color: var(--label); }
.doc-placeholder-desc { margin-top:6px; color: var(--secondary-label); font-size:0.85rem; }


/* ── membership-types Apple (theme.css 연동) ── */
.mt-wrap { background: transparent; color: var(--label); font-family: var(--font-system); padding:12px; min-height:100%; box-sizing:border-box; }
.mt-layout { display:grid; grid-template-columns:1fr 260px; gap:14px; align-items:start; }
@media(max-width:1100px){ .mt-layout { grid-template-columns:1fr; } }
.mt-card { background: var(--glass-bg); backdrop-filter: var(--glass-blur); -webkit-backdrop-filter: var(--glass-blur); border:0.5px solid var(--separator); border-radius: var(--radius-card); padding:14px; margin-bottom:14px; box-shadow: var(--glass-shadow); }
.mt-table { width:100%; border-collapse:collapse; font-size:11px; }
.mt-table th { background: var(--fill-quaternary); padding:5px 7px; text-align:left; color: var(--secondary-label); font-weight:600; border-bottom:0.5px solid var(--separator); }
.mt-table td { padding:4px 7px; border-bottom:0.5px solid var(--separator); color: var(--label); }
.editable { border: 1px dashed var(--accent-gold); background: rgba(201,167,78,0.08); border-radius: 4px; cursor: pointer; position: relative; padding: 2px 6px 2px 4px !important; }
.editable:hover { background: rgba(201,167,78,0.18); border-style: solid; }
.editable::after { content: "✎ 클릭"; font-size: 9px; color: var(--accent-gold); margin-left: 6px; opacity: 0.9; font-weight: 700; }
.editable:hover::after { opacity: 1; }
.mt-group-card { background: var(--glass-bg); backdrop-filter: var(--glass-blur); border:0.5px solid var(--separator); border-radius: var(--radius-card); padding:12px; }
.mt-group-item { background: var(--secondary-bg); border:0.5px solid var(--separator); border-radius: var(--radius-button); padding:7px 9px; display:flex; justify-content:space-between; }

/* ── GUI 반응형 + 텍스트 한 줄 유지 + 창 조절 대응 + 폰트 자동 조절 ── */
html, body { min-width: 320px; height: 100%; overflow: hidden; }
#spa-app, .app-root, .mt-wrap { width: 100%; max-width: 100%; box-sizing: border-box; }
#spa-app { height: calc(100vh - var(--mac-menubar-h)); overflow-y: auto; -webkit-overflow-scrolling: touch; }
.app-root { height: calc(100vh - 52px); }
@media (max-width: 1000px) {
  /* 메뉴바 세로 2단: 위=업데이트/시간/로그아웃/테마, 아래=사용자/메뉴/검색 */
  :root { --mac-menubar-h: 60px; } /* 2단 높이만큼 본문 시작 위치 확보 */
  #mac-menubar.apple-header {
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    height: auto;
    gap: 2px;
    padding-bottom: 2px;
  }
  #mac-menubar > .header-col { width: 100%; flex-wrap: wrap; }
  #mac-menubar > .header-col:nth-child(2) { order: 1; justify-content: flex-end; }
  #mac-menubar > .header-col:nth-child(1) { order: 2; }
}
/* 폰트 자동 조절: clamp로 뷰포트에 따라 유동, 한 줄 유지 시 JS가 추가 축소 */
.ds-lbl, .dc-title, .mt-h5, .mt-h6, .gname, .doc-card-name, .welcome-main, .hdr-btn-label, #menubarUserName {
  font-size: clamp(10px, 1.2vw, 13px);
  transition: font-size 0.15s ease;
}
@media (max-width: 1280px){ .dash-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 768px){
  .dash-grid { grid-template-columns: 1fr; }
  .mt-layout { grid-template-columns: 1fr; }
  .mt-form-grid { grid-template-columns: 1fr; }
  .mt-toolbar { flex-wrap: wrap; }
}
@media (max-width: 480px){
  .apple-header { padding: 6px 8px; }
  .mt-card { padding: 10px; }
}
@media (max-height: 700px){
  .dash-stats { gap: 8px; margin-bottom: 12px; }
  .dash-card { padding: 16px; }
  .mt-card { padding: 10px; }
}
@media (max-height: 600px){
  .dash-scroll { padding: 12px; }
  .mt-wrap { padding: 8px; }
}
/* 텍스트: 다음 줄로 내리지 않고, 잘리지 않게 — 한 줄 유지 + 말줄임 대신 가로 스크롤 허용 영역에서는 visible */
.ds-lbl, .dc-title, .dc-desc, .mt-h5, .mt-h6, .gname, .doc-card-name, .welcome-main, .hdr-btn-label {
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0;
}
.mt-table { table-layout: fixed; }
.mt-table th, .mt-table td { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 160px; }
.mt-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.doc-card-name, .gname, #menubarUserName { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
/* 긴 한글·영문 혼합은 keep-all로 단어 단위 유지 */
.member-card, .mt-card, .glass-card { overflow-wrap: break-word; word-break: keep-all; }

/* ── JS 인라인 제거 — Apple 클래스화 ── */
.bg-layer { background-image: var(--bg-image); }
.sr-only { position:absolute; left:-9999px; top:-9999px; }
.user-area { display:flex; align-items:center; gap:8px; }
.welcome-main { display:inline-flex; align-items:center; gap:6px; font-weight:700; }
.auto-scale { white-space:nowrap; overflow:hidden; text-overflow:clip; }
.reg-overlay { display:none; position:fixed; inset:0; background:rgba(0,0,0,0.8); align-items:center; justify-content:center; }
.reg-overlay.show { display:flex; }
.mt-add-body.hidden { display:none; }
.mt-add-body.show { display:block; }
