.user-menu{background-color:rgb(var(--card-background-rgb));border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-card,14px);z-index:9999;word-wrap:break-word;overflow-wrap:break-word;pointer-events:auto;min-width:280px;max-width:280px;max-height:calc(100vh - 40px);padding:1.5rem;position:fixed;top:10px;right:60px;overflow-y:auto;box-shadow:0 12px 40px #00000080}.user-menu-main{flex-direction:column;gap:1rem;display:flex}.user-menu-button{color:#f4f4f5;cursor:pointer;background-color:#141418;border:2px solid #333;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:background-color .2s,color .2s}.user-menu-button:hover{color:#f4f4f5;background-color:#27272a}.user-menu-form{flex-direction:column;display:flex}.user-menu-back-button{cursor:pointer;background-color:#0000;border:none;border-radius:4px;justify-content:center;align-self:flex-start;align-items:center;margin-bottom:1rem;padding:.5rem;transition:background-color .2s;display:flex}.user-menu-back-button:hover{background-color:#1a1a1e}.user-menu-form form{flex-direction:column;gap:1rem;display:flex}.user-menu-input{border:1px solid var(--border-color,#e2e8f0);border-radius:8px;padding:.75rem;font-size:.95rem;transition:border-color .2s}.user-menu-input:focus{border-color:var(--accent-color,#7c3aed);outline:none}.user-menu-forgot-password-link{text-align:center;margin-top:1rem}.user-menu-forgot-password-link span{color:#2196f3;cursor:pointer;font-size:.9rem;text-decoration:underline}.user-menu-forgot-password-link span:hover{color:#0d7adc}.user-menu-forgot-info{color:#a1a1aa;margin-bottom:1rem;font-size:.9rem;line-height:1.5}.user-menu-success{color:#4ade80;text-align:center;background-color:#22c55e26;border:1px solid #22c55e4d;border-radius:4px;margin-bottom:1rem;padding:.75rem;font-size:.9rem}.user-menu-submit-button{background:var(--accent-gradient,linear-gradient(135deg, #7c3aed, #6d28d9));color:#fff;cursor:pointer;border:none;border-radius:8px;margin-top:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:filter .2s}.user-menu-submit-button:hover{filter:brightness(1.15)}.user-menu-submit-button:disabled{cursor:not-allowed;background-color:#71717a}.user-menu-authenticated{flex-direction:column;gap:1rem;display:flex}.user-menu-greeting-container{flex-direction:column;gap:.5rem;display:flex}.user-menu-greeting{color:#f4f4f5;word-wrap:break-word;overflow-wrap:break-word;margin:0;font-size:.95rem;line-height:1.5}.user-menu-badge{flex-direction:row;justify-content:center;align-items:center;display:flex}.user-menu-logout-button{color:#fff;background-color:#d32f2f;border-color:#d32f2f}.user-menu-logout-button:hover{background-color:#b71c1c;border-color:#b71c1c}.admin-mode-selector{gap:.5rem;display:flex}.mode-button{border:2px solid var(--border-color,#e2e8f0);color:#a1a1aa;cursor:pointer;background-color:#141418;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.mode-button:hover:not(.active){background-color:#1a1a1e;border-color:#71717a}.mode-button.active{color:#fff;cursor:default;background-color:#1976d2;border-color:#1976d2}.mode-button.active:hover{background-color:#1565c0;border-color:#1565c0}.user-menu-admin-toggle{color:#fff;background-color:#1976d2;border-color:#1976d2;justify-content:center;align-items:center;gap:.5rem;display:flex}.user-menu-admin-toggle:hover{background-color:#1565c0;border-color:#1565c0}.user-menu-admin-toggle.active{background-color:#ff9800;border-color:#ff9800}.user-menu-admin-toggle.active:hover{background-color:#f57c00;border-color:#f57c00}.user-menu-error{color:#ef5350;word-wrap:break-word;overflow-wrap:break-word;white-space:normal;background-color:#c628281f;border:1px solid #ef44444d;border-radius:8px;margin-bottom:.5rem;padding:.75rem;font-size:.9rem}.user-menu-password-error{color:#ef5350;background-color:#c628281f;border:1px solid #ef44444d;border-radius:4px;margin-top:-.5rem;padding:.5rem;font-size:.85rem}.user-menu-terms{align-items:flex-start;gap:.5rem;margin-top:-.25rem;display:flex}.user-menu-terms input[type=checkbox]{cursor:pointer;flex-shrink:0;width:16px;height:16px;margin-top:.25rem}.user-menu-terms label{color:#a1a1aa;cursor:pointer;font-size:.9rem;line-height:1.5}.user-menu-terms label a{color:#2196f3;font-weight:500;text-decoration:none}.user-menu-terms label a:hover{text-decoration:underline}.user-menu-remember{align-items:center;gap:.5rem;display:flex}.user-menu-remember input[type=checkbox]{cursor:pointer;flex-shrink:0;width:16px;height:16px}.user-menu-remember label{color:#a1a1aa;cursor:pointer;font-size:.9rem}.view-mode-selector-three{background-color:#1a1a1e;border-radius:8px;gap:.4rem;padding:.5rem;display:flex}.view-mode-selector-four{background-color:#1a1a1e;border-radius:8px;flex-wrap:wrap;gap:.4rem;padding:.5rem;display:flex}.view-mode-selector-four .view-mode-btn{flex:calc(50% - .2rem)}.view-mode-selector-five{background-color:#1a1a1e;border-radius:8px;flex-wrap:wrap;gap:.4rem;padding:.5rem;display:flex}.view-mode-selector-five .view-mode-btn{flex:calc(33.33% - .3rem)}.view-mode-btn{border:2px solid var(--border-color,#e2e8f0);color:#a1a1aa;cursor:pointer;background-color:#141418;border-radius:8px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.25rem;min-width:0;padding:.6rem .4rem;font-size:.75rem;font-weight:600;transition:all .2s;display:flex}.view-mode-btn span{white-space:nowrap;font-size:.7rem}.view-mode-btn:hover:not(.active){background-color:#1a1a1e;border-color:#71717a;transform:translateY(-2px)}.view-mode-btn.active{color:#fff;background-color:#1976d2;border-color:#1976d2;box-shadow:0 2px 6px #1976d266}.view-mode-btn.active.vip{color:#1a1a2e;background:linear-gradient(135deg,gold 0%,#ffed4e 100%);border-color:gold;box-shadow:0 2px 6px #ffd70080}.view-mode-btn.active.vip-plus{color:#fff;background:linear-gradient(135deg,#7c3aed 0%,#a855f7 50%,#c084fc 100%);border-color:#7c3aed;box-shadow:0 2px 6px #7c3aed80}.view-mode-btn.active.b2b{color:#053b3a;background:linear-gradient(135deg,#0ea5a4 0%,#22c55e 100%);border-color:#0ea5a4;box-shadow:0 2px 6px #0ea5a459}
.vip-badge{white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid;border-radius:12px;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.vip-badge-small{padding:.15rem .4rem;font-size:.6rem}.vip-badge-medium{padding:.25rem .6rem;font-size:.8rem}.vip-badge-large{padding:.4rem .9rem;font-size:.95rem}.vip-badge-vip{color:#856404;background:linear-gradient(135deg,gold,#ffed4e);border-color:#ffc107;box-shadow:0 2px 8px #ffd7004d}.vip-badge-admin{color:#fff;background:linear-gradient(135deg,#dc3545,#ff4757);border-color:#bd2130;box-shadow:0 2px 8px #dc35454d}.vip-badge-b2b{color:#073b45;background:linear-gradient(135deg,#17a2b8,#22c1dc);border-color:#0f7e90;box-shadow:0 2px 8px #17a2b840}
.sidebar{z-index:1001;overscroll-behavior:contain;border-right:none;flex-direction:column;width:min(280px,85vw);max-width:320px;height:100dvh;padding:0;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:0 0 48px #655bc940}.sidebar.sidebar-drawer-open{transform:translate(0);height:100dvh!important;top:0!important}.sidebar-header{flex-shrink:0;padding:0 1.5rem 1.5rem}.sidebar-scrollable{scrollbar-width:thin;scrollbar-color:#ffffff40 transparent;overscroll-behavior:contain;flex:1;padding:0 1.5rem;overflow:hidden auto}.sidebar-scrollable::-webkit-scrollbar{width:5px}.sidebar-scrollable::-webkit-scrollbar-track{background:0 0}.sidebar-scrollable::-webkit-scrollbar-thumb{background-color:#ffffff40;border-radius:3px}.sidebar-scrollable::-webkit-scrollbar-thumb:hover{background-color:#fff6}.sidebar-collapsed{width:60px}.sidebar-collapsed .sidebar-header{padding:.6rem}.sidebar-collapsed .sidebar-scrollable,.sidebar-collapsed .sidebar-footer{padding:0 .6rem}.sidebar nav,.sidebar .sidebar-categories,.sidebar .sidebar-store-name,.sidebar .vip-badge,.sidebar .sidebar-footer{opacity:1;visibility:visible;transition:opacity .2s .3s,visibility 0s linear .3s}.sidebar-collapsed nav,.sidebar-collapsed .sidebar-categories,.sidebar-collapsed .sidebar-store-name,.sidebar-collapsed .vip-badge,.sidebar-collapsed .sidebar-footer{opacity:0;visibility:hidden;transition:opacity,visibility linear}.sidebar-header-content{align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem 0;display:flex}.sidebar-store-name{-webkit-user-select:none;user-select:none;cursor:pointer;align-items:center;padding-left:6px;display:flex}.sidebar-store-name .cg-logo,.sidebar-store-name .cg-logo__text{gap:.6rem}.sidebar-store-name .cg-logo__name{letter-spacing:.22em;font-size:.95rem}.sidebar-toggle-button{color:#fff;cursor:pointer;background-color:#0000;border:none;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;padding:0;transition:background-color .2s;display:none}.sidebar-toggle-button:hover{background-color:#ffffff26}.sidebar-codegeek,.sidebar-codegeek.sidebar-collapsed{background:radial-gradient(70% 30% at 50% 0%, #655bc938, transparent 70%), linear-gradient(135deg, #0a5fe01a, transparent 45%, transparent 60%, #cb6ce614), var(--cg-surface-2,#0f1016);border-right:1px solid var(--cg-line-soft,#8c6edc26)}.sidebar nav ul{margin:0;padding:0;list-style:none}.sidebar-navItem{cursor:pointer;color:#ffffffd9;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:12px;align-items:center;margin-bottom:.35rem;padding:.75rem 1rem;font-weight:500;transition:all .2s;display:flex}.sidebar-navItem:hover{color:#fff;background-color:#655bc924}.sidebar-navItem.active{color:#fff;background:linear-gradient(115deg,#0a5fe059 12%,#655bc959 50%,#cb6ce64d 88%);border-color:#8c6edc73;font-weight:700}.sidebar-navItem svg{opacity:.9;margin-right:.75rem}.sidebar-categories{margin-top:1.5rem}.categories-header{-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:0 1rem;display:flex}.categories-header h3{text-transform:uppercase;letter-spacing:.08em;color:#ffffff80;margin:0;font-size:.8rem;font-weight:600}.category-add-btn{color:#fff;cursor:pointer;background-color:#ffffff26;border:none;border-radius:8px;justify-content:center;align-items:center;width:24px;height:24px;transition:background-color .2s;display:flex}.category-add-btn:hover{background-color:#ffffff40}.sidebar-categories ul{margin:0;padding:0;list-style:none}.category-item{cursor:pointer;border-radius:var(--radius-button,10px);color:#fffc;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.95rem;transition:all .2s;display:flex}.category-item.subcategory{opacity:.85;cursor:pointer;border-left:2px solid #8c6edc59;border-radius:0 8px 8px 0;margin-bottom:2px;margin-left:1rem;font-size:.9rem}.category-item.subcategory.active{border-left:2px solid #cb6ce6}.category-main{cursor:pointer;flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.category-main span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.category-expand-btn{color:#fff9;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex}.category-expand-btn:hover{color:#fff;transform:scale(1.2)}.category-item:hover{background-color:#655bc924}.category-item.active{color:#fff;background-color:#655bc938;font-weight:700}.category-item span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.category-item svg{flex-shrink:0}.category-actions{opacity:0;flex-shrink:0;gap:.25rem;transition:opacity .2s;display:flex}.category-item:hover .category-actions{opacity:1}.category-action-btn{color:#fff;cursor:pointer;background-color:#0000;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.25rem;transition:background-color .2s;display:flex}.category-action-btn:hover{background-color:#fff3}.category-action-btn.edit:hover{background-color:#60a5fa80}.category-action-btn.delete:hover{background-color:#ef444480}.category-action-btn.add-sub:hover{background-color:#22c55e80}.category-drag-handle{cursor:grab;color:#ffffff80;flex-shrink:0;align-items:center;padding:.15rem;display:flex}.category-drag-handle:active{cursor:grabbing}.category-item.category-dragging{opacity:.6}.category-item.category-drag-over{background-color:#fff3;outline:1px dashed #fff6}.category-edit-form{align-items:center;gap:.25rem;width:100%;display:flex}.category-edit-form input{color:#fff;background-color:#ffffff1a;border:1px solid #ffffff40;border-radius:8px;flex:1;min-width:0;padding:.25rem .5rem;font-size:.9rem}.category-edit-form input::placeholder{color:#ffffff80}.category-edit-form button{color:#fff;cursor:pointer;background-color:#ffffff26;border:none;border-radius:4px;flex-shrink:0;width:24px;min-width:24px;height:24px;font-size:.9rem;transition:background-color .2s}.category-edit-form button:hover{background-color:#ffffff40}.category-item.game-editing{align-items:flex-start;min-height:70px;padding:.75rem 1rem}.game-edit-form{width:100%}.game-edit-inputs{flex-direction:column;gap:.5rem;width:100%;display:flex}.game-edit-inputs input{color:#fff;background-color:#ffffff1a;border:1px solid #ffffff40;border-radius:8px;width:100%;padding:.35rem .5rem;font-size:.9rem}.game-edit-inputs input::placeholder{color:#ffffff80}.game-edit-format-row{align-items:center;gap:.5rem;display:flex}.game-edit-format-row input{flex:1}.game-edit-buttons{flex-shrink:0;gap:.25rem;display:flex}.game-edit-buttons button{color:#fff;cursor:pointer;background-color:#ffffff26;border:none;border-radius:4px;flex-shrink:0;width:24px;min-width:24px;height:24px;font-size:.9rem;transition:background-color .2s}.game-edit-buttons button:hover{background-color:#ffffff40}.sidebar-footer{text-align:center;border-top:1px solid var(--cg-line-soft);flex-shrink:0;padding:1rem 1.5rem}.sidebar-footer-links{justify-content:center;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.footer-link{color:#fff9;font-size:.8rem;text-decoration:none;transition:color .2s}.footer-link:hover{color:#ffffffe6;text-decoration:underline}.footer-separator{color:#ffffff4d;font-size:.8rem}.footer-copyright{color:#ffffff80;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:500}@media (max-width:768px){.sidebar{padding-left:env(safe-area-inset-left);padding-bottom:env(safe-area-inset-bottom)}.sidebar-header{padding-top:max(.5rem, env(safe-area-inset-top,0px))}.sidebar-collapsed.sidebar-drawer-open{transform:translate(0)}.sidebar-collapsed nav,.sidebar-collapsed .sidebar-categories,.sidebar-collapsed .sidebar-store-name,.sidebar-collapsed .vip-badge,.sidebar-collapsed .sidebar-footer{opacity:1;visibility:visible}.sidebar-collapsed .sidebar-header{padding:1.5rem}.sidebar-collapsed .sidebar-scrollable{padding:0 1.5rem}.sidebar-collapsed .sidebar-footer{padding:1rem 1.5rem}.sidebar-store-name{text-align:center;width:100%;padding-left:0}.sidebar-header-content{justify-content:center}.sidebar-navItem{min-height:44px;padding:.85rem 1rem}}.sidebar-overlay{z-index:1000;-webkit-backdrop-filter:blur(6px);background:#0f172a80;animation:.25s overlay-fade-in;position:fixed;inset:0}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}
.modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;background-color:#0f172a99;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.delete-category-modal{border-radius:var(--radius-card,14px);background-color:#141418;flex-direction:column;width:90%;max-width:700px;max-height:90vh;display:flex;box-shadow:0 10px 40px #0000004d}.modal-header{border-bottom:1px solid #7c3aed33;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-header h2{color:var(--primary-text-color);margin:0;font-size:1.5rem}.close-btn{color:var(--primary-text-color);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.5rem;transition:background-color .2s;display:flex}.close-btn:hover{background-color:#7c3aed1a}.modal-content{flex:1;padding:1.5rem;overflow-y:auto}.warning-text{color:var(--primary-text-color);background-color:#ffa5001a;border-left:4px solid orange;border-radius:4px;margin-bottom:1.5rem;padding:1rem}.action-selector h3{color:var(--primary-text-color);margin-bottom:1rem;font-size:1.2rem}.action-option{border-radius:var(--radius-button,10px);cursor:pointer;border:2px solid #7c3aed33;align-items:center;margin-bottom:.75rem;padding:1rem;transition:all .2s;display:flex}.action-option:hover{background-color:#7c3aed0d;border-color:#7c3aed80}.action-option input[type=radio]{cursor:pointer;width:18px;height:18px;margin-right:.75rem}.action-option span{color:var(--primary-text-color);flex:1;font-size:1rem}.action-details{margin-top:.75rem;margin-bottom:1rem;margin-left:2rem}.category-input,.category-select,.product-category-select,.product-new-category-input{background-color:var(--background-rgb);width:100%;color:var(--primary-text-color);border:2px solid #7c3aed4d;border-radius:8px;padding:.75rem;font-size:1rem}.category-input:focus,.category-select:focus,.product-category-select:focus,.product-new-category-input:focus{border-color:#7c3aedb3;outline:none}.individual-list{max-height:300px;overflow-y:auto}.individual-list h4{color:var(--primary-text-color);margin-bottom:1rem}.product-assignment{background-color:#7c3aed0d;border-radius:8px;margin-bottom:.75rem;padding:1rem}.product-name{color:var(--primary-text-color);margin-bottom:.75rem;font-weight:600;display:block}.assignment-controls{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.product-category-select{flex:1;min-width:150px}.or-text{color:var(--secondary-text-color);white-space:nowrap;font-style:italic}.product-new-category-input{flex:1;min-width:150px}.modal-footer{border-top:1px solid #7c3aed33;justify-content:flex-end;gap:1rem;padding:1.5rem;display:flex}.btn-cancel,.btn-confirm{cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.btn-cancel{color:var(--primary-text-color);background-color:#0000;border:2px solid #7c3aed4d}.btn-cancel:hover:not(:disabled){background-color:#7c3aed1a}.btn-confirm{background-color:var(--accent-color,#7c3aed);color:#fff}.btn-confirm:hover:not(:disabled){background-color:var(--accent-hover,#6d28d9);transform:translateY(-1px)}.btn-cancel:disabled,.btn-confirm:disabled{opacity:.5;cursor:not-allowed}
