{"version":3,"sources":["extension/installed/index.scss"],"names":[],"mappings":"AAIA,wBACE,UAAA,eAAA,IAAA,SAGF,KACE,MAAA,cAGF,0BACE,GACE,UAAA,SACA,QAAA,EAEF,IACE,UAAA,WAEF,KACE,UAAA,SACA,QAAA,GAKJ,2BACE,IAAA,KACA,MAAA,KACA,UAAA,uBAAA,IAAA,SAAA,IAAA,KAEA,yBALF,2BAMI,MAAA,KACA,IAAA,MAGF,yBAVF,2BAWI,MAAA,KACA,IAAA,KAEA,gDACE,MAAA,KACA,OAAA,MAKN,kCACE,GACE,QAAA,EACA,UAAA,iBAEF,KACE,QAAA,EACA,UAAA,eAKJ,iBACE,UAAA,aAAA,KAAA,YAAA,SAGF,wBACE,GAAA,KACE,UAAA,cAEF,IACE,UAAA,kBAKJ,uBACE,UAAA,WAAA,GAAA,YAAA,SAGF,sBACE,GAAA,KACE,WAAA,EAAA,IAAA,KAAA,+BAEF,IACE,WAAA,EAAA,IAAA,KAAA,gCAKJ,mBACE,UAAA,MAIF,oBACE,MAAA,MAEA,yBAHF,oBAII,MAAA,MAKJ,qBACE,MAAA,KACA,OAAA,KAGF,qBACE,MAAA,KACA,OAAA,KACA,WAAA,QAOF,iBACE,eAAA,KAEA,+BACE,MAAA,KACA,OAAA,KAEA,mCACE,MAAA,KACA,OAAA,KAIJ,8BACE,MAAA,KACA,OAAA,KACA,IAAA,KACA,KAAA,KACA,QAAA,EAOA,wDACE,UAAA,kBAAA,KAAA,SAAA,SAGF,uDACE,UAAA,mBAAA,KAAA,SAAA,SAKN,6BAEE,GACE,UAAA,qBAGF,IACE,UAAA,sBAGF,IACE,UAAA,sBAGF,KAAA,MACE,UAAA,sBAIJ,8BACE,GAAA,IACE,QAAA,EACA,UAAA,sBAAA,UAEF,IAAA,IACE,QAAA,GACA,UAAA,sBAAA,WAEF,IAAA,IACE,QAAA,GACA,UAAA,sBAAA,WAEF,KAAA,IACE,QAAA,EACA,UAAA,sBAAA,WAOA,qDACE,UAAA,eAAA,KAAA,SAAA,SAAA,KAGF,oDACE,UAAA,gBAAA,KAAA,SAAA,SAAA,KAKN,0BAEE,GACE,UAAA,qBAGF,IACE,UAAA,sBAGF,IACE,UAAA,sBAGF,KAAA,MACE,UAAA,sBAIJ,2BACE,GAAA,IACE,QAAA,EACA,UAAA,sBAAA,UAEF,IAAA,IACE,QAAA,GACA,UAAA,sBAAA,WAEF,IAAA,IACE,QAAA,GACA,UAAA,sBAAA,WAEF,KAAA,IACE,QAAA,EACA,UAAA,sBAAA","file":"pages/extension/installed/index.bundle.css","sourcesContent":["// Extension Installed Page Styles\n// Only custom styles that cannot be achieved with Bootstrap\n\n// Success icon animation\n.extension-success-icon {\n  animation: success-appear 0.6s ease-out;\n}\n\nbody {\n  color: red !important;\n}\n\n@keyframes success-appear {\n  0% {\n    transform: scale(0);\n    opacity: 0;\n  }\n  50% {\n    transform: scale(1.2);\n  }\n  100% {\n    transform: scale(1);\n    opacity: 1;\n  }\n}\n\n// Arrow container positioning and animation\n.extension-arrow-container {\n  top: 80px;\n  right: 40px;\n  animation: arrow-container-appear 0.5s ease-out 0.3s both;\n\n  @media (max-width: 991px) {\n    right: 20px;\n    top: 70px;\n  }\n\n  @media (max-width: 576px) {\n    right: 10px;\n    top: 60px;\n\n    .extension-arrow svg {\n      width: 50px;\n      height: 70px;\n    }\n  }\n}\n\n@keyframes arrow-container-appear {\n  0% {\n    opacity: 0;\n    transform: translateY(20px);\n  }\n  100% {\n    opacity: 1;\n    transform: translateY(0);\n  }\n}\n\n// Arrow bounce animation\n.extension-arrow {\n  animation: arrow-bounce 1.5s ease-in-out infinite;\n}\n\n@keyframes arrow-bounce {\n  0%, 100% {\n    transform: translateY(0);\n  }\n  50% {\n    transform: translateY(-8px);\n  }\n}\n\n// Label glow animation\n.extension-arrow-label {\n  animation: label-glow 2s ease-in-out infinite;\n}\n\n@keyframes label-glow {\n  0%, 100% {\n    box-shadow: 0 4px 15px rgba(var(--bs-primary-rgb), 0.4);\n  }\n  50% {\n    box-shadow: 0 4px 25px rgba(var(--bs-primary-rgb), 0.7);\n  }\n}\n\n// URL bar min width\n.extension-url-bar {\n  min-width: 100px;\n}\n\n// Extension dropdown width\n.extension-dropdown {\n  width: 280px;\n\n  @media (max-width: 576px) {\n    width: 100%;\n  }\n}\n\n// Icon/brandmark sizing\n.extension-item-icon {\n  width: 28px;\n  height: 28px;\n}\n\n.extension-brandmark {\n  width: 20px;\n  height: 20px;\n  object-fit: contain;\n}\n\n// ============================================================================\n// Click Indicator Animation (same pattern as download page)\n// ============================================================================\n\n.click-indicator {\n  pointer-events: none;\n\n  .pointer-icon {\n    width: 48px;\n    height: 48px;\n\n    svg {\n      width: 100%;\n      height: 100%;\n    }\n  }\n\n  .click-pulse {\n    width: 30px;\n    height: 30px;\n    top: -2px;\n    left: -2px;\n    opacity: 0;\n  }\n}\n\n// Step 1: Puzzle piece - mouse moves to target, clicks, snaps back\n.extension-puzzle-target {\n  .click-indicator {\n    .pointer-icon {\n      animation: puzzle-mouse-move 2.5s ease-out infinite;\n    }\n\n    .click-pulse {\n      animation: puzzle-click-pulse 2.5s ease-out infinite;\n    }\n  }\n}\n\n@keyframes puzzle-mouse-move {\n  // Start off-screen (bottom-right)\n  0% {\n    transform: translate(40px, 30px);\n  }\n  // Arrive at target (cursor tip on button)\n  30% {\n    transform: translate(-5px, -12px);\n  }\n  // Stay on target during clicks\n  70% {\n    transform: translate(-5px, -12px);\n  }\n  // Snap back instantly\n  70.1%, 100% {\n    transform: translate(40px, 30px);\n  }\n}\n\n@keyframes puzzle-click-pulse {\n  0%, 35% {\n    opacity: 0;\n    transform: translate(-5px, -12px) scale(0.5);\n  }\n  40%, 50% {\n    opacity: 0.8;\n    transform: translate(-5px, -12px) scale(1.3);\n  }\n  55%, 65% {\n    opacity: 0.8;\n    transform: translate(-5px, -12px) scale(1.3);\n  }\n  70%, 100% {\n    opacity: 0;\n    transform: translate(-5px, -12px) scale(0.5);\n  }\n}\n\n// Step 2: Pin button - mouse moves to target, clicks, snaps back (delayed)\n.extension-pin-target {\n  .click-indicator {\n    .pointer-icon {\n      animation: pin-mouse-move 2.5s ease-out infinite 1.5s;\n    }\n\n    .click-pulse {\n      animation: pin-click-pulse 2.5s ease-out infinite 1.5s;\n    }\n  }\n}\n\n@keyframes pin-mouse-move {\n  // Start off-screen (bottom-right)\n  0% {\n    transform: translate(35px, 25px);\n  }\n  // Arrive at target (cursor tip on button)\n  30% {\n    transform: translate(-5px, -12px);\n  }\n  // Stay on target during clicks\n  70% {\n    transform: translate(-5px, -12px);\n  }\n  // Snap back instantly\n  70.1%, 100% {\n    transform: translate(35px, 25px);\n  }\n}\n\n@keyframes pin-click-pulse {\n  0%, 35% {\n    opacity: 0;\n    transform: translate(-5px, -12px) scale(0.5);\n  }\n  40%, 50% {\n    opacity: 0.8;\n    transform: translate(-5px, -12px) scale(1.3);\n  }\n  55%, 65% {\n    opacity: 0.8;\n    transform: translate(-5px, -12px) scale(1.3);\n  }\n  70%, 100% {\n    opacity: 0;\n    transform: translate(-5px, -12px) scale(0.5);\n  }\n}\n"]}