.product-card{background-color:var(--card-background-rgb);border-radius:12px;flex-direction:column;transition:transform .2s,box-shadow .2s,opacity .3s,filter .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 8px #0000000d}.product-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0000001a}.product-card.product-locked{pointer-events:none}.product-card.product-locked .product-card-imageContainer{filter:blur(4px)brightness(.7)}.product-locked-overlay{z-index:10;pointer-events:auto;background:#0000004d;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.product-card-inactive{background-color:#00000005}.product-card-inactive .product-card-imageContainer{opacity:.6;filter:grayscale(50%)}.product-card-inactive .product-card-info{opacity:.6}.product-card-inactive:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000014}.product-card-inactive:after{content:"DÉSACTIVÉ";color:#fff;letter-spacing:1px;z-index:5;pointer-events:none;background-color:#ff0000d9;border-radius:8px;padding:.5rem 1.5rem;font-size:1rem;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 12px #0000004d}.product-card-inactive .product-card-admin-actions,.product-card-inactive .product-card-stock-controls{opacity:1}.product-card-imageContainer{width:100%;height:200px;position:relative}.product-card-stock{color:#fff;-webkit-user-select:none;user-select:none;background-color:#dc3545e6;border-radius:12px;padding:4px 8px;font-size:.8rem;font-weight:600;position:absolute;top:10px;right:10px}.product-card-new-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;-webkit-user-select:none;user-select:none;z-index:5;background:linear-gradient(135deg,#ff6b6b 0%,#ee5a24 100%);border-radius:12px;padding:4px 10px;font-size:.75rem;font-weight:700;animation:2s ease-in-out infinite pulse-new;position:absolute;bottom:10px;right:10px;box-shadow:0 2px 6px #ee5a2466}@keyframes pulse-new{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.vip-early-access-badge-container{cursor:help;z-index:5;position:absolute;top:10px;left:10px}.product-card-info{flex-direction:column;flex-grow:1;justify-content:space-between;padding:1rem;display:flex}.product-card-info h3{color:var(--primary-text-color);margin:0 0 .5rem;font-size:1rem}.product-card-price{color:#8a2be2;margin:0;font-size:1.1rem;font-weight:700}.product-card-price-row{align-items:center;gap:.75rem;display:flex}.product-card-price-strikethrough{opacity:.6;font-size:.95rem;text-decoration:line-through}.product-card-price-vip{color:#f39c12;font-size:1.1rem;font-weight:700}.product-card-price-vip-hint{color:#999;opacity:.8;margin:0;font-size:.9rem;font-weight:400}.product-card-addButton{color:#fff;cursor:pointer;background-color:#333;border:none;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.75rem;font-size:1rem;transition:background-color .3s;display:flex}.product-card-addButton:hover:not(:disabled):not(.in-cart){background-color:#555}.product-card-addButton.in-cart{cursor:default;background-color:#27ae60}.product-card-addButton.in-cart:hover{background-color:#27ae60}.product-card-addButton.out-of-stock{cursor:not-allowed;background-color:#999}.product-card-addButton:disabled{cursor:default}.product-card-admin-actions{z-index:10;gap:.5rem;display:flex;position:absolute;top:10px;left:10px}.admin-btn{color:#fff;cursor:pointer;background-color:#000000b3;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.5rem;transition:background-color .2s,transform .1s;display:flex}.admin-btn:hover:not(:disabled){background-color:#000000e6;transform:scale(1.05)}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.delete-btn:hover:not(:disabled),.deactivate-btn:hover:not(:disabled){background-color:#ef4444e6}.activate-btn{background-color:#22c55eb3}.activate-btn:hover:not(:disabled){background-color:#22c55ee6}.deactivate-btn svg,.activate-btn svg{color:#1a1a1a;stroke:#1a1a1a}.edit-btn:hover:not(:disabled){background-color:#3b82f6e6}.delete-btn:hover:not(:disabled){background-color:#ef4444e6}.product-card-description{color:var(--secondary-text-color);margin:.5rem 0;font-size:.9rem;line-height:1.4}@media (max-width:768px){.product-card-description{-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}.remove-from-cart-btn{color:#fff;cursor:pointer;background-color:#0000004d;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-left:.5rem;font-size:1rem;font-weight:700;transition:background-color .2s,transform .1s;display:flex}.remove-from-cart-btn:hover{background-color:#f00c;transform:scale(1.1)}.decrement-cart-btn{color:#fff;cursor:pointer;background-color:#0000004d;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-right:.5rem;font-size:1.2rem;font-weight:700;transition:background-color .2s,transform .1s;display:flex}.decrement-cart-btn:hover{background-color:#ff8c00cc;transform:scale(1.1)}.cart-text{text-align:center;flex:1}.product-card-stock-controls{background-color:#00000008;border-top:1px solid #0000001a;justify-content:center;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.stock-btn{color:#fff;cursor:pointer;background-color:#333;border:none;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.stock-btn:hover:not(:disabled){background-color:#555;transform:scale(1.1)}.stock-btn:active:not(:disabled){transform:scale(.95)}.stock-btn:disabled{cursor:pointer;opacity:.5;background-color:#ccc}.stock-btn.minus-btn:hover:not(:disabled){background-color:#e74c3c}.stock-btn.plus-btn:hover:not(:disabled){background-color:#27ae60}.stock-display{color:var(--primary-text-color);text-align:center;min-width:80px;font-size:.9rem;font-weight:600}.stock-input{text-align:center;width:70px;height:36px;color:var(--primary-text-color);background-color:#fff;border:2px solid #ddd;border-radius:6px;padding:.25rem .5rem;font-size:.95rem;font-weight:600;transition:all .2s}.stock-input:focus{border-color:#8a2be2;outline:none;box-shadow:0 0 0 3px #8a2be21a}.stock-input:disabled{cursor:not-allowed;opacity:.6;background-color:#f5f5f5}.product-card-image-indicator{z-index:5;gap:6px;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.image-dot{background-color:#ffffff80;border-radius:50%;width:8px;height:8px;transition:all .3s}.image-dot.active{background-color:#fff;transform:scale(1.3)}.vip-only-badge{color:#333;letter-spacing:1px;z-index:15;background:linear-gradient(135deg,gold 0%,#ffed4e 100%);border-radius:20px;padding:.5rem 1.5rem;font-size:.9rem;font-weight:700;animation:2s ease-in-out infinite pulse;position:absolute;top:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #ffd70080}@keyframes pulse{0%,to{transform:translate(-50%)scale(1)}50%{transform:translate(-50%)scale(1.05)}}.vip-advantage-text{color:#333;text-align:center;z-index:15;background:#ffd700f2;border-radius:8px;max-width:90%;padding:.75rem 1rem;font-size:.7rem;font-weight:600;line-height:1.3;position:absolute;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0000004d}.product-card-top-left-badges{z-index:5;flex-direction:column;align-items:flex-start;gap:6px;display:flex;position:absolute;top:10px;left:10px}.vip-badge-corner{color:#333;letter-spacing:.5px;background:linear-gradient(135deg,gold 0%,#ffed4e 100%);border-radius:12px;padding:.35rem .75rem;font-size:.75rem;font-weight:700;box-shadow:0 2px 8px #ffd70066}.preorder-badge-corner{color:#fff;letter-spacing:.5px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;padding:.35rem .75rem;font-size:.75rem;font-weight:700;box-shadow:0 2px 8px #764ba266}.vip-badge-admin-below{color:#333;letter-spacing:.5px;z-index:10;background:linear-gradient(135deg,gold 0%,#ffed4e 100%);border-radius:8px;padding:.35rem .75rem;font-size:.75rem;font-weight:700;position:absolute;top:60px;left:10px;box-shadow:0 2px 8px #ffd70066}.preorder-badge-admin-below{color:#fff;letter-spacing:.5px;z-index:10;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:8px;padding:.35rem .75rem;font-size:.75rem;font-weight:700;position:absolute;top:95px;left:10px;box-shadow:0 2px 8px #764ba266}
.modal-overlay{z-index:2000;background-color:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0;overflow:hidden}.modal-content{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:600px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 8px 32px #0003}.modal-header{background:#fff;border-bottom:1px solid #e0e0e0;border-radius:12px 12px 0 0;flex-shrink:0;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-header h2{margin:0;font-size:1.5rem}.modal-close{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.5rem;transition:background-color .2s}.modal-close:hover{background-color:#f0f0f0}.modal-error{color:#c62828;background-color:#ffebee;border:1px solid #ef9a9a;border-radius:6px;margin:1rem 1.5rem 0;padding:1rem}.modal-form{flex:1;min-height:0;padding:1.5rem;overflow-y:auto}.form-group{margin-bottom:1.5rem}.form-group label{color:#333;margin-bottom:.5rem;font-weight:600;display:block}.form-group input[type=text],.form-group input[type=number],.form-group select,.form-group textarea{background-color:#fff;border:1px solid #ddd;border-radius:6px;width:100%;padding:.75rem;font-size:1rem;transition:border-color .2s}.form-group input[type=text]:focus,.form-group input[type=number]:focus,.form-group select:focus,.form-group textarea:focus{border-color:#333;outline:none}.form-group select{cursor:pointer}.form-group select:disabled,.form-group select.disabled{opacity:.5;cursor:not-allowed;background-color:#f5f5f5}.form-group input[type=file]{cursor:pointer;border:2px dashed #ddd;border-radius:6px;width:100%;padding:.5rem}.image-preview{border-radius:8px;max-width:300px;margin-top:1rem;overflow:hidden}.image-preview img{width:100%;height:auto;display:block}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.modal-actions{background:#fff;border-top:1px solid #e0e0e0;border-radius:0 0 12px 12px;flex-shrink:0;gap:1rem;padding:1.5rem;display:flex}.btn-cancel,.btn-submit{cursor:pointer;border:none;border-radius:6px;flex:1;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:background-color .2s}.btn-cancel{color:#333;background-color:#f0f0f0}.btn-cancel:hover{background-color:#e0e0e0}.btn-submit{color:#fff;background-color:#333}.btn-submit:hover{background-color:#555}.btn-submit:disabled{cursor:not-allowed;background-color:#ccc}.category-input-row{align-items:center;gap:.75rem;display:flex}.category-input-row select,.category-input-row .new-category-input{flex:1;margin:0}.category-separator{color:#666;white-space:nowrap;font-size:.9rem;font-weight:600}.new-category-input{border:1px solid #ddd;border-radius:6px;padding:.75rem;font-size:1rem;transition:border-color .2s}.new-category-input:focus{border-color:#8a2be2;outline:none}.category-error{color:#c62828;margin-top:.5rem;font-size:.875rem;display:block}.images-upload-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-top:.5rem;display:grid}.checkbox-group{margin-bottom:1rem}.checkbox-group label{cursor:pointer;align-items:center;gap:.5rem;font-weight:500;display:flex}.checkbox-group input[type=checkbox]{cursor:pointer;width:18px;height:18px}.release-dates{background-color:#f9f9f9;border:2px solid #e0e0e0;border-radius:8px;padding:1rem}.release-date-field{margin-bottom:1rem}.release-date-field:last-child{margin-bottom:0}.release-date-field label{color:#333;margin-bottom:.5rem;font-weight:600;display:block}.release-date-field input[type=datetime-local]{border:1px solid #ddd;border-radius:6px;width:100%;padding:.75rem;font-size:1rem;transition:border-color .2s}.release-date-field input[type=datetime-local]:focus{border-color:#333;outline:none}.release-date-field small{color:#666;margin-top:.25rem;font-size:.85rem;display:block}.disabled-section{opacity:.5;pointer-events:none}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{cursor:not-allowed;color:#999;background-color:#f5f5f5}.checkbox-hint{color:#8a2be2;margin-top:.5rem;margin-left:1.75rem;font-size:.85rem;font-style:italic;display:block}.purchase-limit-section{background-color:#f9f9f9;border:2px solid #e0e0e0;border-radius:8px;padding:1rem}.purchase-limit-section .form-row{margin-bottom:1rem}.purchase-limit-section .form-row:last-of-type{margin-bottom:.5rem}.purchase-limit-section .form-group{margin-bottom:0}.purchase-limit-section .checkbox-hint{margin-top:.75rem;margin-left:0}
.image-upload-component{width:100%;margin-bottom:1rem}.image-upload-preview{background-color:#f5f5f5;border:2px solid #ddd;border-radius:8px;width:100%;height:200px;position:relative;overflow:hidden}.image-upload-preview img{object-fit:cover;width:100%;height:100%}.image-upload-remove{color:#fff;cursor:pointer;z-index:10;background-color:#f00c;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex;position:absolute;top:8px;right:8px}.image-upload-remove:hover{background-color:red;transform:scale(1.1)}.image-upload-replace{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.image-upload-empty{cursor:pointer;background-color:#fafafa;border:2px dashed #ddd;border-radius:8px;justify-content:center;align-items:center;width:100%;height:200px;transition:all .2s;display:flex;position:relative}.image-upload-empty:hover{background-color:#f8f5ff;border-color:#8a2be2}.image-upload-input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.image-upload-placeholder{text-align:center;pointer-events:none}.image-upload-placeholder span{color:#8a2be2;margin-bottom:.5rem;font-size:3rem;display:block}.image-upload-placeholder p{color:#666;margin:0;font-size:.9rem}
.category-multi-select{background:#f9f9f9;border:1px solid #ddd;border-radius:8px;padding:1rem}.category-multi-select.disabled{opacity:.5;pointer-events:none;background:#f0f0f0}.no-categories{color:#999;text-align:center;padding:1rem}.categories-grid{flex-direction:column;gap:.75rem;display:flex}.category-group{flex-direction:column;gap:.5rem;display:flex}.category-checkbox{cursor:pointer;background:#fff;border:2px solid #0000;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem .75rem;transition:all .2s;display:flex}.category-checkbox:hover{background:#f0f7ff;border-color:#0d4db1}.category-checkbox.selected{background:#e6f2ff;border-color:#0d4db1}.category-checkbox.subcategory{margin-left:1.5rem;font-size:.95rem}.category-checkbox input[type=checkbox]{cursor:pointer;width:18px;height:18px}.category-name{-webkit-user-select:none;user-select:none;flex:1}.subcategories{flex-direction:column;gap:.4rem;display:flex}.selected-categories-summary{color:#333;background:#e6f2ff;border-left:3px solid #0d4db1;border-radius:4px;margin-top:1rem;padding:.75rem;font-size:.9rem}.selected-categories-summary strong{color:#0d4db1}
.product-detail-modal-overlay{z-index:10000;background-color:#000000b3;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.product-detail-modal-content{background-color:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;position:relative;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.product-detail-modal-close{cursor:pointer;z-index:10;background-color:#ffffffe6;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background-color .2s;display:flex;position:absolute;top:1rem;right:1rem;box-shadow:0 2px 8px #00000026}.product-detail-modal-close:hover{background-color:#fff}.product-detail-modal-body{padding:2rem}.product-detail-card{background-color:#fff;flex-direction:column;display:flex}.product-detail-card-imageContainer{border-radius:8px;width:100%;height:300px;margin-bottom:1rem;position:relative;overflow:hidden}.product-detail-top-left-badges{z-index:5;flex-direction:column;align-items:flex-start;gap:6px;display:flex;position:absolute;top:10px;left:10px}.product-detail-vip-badge{color:#333;letter-spacing:.5px;background:linear-gradient(135deg,gold 0%,#ffed4e 100%);border-radius:12px;padding:.4rem .9rem;font-size:.85rem;font-weight:700;box-shadow:0 2px 8px #ffd70066}.product-detail-preorder-badge{color:#fff;letter-spacing:.5px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;padding:.4rem .9rem;font-size:.85rem;font-weight:700;box-shadow:0 2px 8px #764ba266}.product-detail-card-stock{color:#fff;background-color:#dc3545e6;border-radius:15px;padding:5px 10px;font-size:.85rem;font-weight:600;position:absolute;top:10px;right:10px}.product-detail-card-new-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;-webkit-user-select:none;user-select:none;z-index:5;background:linear-gradient(135deg,#ff6b6b 0%,#ee5a24 100%);border-radius:15px;padding:6px 14px;font-size:.9rem;font-weight:700;animation:2s ease-in-out infinite pulse-new-detail;position:absolute;bottom:10px;right:10px;box-shadow:0 2px 8px #ee5a2466}@keyframes pulse-new-detail{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.product-detail-card-info{margin-bottom:1.5rem}.product-detail-card-info h3{color:#333;margin-bottom:.75rem;font-size:1.5rem}.product-detail-card-description{color:#666;margin-bottom:1rem;font-size:1rem;line-height:1.5}.product-detail-card-price{color:#0d4db1;margin:0;font-size:1.5rem;font-weight:700}.product-detail-price-row{align-items:center;gap:1rem;display:flex}.product-detail-price-strikethrough{opacity:.6;font-size:1.25rem;text-decoration:line-through}.product-detail-price-vip{color:#f39c12;font-size:1.5rem;font-weight:700}.product-detail-price-vip-hint{color:#999;opacity:.8;margin:0;font-size:1.1rem;font-weight:400}.product-detail-card-addButton{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0d4db1 0%,#be6ae3 100%);border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:flex}.product-detail-card-addButton:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0d4db14d}.product-detail-card-addButton:active{transform:translateY(0)}.product-detail-card-addButton.in-cart{cursor:default;background:linear-gradient(135deg,#4caf50 0%,#45a049 100%)}.product-detail-card-addButton.in-cart:hover{box-shadow:none;transform:none}.product-detail-card-addButton.out-of-stock{cursor:not-allowed;background:linear-gradient(135deg,#999 0%,#777 100%)}.product-detail-card-addButton.out-of-stock:hover{box-shadow:none;transform:none}.remove-from-cart-btn{cursor:pointer;background-color:#fff3;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-left:.5rem;font-size:1.2rem;transition:background-color .2s;display:flex}.remove-from-cart-btn:hover{background-color:#ffffff4d}.image-nav-arrow{color:#fff;cursor:pointer;z-index:10;background-color:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:all .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.image-nav-arrow:hover{background-color:#000000b3;transform:translateY(-50%)scale(1.1)}.arrow-left{left:10px}.arrow-right{right:10px}.image-thumbnails{justify-content:center;gap:.75rem;margin-bottom:1.5rem;padding:0 1rem;display:flex}.thumbnail{cursor:pointer;border:3px solid #0000;border-radius:8px;width:80px;height:80px;transition:all .2s;position:relative;overflow:hidden}.thumbnail:hover{border-color:#8a2be280;transform:scale(1.05)}.thumbnail.active{border-color:#8a2be2;box-shadow:0 0 8px #8a2be280}.thumbnail img{object-fit:cover;width:100%;height:100%}.product-detail-card-event-only-badge{color:#fff;background:linear-gradient(135deg,#8a2be2,#6a1bb2);border-radius:20px;padding:.4rem .8rem;font-size:.85rem;font-weight:600;position:absolute;top:.5rem;left:.5rem;box-shadow:0 2px 8px #8a2be266}.product-detail-card-event-only{text-align:center;background:linear-gradient(135deg,#f3e8ff,#e9d5ff);border:2px solid #8a2be2;border-radius:12px;margin-top:1rem;padding:1.5rem}.event-only-icon{margin-bottom:.75rem;font-size:2.5rem}.event-only-text{color:#6a1bb2;margin:0 0 .5rem;font-size:1rem;font-weight:600}.event-only-subtext{color:#7c3aed;margin:0;font-size:.9rem}
.countdown-timer{color:#fff;background:#000000b3;border-radius:8px;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;display:flex}.countdown-label{text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem;font-size:.9rem;font-weight:600}.countdown-values{flex-direction:column;gap:.4rem;width:100%;display:flex}.countdown-unit{background:#ffffff1a;border-radius:6px;justify-content:space-between;align-items:center;padding:.4rem .6rem;display:flex}.countdown-number{color:gold;text-shadow:0 0 10px #ffd70080;font-family:Courier New,monospace;font-size:1.5rem;font-weight:700}.countdown-text{color:#ffffffe6;font-size:.85rem;font-weight:500}@media (max-width:768px){.countdown-timer{padding:.75rem}.countdown-label{font-size:.8rem}.countdown-number{font-size:1.2rem}.countdown-text{font-size:.75rem}}
.product-list-container{padding:1rem 2rem}.product-list-container p{color:var(--secondary-text-color);margin-bottom:2rem;font-size:1rem}.products-title{color:var(--text-color);margin-top:0;margin-bottom:2rem;font-size:1.8rem;font-weight:600}.recommended-title{color:var(--text-color);margin-top:3rem;margin-bottom:2rem;font-size:1.5rem;font-weight:600}.no-products-message{text-align:center;color:#666;background-color:#8a2be20d;border:1px solid #8a2be233;border-radius:8px;margin:3rem 0;padding:2rem;font-size:1.1rem}.search-bar-container{margin-bottom:2rem}.search-bar{background-color:var(--card-background-rgb);width:100%;max-width:440px;color:var(--text-color);border:2px solid #8a2be24d;border-radius:8px;padding:.75rem 1rem;font-size:1rem;transition:all .2s}.search-bar:focus{border-color:#8a2be2b3;outline:none;box-shadow:0 0 0 3px #8a2be21a}.search-bar::placeholder{color:var(--secondary-text-color);opacity:.7}.product-list-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;display:grid}.product-add-card{background-color:var(--card-background-rgb);cursor:pointer;border:2px dashed #8a2be280;border-radius:12px;justify-content:center;align-items:center;min-height:300px;transition:all .2s;display:flex}.product-add-card:hover{background-color:#8a2be20d;border-color:#8a2be2cc;transform:translateY(-2px)}.add-product-btn{color:#8a2be2;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:.5rem;padding:2rem;font-size:1rem;display:flex}.add-product-btn svg{width:48px;height:48px}.go-to-cart-btn{color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.75rem;width:100%;max-width:300px;margin:2rem auto 0;padding:1rem 2rem;font-size:1.1rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 2px 8px #0000004d}.go-to-cart-btn-codegeek{background:linear-gradient(90deg,#0d4db1,#be6ae3)}.go-to-cart-btn-citycash{color:#333;background:linear-gradient(90deg,#ffde59,#ff914c)}.go-to-cart-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0006}.go-to-cart-btn:active{transform:translateY(0)}
.event-calendar-wrapper{background:#fff;border-radius:12px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 2px 8px #0000001a}.event-calendar-header{color:#fff;background:#2196f3;grid-template-columns:repeat(7,1fr);font-weight:600;display:grid}.event-calendar-day-header{text-align:center;border-right:1px solid #fff3;padding:.75rem .5rem;font-size:.9rem}.event-calendar-day-header:last-child{border-right:none}.event-calendar-grid{flex-direction:column;display:flex}.event-calendar-week{grid-template-columns:repeat(7,1fr);min-height:120px;display:grid}.event-calendar-day{background:#fff;border-bottom:1px solid #e0e0e0;border-right:1px solid #e0e0e0;flex-direction:column;min-height:120px;transition:background-color .2s;display:flex}.event-calendar-day:last-child{border-right:none}.event-calendar-day:hover{background:#fafafa}.event-calendar-day.past{background:#f5f5f5}.event-calendar-day.past .event-calendar-day-number{color:#999}.event-calendar-day.today{background:#e3f2fd}.event-calendar-day.today:hover{background:#bbdefb}.event-calendar-day-number{color:#333;border-bottom:1px solid #f0f0f0;justify-content:center;align-items:center;height:33.33%;padding:.25rem;font-size:1.1rem;font-weight:500;display:flex}.event-calendar-day-number .today-badge{color:#fff;background:#2196f3;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-weight:600;display:flex}.event-calendar-day-events{scrollbar-width:thin;scrollbar-color:#ccc #f0f0f0;flex-direction:column;gap:.25rem;height:66.67%;padding:.25rem;display:flex;overflow-y:auto}.event-calendar-day-events::-webkit-scrollbar{width:4px}.event-calendar-day-events::-webkit-scrollbar-track{background:#f0f0f0}.event-calendar-day-events::-webkit-scrollbar-thumb{background:#ccc;border-radius:2px}.event-calendar-event-item{cursor:pointer;background:#e3f2fd;border-left:3px solid #2196f3;border-radius:4px;flex-direction:column;gap:.15rem;padding:.35rem .5rem;transition:all .2s;display:flex}.event-calendar-event-item:hover{background:#bbdefb;transform:translate(2px)}.event-calendar-event-item.full{background:#ffebee;border-left-color:#f44336}.event-calendar-event-item.full:hover{background:#ffcdd2}.event-calendar-event-item .event-time{color:#666;font-size:.7rem;font-weight:500}.event-calendar-event-item .event-title{color:#333;word-wrap:break-word;overflow-wrap:break-word;font-size:.8rem;line-height:1.2}.event-calendar-event-item .event-full-indicator{color:#f44336;text-transform:uppercase;font-size:.65rem;font-weight:600}.event-calendar-empty{color:#666;grid-column:1/-1;justify-content:center;align-items:center;padding:3rem;font-size:1.1rem;display:flex}@media (max-width:1024px){.event-calendar-day-header{padding:.5rem .25rem;font-size:.8rem}.event-calendar-day{min-height:100px}.event-calendar-day-number{font-size:1rem}.event-calendar-event-item .event-title{font-size:.75rem}}@media (max-width:768px){.event-calendar-wrapper{height:auto;min-height:400px}.event-calendar-day-header{padding:.4rem .15rem;font-size:.7rem}.event-calendar-day{min-height:80px}.event-calendar-day-number{height:30%;font-size:.9rem}.event-calendar-day-events{height:70%;padding:.15rem}.event-calendar-event-item{padding:.25rem .35rem}.event-calendar-event-item .event-time{font-size:.6rem}.event-calendar-event-item .event-title{font-size:.7rem}.event-calendar-day-number .today-badge{width:26px;height:26px;font-size:.85rem}}@media (max-width:480px){.event-calendar-day-header{font-size:.6rem}.event-calendar-day{min-height:70px}.event-calendar-event-item .event-time{display:none}.event-calendar-event-item .event-title{font-size:.65rem}}
.modal-content-large{flex-direction:column;max-width:700px;max-height:90vh;display:flex;overflow:hidden}.game-mode-selector{align-items:center;margin-bottom:1rem;display:flex}.mode-btn{cursor:pointer;background-color:#fff;border:1px solid #ddd;border-radius:4px;padding:.5rem 1rem;transition:all .2s}.mode-btn:hover{background-color:#f0f0f0}.mode-btn.active{color:#fff;background-color:#007bff;border-color:#007bff}.create-game-form{flex-direction:column;gap:.5rem;display:flex}.create-game-form input{border:1px solid #ddd;border-radius:6px;padding:.75rem;font-size:1rem}.rewards-section{background-color:#f8f8f8;border:1px solid #ddd;border-radius:8px;padding:1rem}.reward-input-row{gap:.75rem;margin-bottom:1rem;display:flex}.reward-type-select{background-color:#fff;border:1px solid #ddd;border-radius:6px;min-width:100px;max-width:120px;padding:.75rem;font-size:1rem}.reward-product-select{background-color:#fff;border:1px solid #ddd;border-radius:6px;flex:1;padding:.75rem;font-size:1rem}.reward-input-row select{background-color:#fff;border:1px solid #ddd;border-radius:6px;padding:.75rem;font-size:1rem}.reward-input-row input{border:1px solid #ddd;border-radius:6px;flex:1;padding:.75rem;font-size:1rem}.add-reward-btn{color:#fff;cursor:pointer;background-color:#8a2be2;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.75rem;transition:background-color .2s;display:flex}.add-reward-btn:hover{background-color:#7a1fd2}.rewards-list{flex-direction:column;gap:.5rem;display:flex}.reward-item{background-color:#fff;border:1px solid #ddd;border-radius:6px;align-items:center;gap:.75rem;padding:.75rem;display:flex}.reward-type-badge{white-space:nowrap;background-color:#e0e0e0;border-radius:12px;padding:.25rem .75rem;font-size:.85rem;font-weight:600}.reward-content{color:#333;flex:1}.remove-reward-btn{color:#fff;cursor:pointer;background-color:#d32f2f;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.5rem;transition:background-color .2s;display:flex}.remove-reward-btn:hover{background-color:#b71c1c}.checkbox-group{margin-bottom:1rem}.checkbox-group label{cursor:pointer;align-items:center;gap:.5rem;font-weight:500;display:flex}.checkbox-group input[type=checkbox]{cursor:pointer;width:18px;height:18px}
.event-detail-overlay{z-index:1100;background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.event-detail-modal{scrollbar-width:thin;scrollbar-color:#8a2be2 #f0f0f0;background:#fff;border-radius:16px;width:100%;max-width:700px;max-height:90vh;position:relative;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.event-detail-modal::-webkit-scrollbar{width:8px}.event-detail-modal::-webkit-scrollbar-track{background:#f0f0f0}.event-detail-modal::-webkit-scrollbar-thumb{background:#8a2be2;border-radius:4px}.event-detail-modal::-webkit-scrollbar-thumb:hover{background:#6a1bb2}.event-detail-close{float:right;cursor:pointer;z-index:20;background:#0000001a;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:-40px;transition:all .2s;display:flex;position:sticky;top:1rem;right:1rem}.event-detail-close:hover{background:#0003}.event-detail-admin-actions{z-index:10;background:#fff3e0;border-bottom:1px solid #ffe0b2;gap:.5rem;padding:1rem 4rem 1rem 1rem;display:flex;position:sticky;top:0}.admin-action-btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;transition:all .2s;display:flex}.admin-action-btn.edit-btn{color:#fff;background:#ff9800}.admin-action-btn.edit-btn:hover{background:#f57c00}.admin-action-btn.delete-btn{color:#fff;background:#f44336}.admin-action-btn.delete-btn:hover{background:#d32f2f}.admin-action-btn:disabled{opacity:.6;cursor:not-allowed}.event-detail-header{border-bottom:1px solid #e0e0e0;gap:1.5rem;padding:1.5rem;display:flex}.event-detail-image-container{flex-shrink:0;position:relative}.event-detail-image{object-fit:cover;border-radius:12px;width:200px;height:200px}.event-detail-full-badge{color:#fff;background:#f44336;border-radius:4px;padding:.25rem .75rem;font-size:.8rem;font-weight:600;position:absolute;top:.5rem;left:.5rem}.event-detail-info{flex-direction:column;flex:1;gap:.75rem;display:flex}.event-detail-name{color:#333;margin:0;font-size:1.5rem}.event-detail-meta{flex-direction:column;gap:.5rem;display:flex}.event-detail-meta-item{color:#666;align-items:center;gap:.5rem;font-size:.95rem;display:flex}.event-detail-meta-item svg{color:#2196f3}.event-detail-game-badge{color:#1976d2;background:#e3f2fd;border-radius:20px;width:fit-content;padding:.35rem .75rem;font-size:.85rem;display:inline-block}.event-detail-registered-badge{color:#388e3c;background:#e8f5e9;border-radius:8px;width:fit-content;padding:.5rem 1rem;font-weight:600}.event-detail-deadline{color:#666;font-size:.95rem}.event-detail-deadline strong{color:#333}.deadline-closed{color:#f44336;margin-left:.5rem;font-weight:600}.registration-closed{background:#ffebee;border-left:4px solid #f44336}.closed-badge{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.closed-icon{font-size:1.5rem}.registration-closed h3{color:#c62828;margin:0}.registration-closed p{color:#666;margin:.5rem 0;line-height:1.6}.event-detail-section{border-bottom:1px solid #e0e0e0;padding:1.5rem}.event-detail-section:last-child{border-bottom:none}.event-detail-section h3{color:#333;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1.1rem;display:flex}.event-detail-section p{color:#555;margin:0;line-height:1.6}.event-detail-rewards{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.reward-item{padding:.5rem 0}.reward-product-container{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.reward-product{font-weight:500}.view-product-btn{color:#1976d2;cursor:pointer;background:#e3f2fd;border:none;border-radius:4px;padding:.35rem .75rem;font-size:.85rem;transition:all .2s}.view-product-btn:hover{background:#bbdefb}.reward-text{color:#555}.view-participants-btn{cursor:pointer;color:#333;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:6px;padding:.6rem 1rem;font-size:.9rem;transition:all .2s}.view-participants-btn:hover{background:#e0e0e0}.participants-list{scrollbar-width:thin;scrollbar-color:#8a2be2 #f0f0f0;border:1px solid #e0e0e0;border-radius:8px;max-height:400px;margin-top:1rem;padding:.5rem;overflow:hidden auto}.participants-list::-webkit-scrollbar{width:6px}.participants-list::-webkit-scrollbar-track{background:#f0f0f0}.participants-list::-webkit-scrollbar-thumb{background:#8a2be2;border-radius:3px}.participants-list::-webkit-scrollbar-thumb:hover{background:#6a1bb2}.no-participants{text-align:center;color:#666;padding:1rem}.participant-item{background:#fafafa;border-bottom:1px solid #e0e0e0;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:.35rem;padding:.75rem 1rem;display:flex}.participant-item:last-child{border-bottom:none;margin-bottom:0}.participant-item.guest-participant{background:#f3e5f5}.participant-info{flex-direction:column;gap:.25rem;display:flex}.participant-name{color:#333;flex-wrap:wrap;align-items:center;gap:.5rem;font-weight:500;display:flex}.guest-badge{color:#fff;white-space:nowrap;background:#9c27b0;border-radius:10px;padding:.15rem .5rem;font-size:.7rem;font-weight:500;display:inline-block}.participant-name .payment-badge{white-space:nowrap;border-radius:10px;padding:.15rem .5rem;font-size:.7rem;font-weight:500;display:inline-block}.participant-name .payment-badge.paid{color:#fff;background:#4caf50}.participant-email{color:#666;font-size:.85rem}.participant-gameid{font-size:.85rem}.gameid-value{color:#1976d2;background:#e3f2fd;border-radius:4px;padding:.25rem .5rem}.gameid-missing{color:#999;font-style:italic}.event-registration h3{margin-bottom:1rem}.game-id-warning{color:#856404;background:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-bottom:1rem;padding:1rem}.game-id-warning strong{margin-bottom:.5rem;display:block}.game-id-warning p{color:inherit;margin:0;font-size:.9rem}.game-id-warning a{color:#0d4db1;text-decoration:underline}.payment-selection{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.payment-selection .payment-option{cursor:pointer;-webkit-user-select:none;user-select:none;border:2px solid #e0e0e0;border-radius:8px;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:all .2s;display:flex}.payment-selection .payment-option:hover:not(.disabled){background-color:#f5f9ff;border-color:#2196f3}.payment-selection .payment-option.selected{background-color:#e3f2fd;border-color:#2196f3}.payment-selection .payment-option.disabled{opacity:.5;cursor:not-allowed}.payment-selection .payment-option input[type=radio]{display:none}.payment-selection .payment-option svg{color:#666}.payment-selection .payment-option.selected svg{color:#2196f3}.payment-selection label{cursor:pointer;align-items:center;gap:.5rem;display:flex}.payment-selection label:has(input:disabled){opacity:.5;cursor:not-allowed}.auth-required{margin-top:1rem}.auth-buttons{gap:1rem;display:flex}.btn-auth{color:#2196f3;cursor:pointer;background:#fff;border:2px solid #2196f3;border-radius:8px;flex:1;padding:.75rem;font-size:.95rem;transition:all .2s}.btn-auth:hover{color:#fff;background:#2196f3}.auth-form{background:#f9f9f9;border-radius:8px;padding:1.5rem;position:relative}.btn-back-auth{cursor:pointer;color:#666;background:0 0;border:none;padding:.25rem;position:absolute;top:1rem;left:1rem}.btn-back-auth:hover{color:#333}.auth-form h4{text-align:center;color:#333;margin:0 0 1rem}.auth-form form{flex-direction:column;gap:.75rem;display:flex}.auth-form input[type=text],.auth-form input[type=email],.auth-form input[type=password]{border:1px solid #ddd;border-radius:6px;padding:.75rem;font-size:.95rem}.auth-form input:focus{border-color:#2196f3;outline:none}.auth-checkbox{align-items:center;gap:.5rem;font-size:.9rem;display:flex}.auth-checkbox a{color:#2196f3;text-decoration:underline}.auth-error{color:#c62828;text-align:center;background:#ffebee;border-radius:6px;padding:.75rem;font-size:.9rem}.btn-submit-auth{color:#fff;cursor:pointer;background:#2196f3;border:none;border-radius:6px;padding:.75rem;font-size:.95rem;transition:background .2s}.btn-submit-auth:hover:not(:disabled){background:#1976d2}.btn-submit-auth:disabled{opacity:.6;cursor:not-allowed}.register-btn{color:#fff;cursor:pointer;background:#4caf50;border:none;border-radius:8px;width:100%;padding:.85rem;font-size:1rem;font-weight:500;transition:background .2s}.register-btn:hover:not(:disabled){background:#388e3c}.register-btn:disabled{opacity:.6;cursor:not-allowed}.cancel-registration-section h3{color:#333;margin-bottom:1rem;font-size:1.1rem}.registration-item{background:#f8f9fa;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.75rem;display:flex}.registration-name{color:#333;align-items:center;gap:.5rem;font-weight:500;display:flex}.registration-name .guest-label{color:#666;font-size:.85rem;font-weight:400}.cancel-individual-btn{color:#fff;cursor:pointer;background:#f44336;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.85rem;font-weight:500;transition:background .2s}.cancel-individual-btn:hover{background:#d32f2f}.cancel-registration-btn{color:#fff;cursor:pointer;background:#f44336;border:none;border-radius:8px;width:100%;padding:.85rem;font-size:1rem;font-weight:500;transition:background .2s}.cancel-registration-btn.cancel-all-btn{background:#9c27b0;margin-top:1rem}.cancel-registration-btn.cancel-all-btn:hover{background:#7b1fa2}.cancel-registration-btn:hover{background:#d32f2f}.event-full-message{color:#c62828;text-align:center;background:#ffebee;border-radius:8px;margin:1.5rem;padding:1rem;font-weight:500}.authenticated-registration{flex-direction:column;gap:1rem;display:flex}.guest-selection{background:#f5f5f5;border-radius:8px;margin-bottom:.5rem;padding:1rem}.guest-selection h4{color:#333;margin:0 0 .5rem;font-size:1rem}.guest-selection-info{color:#666;margin-bottom:.75rem;font-size:.85rem}.guest-selection-info .spots-warning{color:#f44336;font-weight:500}.guest-checkboxes{flex-direction:column;gap:.5rem;display:flex}.guest-checkbox-label{cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem;transition:all .2s;display:flex}.guest-checkbox-label:hover:not(.disabled){background:#fff8e1;border-color:#ff9800}.guest-checkbox-label.disabled{opacity:.6;cursor:not-allowed}.guest-checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px}.guest-checkbox-label.disabled input[type=checkbox]{cursor:not-allowed}.guest-checkbox-label span{color:#333;font-size:.9rem}.guest-checkbox-label .already-registered{color:#9e9e9e;margin-left:auto;font-size:.8rem;font-style:italic}.self-participation-checkbox{cursor:pointer;background:#fff3e0;border:1px solid #ffe0b2;border-radius:6px;align-items:flex-start;gap:.5rem;margin-top:.75rem;padding:.75rem;display:flex}.self-participation-checkbox input[type=checkbox]{cursor:pointer;flex-shrink:0;width:18px;height:18px;margin-top:2px}.self-participation-checkbox span{color:#e65100;font-size:.85rem;line-height:1.4}.registration-summary{text-align:center;color:#666;margin-top:.25rem;font-size:.85rem}@media (max-width:768px){.event-detail-overlay{align-items:flex-end;padding:0}.event-detail-modal{border-radius:16px 16px 0 0;max-height:95vh}.event-detail-header{text-align:center;flex-direction:column;align-items:center}.event-detail-image{width:150px;height:150px}.event-detail-name{font-size:1.25rem}.event-detail-meta{align-items:center}.event-detail-admin-actions{flex-wrap:wrap;justify-content:center;padding-right:4rem}.admin-action-btn{padding:.4rem .75rem;font-size:.85rem}.auth-buttons{flex-direction:column}}@media (max-width:480px){.event-detail-section{padding:1rem}.participant-item{flex-direction:column;align-items:flex-start;gap:.5rem}}.participant-actions{align-items:center;gap:.5rem;display:flex}.admin-cancel-btn{color:#dc2626;cursor:pointer;background:#fee2e2;border:1px solid #fecaca;border-radius:4px;justify-content:center;align-items:center;padding:.4rem;transition:all .2s;display:flex}.admin-cancel-btn:hover{color:#b91c1c;background:#fecaca}.view-cancelled-btn{color:#92400e;background:#fef3c7;border-color:#fcd34d}.view-cancelled-btn:hover{background:#fcd34d}.cancelled-list{background:#fffbeb;border-color:#fcd34d}.cancelled-item{background:#fef3c7}.cancelled-badge{color:#fff;white-space:nowrap;background:#dc2626;border-radius:10px;padding:.15rem .5rem;font-size:.7rem;font-weight:500;display:inline-block}.cancelled-date{color:#92400e;font-size:.8rem;font-style:italic}.cancelled-actions{gap:.5rem;display:flex}.admin-reregister-btn{cursor:pointer;border:1px solid;border-radius:4px;justify-content:center;align-items:center;padding:.4rem;transition:all .2s;display:flex}.admin-reregister-btn.free{color:#059669;background:#d1fae5;border-color:#6ee7b7}.admin-reregister-btn.free:hover{color:#047857;background:#6ee7b7}.admin-reregister-btn.paid{color:#2563eb;background:#dbeafe;border-color:#93c5fd}.admin-reregister-btn.paid:hover{color:#1d4ed8;background:#93c5fd}
.event-card{background:#fff;border-left:4px solid;border-radius:12px;transition:all .2s;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000001a}.event-card.codegeek{border-left-color:#be6ae3}.event-card.citycash{border-left-color:#ff914c}.event-card:hover{box-shadow:0 4px 16px #00000026}.event-card-admin-actions{z-index:10;gap:.5rem;display:flex;position:absolute;top:1rem;right:1rem}.admin-btn{cursor:pointer;background-color:#fffffff2;border:1px solid #ddd;border-radius:6px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.admin-btn:hover{background-color:#fff;transform:translateY(-2px);box-shadow:0 2px 8px #00000026}.edit-btn{color:#0d4db1}.edit-btn:hover{border-color:#0d4db1}.delete-btn{color:#d32f2f}.delete-btn:hover{border-color:#d32f2f}.delete-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.event-card-header{cursor:pointer;gap:1.5rem;padding:1.5rem;transition:background-color .2s;display:flex}.event-card-header:hover{background-color:#f8f8f8}.event-image-container{flex-shrink:0;width:200px;height:150px;position:relative}.event-image{object-fit:cover;border-radius:8px;width:100%;height:100%}.event-full-badge{color:#fff;background-color:#d32f2f;border-radius:4px;padding:.25rem .75rem;font-size:.75rem;font-weight:700;position:absolute;top:.5rem;right:.5rem}.event-info{flex-direction:column;flex:1;gap:.75rem;display:flex}.event-name{color:#333;margin:0;font-size:1.5rem}.event-meta{flex-wrap:wrap;gap:1.5rem;display:flex}.event-meta-item{color:#666;align-items:center;gap:.5rem;font-size:.95rem;display:flex}.event-meta-item svg{color:#8a2be2}.event-game-badge{color:#333;background-color:#f0f0f0;border-radius:20px;width:fit-content;margin-top:.5rem;padding:.4rem .9rem;font-size:.85rem;font-weight:500;display:inline-block}.registered-badge{color:#fff;background-color:#27ae60;border-radius:20px;width:fit-content;margin-top:.5rem;padding:.4rem .9rem;font-size:.85rem;font-weight:600;display:inline-block}.expand-btn{cursor:pointer;color:#8a2be2;background:0 0;border:none;align-self:flex-start;align-items:center;padding:.25rem;transition:transform .2s;display:flex}.expand-btn:hover{transform:scale(1.1)}.event-details{border-top:1px solid #e0e0e0;padding:0 1.5rem 1.5rem;animation:.3s ease-out slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.event-description{margin-bottom:1.5rem}.event-description h4{color:#333;margin:0 0 .75rem;font-size:1.1rem}.event-description p{color:#666;margin:0;line-height:1.6}.event-rewards{margin-bottom:1.5rem}.event-rewards h4{color:#333;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:1.1rem;display:flex}.event-rewards ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.event-rewards li{background-color:#f8f8f8;border-radius:6px;padding:.5rem}.reward-item{align-items:center;display:flex}.reward-product-container{justify-content:space-between;align-items:center;gap:1rem;width:100%;display:flex}.reward-product{color:#8a2be2;font-weight:600}.view-product-btn{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#0d4db1 0%,#be6ae3 100%);border:none;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s}.view-product-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0d4db14d}.view-product-btn:active{transform:translateY(0)}.reward-text{color:#555}.event-participants-section{margin-bottom:1.5rem}.view-participants-btn{color:#fff;cursor:pointer;background-color:#8a2be2;border:none;border-radius:6px;padding:.75rem 1.5rem;font-weight:600;transition:background-color .2s}.view-participants-btn:hover{background-color:#7a1fd2}.participants-list{background-color:#f8f8f8;border-radius:8px;max-height:300px;margin-top:1rem;padding:1rem;overflow-y:auto}.participant-item{background-color:#fff;border-radius:6px;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;padding:.75rem;display:flex}.participant-item:last-child{margin-bottom:0}.participant-info{flex-direction:column;flex:1;gap:.25rem;display:flex}.participant-name{color:#333;font-weight:500}.participant-email{color:#666;font-size:.9rem}.participant-gameid{background-color:#f0f0f0;border-radius:4px;align-items:center;padding:.25rem .75rem;font-family:monospace;font-size:.9rem;display:flex}.gameid-value{color:#007bff;font-weight:500}.gameid-missing{color:#999;font-style:italic}.event-registration{box-sizing:border-box;background-color:#f8f8f8;border-radius:8px;width:100%;padding:1.5rem}.event-registration h4{color:#333;margin:0 0 1rem;font-size:1.1rem}.payment-selection{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.payment-selection label{cursor:pointer;background-color:#fff;border:2px solid #ddd;border-radius:6px;align-items:center;gap:.75rem;padding:.75rem;transition:border-color .2s;display:flex}.payment-selection label:has(input:checked){background-color:#f3e6ff;border-color:#8a2be2}.payment-selection label:has(input:disabled){opacity:.5;cursor:not-allowed}.payment-selection input[type=radio]{cursor:pointer;width:18px;height:18px}.payment-selection input[type=radio]:disabled{cursor:not-allowed}.register-btn{color:#fff;cursor:pointer;background:linear-gradient(90deg,#0d4db1,#be6ae3);border:none;border-radius:8px;width:100%;padding:1rem 2rem;font-size:1.1rem;font-weight:600;transition:all .2s}.register-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.register-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.cancel-registration-btn{color:#fff;cursor:pointer;background-color:#d32f2f;border:none;border-radius:8px;width:100%;padding:1rem 2rem;font-size:1.1rem;font-weight:600;transition:all .2s}.cancel-registration-btn:hover{background-color:#b71c1c;transform:translateY(-2px);box-shadow:0 4px 12px #d32f2f4d}.event-full-message{text-align:center;color:#c62828;background-color:#ffebee;border-radius:8px;padding:1.5rem;font-weight:600}.auth-required{box-sizing:border-box;background-color:#0000;border-radius:0;width:100%;margin-top:0;padding:0;display:block}.auth-buttons{box-sizing:border-box;flex-direction:column;gap:.75rem;width:100%;display:flex}.btn-auth{color:#fff;cursor:pointer;background-color:#333;border:none;border-radius:6px;width:100%;padding:.75rem;font-size:1rem;font-weight:600;transition:background-color .2s}.btn-auth:hover{background-color:#555}.event-card .auth-form{box-sizing:border-box;box-shadow:none;background:0 0;padding:0;position:relative;width:100%!important;max-width:none!important}.btn-back-auth{cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;margin-bottom:1rem;padding:.5rem;transition:background-color .2s;display:flex}.btn-back-auth:hover{background-color:#e0e0e0}.event-card .auth-form h4{color:#333;margin:0 0 1rem;font-size:1.1rem}.event-card .auth-form form{box-sizing:border-box;flex-direction:column;gap:1rem;display:flex;width:100%!important}.event-card .auth-form input{box-sizing:border-box;border:1px solid #ddd;border-radius:6px;width:100%;padding:.75rem;font-size:.95rem;transition:border-color .2s}.event-card .auth-form input:focus{border-color:#8a2be2;outline:none}.btn-submit-auth{color:#fff;cursor:pointer;background-color:#8a2be2;border:none;border-radius:6px;width:100%;padding:.75rem;font-size:1rem;font-weight:600;transition:background-color .2s}.btn-submit-auth:hover:not(:disabled){background-color:#7a1dd1}.btn-submit-auth:disabled{cursor:not-allowed;background-color:#ccc}.auth-error{color:#c62828;background-color:#ffebee;border:1px solid #ef9a9a;border-radius:6px;margin-bottom:.5rem;padding:.75rem;font-size:.9rem}@media (max-width:768px){.event-card-header{flex-direction:column;gap:1rem;padding:1rem}.event-image-container{width:100%;height:180px}.event-info{width:100%}.event-name{font-size:1.25rem}.event-meta{gap:.75rem}.event-meta-item{font-size:.85rem}.event-card-admin-actions{top:.5rem;right:.5rem}.admin-btn{padding:.4rem}.event-card-expanded{padding:1rem}.registration-section{flex-direction:column;gap:1rem}}
.event-list-container{padding:1rem 2rem 2rem}@media (max-width:768px){.event-list-container{padding:.5rem}}.event-list-container h2{margin-top:0;margin-bottom:2rem;font-size:1.8rem}.event-list-container p{color:var(--secondary-text-color);margin-bottom:2rem;font-size:1rem}.auth-forms-container{justify-content:center;margin-bottom:2rem;display:flex}.auth-form{background:#fff;border-radius:12px;width:100%;max-width:400px;padding:2rem;box-shadow:0 2px 8px #0000001a}.auth-form h3{color:#333;margin:0 0 .5rem;font-size:1.5rem}.auth-form p{color:#666;margin:0 0 1.5rem}.auth-form form{flex-direction:column;gap:1rem;display:flex}.auth-form input{border:1px solid #ddd;border-radius:6px;padding:.75rem;font-size:1rem}.auth-form input:focus{border-color:#8a2be2;outline:none}.auth-submit-btn{color:#fff;cursor:pointer;background-color:#8a2be2;border:none;border-radius:6px;padding:.75rem;font-size:1rem;font-weight:600;transition:background-color .2s}.auth-submit-btn:hover{background-color:#7a1fd2}.auth-switch-btn{color:#8a2be2;cursor:pointer;background:0 0;border:none;padding:.5rem;font-size:.9rem;text-decoration:underline}.auth-cancel-btn{color:#666;cursor:pointer;background:0 0;border:none;padding:.5rem;font-size:.9rem}.events-calendar-container{flex-direction:column;gap:1rem;display:flex}.event-add-btn{color:#fff;cursor:pointer;background:#ff9800;border:none;border-radius:8px;align-items:center;gap:.5rem;width:fit-content;padding:.6rem 1.25rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.event-add-btn:hover{background:#f57c00;transform:translateY(-1px)}.events-list-vertical{flex-direction:column;gap:1.5rem;display:flex}.event-add-card{background-color:var(--card-background-rgb);cursor:pointer;color:#8a2be2;border:2px dashed #8a2be280;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;min-height:150px;transition:all .2s;display:flex}.event-add-card:hover{background-color:#8a2be20d;border-color:#8a2be2cc;transform:translateY(-2px)}.event-add-card p{margin:.5rem 0 0;font-size:1rem;font-weight:600}.no-events-message{text-align:center;color:#666;margin:3rem 0;font-size:1.2rem}.event-auth-terms{align-items:flex-start;gap:.5rem;display:flex}.event-auth-terms input[type=checkbox]{cursor:pointer;flex-shrink:0;width:16px;height:16px;margin-top:.25rem}.event-auth-terms label{color:#666;cursor:pointer;font-size:.9rem;line-height:1.5}.event-auth-terms label a{color:#8a2be2;font-weight:500;text-decoration:none}.event-auth-terms label a:hover{text-decoration:underline}.event-auth-remember{align-items:center;gap:.5rem;display:flex}.event-auth-remember input[type=checkbox]{cursor:pointer;flex-shrink:0;width:16px;height:16px}.event-auth-remember label{color:#666;cursor:pointer;font-size:.9rem}.calendar-events-cards-section{border-top:1px solid #8a2be226;margin-top:2rem;padding-top:1.5rem}.calendar-events-cards-section h3{color:var(--primary-text-color);margin-bottom:.5rem;font-size:1.4rem}.calendar-events-description{color:var(--secondary-text-color);margin-bottom:1.5rem;font-size:.9rem}.calendar-events-list{flex-direction:column;gap:1rem;display:flex}.future-events-section{border-top:1px solid #8a2be233;margin-top:3rem;padding-top:2rem}.future-events-section h3{color:var(--primary-text-color);margin-bottom:.5rem;font-size:1.5rem}.future-events-description{color:var(--secondary-text-color);margin-bottom:1.5rem;font-size:.95rem}.future-events-list{flex-direction:column;gap:1rem;display:flex}
.container{flex-direction:column;min-height:100vh;display:flex}.mainContent{flex:1;display:flex}.content{background-color:#f9f9f9;flex:1;margin-left:250px;padding:2rem;transition:all .3s;position:relative}.content-full{max-width:100%;margin-left:60px}@media (max-width:768px){.content{margin-left:0;padding:1rem}.content-full{margin-left:0}}
