@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap";@import"https://fonts.googleapis.com/icon?family=Material+Icons+Outlined";:root{--primary-blue: #2980b9;--light-gray: #f9f9f9;--text-dark: #343a40;--text-light: #6c757d;--border-color: #e9ecef;--white: #ffffff}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--light-gray);color:var(--text-dark)}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button{font-family:Poppins,sans-serif}.app-container{display:flex;flex-direction:column;min-height:100vh}main{flex:1;width:100%;max-width:100%}.auth-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000}.auth-modal-content{background:#fff;padding:2rem;border-radius:12px;width:90%;max-width:400px;position:relative;animation:fade-in .3s ease-out}@keyframes fade-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.close-modal-btn{position:absolute;top:10px;right:15px;background:none;border:none;font-size:2rem;cursor:pointer;color:#aaa}.auth-modal-content h2{text-align:center;margin-top:0;margin-bottom:1.5rem}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input{width:100%;padding:.8rem;border:1px solid #ccc;border-radius:8px;font-size:1rem}.auth-error{color:#e74c3c;background-color:#fdd;border:1px solid #fbb;padding:.8rem;border-radius:8px;text-align:center;margin-bottom:1rem}.auth-submit-btn{width:100%;padding:.9rem;font-size:1rem;font-weight:700;border-radius:8px;border:none;cursor:pointer;background-color:var(--primary-color, #007bff);color:#fff}.auth-submit-btn:disabled{background-color:#a5d8ff;cursor:not-allowed}.auth-switcher{text-align:center;margin-top:1.5rem;color:#666}.auth-switcher button{background:none;border:none;color:var(--primary-color, #007bff);font-weight:700;cursor:pointer;margin-left:5px}.separator{display:flex;align-items:center;text-align:center;color:#aaa;margin:1.5rem 0}.separator:not(:empty):before{margin-right:.25em}.separator:not(:empty):after{margin-left:.25em}.google-login-btn{width:100%;padding:.8rem;font-size:.95rem;font-weight:700;border-radius:8px;border:1px solid #ccc;cursor:pointer;background-color:#fff;color:#333;display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:1rem}.forgot-password-container{text-align:right;margin-top:-8px;margin-bottom:16px}.forgot-password-link{background:none;border:none;color:#3498db;font-size:.85rem;cursor:pointer;padding:0}.auth-instruction{text-align:center;color:#34495e;font-size:.9rem;margin-bottom:16px}.reset-success{text-align:center;color:#2c3e50}.terms-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0009;display:flex;flex-direction:column;justify-content:flex-end;z-index:1000;-webkit-tap-highlight-color:transparent}.terms-modal-content{background-color:#fff;border-top-left-radius:20px;border-top-right-radius:20px;max-height:80vh;display:flex;flex-direction:column;animation:slide-up-terms .3s ease-out}@keyframes slide-up-terms{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.terms-modal-header{padding:16px;text-align:center;position:relative;border-bottom:1px solid #e9ecef;flex-shrink:0}.terms-modal-header .back-btn{position:absolute;left:16px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:5px}.terms-modal-header .back-btn img{filter:invert(50%);width:24px;height:24px}.terms-modal-header h2{font-size:1.1rem;font-weight:600;margin:0;color:#2c3e50}.terms-modal-body{padding:4px 20px 20px;overflow-y:auto;line-height:1.7;color:#495057}.terms-modal-body p,.terms-modal-body li{text-align:justify}.terms-modal-body h3{color:#2c3e50;font-size:1rem;margin-top:20px}.terms-modal-body strong{color:#2c3e50}.terms-modal-body ol,.terms-modal-body ul{padding-left:20px}.terms-modal-footer{padding:16px;border-top:1px solid #e9ecef;flex-shrink:0;background-color:#fff;box-shadow:0 -4px 12px #0000000d}.confirm-button{width:100%;padding:14px;font-size:1rem;font-weight:600;border-radius:12px;border:none;cursor:pointer;background-color:#007bff;color:#fff;transition:background-color .2s}.confirm-button:hover{background-color:#0056b3}.onboarding-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:2000;font-family:Poppins,sans-serif}.onboarding-modal-content{background:#fff;padding:24px;border-radius:16px;width:90%;max-width:450px;box-shadow:0 5px 15px #0000004d;text-align:center}.onboarding-modal-content h3{font-size:1.5rem;font-weight:600;color:#2c3e50;margin-top:0;margin-bottom:8px}.onboarding-modal-content .subtitle{font-size:1rem;color:#7f8c8d;margin-bottom:24px}.onboarding-form{display:flex;flex-direction:column;gap:16px;text-align:left}.onboarding-form-group label{display:block;font-size:.9rem;font-weight:500;color:#34495e;margin-bottom:6px}.onboarding-form-group input{width:100%;padding:12px;border:1px solid #bdc3c7;border-radius:8px;font-size:1rem;box-sizing:border-box}.onboarding-form-group input:disabled{background-color:#f4f6f8;color:#7f8c8d}.onboarding-error{color:#e74c3c;font-size:.9rem;margin-top:16px;min-height:1.2em}.onboarding-save-btn{width:100%;padding:14px;border-radius:12px;border:none;font-size:1rem;font-weight:600;cursor:pointer;background-color:#2ecc71;color:#fff;margin-top:24px;transition:background-color .2s}.onboarding-save-btn:hover{background-color:#27ae60}.onboarding-save-btn:disabled{background-color:#bdc3c7;cursor:not-allowed}.nav-menu-popup{position:absolute;top:65px;right:16px;background-color:#fff;border-radius:16px;box-shadow:0 8px 24px #00000026;width:220px;padding:8px;z-index:1100;animation:slide-down-fade-in .3s ease-out}@keyframes slide-down-fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.nav-menu-popup ul{list-style:none;margin:0;padding:0}.nav-menu-popup li a{display:flex;align-items:center;padding:12px 16px;text-decoration:none;color:#333;font-weight:500;border-radius:8px;transition:background-color .2s ease}.nav-menu-popup li a:hover{background-color:#f5f5f5}.nav-menu-icon{width:22px;height:22px;margin-right:12px}.notification-badge{margin-left:auto;background-color:#e74c3c;color:#fff;font-size:.75rem;font-weight:700;border-radius:10px;min-width:20px;height:20px;padding:0 6px;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.navbar-container{display:flex;justify-content:space-between;align-items:center;padding:1rem}.navbar-logo img{height:50px;width:auto}.navbar-actions{display:flex;align-items:center}.navbar-button{background-color:var(--white);border:1px solid var(--border-color);border-radius:25px;padding:.5rem 1rem;color:var(--text-dark);box-shadow:0 2px 8px #00000012;transition:transform .2s ease;display:flex;align-items:center;gap:.5rem;font-weight:600;cursor:pointer}.navbar-button:hover{transform:scale(1.05)}.navbar-button img{height:16px}.menu-container{position:relative}.navbar-menu-badge{position:absolute;top:6px;right:10px;width:10px;height:10px;background-color:#e74c3c;border-radius:50%;border:2px solid white}.footer-container{background-color:#f8f9fa;padding:2rem 1rem;color:#6c757d;text-align:left;border-top:1px solid #e9ecef}.footer-main{margin-bottom:2rem}.footer-logo-text{font-size:1.5rem;font-weight:700;color:#343a40;margin:0 0 1rem}.footer-links{display:flex;flex-direction:column;gap:.75rem}.footer-links a{color:#343a40;text-decoration:none;font-weight:600;font-size:1.1rem}.footer-links a:hover{text-decoration:underline}.footer-bottom{padding-top:1.5rem;border-top:1px solid #dee2e6;font-size:.875rem}.footer-bottom p{margin:0 0 1rem;color:#6c757d}.footer-sub-links{display:flex;gap:1.5rem}.footer-sub-links a{color:#6c757d;text-decoration:none}.footer-sub-links a:hover{text-decoration:underline}.product-card{background-color:#fff;border-radius:16px;box-shadow:0 4px 15px #00000014;overflow:hidden;display:flex;flex-direction:column;text-align:left;cursor:pointer;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.product-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001f}.product-image-container{width:100%;padding-top:100%;position:relative;background-color:#f5f5f5}.product-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.product-info{padding:12px;display:flex;flex-direction:column;flex-grow:1}.product-name{font-size:1rem;font-weight:600;color:#333;margin:0 0 4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-height:2.5rem}.po-label{font-size:.75rem;font-weight:600;color:#e67e22;display:block;margin-bottom:2px}.product-price{font-size:1.1rem;font-weight:700;color:#16a085;margin:auto 0 0}.product-actions{display:flex;gap:8px;padding:0 12px 12px}.product-actions button{flex:1;padding:10px;border-radius:8px;border:none;font-weight:700;cursor:pointer;transition:background-color .2s}.btn-order{background-color:#3498db;color:#fff}.btn-order:hover{background-color:#2980b9}.btn-wish{background-color:#eafaea;color:#16a085;border:1.5px solid #16a085}.btn-wish:hover{background-color:#d4f5d4}.search-bar-container{display:flex;align-items:center;flex-grow:1;background-color:var(--white);border-radius:50px;box-shadow:0 4px 12px #00000009;border:none;padding:12px 16px;gap:8px;cursor:pointer;transition:box-shadow .2s,transform .2s}.search-bar-container:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000000f}.search-icon{width:20px;height:20px;opacity:.6}.search-bar-placeholder{color:#eaeaea;font-size:1rem}.cart-button-area{background-color:var(--white);box-shadow:0 2px 8px #00000007;position:relative;width:50px;height:50px;border-radius:12px;padding:0;flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease}.cart-button-area:hover{transform:scale(1.05)}.cart-item-count{position:absolute;top:0;right:0;background-color:#e74c3c;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;border:2px solid white}.search-area-container{display:flex;align-items:center;gap:1rem;padding:1rem}@font-face{font-family:swiper-icons;src:url(data:application/font-woff;charset=utf-8;base64,\ d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA);font-weight:400;font-style:normal}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.uni-slider-section{padding:1rem;padding-top:0}.uni-slider-section .section-title{font-size:1.25rem;font-weight:700;margin-bottom:1rem}.swiper-slide{display:flex;justify-content:center}.university-item{width:80px;height:80px;border-radius:50%;overflow:hidden;border:2px solid var(--border-color);box-shadow:0 2px 4px #0000000d}.university-item img{width:100%;height:100%;object-fit:cover}.service-nav-container{display:flex;gap:1rem;padding:1.5rem 1rem;border-bottom:8px solid var(--light-gray)}.service-button{flex:1;background-color:var(--white);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 4px 16px #00000014;aspect-ratio:1 / 1;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease-in-out}.service-button:hover{transform:translateY(-5px)}.service-icon{background-color:transparent;width:60%;height:auto;box-shadow:none;border-radius:0}.service-icon img{width:100%;height:100%;object-fit:contain}.homepage-container{padding:1rem}.loading-text{text-align:center;padding:2rem;color:#888}.section-title{font-size:1.25rem;font-weight:700;margin-bottom:1rem}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;transform:translate3d(0,-50%,0)}.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translate(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.product-detail-container{max-width:500px;margin:0 auto;background-color:#f4f6f8;min-height:100vh;font-family:Poppins,sans-serif;padding-bottom:100px}.detail-back-button{position:absolute;top:16px;left:16px;z-index:10;background-color:#0006;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer}.detail-back-button img{width:24px;height:24px;filter:brightness(0) invert(1)}.image-gallery .main-product-image{width:100%;height:400px;object-fit:cover}.image-gallery .swiper-pagination-bullet-active{background-color:#fff}.product-details{background-color:#fff;padding:20px 16px;border-radius:0;margin-top:0;position:relative;z-index:2}.price-sold-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.price{font-size:1.5rem;font-weight:700;color:var(--primary-color, #007bff);margin:0}.sold-count{font-size:.9rem;color:#7f8c8d}.product-name{font-size:1.25rem;font-weight:600;color:#2c3e50;margin:0}.divider{border:none;border-top:1px solid #ecf0f1;margin:16px 0}.variant-selection{display:flex;gap:10px;overflow-x:auto;padding-bottom:10px}.variant-preview-item{cursor:pointer;border:2px solid transparent;border-radius:8px;padding:4px;transition:border-color .2s}.variant-preview-item.active{border-color:var(--primary-color, #007bff)}.variant-preview-image{width:60px;height:60px;border-radius:6px;object-fit:cover}.description{margin-top:16px}.description h3{font-size:1rem;font-weight:600;margin-bottom:8px}.description p{font-size:.95rem;color:#34495e;line-height:1.6}.action-buttons{position:fixed;bottom:0;left:0;right:0;max-width:500px;margin:0 auto;background-color:#fff;padding:12px 16px;display:flex;gap:12px;box-shadow:0 -2px 10px #00000014;z-index:100}.action-buttons button{flex:1;padding:14px;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer}.order-now-btn{background-color:var(--primary-color, #007bff);color:#fff}.wish-list-btn{background-color:var(--secondary-color, #eef1f4);color:var(--primary-color, #007bff)}.loading-text{padding:40px;text-align:center;font-size:1.2rem;color:#7f8c8d}.price-container{display:flex;flex-direction:column}.price{font-size:1.5rem;font-weight:700;color:#007bff;margin:0;line-height:1.2}.price-total-po{font-size:.9rem;font-weight:500;color:#6c757d;margin:4px 0 0}.popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:1000}.popup-content{position:absolute;bottom:0;left:50%;transform:translate(-50%);background-color:#fff;width:100%;max-width:500px;padding:24px;border-top-left-radius:20px;border-top-right-radius:20px;animation:slide-up .3s ease-out}@keyframes slide-up{0%{transform:translate(-50%,100%);opacity:0}to{transform:translate(-50%);opacity:1}}.popup-header{display:flex;gap:16px;border-bottom:1px solid #e9ecef;padding-bottom:16px;margin-bottom:16px}.popup-product-image{width:80px;height:80px;object-fit:cover;border-radius:8px}.popup-product-info{display:flex;flex-direction:column}.popup-product-name{font-weight:600;margin:0 0 4px}.popup-product-price{color:var(--primary-color, #007bff);font-weight:700;font-size:1.2rem;margin:0 0 4px}.popup-product-stock{font-size:.9rem;color:#6c757d}.popup-quantity-selector{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.popup-quantity-selector p{margin:0;font-weight:500}.quantity-controls{display:flex;align-items:center;gap:8px}.quantity-controls button{width:32px;height:32px;border-radius:50%;border:1px solid #ddd;background-color:#f8f9fa;font-size:1.2rem;cursor:pointer}.quantity-controls span{font-weight:600;min-width:30px;text-align:center}.add-to-cart-btn{width:100%;padding:14px;font-size:1rem;font-weight:600;border-radius:12px;border:none;cursor:pointer;background-color:var(--primary-color, #007bff);color:#fff}.popup-variant-section{margin-top:16px;border-top:1px solid #e9ecef;padding-top:16px}.popup-variant-section h4{margin:0 0 12px;font-size:1rem;font-weight:600;color:#343a40}.popup-variant-list{display:flex;gap:12px;overflow-x:auto;padding-bottom:10px;-webkit-overflow-scrolling:touch}.popup-variant-list::-webkit-scrollbar{display:none}.popup-variant-list{-ms-overflow-style:none;scrollbar-width:none}.popup-variant-item{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;padding:8px;border:2px solid transparent;border-radius:12px;transition:all .2s ease-in-out;flex-shrink:0}.popup-variant-item.active{border-color:var(--primary-color, #007bff);background-color:#f0f7ff}.popup-variant-item-image{width:70px;height:70px;object-fit:cover;border-radius:8px;border:1px solid #eee}.popup-variant-item-name{font-size:.8rem;font-weight:500;color:#495057;text-align:center;max-width:70px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.checkout-container{max-width:500px;margin:0 auto;padding-bottom:100px;font-family:Poppins,sans-serif;background-color:#f8f9fa}.checkout-header{display:flex;align-items:center;padding:16px;background-color:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #e9ecef}.checkout-header h2{margin:0;font-size:1.1rem;font-weight:600;text-align:center;flex-grow:1}.checkout-back-button{background:none;border:none;cursor:pointer;position:absolute}.checkout-back-button img{width:24px;height:24px}.shipping-address{display:flex;align-items:center;gap:16px;padding:16px;background-color:#fff;margin-bottom:12px}.address-icon-container .material-icons-outlined{color:var(--primary-color, #007bff)}.address-details{flex-grow:1}.address-details h4{margin:0 0 4px;font-size:.95rem;font-weight:600}.address-details .phone-number{font-weight:500;color:#495057;margin-left:8px}.address-details p{margin:0;font-size:.85rem;color:#6c757d;line-height:1.5}.address-action .material-icons-outlined{color:#adb5bd;font-size:28px}.shipping-options{padding:16px;background-color:#fff;margin-bottom:12px}.shipping-options h4{margin:0 0 12px;font-size:1rem;font-weight:600}.required-star{color:red;margin-left:2px}.shipping-options label{display:flex;align-items:center;margin-bottom:10px;font-size:.9rem}.shipping-options input[type=radio]{margin-right:10px;accent-color:var(--primary-color, #007bff)}.shipping-note{font-size:.8rem;color:#6c757d;background-color:#f8f9fa;padding:8px;border-radius:8px;margin-top:16px}.order-items-list{padding:16px;background-color:#fff;margin-bottom:12px}.order-item{display:flex;align-items:center;gap:16px;margin-bottom:16px}.order-item:last-child{margin-bottom:0}.order-item-image{width:64px;height:64px;object-fit:cover;border-radius:8px}.order-item-details{flex-grow:1}.order-item-name{font-size:.9rem;font-weight:500;margin:0 0 4px}.order-item-price{font-size:.95rem;font-weight:600;color:var(--primary-color, #007bff);margin:0}.order-item-quantity{border:1px solid #dee2e6;padding:4px 12px;border-radius:8px;font-size:.9rem;font-weight:500}.payment-summary{padding:16px;background-color:#fff}.payment-summary h4{margin:0 0 16px;font-size:1rem;font-weight:600}.summary-row{display:flex;justify-content:space-between;margin-bottom:12px;font-size:.9rem;color:#495057}.summary-divider{border:none;border-top:1px dashed #dee2e6;margin:16px 0}.summary-row.total{font-weight:700;font-size:1rem;color:#212529}.checkout-action-button{position:fixed;bottom:0;left:0;right:0;background-color:#fff;padding:16px;box-shadow:0 -2px 10px #00000014;max-width:500px;margin:0 auto;z-index:20}.checkout-action-button button{width:100%;padding:14px;font-size:1rem;font-weight:600;border-radius:12px;border:none;cursor:pointer;background-color:var(--primary-color, #007bff);color:#fff}.order-notes-section{background-color:#fff;padding:16px;margin-top:12px;margin-bottom:12px;border-bottom:1px solid #e9ecef}.order-notes-section h4{margin:0 0 8px;font-size:1rem;font-weight:600}.order-notes-section textarea{width:100%;border:1px solid #e9ecef;border-radius:8px;padding:12px;font-size:.95rem;font-family:inherit;resize:vertical}.order-notes-section .char-counter{text-align:right;font-size:.8rem;color:#868e96;margin-top:4px}.popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;padding:15px}.popup-content.confirmation-popup{background-color:#fff;padding:24px;border-radius:16px;width:100%;max-width:400px;text-align:center;box-shadow:0 10px 30px #0000001a}.confirmation-popup h4{margin-top:0;margin-bottom:12px;font-size:1.2rem;color:#2c3e50}.confirmation-popup p{margin-bottom:24px;color:#555;line-height:1.6}.popup-actions{display:flex;gap:12px}.popup-actions button{flex:1;padding:12px;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s}.popup-actions .btn-secondary{background-color:#e9ecef;color:#495057}.popup-actions .btn-primary{background-color:#007bff;color:#fff}.popup-actions button:hover{opacity:.9}.popup-actions.single-action{justify-content:center}.popup-actions.single-action .btn-primary{flex-grow:0;min-width:120px}.cart-page-container{max-width:500px;margin:0 auto;padding-bottom:120px;background-color:#fff;min-height:100vh}.cart-header{display:flex;align-items:center;padding:16px;background-color:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #e9ecef}.cart-header h2{margin:0;font-size:1.1rem;text-align:center;flex-grow:1}.cart-back-button{background:none;border:none;cursor:pointer;position:absolute}.cart-back-button img{width:24px;height:24px}.select-all-container{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid #eee}.select-all-container input[type=checkbox]{margin-right:12px;width:20px;height:20px}.select-all-container label{font-weight:500}.cart-items-list{padding:0 16px}.cart-item{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid #e9ecef}.item-checkbox{width:20px;height:20px;flex-shrink:0}.cart-item-image{width:80px;height:80px;object-fit:cover;border-radius:8px}.cart-item-info{flex-grow:1}.cart-item-name{font-weight:600;margin:0 0 8px}.cart-item-price{color:var(--primary-color, #007bff);font-weight:700;margin:0 0 12px}.cart-item-quantity{display:flex;align-items:center;gap:8px}.cart-item-quantity button{width:28px;height:28px;border-radius:50%;border:1px solid #ddd;background-color:#f8f9fa;font-size:1.1rem;cursor:pointer}.cart-item-quantity span{font-weight:600;min-width:20px;text-align:center}.delete-item-btn{background:none;border:none;cursor:pointer;padding:5px}.delete-item-btn img{width:24px;height:24px}.cart-summary-footer{position:fixed;bottom:0;left:0;right:0;max-width:500px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:16px;background-color:#fff;box-shadow:0 -2px 10px #00000014}.total-price-section p{margin:0;color:#6c757d}.total-price-section h3{margin:0;font-size:1.2rem}.checkout-button{padding:14px 24px;font-size:1rem;font-weight:700;border-radius:12px;border:none;cursor:pointer;background-color:var(--primary-color, #007bff);color:#fff;transition:background-color .2s,opacity .2s}.checkout-button:disabled{background-color:#a5d8ff;opacity:.7;cursor:not-allowed}.empty-cart-message{text-align:center;padding:60px 20px}.empty-cart-message p{font-size:1.2rem;color:#6c757d}.empty-cart-message button{margin-top:20px;padding:12px 24px;background-color:var(--primary-color, #007bff);color:#fff;border:none;border-radius:8px;font-size:1rem;cursor:pointer}.cart-item-po-label{font-size:.8rem;font-weight:600;color:#fd7e14;margin:-8px 0 8px}.select-all-left{display:flex;align-items:center;gap:10px}.bulk-delete-btn{background:none;border:none;color:#dc3545;font-weight:600;cursor:pointer;padding:5px}.bulk-delete-btn:disabled{color:#ccc;cursor:not-allowed}.oc-card{background-color:#fff;border-radius:12px;padding:16px;box-shadow:0 4px 20px #002f5614;border:1px solid #f0f1f5;display:flex;flex-direction:column}.oc-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid #f1f3f5;margin-bottom:12px}.oc-status-label{font-size:.9rem;color:#868e96}.oc-status-value{font-size:.9rem;font-weight:600}.status-waiting{color:#f39c12}.status-shipped{color:#2ecc71}.status-completed{color:#3498db}.status-cancelled{color:#e74c3c}.oc-items-container{display:flex;flex-direction:column;gap:16px}.oc-item{display:flex;gap:12px;align-items:flex-start}.oc-item-image{width:64px;height:64px;border-radius:8px;object-fit:cover;flex-shrink:0}.oc-item-info{flex-grow:1}.oc-item-name{font-weight:600;font-size:.95rem;color:#2c3e50;margin:0 0 4px}.oc-item-price-details p{font-size:.9rem;color:#7f8c8d;margin:2px 0}.oc-item-price-details span{font-weight:500;color:#34495e}.oc-item-quantity{font-size:.9rem;color:#868e96;font-weight:500}.oc-item-error{font-size:.9rem;color:#e74c3c;padding:16px 0}.oc-expand-wrapper{text-align:center;padding-top:12px;margin-top:12px}.oc-expand-btn{background:none;border:none;color:#3498db;font-weight:600;cursor:pointer;padding:4px}.oc-footer{padding-top:16px;margin-top:16px;border-top:1px solid #f1f3f5}.oc-total-section{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:16px}.oc-total-label{font-size:1rem;font-weight:500;color:#34495e}.oc-total-amount{font-size:1.25rem;font-weight:700;color:#2c3e50}.oc-note{width:100%;text-align:center;font-size:.8rem;color:#666;margin-top:10px;padding:0 10px;box-sizing:border-box}.oc-note strong{color:#444}.oc-action-button{width:100%;padding:14px;font-size:1rem;font-weight:600;border-radius:12px;border:none;cursor:pointer;background-color:#3498db;color:#fff;transition:background-color .2s}.oc-action-button:hover{background-color:#2980b9}.oc-countdown{text-align:center;font-size:.9rem;color:#e74c3c;margin:0 0 12px}.oc-countdown strong{font-weight:700}.oc-pelunasan-section{display:flex;flex-direction:column;gap:12px}.oc-pelunasan-info{display:flex;justify-content:space-between;align-items:baseline;width:100%}.oc-pelunasan-info span{font-size:1rem;font-weight:500;color:#34495e}.oc-pelunasan-info strong{font-size:1.25rem;font-weight:700;color:#3498db}.oc-pelunasan-btn{background-color:#3498db}.oc-pelunasan-btn:hover{background-color:#2980b9}.orders-page-container{max-width:500px;margin:0 auto;background-color:#f4f6f8;min-height:100vh;font-family:Poppins,sans-serif}.orders-page-header{background:#fff;padding:16px;color:#2c3e50;position:sticky;top:0;z-index:10;text-align:center;border-bottom:1px solid #e9ecef}.orders-back-button{position:absolute;top:50%;left:16px;transform:translateY(-50%);background:none;border:none;cursor:pointer}.orders-back-button img{filter:invert(50%);width:28px;height:28px}.orders-page-header h1{font-size:1.1rem;font-weight:600;margin:0}.orders-tabs-container{display:flex;background-color:#fff;padding:0 16px;border-bottom:1px solid #e9ecef}.orders-tab-button{flex:1;padding:14px 0;border:none;background:none;font-size:.95rem;font-weight:600;color:#868e96;cursor:pointer;border-bottom:3px solid transparent;transition:all .2s}.orders-tab-button.active{color:#3498db;border-bottom-color:#3498db}.orders-list-container{padding:16px;display:flex;flex-direction:column;gap:12px}.orders-message{text-align:center;color:#868e96;margin-top:40px}.search-page-container{width:100%;max-width:480px;margin:0 auto;padding:16px;box-sizing:border-box;min-height:100vh}.search-page-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.back-button{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center}.back-button img{width:24px;height:24px}.search-input-wrapper{flex-grow:1;display:flex;align-items:center;gap:8px;background-color:var(--white);border-radius:50px;box-shadow:0 4px 12px #00000009;padding:12px 16px;transition:box-shadow .2s}.search-input-wrapper:hover{box-shadow:0 6px 16px #0000000f}.search-input-icon{width:20px;height:20px;opacity:.6}.search-input-field{width:100%;border:none;background:transparent;outline:none;font-size:1rem;color:#717171}.search-input-field::placeholder{color:#eaeaea}.search-results-area{padding-top:16px}.search-placeholder-text{text-align:center;color:#717171;font-size:.9rem}.uni-card-container{background-color:var(--white);border-radius:12px;box-shadow:0 4px 12px #0000000d;cursor:pointer;transition:transform .2s,box-shadow .2s;overflow:hidden;display:flex;flex-direction:column}.uni-card-container:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000014}.uni-card-image-area{width:100%;aspect-ratio:16 / 10;background-color:#f0f2f5}.uni-card-image{width:100%;height:100%;object-fit:cover}.uni-card-content-area{padding:12px 16px}.uni-card-name{font-size:1rem;font-weight:600;color:#333;margin:0}.university-cards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.uni-page-container{background-color:#fff;min-height:100vh;padding:0}.loading-text{padding:20px;text-align:center}.uni-page-header{position:relative;padding:60px 24px 30px;color:#fff;background:linear-gradient(to bottom right,#36dff1,#e3ffaf);background-image:url(/assets/pattern-CkSFOleb.svg),linear-gradient(to bottom right,#36dff1,#e3ffaf);background-repeat:repeat,no-repeat;background-size:auto,100% 100vh;background-position:center,top;min-height:250px}.back-button-uni{position:absolute;top:16px;left:16px;background:none;border:none;cursor:pointer;padding:8px;z-index:10}.back-button-uni img{width:24px;height:24px}.uni-info{display:flex;align-items:center;gap:16px;position:relative}.uni-logo-large{width:60px;height:60px;border-radius:50%;border:2px solid white;background-color:#fffc;padding:5px;box-shadow:0 4px 8px #0003;z-index:5}.uni-name-large{font-size:1.8rem;font-weight:700;text-shadow:1px 1px 3px rgba(0,0,0,.4);z-index:5}.uni-page-content{padding:24px}.tabs-wrapper{margin-top:-50px;padding:0;position:relative;z-index:5}.tabs-container{display:flex;justify-content:flex-start}.tab-button{padding:14px 20px;border:none;font-size:.95rem;font-weight:600;cursor:pointer;flex-grow:1;text-align:center;transition:color .3s ease-in-out,background-color .3s ease-in-out}.tab-button:not(.active){background-color:transparent;color:#ffffffe6;border-top-left-radius:12px;border-top-right-radius:12px}.tab-button.active{background-color:var(--white);color:var(--primary-color, #007bff);border-top-left-radius:25px;border-top-right-radius:25px}.uni-page-content{background-color:var(--white);padding:24px;position:relative;z-index:4;margin-top:0}.product-list-container{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.info-text{grid-column:1 / -1;justify-self:center;text-align:center;padding:40px 0;color:#888}.confirm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:2000}.confirm-modal-content{background:#fff;padding:24px;border-radius:16px;width:90%;max-width:320px;text-align:center;animation:fade-in .2s ease-out}.confirm-modal-content h4{margin-top:0;margin-bottom:8px;font-size:1.2rem;color:#333}.confirm-modal-content p{margin-bottom:24px;color:#6c757d}.confirm-modal-actions{display:flex;gap:12px}.confirm-modal-actions button{flex:1;padding:12px;border:none;border-radius:8px;font-weight:700;font-size:1rem;cursor:pointer;transition:background-color .2s}.btn-cancel{background-color:#f1f3f5;color:#495057}.btn-cancel:hover{background-color:#e9ecef}.btn-confirm{background-color:#e74c3c;color:#fff}.btn-confirm:hover{background-color:#c0392b}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;font-family:Poppins,sans-serif}.modal-content-pw{background:#fff;padding:24px;border-radius:16px;width:90%;max-width:400px;box-shadow:0 5px 15px #0000004d;position:relative;z-index:1001}.modal-title-pw{font-size:1.25rem;font-weight:600;color:#2c3e50;margin-top:0;margin-bottom:24px;text-align:center}.form-group-pw{margin-bottom:16px;text-align:left}.form-group-pw label{display:block;font-size:.9rem;font-weight:500;color:#34495e;margin-bottom:6px}.form-group-pw input{width:100%;padding:10px 12px;border:1px solid #bdc3c7;border-radius:8px;font-size:1rem;box-sizing:border-box}.error-message-pw{color:#e74c3c;font-size:.9rem;text-align:center;margin-bottom:16px;min-height:1.2em}.modal-actions-pw{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.modal-btn-pw{flex:1;padding:12px;border-radius:12px;border:none;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s}.modal-btn-pw.cancel{background-color:#ecf0f1;color:#7f8c8d}.modal-btn-pw.confirm{background-color:#3498db;color:#fff}.modal-btn-pw:disabled{background-color:#bdc3c7;cursor:not-allowed}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-toggle-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#7f8c8d;padding:4px;display:flex;align-items:center;justify-content:center}.password-toggle-btn img{width:22px;height:22px}.profile-page-container{max-width:500px;margin:0 auto;background-color:#f4f6f8;min-height:100vh;font-family:Poppins,sans-serif}.profile-header{padding:32px 24px 60px;text-align:center;background:linear-gradient(135deg,#84fab0,#8fd3f4);position:relative;z-index:1}.back-button-profile{position:absolute;top:24px;left:24px;background:#ffffff4d;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer}.back-button-profile img{width:20px;height:20px}.profile-pic-container{width:100px;height:100px;border-radius:50%;background-color:#fff;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;border:5px solid white;box-shadow:0 4px 12px #0000001a}.profile-pic-container img{width:50%;height:50%;opacity:.6}.profile-name{font-size:1.5rem;font-weight:700;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.2);margin:0}.edit-profile-btn{position:absolute;top:24px;right:24px;background:#ffffff4d;border:1px solid rgba(255,255,255,.5);padding:6px 16px;border-radius:20px;font-weight:600;cursor:pointer;color:#fff;font-size:.85rem}.profile-menu{background-color:#fff;margin:0 16px 16px;border-radius:16px;padding:12px;box-shadow:0 4px 20px #0000001a;position:relative;z-index:2}.profile-menu-item{display:flex;justify-content:space-between;align-items:center;padding:18px 12px;text-decoration:none;color:#34495e;border-bottom:1px solid #ecf0f1;font-weight:600;font-size:1rem;cursor:pointer;transition:background-color .2s}.profile-menu-item:hover{background-color:#f9f9f9}.profile-menu-item:last-child{border-bottom:none}.profile-menu-item.logout{color:#e74c3c}.arrow-icon{font-size:1.8rem;color:#bdc3c7}.profile-footer{text-align:center;padding:24px;background-color:#f4f6f8}.footer-logo{height:24px;margin-bottom:16px}.footer-links{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.footer-links a{text-decoration:none;color:#34495e;font-weight:600}.copyright{font-size:.8rem;color:#7f8c8d}.sub-footer-links{display:flex;justify-content:center;gap:24px;margin-top:16px;font-size:.8rem}.sub-footer-links a{text-decoration:none;color:#7f8c8d}.pd-page-wrapper{max-width:500px;margin:0 auto;background-color:#f4f6f8;min-height:100vh;font-family:Poppins,sans-serif}.pd-header{background:linear-gradient(135deg,#84fab0,#8fd3f4);padding:24px;color:#fff;position:relative;text-align:center;border-bottom-left-radius:24px;border-bottom-right-radius:24px;display:flex;justify-content:center;align-items:center}.pd-back-btn{position:absolute;left:16px;background:none;border:none;cursor:pointer}.pd-back-btn img{width:32px;height:32px}.pd-header-title{font-size:1.25rem;font-weight:600;margin:0}.pd-main-edit-btn{position:absolute;right:16px;padding:8px 20px;border-radius:20px;font-size:.9rem;font-weight:600;cursor:pointer;border:1px solid white;transition:background-color .2s,color .2s}.pd-main-edit-btn.edit{background-color:#fff3;color:#fff}.pd-main-edit-btn.save{background-color:#fff;color:#3498db}.pd-content{padding:24px 16px}.welcome-banner{background-color:#e8f4fd;color:#2980b9;padding:12px;border-radius:8px;text-align:center;font-size:.9rem;margin-bottom:16px}.pd-info-card{background:#fff;border-radius:12px;padding:8px 16px;box-shadow:0 4px 16px #002f560f}.pd-form-group{padding:16px 0;border-bottom:1px solid #f0f1f5}.pd-form-group.no-border{border-bottom:none}.pd-form-group label{display:block;font-size:.8rem;font-weight:500;color:#95a5a6;margin-bottom:4px}.pd-value{font-size:1rem;font-weight:500;color:#2c3e50}.pd-input{width:100%;padding:4px 0;border:none;border-radius:0;font-size:1rem;font-weight:500;color:#2c3e50;font-family:Poppins,sans-serif;background-color:transparent;outline:none;border-bottom:2px solid transparent;transition:border-bottom-color .2s}.pd-input:focus{border-bottom-color:#3498db}.address-page-wrapper{max-width:500px;margin:0 auto;background-color:#f4f6f8;min-height:100vh;font-family:Poppins,sans-serif}.address-page-header{background:linear-gradient(135deg,#84fab0,#8fd3f4);padding:24px;color:#fff;position:relative;text-align:center}.address-page-content{padding:24px 16px;margin-top:-32px;position:relative;z-index:2}.address-card{background:#fff;border-radius:12px;padding:16px;margin-bottom:16px;box-shadow:0 4px 20px #002f5614}.address-card-main-info{display:flex;align-items:center;gap:8px;margin-bottom:8px}.address-name{font-weight:600;font-size:1rem;color:#2c3e50}.address-phone{color:#7f8c8d;font-size:.9rem;padding-left:10px;border-left:1px solid #dfe4ea}.address-details{font-size:.9rem;color:#34495e;line-height:1.6;margin:4px 0 16px}.address-card-footer{display:flex;justify-content:space-between;align-items:center}.address-badge{border:1px solid #bdc3c7;color:#7f8c8d;padding:4px 12px;border-radius:8px;font-size:.75rem;font-weight:500}.edit-address-btn{background:none;border:none;cursor:pointer;color:#7f8c8d;padding:4px}.edit-address-btn .material-icons-outlined{font-size:22px}.add-address-button{width:100%;padding:16px;border-radius:12px;border:none;background-color:#fff;color:#3498db;font-size:1rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 20px #002f5614;transition:all .2s ease-in-out}.add-address-button:hover{background-color:#f8f9fa;transform:translateY(-2px)}.alamat-info{text-align:center;color:#7f8c8d;margin:20px 0}.address-card.selectable{cursor:pointer;transition:transform .2s,box-shadow .2s}.address-card.selectable:hover{transform:translateY(-3px);box-shadow:0 8px 25px #002f561a}.address-form-page-wrapper{max-width:500px;margin:0 auto;background-color:#f4f6f8;min-height:100vh;font-family:Poppins,sans-serif}.address-form-header{background:linear-gradient(135deg,#84fab0,#8fd3f4);padding:24px;color:#fff;position:relative;text-align:center;margin-bottom:25px}.back-btn{position:absolute;top:50%;left:16px;transform:translateY(-50%);background:none;border:none;cursor:pointer}.back-btn img{width:32px;height:32px}.header-title{font-size:1.25rem;font-weight:600;margin:0}.address-form-content{padding:24px 16px;margin-top:-32px;position:relative;z-index:2}.form-card{background:#fff;border-radius:8px;margin:12px;padding:16px;box-shadow:0 4px 24px #002f561a}.form-card-title{font-size:1.1rem;font-weight:600;color:#2c3e50;padding-bottom:12px;margin:0 0 16px}.form-group{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #f0f1f5}.form-group.no-border{border-bottom:none}.form-group label{display:block;font-size:.8rem;font-weight:500;color:#95a5a6;margin-bottom:2px}.form-group input,.form-group textarea{width:100%;padding:4px 0;border:none;border-radius:0;font-size:1rem;font-weight:500;color:#2c3e50;font-family:Poppins,sans-serif;background-color:transparent;outline:none;resize:none}.form-group textarea{resize:vertical;min-height:40px}.form-actions{display:flex;gap:16px;margin-top:24px}.form-actions button{flex:1;padding:14px;border-radius:12px;border:none;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s}.form-actions button:hover{opacity:.9}.btn-delete{background-color:#3498db;color:#fff}.btn-save{background-color:#2ecc71;color:#fff}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#333}.input-error{border-color:#e53e3e!important}.input-error::placeholder{color:#e53e3e;font-weight:300;font-size:smaller;opacity:1}.od-page-container{max-width:500px;margin:0 auto;background-color:#f4f6f8;min-height:100vh}.od-page-header{background:#fff;padding:16px;position:sticky;top:0;z-index:10;text-align:center;border-bottom:1px solid #e9ecef}.od-back-button{position:absolute;top:50%;left:16px;transform:translateY(-50%);background:none;border:none;cursor:pointer}.od-back-button img{filter:invert(50%);width:28px;height:28px}.od-page-header h1{font-size:1.1rem;font-weight:600;margin:0}.od-page-content{padding:12px}.od-message{text-align:center;margin-top:40px;color:#868e96}.od-card{background-color:#fff;border-radius:12px;padding:16px;margin-bottom:12px}.od-status-section{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid #f1f3f5}.od-status-section span{font-size:.9rem;color:#868e96}.od-status-section strong{font-size:.9rem;font-weight:600;color:#2ecc71;text-transform:capitalize}.od-product-item{display:flex;gap:12px;align-items:center}.od-product-item:not(:last-child){margin-bottom:16px}.od-product-image{width:48px;height:48px;border-radius:8px;object-fit:cover}.od-product-info{flex-grow:1}.od-product-name{font-weight:600;font-size:.9rem;margin:0}.od-product-po-price{font-size:.85rem;color:#868e96;margin:2px 0 0}.od-product-po-price span{color:#34495e;font-weight:500}.od-product-qty{font-size:.9rem;font-weight:500}.od-card h4{margin:0 0 8px;font-size:1rem}.od-shipping-option{text-transform:capitalize}.od-shipping-address{font-size:.9rem;color:#495057;line-height:1.5;margin-top:8px;border-top:1px solid #f1f3f5;padding-top:8px}.od-shipping-address p{margin:0}.od-info-grid,.od-pricing-grid{display:grid;grid-template-columns:1fr auto;gap:8px;font-size:.9rem}.od-info-grid span,.od-pricing-grid span{color:#868e96}.od-info-grid p,.od-pricing-grid p{margin:0;text-align:right;font-weight:600;color:#2c3e50}.od-pricing-grid .sisa-pelunasan{color:#3498db}.od-catatan-text{font-size:.9rem;line-height:1.6;font-style:italic;color:#495057}.od-qr-section{background-color:#fff;border-radius:12px;padding:24px;text-align:center}.od-nomor-resi{font-family:Montserrat,sans-serif;font-size:48px;font-weight:700;margin-bottom:16px;letter-spacing:3px}.od-qr-section p{font-size:.9rem;color:#868e96;line-height:1.5;margin-top:16px}.od-qr-placeholder{font-size:1rem;color:#868e96;font-weight:500}.od-product-price{font-size:.9rem;font-weight:600;color:#28a745;margin-top:4px}.od-po-breakdown{display:flex;flex-direction:column;gap:12px;margin-top:12px;border-top:1px solid #f1f3f5;padding-top:12px}.od-po-item{display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.od-po-item span{color:#495057;flex:1}.od-po-item p{margin:0;font-weight:600}.od-po-pending{color:#adb5bd;font-style:italic}.od-po-ready{color:#3498db}.od-action-card{margin-top:12px}.od-pay-button{width:100%;padding:14px;font-size:1rem;font-weight:600;color:#fff;background:linear-gradient(90deg,#3498db,#2980b9);border:none;border-radius:12px;cursor:pointer;transition:background .3s;margin-bottom:12px}.od-pay-button:disabled{background:#bdc3c7;cursor:not-allowed}.admin-login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:#f0f2f5;padding:20px}.admin-login-card{background-color:#fff;padding:40px 30px;border-radius:16px;box-shadow:0 10px 30px #0000001a;width:100%;max-width:400px;text-align:center}.admin-login-logo{width:120px;margin-bottom:20px}.admin-login-card h2{margin-top:0;margin-bottom:8px;font-size:1.8rem}.admin-login-card p{color:#666;margin-bottom:30px}.input-group{text-align:left;margin-bottom:20px}.input-group label{display:block;margin-bottom:8px;font-weight:600;color:#333}.input-group input{width:100%;padding:12px;border-radius:8px;border:1px solid #ddd;font-size:1rem}.login-btn{width:100%;padding:14px;border:none;border-radius:8px;background-color:#007bff;color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:background-color .2s ease}.login-btn:hover{background-color:#0056b3}.login-btn:disabled{background-color:#a0c7ff;cursor:not-allowed}.error-message{color:#e74c3c;background-color:#fbe2e2;padding:10px;border-radius:8px;margin-top:0}.separator{display:flex;align-items:center;text-align:center;color:#aaa;margin:25px 0}.separator:before,.separator:after{content:"";flex:1;border-bottom:1px solid #ddd}.separator:not(:empty):before{margin-right:.5em}.separator:not(:empty):after{margin-left:.5em}.google-login-btn{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;background-color:#fff;color:#333;font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:background-color .2s ease}.google-login-btn:hover{background-color:#f5f5f5}.google-login-btn img{width:20px;height:20px}.scanner-page{background-color:#2c3e50;color:#fff;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.material-icons-outlined{font-size:inherit;vertical-align:bottom}.scanner-view{width:100%;max-width:500px;display:flex;flex-direction:column;align-items:center;padding:20px;box-sizing:border-box}.scanner-header{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:20px}.scanner-header h2{margin:0;font-size:1.2rem;font-weight:600}.scanner-nav-button{background:#ffffff1a;border:none;color:#fff;width:44px;height:44px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.scanner-nav-button:hover{background:#fff3}.scanner-nav-button .material-icons-outlined{font-size:20px}.scanner-container{width:100%;max-width:400px;aspect-ratio:1 / 1;border-radius:24px;overflow:hidden;position:relative;background-color:#000}.qr-reader-video{width:100%;height:100%;object-fit:cover}.scanner-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center}.scanner-box{width:70%;height:70%;border:3px solid rgba(255,255,255,.7);border-radius:16px;box-shadow:0 0 0 2000px #00000080}.status-text{margin-top:20px;font-size:1.1rem;font-weight:500;padding:10px 20px;background:#0000004d;border-radius:8px;width:100%;max-width:400px;box-sizing:border-box;text-align:center}.status-text.error{color:#ffb8b8;background:#5c1e1e}.upload-prompt{margin:20px 0 10px;color:#bdc3c7}.scanner-button{width:100%;max-width:400px;padding:16px;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .2s ease}.scanner-button.upload{background-color:#34495e;color:#fff}.scanner-result{text-align:center;padding:20px;width:100%;max-width:450px;display:flex;flex-direction:column;gap:15px}.scanner-result .material-icons-outlined{font-size:80px}.scanner-result h2{font-size:2rem;margin:0}.scanner-result.success .material-icons-outlined{color:#2ecc71}.scanner-result.verification .material-icons-outlined{color:#3498db}.order-details-card{background:#34495e;border-radius:16px;padding:20px;text-align:left;width:100%;box-sizing:border-box}.order-details-card p{margin:0 0 10px}.order-details-card ul{padding-left:20px;margin:0}.order-details-card li{margin-bottom:5px}.scanner-button.confirm{background-color:#2ecc71;color:#fff}.scanner-button.secondary{background:none;border:2px solid #7f8c8d;color:#7f8c8d;margin-top:-5px}.status-text.error{color:#ffb8b8;background:#5c1e1e;text-align:center;position:relative;padding-right:35px}.close-error-btn{position:absolute;top:5px;right:5px;width:24px;height:24px;background:#ffffff1a;border:none;border-radius:50%;color:#fff;font-size:16px;line-height:24px;text-align:center;cursor:pointer;transition:background-color .2s ease}.close-error-btn:hover{background:#fff3}.status-text.error p{margin:0;font-weight:600}.status-text.error small{display:block;margin-top:5px;opacity:.9;font-size:.85rem}
