*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #3b0085;--primary-hover: #2d0066;--accent: #a855f7;--background: #1a1a1a;--surface: #2d2d2d;--text: #ffffff;--text-muted: rgba(255, 255, 255, .7);--border: rgba(255, 255, 255, .2)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--background);color:var(--text);line-height:1.6;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}a{text-decoration:none;color:inherit}button{font-family:inherit;cursor:pointer}.app{min-height:100vh;display:flex;flex-direction:column}.shop-main,.home-page{flex:1;display:flex;flex-direction:column}.hero{text-align:center;padding:3rem 2rem;max-width:800px;margin:0 auto}.hero h2{font-size:2.5rem;margin-bottom:1rem;background:linear-gradient(135deg,var(--accent) 0%,var(--primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero p{font-size:1.25rem;color:var(--text-muted)}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.skeleton{background:linear-gradient(90deg,#ffffff1a 25%,#fff3,#ffffff1a 75%);background-size:200% 100%;animation:skeleton-pulse 1.5s ease-in-out infinite}.skeleton-card{pointer-events:none}.skeleton-card .skeleton{margin-bottom:.75rem}.skeleton-title{margin-top:1rem}.skeleton-price{margin-top:.5rem}.skeleton-order{pointer-events:none}.skeleton-date{margin:.5rem 0 1rem}.skeleton-table{display:flex;flex-direction:column;gap:1rem}.skeleton-table-row{display:flex;gap:1rem}.skeleton-table-row .skeleton{flex:1}.skeleton-back-btn{margin-bottom:2rem}.skeleton-category{margin:.5rem 0}.skeleton-desc{margin:1rem 0}.skeleton-addons{margin:1.5rem 0}.skeleton-total{margin:1rem 0}.skeleton-btn{margin-top:1rem}.error-boundary{display:flex;justify-content:center;align-items:center;min-height:50vh;padding:2rem}.error-boundary-content{text-align:center;max-width:500px}.error-icon{font-size:4rem;margin-bottom:1rem}.error-boundary h2{color:var(--text);margin-bottom:.5rem}.error-boundary p{color:var(--text-muted);margin-bottom:1.5rem}.error-details{text-align:left;background-color:#dc35451a;border:1px solid rgba(220,53,69,.3);border-radius:8px;padding:1rem;margin-bottom:1.5rem}.error-details summary{cursor:pointer;color:#dc3545;font-weight:500}.error-details pre{margin-top:.5rem;color:#fffc;font-size:.85rem;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.error-actions{display:flex;gap:1rem;justify-content:center}.retry-btn{background-color:var(--primary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem}.retry-btn:hover{background-color:var(--primary-hover)}.home-btn{background-color:transparent;color:var(--accent);border:1px solid var(--accent);padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem}.home-btn:hover{background-color:#a855f71a}.page-error{min-height:30vh}.header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 2rem;background:var(--surface);border-bottom:1px solid var(--border)}.header-logo-link{display:flex;align-items:center}.nav-bar{display:flex;justify-content:center;gap:2rem;padding:1rem 2rem;background:var(--surface);border-bottom:1px solid var(--border)}.nav-category{position:relative}.nav-category-link{color:var(--text-muted);text-decoration:none;font-size:1rem;font-weight:500;padding:.5rem 1rem;transition:color .2s}.nav-category-link:hover{color:var(--accent)}.nav-dropdown{position:absolute;top:100%;left:50%;transform:translate(-50%);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.5rem 0;min-width:150px;z-index:100}.nav-dropdown-link{display:block;color:var(--text);text-decoration:none;padding:.5rem 1rem;transition:background-color .2s}.nav-dropdown-link:hover{background-color:#a855f733}.logo{height:50px;width:50px}.title{font-size:1.5rem;font-weight:700;margin:0;color:var(--accent)}.description{padding:2rem 0;max-width:800px;margin:0 auto}.description p{font-size:1.1rem;line-height:1.6;color:var(--text-muted)}.products-section{padding:2rem;width:100%;max-width:1200px;margin:0 auto}.products-section h2{font-size:1.5rem;margin-bottom:1.5rem;color:var(--text)}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2rem}.product-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1rem;text-align:center;transition:all .3s ease}.product-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 10px 40px #a855f733}.product-image{width:100%;height:200px;object-fit:cover;border-radius:4px}.product-name{font-size:1.2rem;margin:1rem 0 .5rem;color:var(--text)}.product-price{font-size:1.3rem;font-weight:700;color:var(--text);margin:.5rem 0 1rem;background:linear-gradient(135deg,var(--accent) 0%,var(--primary) 100%);padding:.5rem 1rem;border-radius:20px;display:inline-block;text-shadow:0 1px 2px rgba(0,0,0,.3)}.add-to-cart-button{background-color:var(--primary);color:#fff;border:none;padding:.75rem 1.5rem;font-size:1rem;border-radius:8px;cursor:pointer;transition:background-color .2s}.add-to-cart-button:hover{background-color:var(--primary-hover)}.cart-button{background-color:var(--primary);color:#fff;border:none;padding:.75rem 1.5rem;font-size:1rem;border-radius:8px;cursor:pointer}.cart-button:hover{background-color:var(--primary-hover)}.cart-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin:1.5rem 0}.cart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.cart-header h2{color:var(--text);margin:0}.cart-close-button{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;align-items:center;justify-content:center}.mobile-cart-overlay{display:none}.empty-cart{color:var(--text-muted);font-style:italic}.cart-items{display:flex;flex-direction:column;gap:1rem}.cart-item{display:flex;align-items:center;gap:1rem;background:#ffffff0d;padding:1rem;border-radius:8px}.cart-item-image{width:60px;height:60px;object-fit:cover;border-radius:4px}.cart-item-details{flex:1;text-align:left}.cart-item-details h4{color:var(--text);margin:0 0 .25rem}.cart-item-details p{color:var(--text-muted);margin:0}.cart-item-quantity{display:flex;align-items:center;gap:.5rem}.cart-item-quantity button{background-color:var(--primary);color:#fff;border:none;width:30px;height:30px;border-radius:8px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;line-height:1;padding:0}.cart-item-quantity button:hover{background-color:var(--primary-hover)}.cart-item-quantity span{color:var(--text);min-width:30px;text-align:center}.cart-item-subtotal{color:var(--accent);font-weight:700;min-width:80px}.remove-button{background-color:transparent;color:#ff6b6b;border:1px solid #ff6b6b;width:30px;height:30px;border-radius:4px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;line-height:1;padding:0}.remove-button:hover{background-color:#ff6b6b;color:#fff}.cart-total{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.cart-total h3{color:var(--text);font-size:1.5rem}.checkout-section{margin-top:1.5rem;max-width:400px;margin-left:auto;margin-right:auto;background:var(--background);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.checkout-section:before{content:"Secure Checkout";display:block;color:var(--text);font-size:1rem;font-weight:600;margin-bottom:1rem;text-transform:uppercase;letter-spacing:1px}.paypal-button-container{min-height:50px;margin-top:.5rem;border-radius:12px;overflow:hidden}.checkout-section [class*=paypal],.checkout-section iframe{background-color:transparent!important}.checkout-section>div{background-color:#3b00854d!important;border-radius:12px}.product-card-link{text-decoration:none;color:inherit}.category-page{flex:1;padding:2rem;max-width:1200px;margin:0 auto;width:100%}.category-page h2{color:var(--text);margin-bottom:1.5rem}.no-products{color:var(--text-muted);font-style:italic}.product-page{padding:2rem 0;text-align:left}.back-button{background-color:transparent;color:#a855f7;border:1px solid #a855f7;padding:.5rem 1rem;border-radius:4px;cursor:pointer;margin-bottom:2rem;transition:all .3s ease}.back-button:hover{background-color:#a855f7;color:#fff}.product-page-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.product-page-image img{width:100%;border-radius:8px}.product-page-details h1{color:#fff;margin:0 0 .5rem}.product-page-category{color:#fff9;text-transform:capitalize;margin-bottom:1rem}.product-page-description{color:#ffffffd9;line-height:1.6;margin-bottom:1.5rem}.product-page-base-price{color:#a855f7;font-size:1.25rem;font-weight:700;margin-bottom:1.5rem}.product-addons{margin-bottom:1.5rem}.product-addons h3{color:var(--text);margin-bottom:1rem}.addons-list{display:flex;flex-direction:column;gap:.75rem}.addon-item{display:flex;align-items:center;gap:.75rem;color:var(--text-muted);cursor:pointer;padding:.75rem;background:#ffffff0d;border-radius:8px;transition:background-color .2s}.addon-item:hover{background:#ffffff1a}.addon-item.addon-dropdown{display:flex;justify-content:space-between;align-items:center}.addon-item select{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:.5rem 1rem;font-size:1rem;cursor:pointer;min-width:200px}.addon-item select:focus{outline:none;border-color:var(--accent)}.addon-item select option{background:var(--surface);color:var(--text)}.addon-item input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary)}.addon-name{flex:1}.addon-price{color:var(--accent);font-weight:500}.product-page-total{margin-bottom:1.5rem;padding:1rem;background:#3b008533;border-radius:8px}.product-page-total h3{color:var(--text);margin:0}.cart-item-addons{font-size:.85rem;color:var(--text-muted);margin-top:.25rem}.header-actions{display:flex;align-items:center;gap:1rem;margin-left:auto}.home-link{font-size:1.25rem;text-decoration:none;opacity:.7;transition:opacity .2s}.home-link:hover{opacity:1}.auth-btn{background:transparent;border:1px solid var(--accent);color:var(--accent);padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:.5rem;text-decoration:none}.auth-btn:hover{background:var(--accent);color:#fff}.auth-btn.user-btn{border-color:var(--border);color:var(--text)}.auth-btn.user-btn:hover{border-color:var(--accent);background:#a855f71a;color:var(--text)}.user-avatar{width:24px;height:24px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.auth-link{color:var(--accent);text-decoration:none;font-weight:500}.auth-link:hover{color:#c084fc}.user-menu{display:flex;align-items:center;gap:1rem}.orders-link,.profile-link,.admin-link{color:var(--accent);text-decoration:none}.profile-btn{background:transparent;border:none;color:var(--accent);cursor:pointer;font-size:inherit;padding:0}.profile-btn:hover,.orders-link:hover,.profile-link:hover{color:#c084fc}.admin-link{color:#ffc107;font-weight:600}.admin-link:hover{color:#ffda44}.signout-button{background-color:transparent;color:var(--text-muted);border:1px solid var(--border);padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.9rem}.signout-button:hover{color:var(--text);border-color:var(--accent)}.auth-page{flex:1;display:flex;justify-content:center;align-items:center;padding:3rem 2rem}.auth-container{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2rem;width:100%;max-width:400px}.auth-branding{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin-bottom:1.5rem}.auth-logo{height:60px;width:60px}.auth-title{font-size:1.25rem;font-weight:700;color:var(--accent);margin:0}.auth-container h2{color:var(--text);margin:0 0 1.5rem;text-align:center;font-size:1.5rem}.oauth-buttons{margin-bottom:1.5rem}.oauth-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem;border:1px solid rgba(255,255,255,.2);border-radius:4px;font-size:1rem;cursor:pointer;transition:all .3s ease;margin-bottom:.75rem}.oauth-button.google{background-color:#fff;color:#333}.oauth-button.google:hover{background-color:#f5f5f5}.oauth-button.apple{background-color:#000;color:#fff}.oauth-button.apple:hover{background-color:#1a1a1a}.oauth-divider{display:flex;align-items:center;margin:1rem 0}.oauth-divider:before,.oauth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.oauth-divider span{color:var(--text-muted);padding:0 1rem;font-size:.9rem}.form-group{margin-bottom:1rem}.form-group label{display:block;color:var(--text-muted);margin-bottom:.5rem;text-align:left}.form-group input{width:100%;padding:.75rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:1rem;box-sizing:border-box}.form-group input:focus{outline:none;border-color:var(--accent)}.auth-error{color:#ff6b6b;font-size:.9rem;margin-bottom:1rem}.auth-button{width:100%;background-color:var(--primary);color:#fff;border:none;padding:.75rem;font-size:1rem;border-radius:8px;cursor:pointer;transition:background-color .2s}.auth-button:hover{background-color:var(--primary-hover)}.auth-button:disabled{opacity:.6;cursor:not-allowed}.auth-toggle{margin-top:1.5rem;color:#ffffffb3;text-align:center}.auth-toggle button{background:none;border:none;color:#a855f7;cursor:pointer;font-size:1rem;padding:0}.auth-toggle button:hover{color:#c084fc}.orders-page{padding:2rem 0;text-align:left}.orders-page h2{color:#fff;margin-bottom:1.5rem}.no-orders{color:#ffffffb3;font-style:italic}.orders-list{display:flex;flex-direction:column;gap:1rem}.order-card{background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1.5rem}.order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.order-id{color:#fff;font-weight:600}.order-status{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;text-transform:capitalize}.status-pending{background-color:#ffc10733;color:#ffc107}.status-paid{background-color:#28a74533;color:#28a745}.status-shipped{background-color:#007bff33;color:#007bff}.status-completed{background-color:#a855f733;color:#a855f7}.order-date{color:#ffffff80;font-size:.9rem;margin-bottom:1rem}.order-items{border-top:1px solid rgba(255,255,255,.1);padding-top:1rem}.order-item{display:flex;justify-content:space-between;color:#ffffffd9;padding:.5rem 0}.order-total{border-top:1px solid rgba(255,255,255,.1);padding-top:1rem;margin-top:.5rem;color:#fff;text-align:right}.admin-page{padding:2rem 0;text-align:left}.admin-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.admin-header h1{color:#fff;margin:0 0 1rem}.admin-nav{display:flex;gap:1.5rem}.admin-nav-link{color:#ffffffb3;text-decoration:none;padding:.5rem 1rem;border-radius:4px;transition:all .3s ease}.admin-nav-link:hover{color:#fff;background-color:#ffffff1a}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1.5rem;text-align:center}.stat-card h3{color:#a855f7;font-size:2rem;margin:0}.stat-card p{color:#ffffffb3;margin:.5rem 0 0}.admin-table{width:100%;border-collapse:collapse;background-color:#ffffff05;border-radius:8px;overflow:hidden}.admin-table th,.admin-table td{padding:1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.1)}.admin-table th{background-color:#3b00854d;color:#fff;font-weight:600}.admin-table td{color:#ffffffd9}.admin-table tr:hover{background-color:#ffffff0d}.orders-table-container{overflow-x:auto}.admin-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.admin-section-header h2{color:#fff;margin:0}.add-btn{background-color:#28a745;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;font-size:.9rem}.add-btn:hover{background-color:#218838}.edit-btn,.save-btn,.cancel-btn,.delete-btn{padding:.5rem 1rem;border:none;border-radius:8px;cursor:pointer;font-size:.85rem}.edit-btn{background-color:var(--primary);color:#fff}.save-btn{background-color:#28a745;color:#fff}.cancel-btn{background-color:#6c757d;color:#fff}.delete-btn{background-color:#dc3545;color:#fff}.delete-btn:hover{background-color:#c82333}.action-buttons{display:flex;gap:.5rem}.admin-form-card{background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.admin-form-card h3{color:#fff;margin:0 0 1rem}.admin-form-card .form-row{display:flex;gap:1rem}.admin-form-card input,.admin-form-card select,.admin-form-card textarea{width:100%;padding:.75rem;background-color:#2d2d2d;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;font-size:1rem;box-sizing:border-box}.admin-form-card textarea{resize:vertical;font-family:inherit}.admin-form-card .form-actions{display:flex;gap:.5rem;margin-top:1rem}.categories-list{display:flex;flex-direction:column;gap:1rem}.category-card{background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1.5rem}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.category-header h3{color:#fff;margin:0}.category-actions{display:flex;gap:.5rem}.admin-content{margin-top:2rem}.admin-dashboard h2{color:#fff;margin-bottom:1rem}.admin-quick-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:2rem}.quick-link-card{background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1.5rem;text-decoration:none;transition:all .3s ease}.quick-link-card:hover{background-color:#ffffff1a;border-color:#a855f7}.quick-link-card h3{color:#fff;margin:0 0 .5rem}.quick-link-card p{color:#ffffffb3;margin:0}.admin-orders h2,.admin-users h2{color:#fff;margin-bottom:1.5rem}.admin-row{background-color:#ffc1071a}.customer-info{display:flex;flex-direction:column}.customer-info small{color:#ffffff80;font-size:.8rem}.shipping-info{display:flex;flex-direction:column;font-size:.85rem}.shipping-info span{font-weight:500}.shipping-info small{color:#fff9;font-size:.75rem;line-height:1.4}.no-shipping{color:#ffffff4d;font-style:italic}.order-items-list{font-size:.9rem}.order-items-list div{margin-bottom:.25rem}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;text-transform:capitalize}.status-processing{background-color:#007bff33;color:#007bff}.status-cancelled{background-color:#dc354533;color:#dc3545}.tracking-edit{display:flex;flex-direction:column;gap:.5rem}.tracking-edit input{padding:.5rem;background-color:#2d2d2d;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;font-size:.85rem}.no-tracking{color:#ffffff4d}.admin-badge{background-color:#ffc10733;color:#ffc107;padding:.25rem .75rem;border-radius:12px;font-size:.85rem}.user-badge{background-color:#ffffff1a;color:#ffffffb3;padding:.25rem .75rem;border-radius:12px;font-size:.85rem}.provider-badge{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;text-transform:capitalize}.provider-google{background-color:#4285f433;color:#4285f4}.provider-apple{background-color:#ffffff1a;color:#fff}.provider-email{background-color:#a855f733;color:#a855f7}.make-admin-btn{background-color:#ffc107;color:#000;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.85rem}.remove-admin-btn{background-color:#dc3545;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.85rem}.you-label{color:#ffffff80;font-style:italic}.admin-table select{padding:.5rem;background-color:#2d2d2d;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;font-size:.85rem}.category-id{color:#ffffff80;font-size:.85rem}.subcategory-actions{display:flex;gap:.5rem}.subcategories-section{border-top:1px solid rgba(255,255,255,.1);padding-top:1rem}.subcategories-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;color:#ffffffb3}.add-sub-btn{background-color:transparent;color:#a855f7;border:1px solid #a855f7;padding:.25rem .75rem;border-radius:4px;cursor:pointer;font-size:.85rem}.add-sub-btn:hover{background-color:#a855f71a}.subcategory-form{display:flex;gap:.5rem;margin-bottom:.75rem;align-items:center}.subcategory-form input{padding:.5rem;background-color:#2d2d2d;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;font-size:.85rem}.subcategories-list{display:flex;flex-direction:column;gap:.5rem}.subcategory-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background-color:#ffffff08;border-radius:4px;color:#ffffffd9}.subcategory-item small{color:#ffffff80}.edit-inline{display:flex;gap:.5rem;align-items:center;flex:1}.edit-inline input{flex:1;padding:.5rem;background-color:#2d2d2d;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff}.product-form .form-group{margin-bottom:1rem}.product-form .form-group label{display:block;color:#ffffffd9;margin-bottom:.5rem}.product-thumb{width:50px;height:50px;object-fit:cover;border-radius:4px}.admin-products .admin-table td small{color:#ffffff80;display:block}.addons-editor{background-color:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1rem}.addon-item-edit{background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:1rem}.addon-display{display:flex;justify-content:space-between;align-items:center}.addon-info{display:flex;align-items:center;gap:.75rem}.addon-type-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;text-transform:uppercase}.addon-type-badge.single{background-color:#28a74533;color:#28a745}.addon-type-badge.multi{background-color:#007bff33;color:#007bff}.addon-options-count{color:#fff9;font-size:.85rem}.addon-actions{display:flex;gap:.5rem}.addon-edit-form,.addon-new-form{display:flex;flex-direction:column;gap:.75rem}.addon-new-form{background-color:#a855f71a;border:1px solid rgba(168,85,247,.3);border-radius:8px;padding:1rem;margin-top:1rem}.addon-new-form h4{color:#a855f7;margin:0 0 .5rem}.addon-single-edit{display:flex;gap:.5rem}.addon-single-edit input:first-child{flex:2}.addon-single-edit input:last-child{flex:1}.addon-multi-edit{display:flex;flex-direction:column;gap:.75rem}.addon-options-list{display:flex;flex-direction:column;gap:.5rem;padding-left:1rem;border-left:2px solid rgba(255,255,255,.1)}.addon-option-row{display:flex;gap:.5rem;align-items:center}.addon-option-row input:first-child{flex:2}.addon-option-row input:nth-child(2){flex:1}.remove-option-btn{background-color:#dc3545;color:#fff;border:none;width:28px;height:28px;border-radius:4px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center}.add-option-btn{background-color:transparent;color:#a855f7;border:1px dashed #a855f7;padding:.5rem;border-radius:4px;cursor:pointer;font-size:.85rem}.add-option-btn:hover{background-color:#a855f71a}.addon-form-actions{display:flex;gap:.5rem;margin-top:.5rem}.addon-add-buttons{display:flex;gap:.5rem;margin-top:1rem}.add-addon-btn{flex:1;padding:.75rem;background-color:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.add-addon-btn:hover{background-color:#218838}.add-addon-btn.secondary{background-color:#007bff}.add-addon-btn.secondary:hover{background-color:#0056b3}.image-upload-area{display:flex;flex-direction:column;gap:.75rem}.image-preview{max-width:200px;max-height:200px;object-fit:contain;border-radius:8px;border:1px solid rgba(255,255,255,.2)}.file-input{display:none}.upload-btn{display:inline-block;padding:.75rem 1.5rem;background-color:#a855f7;color:#fff;border-radius:4px;cursor:pointer;text-align:center;max-width:200px}.upload-btn:hover{background-color:#9333ea}.image-help{color:#ffffff80;font-size:.85rem;margin:0}.checkbox-group-inline{display:flex;align-items:center;padding-top:1.5rem}.checkbox-group-inline label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-group-inline input[type=checkbox]{width:18px;height:18px}.seed-section{margin-top:2rem;padding:1.5rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px}.seed-section h3{color:#fff;margin:0 0 .5rem}.seed-section p{color:#ffffffb3;margin:0 0 1rem}.seed-btn{background-color:#ffc107;color:#000;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:500}.seed-btn:hover:not(:disabled){background-color:#e0a800}.seed-btn:disabled{opacity:.6;cursor:not-allowed}.seed-message{margin-top:1rem;padding:.75rem;border-radius:4px}.seed-message.success{background-color:#28a74533;color:#28a745}.seed-message.error{background-color:#dc354533;color:#dc3545}.profile-page{padding:2rem 0;text-align:left;max-width:600px;margin:0 auto}.profile-page h2{color:#fff;margin-bottom:.5rem}.profile-display-name{color:var(--accent);font-size:1rem;margin:0 0 1.5rem}.profile-section{background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1.5rem;margin-bottom:2rem}.profile-info-label{font-size:.75rem;color:#ffffffb3;text-transform:uppercase;letter-spacing:.5px}.profile-info-value{font-size:1rem;color:#fff}.edit-profile-btn,.change-password-btn{flex:1;background:var(--primary);color:#fff;border:none;padding:.75rem;border-radius:8px;font-size:.875rem;cursor:pointer}.edit-profile-btn:hover,.change-password-btn:hover{background:var(--primary-hover)}.change-password-btn{background:transparent;border:1px solid var(--border);color:var(--text)}.change-password-btn:hover{background:#ffffff0d;border-color:var(--accent)}.profile-field label{display:block;color:#ffffffd9;margin-bottom:.5rem;font-weight:500}.profile-field input{width:100%;padding:.75rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:1rem;box-sizing:border-box}.profile-field input:focus{outline:none;border-color:var(--accent)}.field-error{color:#ff6b6b}.field-checking{color:var(--accent)}.cancel-btn{flex:1;background:transparent;color:#ffffffb3;border:1px solid var(--border);padding:.75rem;border-radius:8px;font-size:1rem;cursor:pointer}.cancel-btn:hover{color:#fff;border-color:#fff}.save-profile-btn{flex:1;background-color:var(--primary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem}.save-profile-btn:hover:not(:disabled){background-color:var(--primary-hover)}.save-profile-btn:disabled{opacity:.6;cursor:not-allowed}.danger-zone{background-color:#dc35451a;border:1px solid rgba(220,53,69,.3);border-radius:8px;padding:1.5rem}.danger-zone h3{color:#dc3545;margin:0 0 .5rem}.danger-zone p{color:#ffffffb3;margin:0 0 1rem}.delete-account-btn{background-color:#dc3545;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;font-size:1rem}.delete-account-btn:hover{background-color:#c82333}.profile-field small{display:block;color:#ffffff80;font-size:.85rem;margin-top:.25rem}.profile-message{margin-top:1rem;padding:.75rem;border-radius:4px}.profile-message.success{background-color:#28a74533;color:#28a745}.profile-message.error{background-color:#dc354533;color:#dc3545}.delete-confirm{background-color:#dc354533;padding:1rem;border-radius:4px}.delete-confirm p{color:#fff;font-weight:500}.delete-confirm-buttons{display:flex;gap:.5rem}.confirm-delete-btn{background-color:#dc3545;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer}.cancel-delete-btn{background-color:#6c757d;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer}.site-footer{margin-top:auto;padding:1.5rem 2rem;border-top:1px solid var(--border);text-align:center;color:var(--text-muted);font-size:.875rem}.footer-content p{margin:0}.footer-note{font-size:.8rem;color:var(--text-muted);opacity:.7}.order-tracking{display:flex;align-items:center;gap:.5rem;padding:.75rem;background-color:#28a74526;border:1px solid rgba(40,167,69,.3);border-radius:4px;margin-top:.75rem}.tracking-label{color:#28a745;font-weight:500}.tracking-link{color:#28a745;font-weight:600;text-decoration:none;padding:.25rem .5rem;background-color:#28a74533;border-radius:4px;transition:all .2s ease}.tracking-link:hover{background-color:#28a74566;text-decoration:underline}.tracking-number{color:#ffffffe6;font-weight:500}.shipping-notice{background-color:#ffc10726;border:1px solid rgba(255,193,7,.3);color:#ffc107;padding:.75rem;border-radius:4px;margin-bottom:1rem;text-align:center;font-size:.9rem}.search-bar{position:relative;flex:1;max-width:300px;margin:0 1rem}.search-bar input{width:100%;padding:.5rem 1rem;border:1px solid var(--border);border-radius:20px;background:var(--surface);color:var(--text);font-size:.9rem;box-sizing:border-box}.search-bar input::placeholder{color:var(--text-muted)}.search-bar input:focus{outline:none;border-color:var(--accent)}.search-results{position:absolute;top:100%;left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-top:.5rem;max-height:400px;overflow-y:auto;z-index:1000}.search-result-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;text-decoration:none;color:#fff;transition:background-color .2s}.search-result-item:hover{background-color:#a855f733}.search-result-item img{width:40px;height:40px;object-fit:cover;border-radius:4px}.contact-link{color:var(--accent);text-decoration:none;margin-right:1rem}.contact-link:hover{color:#c084fc}.contact-page{flex:1;max-width:600px;margin:0 auto;padding:2rem}.contact-page h1{color:var(--text);margin-bottom:.5rem}.contact-intro{color:#ffffffb3;margin-bottom:2rem}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.contact-form .form-group{display:flex;flex-direction:column;gap:.5rem}.contact-form label{color:#ffffffd9;font-weight:500}.contact-form input,.contact-form textarea{padding:.75rem;background-color:#2d2d2d;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;font-size:1rem;font-family:inherit}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:#a855f7}.contact-form textarea{resize:vertical;min-height:120px}.contact-form .submit-btn{background-color:#3b0085;color:#fff;border:none;padding:1rem;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:500}.contact-form .submit-btn:hover:not(:disabled){background-color:#2d0066}.contact-form .submit-btn:disabled{opacity:.6;cursor:not-allowed}.order-confirmation-page{max-width:600px;margin:0 auto;padding:2rem 0;text-align:center}.confirmation-header{margin-bottom:2rem}.confirmation-icon{width:80px;height:80px;border-radius:50%;background-color:#28a745;color:#fff;font-size:3rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.confirmation-header h1{color:#fff;margin:0 0 .5rem}.confirmation-header p{color:#ffffffb3;margin:0}.order-details-card{background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1.5rem;text-align:left;margin-bottom:1.5rem}.order-info-row{display:flex;justify-content:space-between;margin-bottom:.75rem;color:#fffc}.confirmation-total{display:flex;justify-content:space-between;font-size:1.2rem;color:#fff;margin-top:1rem}.continue-shopping-btn{display:inline-block;background-color:#3b0085;color:#fff;text-decoration:none;padding:.75rem 2rem;border-radius:4px}.continue-shopping-btn:hover{background-color:#2d0066}.guest-checkout{background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1rem;margin-bottom:1rem}.guest-checkout p{margin:0 0 .5rem;color:#fffc}.guest-email-input{width:100%;padding:.75rem;background-color:#2d2d2d;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;font-size:1rem;box-sizing:border-box}.guest-email-input:focus{outline:none;border-color:#a855f7}.forgot-password-link{text-align:center;margin-top:1rem}.forgot-password-link a{color:#a855f7;text-decoration:none}.forgot-password-link a:hover{text-decoration:underline}.auth-link-btn{display:inline-block;background-color:#3b0085;color:#fff;text-decoration:none;padding:.75rem 1.5rem;border-radius:4px;margin-top:1rem}.auth-note{color:#fff9;font-size:.9rem;margin-top:1rem}.auth-page .success-icon{width:60px;height:60px;border-radius:50%;background-color:#28a745;color:#fff;font-size:2rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}@media(max-width:768px){.header{flex-direction:column;gap:.75rem;padding:1rem}.logo{height:40px;width:40px}.title{font-size:1.25rem;text-align:center}.hero{padding:2rem 1rem}.hero h2{font-size:1.75rem}.hero p{font-size:1rem}.search-bar{max-width:100%;width:100%;margin:.5rem 0;order:3}.header-actions{width:100%;justify-content:center;flex-wrap:wrap;gap:.5rem}.contact-link{margin-right:.5rem}.cart-button{padding:.5rem 1rem;font-size:.9rem}.nav-bar{flex-wrap:wrap;gap:.5rem;padding:.75rem 0}.nav-category-link{font-size:.9rem;padding:.4rem .75rem}.nav-dropdown{position:fixed;left:50%;transform:translate(-50%);width:90%;max-width:300px}.products-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.product-card{padding:.75rem}.product-image{height:150px}.product-name{font-size:1rem}.product-price{font-size:1.1rem;padding:.4rem .8rem}.add-to-cart-button{padding:.5rem 1rem;font-size:.9rem;width:100%}.product-page-content{grid-template-columns:1fr;gap:1.5rem}.product-page-details h1{font-size:1.5rem}.mobile-cart-overlay{display:block;position:fixed;inset:0;background-color:#0009;z-index:998}.cart-section{position:fixed;top:0;right:0;bottom:0;width:320px;max-width:90vw;background:var(--background);z-index:999;overflow-y:auto;overflow-x:hidden;animation:slideInRight .3s ease;padding:0;margin:0;border-radius:0;box-sizing:border-box;border:none}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.cart-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border);background:var(--primary);position:sticky;top:0;z-index:1}.cart-header h2{font-size:1.1rem;font-weight:600}.cart-close-button{display:flex}.cart-items{padding:1rem}.cart-item{flex-wrap:wrap;gap:.75rem;padding:.75rem}.cart-item-image{width:50px;height:50px}.cart-item-details{flex:1 1 calc(100% - 70px)}.cart-item-details h4{font-size:.95rem}.cart-item-quantity{order:4;width:100%;justify-content:center;margin-top:.5rem}.cart-item-subtotal{position:absolute;right:.75rem;top:.75rem}.cart-item{position:relative}.remove-button{position:absolute;right:.75rem;bottom:.75rem}.checkout-section{padding:1rem}.cart-total{padding:1rem;border-top:1px solid rgba(255,255,255,.1);background-color:#1a1a1a}.empty-cart{padding:2rem 1rem;text-align:center}.guest-checkout{padding:.75rem}.auth-container{padding:1.5rem;margin:0 .5rem}.oauth-button{padding:.6rem;font-size:.9rem}.admin-nav{flex-wrap:wrap;gap:.5rem}.admin-nav-link{padding:.4rem .75rem;font-size:.9rem}.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-table{font-size:.85rem}.admin-table th,.admin-table td{padding:.5rem}.orders-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.order-card{padding:1rem}.order-header{flex-direction:column;align-items:flex-start;gap:.5rem}.profile-page{padding:1rem 0}.profile-section{padding:1rem}.contact-page{padding:1rem 0}.contact-form{gap:1rem}.order-confirmation-page{padding:1rem 0}.order-details-card{padding:1rem}.confirmation-icon{width:60px;height:60px;font-size:2rem}.confirmation-header h1{font-size:1.5rem}.site-footer{padding:1.5rem 0;margin-top:2rem}.footer-content p{font-size:.8rem}.user-menu{flex-wrap:wrap;justify-content:center;gap:.5rem}.signout-button{padding:.4rem .75rem;font-size:.85rem}.back-button{padding:.4rem .75rem;font-size:.9rem}.description{padding:1rem 0}.description p{font-size:1rem}.products-section h2,.category-page h2{font-size:1.25rem}.admin-form-card{padding:1rem}.admin-form-card .form-row{flex-direction:column}.categories-list{gap:.75rem}.category-card{padding:1rem}.category-header{flex-direction:column;align-items:flex-start;gap:.5rem}.category-actions{width:100%;justify-content:flex-end}.addon-item{flex-direction:column;align-items:flex-start;gap:.5rem}.addon-item select{width:100%;min-width:unset}.product-page-total h3{font-size:1.1rem}}@media(max-width:480px){.app{padding:.75rem}.header{gap:.5rem}.logo{height:60px;width:60px}.title{font-size:1.25rem}.products-grid{grid-template-columns:1fr}.product-image{height:200px}.nav-bar{gap:.25rem}.nav-category-link{font-size:.85rem;padding:.3rem .5rem}.cart-item-details h4{font-size:.9rem}.cart-item-quantity button{width:28px;height:28px}.admin-stats{grid-template-columns:1fr}.stat-card{padding:1rem}.stat-card h3{font-size:1.5rem}.search-result-item{padding:.5rem}.search-result-item img{width:35px;height:35px}.confirmation-total{font-size:1rem}.order-info-row{flex-direction:column;gap:.25rem}.admin-section-header{flex-direction:column;align-items:flex-start;gap:.75rem}.admin-section-header h2{font-size:1.25rem}.add-btn{width:100%}.action-buttons{flex-direction:column;width:100%}.edit-btn,.save-btn,.cancel-btn,.delete-btn{width:100%}}.mobile-menu-toggle,.mobile-cart-button{display:none}.mobile-menu-overlay{position:fixed;inset:0;background-color:#0009;z-index:998}.mobile-menu{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:85vw;background:var(--background);z-index:999;overflow-y:auto;overflow-x:hidden;animation:slideIn .3s ease;box-sizing:border-box}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.mobile-menu-header{display:flex;align-items:center;gap:1rem;padding:1rem;border-bottom:1px solid var(--border);background:var(--primary);color:#fff;font-weight:600;font-size:1.1rem}.mobile-menu-close{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.mobile-menu-nav{padding:1rem 0}.mobile-menu-section{padding:.5rem 0}.mobile-menu-section h3{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:1px;padding:.5rem 1rem;margin:0}.mobile-menu-divider{height:1px;background:var(--border);margin:.5rem 1rem}.mobile-menu-category{display:flex;flex-direction:column}.mobile-menu-category-header{display:flex;align-items:center;justify-content:space-between;padding-right:1rem}.mobile-menu-link{display:block;color:var(--text);text-decoration:none;padding:.75rem 1rem;transition:background-color .2s}.mobile-menu-link:hover{background-color:#a855f733}.mobile-menu-link.admin{color:#ffc107}.expand-icon{color:var(--text-muted);font-size:.7rem;transition:transform .2s}.expand-icon.expanded{transform:rotate(180deg)}.mobile-menu-subcategories{background:#0003}.mobile-menu-sublink{display:block;color:var(--text-muted);text-decoration:none;padding:.6rem 1rem .6rem 2rem;font-size:.95rem;transition:background-color .2s}.mobile-menu-sublink:hover{background-color:#a855f726}.mobile-menu-signout{display:block;width:calc(100% - 2rem);margin:.5rem 1rem;padding:.75rem;background-color:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-muted);font-size:1rem;cursor:pointer;text-align:center}.mobile-menu-signout:hover{background:#ffffff1a}.mobile-search{display:flex;padding:.75rem 1rem;gap:.5rem;border-bottom:1px solid var(--border);box-sizing:border-box;width:100%}.mobile-search input{flex:1;min-width:0;padding:.6rem .75rem;background-color:#2d2d2d;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;font-size:.95rem;box-sizing:border-box}.mobile-search input::placeholder{color:#ffffff80}.mobile-search input:focus{outline:none;border-color:#a855f7}.mobile-search button{background-color:#3b0085;border:none;color:#fff;padding:.6rem .75rem;border-radius:4px;cursor:pointer;font-size:1rem;flex-shrink:0;box-sizing:border-box}.mobile-search button:hover{background-color:#2d0066}@media(max-width:768px){.mobile-menu-toggle{display:flex;align-items:center;justify-content:center;background-color:#3b0085;border:none;color:#fff;width:44px;height:44px;border-radius:8px;cursor:pointer;position:absolute;left:1rem;top:50%;transform:translateY(-50%)}.hamburger-icon{font-size:1.5rem}.mobile-cart-button{display:flex;align-items:center;justify-content:center;background-color:#3b0085;border:none;color:#fff;width:44px;height:44px;border-radius:8px;cursor:pointer;position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:1.25rem}.mobile-cart-badge{position:absolute;top:-5px;right:-5px;background-color:#ff6b6b;color:#fff;font-size:.7rem;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center}.header{position:relative;flex-direction:column;padding:1rem 3.5rem}.header-logo-link{order:1}.title{order:2}.header-actions,.search-bar,.cart-button,.nav-bar{display:none}}.auth-modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem}.auth-modal{background:var(--surface, #2d2d2d);border:1px solid var(--border, rgba(255, 255, 255, .2));border-radius:16px;padding:2rem;width:100%;max-width:400px;position:relative;animation:authModalSlideIn .2s ease-out}@keyframes authModalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.auth-modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;color:var(--text-muted, rgba(255, 255, 255, .7));font-size:1.25rem;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.auth-modal-close:hover{color:var(--text, #ffffff)}.auth-modal-header{text-align:center;margin-bottom:1.5rem}.auth-modal-header h2{color:var(--text, #ffffff);margin:0 0 .5rem;font-size:1.5rem}.auth-modal-header p{color:var(--text-muted, rgba(255, 255, 255, .7));margin:0;font-size:.875rem}.auth-modal-oauth{margin-bottom:1.5rem}.oauth-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem;border:1px solid var(--border, rgba(255, 255, 255, .2));border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s;margin-bottom:.75rem}.oauth-btn.google{background:#fff;color:#333}.oauth-btn.google:hover{background:#f5f5f5}.oauth-btn.apple{background:#000;color:#fff}.oauth-btn.apple:hover{background:#1a1a1a}.auth-modal-divider{display:flex;align-items:center;margin:1rem 0}.auth-modal-divider:before,.auth-modal-divider:after{content:"";flex:1;height:1px;background:var(--border, rgba(255, 255, 255, .2))}.auth-modal-divider span{color:var(--text-muted, rgba(255, 255, 255, .7));padding:0 1rem;font-size:.875rem}.auth-modal-form{display:flex;flex-direction:column;gap:1rem}.auth-field{display:flex;flex-direction:column;gap:.5rem}.auth-field label{color:var(--text-muted, rgba(255, 255, 255, .7));font-size:.875rem}.auth-field input{padding:.75rem;background:var(--background, #1a1a1a);border:1px solid var(--border, rgba(255, 255, 255, .2));border-radius:8px;color:var(--text, #ffffff);font-size:1rem}.auth-field input:focus{outline:none;border-color:var(--accent, #a855f7)}.auth-modal-error{color:#ff6b6b;font-size:.875rem;margin:0;text-align:center}.auth-submit-btn{background:var(--primary, #3b0085);color:#fff;border:none;padding:.75rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:background .2s}.auth-submit-btn:hover:not(:disabled){background:var(--primary-hover, #2d0066)}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.auth-modal-toggle{text-align:center;margin-top:1rem;color:var(--text-muted, rgba(255, 255, 255, .7));font-size:.875rem}.auth-modal-toggle button{background:none;border:none;color:var(--accent, #a855f7);cursor:pointer;font-size:.875rem;padding:0}.auth-modal-toggle button:hover{text-decoration:underline}@media(max-width:480px){.auth-modal{padding:1.5rem;border-radius:12px}.auth-modal-header h2{font-size:1.25rem}}.profile-modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem}.profile-modal{background:var(--surface, #2d2d2d);border:1px solid var(--border, rgba(255, 255, 255, .2));border-radius:16px;padding:2rem;width:100%;max-width:480px;position:relative;animation:profileModalSlideIn .2s ease-out;max-height:90vh;overflow-y:auto}@keyframes profileModalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.profile-modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;color:var(--text-muted, rgba(255, 255, 255, .7));font-size:1.25rem;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.profile-modal-close:hover{color:var(--text, #ffffff)}.profile-modal-header{text-align:center;margin-bottom:1.5rem}.profile-modal-header h2{color:var(--text, #ffffff);margin:0 0 .5rem;font-size:1.5rem}.profile-display-name{color:var(--accent, #a855f7);margin:0;font-size:1rem;font-weight:500}.profile-message{text-align:center;font-size:.875rem;margin-bottom:1rem;padding:.75rem;border-radius:8px}.profile-message.success{color:#4ade80;background:#4ade801a}.profile-message.error{color:#ff6b6b;background:#ff6b6b1a}.profile-view{margin-bottom:1.5rem}.profile-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.profile-info-item{display:flex;flex-direction:column;gap:.25rem}.profile-info-label{font-size:.75rem;color:var(--text-muted, rgba(255, 255, 255, .7));text-transform:uppercase;letter-spacing:.5px}.profile-info-value{font-size:1rem;color:var(--text, #ffffff)}.profile-actions{display:flex;gap:.75rem}.profile-edit-btn,.profile-password-btn{flex:1;background:var(--primary, #3b0085);color:#fff;border:none;padding:.75rem;border-radius:8px;font-size:.875rem;cursor:pointer;transition:background .2s}.profile-edit-btn:hover,.profile-password-btn:hover{background:var(--primary-hover, #2d0066)}.profile-password-btn{background:transparent;border:1px solid var(--border, rgba(255, 255, 255, .2));color:var(--text, #ffffff)}.profile-password-btn:hover{background:#ffffff0d;border-color:var(--accent, #a855f7)}.profile-edit-form,.profile-password-form{margin-bottom:1.5rem}.profile-field{margin-bottom:1rem}.profile-field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.profile-field label{display:block;color:var(--text-muted, rgba(255, 255, 255, .7));font-size:.875rem;margin-bottom:.5rem}.profile-field input{width:100%;padding:.75rem;background:var(--background, #1a1a1a);border:1px solid var(--border, rgba(255, 255, 255, .2));border-radius:8px;color:var(--text, #ffffff);font-size:1rem;box-sizing:border-box}.profile-field input:focus{outline:none;border-color:var(--accent, #a855f7)}.profile-field input:disabled{opacity:.6;cursor:not-allowed}.field-error{display:block;color:#ff6b6b;font-size:.75rem;margin-top:.25rem}.field-checking{display:block;color:var(--accent, #a855f7);font-size:.75rem;margin-top:.25rem}.field-note{display:block;color:var(--text-muted, rgba(255, 255, 255, .5));font-size:.75rem;margin-top:.25rem}.profile-form-actions{display:flex;gap:.75rem;margin-top:1.5rem}.profile-save-btn{flex:1;background:var(--primary, #3b0085);color:#fff;border:none;padding:.75rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:background .2s}.profile-save-btn:hover:not(:disabled){background:var(--primary-hover, #2d0066)}.profile-save-btn:disabled{opacity:.6;cursor:not-allowed}.profile-cancel-btn{flex:1;background:transparent;color:var(--text-muted, rgba(255, 255, 255, .7));border:1px solid var(--border, rgba(255, 255, 255, .2));padding:.75rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s}.profile-cancel-btn:hover{color:var(--text, #ffffff);border-color:var(--text, #ffffff)}.profile-modal-footer{padding:1rem 0;border-top:1px solid var(--border, rgba(255, 255, 255, .2));border-bottom:1px solid var(--border, rgba(255, 255, 255, .2));margin-bottom:1rem}.profile-signout-btn{width:100%;background:transparent;color:var(--text-muted, rgba(255, 255, 255, .7));border:1px solid var(--border, rgba(255, 255, 255, .2));padding:.75rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s}.profile-signout-btn:hover{color:var(--text, #ffffff);border-color:var(--text, #ffffff)}.profile-danger-zone{margin-top:1rem}.profile-danger-zone h3{color:#ff6b6b;font-size:.875rem;margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.5px}.profile-delete-btn{width:100%;background:transparent;color:#ff6b6b;border:1px solid #ff6b6b;padding:.75rem;border-radius:8px;font-size:.875rem;cursor:pointer;transition:all .2s}.profile-delete-btn:hover{background:#ff6b6b;color:#fff}.profile-delete-confirm{text-align:center}.profile-delete-confirm p{color:#ff6b6b;font-size:.875rem;margin:0 0 .75rem}.profile-delete-buttons{display:flex;gap:.75rem}.confirm-delete-btn{flex:1;background:#ff6b6b;color:#fff;border:none;padding:.75rem;border-radius:8px;font-size:.875rem;cursor:pointer}.confirm-delete-btn:hover{background:#ff5252}.cancel-delete-btn{flex:1;background:transparent;color:var(--text-muted, rgba(255, 255, 255, .7));border:1px solid var(--border, rgba(255, 255, 255, .2));padding:.75rem;border-radius:8px;font-size:.875rem;cursor:pointer}.cancel-delete-btn:hover{color:var(--text, #ffffff);border-color:var(--text, #ffffff)}@media(max-width:480px){.profile-modal{padding:1.5rem;border-radius:12px}.profile-modal-header h2{font-size:1.25rem}.profile-info-grid,.profile-field-row{grid-template-columns:1fr}.profile-actions,.profile-form-actions,.profile-delete-buttons{flex-direction:column}}
