@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}:root{--primary:#2563eb;--secondary:#f43f5e;--accent:#2563eb;--dark-bg:#f8fafc;--card-bg:#fff;--card-hover:#eff6ff;--text:#0f172a;--text-secondary:#64748b;--border:#e2e8f0;--color-surface:#fff;--color-text-primary:#0f172a;--color-text-secondary:#64748b;--color-primary:#2563eb;--color-border:#e2e8f0;--color-shadow:#0f172a0f;--success:#10b981;--warning:#f59e0b;--error:#f43f5e;--transition-smooth:.3s ease}body.variant-2{--primary:#53bdeb;--secondary:#25d366;--accent:#53bdeb;--dark-bg:#111b21;--card-bg:#202c33;--card-hover:#2a3942;--text:#e9edef;--text-secondary:#8696a0;--border:#2a3942;--color-surface:#1f2c34;--color-text-primary:#e9edef;--color-text-secondary:#8696a0;--color-primary:#53bdeb;--color-border:#2a3942;--color-shadow:#00000073;--success:#25d366;--warning:#d29922;--error:#da3633;--transition-smooth:.3s ease}.auth-card{background-color:var(--card-bg);color:var(--text);transition:background-color var(--transition-smooth),color var(--transition-smooth);box-shadow:0 10px 30px #0000004d}.auth-button{background-color:var(--primary);color:#fff;transition:all var(--transition-smooth);border:none}.status-success,.badge-success{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.status-success,.badge-success{background-color:color-mix(in srgb,var(--success)15%,var(--card-bg))}}.status-success,.badge-success{color:var(--success);border:1px solid var(--success)}@supports (color:color-mix(in lab,red,red)){.status-success,.badge-success{border:1px solid color-mix(in srgb,var(--success)30%,var(--border))}}.status-warning,.badge-warning{background-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.status-warning,.badge-warning{background-color:color-mix(in srgb,var(--warning)15%,var(--card-bg))}}.status-warning,.badge-warning{color:var(--warning);border:1px solid var(--warning)}@supports (color:color-mix(in lab,red,red)){.status-warning,.badge-warning{border:1px solid color-mix(in srgb,var(--warning)30%,var(--border))}}.status-error,.badge-error{background-color:var(--error)}@supports (color:color-mix(in lab,red,red)){.status-error,.badge-error{background-color:color-mix(in srgb,var(--error)15%,var(--card-bg))}}.status-error,.badge-error{color:var(--error);border:1px solid var(--error)}@supports (color:color-mix(in lab,red,red)){.status-error,.badge-error{border:1px solid color-mix(in srgb,var(--error)30%,var(--border))}}.status-info,.badge-info{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.status-info,.badge-info{background-color:color-mix(in srgb,var(--primary)15%,var(--card-bg))}}.status-info,.badge-info{color:var(--primary);border:1px solid var(--primary)}@supports (color:color-mix(in lab,red,red)){.status-info,.badge-info{border:1px solid color-mix(in srgb,var(--primary)30%,var(--border))}}@media(prefers-contrast:more){body.variant-2{--text:#fff;--text-secondary:#d0d0d0}}@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.container{flex-direction:column;min-height:100vh;display:flex}.app-wrapper{background-color:var(--dark-bg);height:100%;color:var(--text);flex-direction:column;display:flex;overflow:hidden}.main-wrapper{flex:1;height:100%;display:flex}.main-content{background-color:var(--dark-bg);flex:1;padding:32px;overflow-y:auto}.page{display:none}.page.active{display:block}.sidebar{background-color:var(--card-bg);border-right:1px solid var(--border);width:250px;height:100%;padding:24px 0;overflow-y:auto;box-shadow:2px 0 8px #0003}.sidebar nav ul{list-style:none}.sidebar nav a{color:var(--text-secondary);border-left:3px solid #0000;padding:14px 20px;font-size:.95em;font-weight:500;text-decoration:none;transition:all .3s;display:block}.sidebar nav a:hover{color:var(--primary);border-left-color:var(--primary);background:#54afff14}.sidebar nav a.active{color:var(--primary);border-left-color:var(--primary);background:#54afff1f;font-weight:600}.main-content::-webkit-scrollbar{width:10px}.main-content::-webkit-scrollbar-track{background:var(--dark-bg)}.main-content::-webkit-scrollbar-thumb{background:var(--primary);border-radius:5px}.main-content::-webkit-scrollbar-thumb:hover{background:var(--secondary)}@media(max-width:768px){.sidebar{width:200px}.main-content{padding:20px}}.footer{background:var(--card-bg);text-align:center;border-top:1px solid var(--border);color:var(--text-secondary);margin-top:auto;padding:20px 30px;font-size:.9em}.header{background-color:var(--primary);z-index:100;justify-content:space-between;align-items:center;padding:24px 30px;display:flex;position:sticky;top:0;box-shadow:0 8px 24px #0000004d}.header h1{color:#fff;align-items:center;gap:12px;margin:0;font-size:1.6em;font-weight:700;display:flex}.header-right{align-items:center;gap:16px;display:flex}.user-info{color:#fff;cursor:pointer;align-items:center;gap:12px;font-weight:500;transition:all .3s;display:flex}.user-info:hover{opacity:.8}.user-avatar{color:#fff;background:#fff3;border:2px solid #fff6;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:.9em;font-weight:700;display:flex}.btn-logout{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:999px;padding:.5rem 1rem;font-weight:600;transition:background .3s}.dashboard-title{color:var(--text);margin-bottom:32px;font-size:1.8em;font-weight:700}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:40px;display:grid}.stat-card{background:var(--card-bg);border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:12px;padding:28px;transition:all .3s}.stat-card:hover{border-color:var(--primary);background:var(--card-hover);transform:translateY(-4px);box-shadow:0 12px 32px #0000004d}.stat-card.accent-secondary{border-left-color:var(--secondary)}.stat-card.accent-secondary:hover{border-color:var(--secondary)}.stat-card.accent-accent{border-left-color:var(--accent)}.stat-card.accent-accent:hover{border-color:var(--accent)}.stat-card-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:20px;font-size:.85em;font-weight:600}.stat-item{justify-content:space-between;align-items:center;margin-bottom:20px;font-size:.95em;display:flex}.stat-item:last-child{margin-bottom:0}.stat-item-label{color:var(--text-secondary);font-weight:500}.stat-item-value{color:var(--primary);font-size:1.8em;font-weight:700}.stat-card.accent-secondary .stat-item-value{color:var(--secondary)}.stat-card.accent-accent .stat-item-value{color:var(--accent)}.graphs-section{grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:24px;display:grid}.graph-container{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:28px;transition:all .3s}.graph-container:hover{border-color:var(--primary);box-shadow:0 12px 32px #0003}.graph-container h3{color:var(--text);margin-bottom:24px;font-size:1.1em;font-weight:600}.graph-canvas{height:320px;position:relative}@media(max-width:768px){.graphs-section,.stats-grid{grid-template-columns:1fr}}.profile-section,.settings-section{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;margin-bottom:24px;padding:28px;transition:all .3s}.profile-section:hover,.settings-section:hover{border-color:var(--primary);box-shadow:0 8px 20px #00000026}.profile-section h2,.settings-section h2{color:var(--text);margin-bottom:24px;font-size:1.3em;font-weight:600}.settings-group{margin-bottom:20px}.settings-group:last-child{margin-bottom:0}.settings-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:.95em;font-weight:500;display:block}.theme-options{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.theme-option{background:var(--dark-bg);border:2px solid var(--border);cursor:pointer;text-align:center;border-radius:8px;padding:16px;transition:all .3s}.theme-option:hover{border-color:var(--primary);background:var(--card-hover)}.theme-option.selected{background:#6dd5ff1a;border-color:#6dd5ff;box-shadow:0 0 0 2px #6dd5ff4d}.theme-preview{border:1px solid var(--border);background:linear-gradient(90deg,var(--primary)0%,var(--secondary)50%,var(--accent)100%);border-radius:6px;width:100%;height:60px;margin-bottom:12px}.theme-option-name{color:var(--text);margin-bottom:8px;font-size:.95em;font-weight:600}.theme-option-desc{color:var(--text-secondary);font-size:.85em}.profile-info{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:20px;display:grid}.profile-info-item{background:var(--dark-bg);border:1px solid var(--border);border-radius:8px;padding:16px}.profile-info-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:.85em;font-weight:600}.profile-info-value{color:var(--text);font-size:1.1em;font-weight:500}@media(max-width:768px){.theme-options,.profile-info{grid-template-columns:1fr}}.visible{visibility:visible}.static{position:static}.container{width:100%}.grid{display:grid}.table{display:table}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}:root{color:#333;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}a{color:#667eea;-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}a:hover{color:#764ba2}body{width:100%;height:100%;margin:0}#root{width:100%;height:100%}h1{line-height:1.1}button{color:#fff;cursor:pointer;background-color:#667eea;border:1px solid #0000;border-radius:4px;padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;transition:all .25s}button:hover{background-color:#764ba2;border-color:#667eea}button:focus,button:focus-visible{outline-offset:2px;outline:2px solid #667eea}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.format-toggle-group{width:-moz-fit-content;width:fit-content;margin-bottom:1rem}.format-toggle{background:#e2e8f0;border-radius:999px;grid-template-columns:repeat(2,1fr);gap:4px;width:180px;padding:4px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #0f172a14}.format-toggle-slider{background:#4f46e5;border-radius:999px;width:calc(50% - 8px);transition:transform .2s;position:absolute;top:4px;bottom:4px;left:4px}.format-toggle.digital .format-toggle-slider{transform:translate(calc(100% + 8px))}.format-toggle-option{z-index:1;text-align:center;color:#1f2937;cursor:pointer;border-radius:999px;padding:.45rem .5rem;font-size:.85rem;font-weight:600;transition:color .2s;position:relative}.format-toggle-option input{opacity:0;pointer-events:none;position:absolute}.format-toggle-option.active{color:#fff}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.public-navbar{background-color:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100}.public-navbar-content{max-width:1400px;margin:0 auto;padding:0 1.5rem;height:60px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.public-navbar-left{display:flex;align-items:center;gap:1rem}.public-navbar-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0}.public-navbar-nav{flex:1;display:flex;align-items:center;gap:1.5rem}.public-navbar-link{background:none;border:none;color:var(--color-text-primary);font-size:.95rem;font-weight:500;cursor:pointer;padding:.5rem .75rem;border-radius:6px;transition:background-color .2s}.public-navbar-link:hover{background-color:var(--color-hover)}.public-navbar-actions{display:flex;align-items:center;gap:.75rem}.public-navbar-btn{padding:.5rem 1rem;font-size:.9rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s;border:none}.public-navbar-btn-secondary{background:transparent;color:var(--color-text-primary);border:1px solid var(--color-border)}.public-navbar-btn-secondary:hover{background-color:var(--color-hover)}.public-navbar-btn-primary{background-color:var(--color-primary);color:#fff}.public-navbar-btn-primary:hover{background-color:var(--color-primary-hover)}.notification-bell-container{position:relative}.notification-bell-btn{position:relative;background:none;border:none;font-size:1.25rem;cursor:pointer;padding:.5rem;border-radius:50%;transition:background-color .2s;display:flex;align-items:center;justify-content:center}.notification-bell-btn:hover{background-color:var(--hover-bg, rgba(0, 0, 0, .05))}.notification-badge{position:absolute;top:2px;right:2px;background-color:var(--error, #f43f5e);color:#fff;font-size:.65rem;font-weight:600;padding:.1rem .35rem;border-radius:10px;min-width:18px;text-align:center}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:380px;max-width:calc(100vw - 2rem);background:var(--bg-primary, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:8px;box-shadow:0 8px 24px #0000001f;z-index:1000;max-height:500px;display:flex;flex-direction:column}.notification-header{padding:1rem;border-bottom:1px solid var(--border, #e5e7eb);display:flex;justify-content:space-between;align-items:center}.notification-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary, #111827)}.notification-header-actions{display:flex;gap:.5rem}.notification-action-btn{background:none;border:none;color:var(--primary, #3b82f6);font-size:.75rem;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:background-color .2s}.notification-action-btn:hover{background-color:var(--hover-bg, rgba(59, 130, 246, .1))}.notification-list{overflow-y:auto;max-height:400px}.notification-empty{padding:3rem 1rem;text-align:center;color:var(--text-secondary, #6b7280)}.notification-empty-icon{font-size:3rem;display:block;margin-bottom:.5rem;opacity:.5}.notification-empty p{margin:0;font-size:.875rem}.notification-item{display:flex;gap:.75rem;padding:1rem;border-bottom:1px solid var(--border, #e5e7eb);cursor:pointer;transition:background-color .2s;position:relative}.notification-item:hover{background-color:var(--hover-bg, rgba(0, 0, 0, .02))}.notification-item:last-child{border-bottom:none}.notification-item--unread{background-color:var(--unread-bg, rgba(59, 130, 246, .05))}.notification-item--unread:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background-color:var(--primary, #3b82f6)}.notification-icon{font-size:1.5rem;flex-shrink:0}.notification-content{flex:1;min-width:0}.notification-title-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem}.notification-title{font-weight:600;font-size:.875rem;color:var(--text-primary, #111827)}.notification-status{font-size:.7rem;padding:.15rem .5rem;border-radius:12px;font-weight:600;white-space:nowrap}.notification-status--enqueued{background-color:#fef3c7;color:#92400e}.notification-status--processing{background-color:#dbeafe;color:#1e40af}.notification-status--succeeded{background-color:#d1fae5;color:#065f46}.notification-status--failed{background-color:#fee2e2;color:#991b1b}.notification-message{margin:.25rem 0;font-size:.8rem;color:var(--text-secondary, #6b7280);line-height:1.4}.notification-time{font-size:.7rem;color:var(--text-tertiary, #9ca3af)}.notification-remove-btn{background:none;border:none;color:var(--text-tertiary, #9ca3af);cursor:pointer;padding:.25rem;border-radius:4px;font-size:.875rem;flex-shrink:0;opacity:0;transition:opacity .2s,background-color .2s}.notification-item:hover .notification-remove-btn{opacity:1}.notification-remove-btn:hover{background-color:var(--hover-bg, rgba(0, 0, 0, .1));color:var(--text-primary, #111827)}@media(max-width:768px){.notification-dropdown{width:calc(100vw - 2rem);right:1rem}}.theme-selector{padding:1.5rem .75rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.75rem;margin-top:auto}.theme-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.theme-btn{padding:0;border-radius:6px;border:2px solid rgba(0,0,0,.2);background-color:var(--card-hover);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-height:40px}.theme-btn:hover{border-color:#0006;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.theme-btn.active{border-color:var(--border);box-shadow:0 0 0 2px var(--primary),0 4px 16px var(--color-shadow)}.theme-btn-icon{width:1.25rem;height:1.25rem;color:var(--text-secondary);transition:color .2s ease,transform .2s ease;flex-shrink:0}.theme-btn:hover .theme-btn-icon{transform:scale(1.15);color:var(--text)}.theme-btn.active .theme-btn-icon{transform:scale(1.1);color:var(--primary)}.profile-dropdown-menu .theme-selector{padding:.5rem 1rem;border-top:none;margin-top:0;flex-direction:row;align-items:center;gap:.5rem}.profile-dropdown-menu .theme-buttons{display:flex;gap:.25rem}.profile-dropdown-menu .theme-btn{background:none;border:none;box-shadow:none;min-height:unset;padding:.25rem;border-radius:4px}.profile-dropdown-menu .theme-btn:hover{background:none;border:none;box-shadow:none;transform:none}.profile-dropdown-menu .theme-btn.active{background:none;border:none;box-shadow:none}@media(max-width:640px){.theme-buttons{grid-template-columns:repeat(2,1fr)}.theme-btn{min-height:36px}}.search-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--card-bg, #fff);border:1px solid var(--border, #e5e7eb);border-radius:8px;box-shadow:0 10px 25px #00000026;z-index:1000;overflow:hidden;animation:slideDown .15s ease-out;max-height:380px;overflow-y:auto}.search-dropdown-loading,.search-dropdown-empty{padding:.875rem 1rem;color:var(--text-secondary, #64748b);font-size:.85rem}.search-no-results{margin:0 0 .625rem;color:var(--text-secondary, #64748b);font-size:.85rem}.search-add-game-btn{display:flex;align-items:center;gap:.375rem;width:100%;padding:.5rem .75rem;background:none;border:1px dashed var(--border, #e5e7eb);border-radius:6px;color:var(--primary, #2563eb);cursor:pointer;font-size:.85rem;font-family:inherit;transition:background .15s}.search-add-game-btn:hover{background:#2563eb0f}.search-results-list{list-style:none;margin:0;padding:.375rem 0}.search-results-list li{display:contents}.search-result-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.5rem .875rem;background:none;border:none;cursor:pointer;text-align:left;font-family:inherit;color:var(--text, #1f2937);transition:background .12s}.search-result-item:hover{background:var(--hover-bg, rgba(0, 0, 0, .04))}.search-result-img{width:32px;height:44px;border-radius:4px;overflow:hidden;flex-shrink:0;background:var(--border, #e5e7eb);display:flex;align-items:center;justify-content:center}.search-result-img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.search-result-img-placeholder{font-size:1.1rem}.search-result-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.search-result-title{font-size:.875rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-platform{font-size:.75rem;color:var(--text-secondary, #64748b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.add-platform-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.add-platform-modal{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a;width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column}.add-platform-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.add-platform-modal-header h2{margin:0;font-size:20px;font-weight:600;color:#1f2937}.add-platform-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.add-platform-modal-close:hover{background-color:#f3f4f6}.add-platform-modal-body{padding:24px;display:flex;flex-direction:column;gap:16px;flex:1;overflow-y:auto}.add-platform-modal-error{padding:12px;background-color:#fee2e2;border:1px solid #fecaca;border-radius:4px;color:#991b1b;font-size:14px}.add-platform-search-input{padding:12px;border:1px solid #d1d5db;border-radius:4px;font-size:16px;transition:border-color .2s,box-shadow .2s}.add-platform-search-input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.add-platform-search-input:disabled{background-color:#f9fafb;color:#9ca3af;cursor:not-allowed}.add-platform-results{flex:1;display:flex;flex-direction:column;min-height:200px}.add-platform-loading,.add-platform-empty{display:flex;align-items:center;justify-content:center;height:100%;color:#6b7280;font-size:14px;margin:0}.add-platform-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;overflow-y:auto}.add-platform-list-item{display:flex}.add-platform-list-button{flex:1;padding:12px;background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;text-align:left;display:flex;gap:12px;align-items:center;transition:all .2s;font-size:14px}.add-platform-list-button:hover:not(:disabled){background-color:#f3f4f6;border-color:#4f46e5}.add-platform-list-button:active:not(:disabled){background-color:#ede9fe}.add-platform-list-button:disabled{opacity:.6;cursor:not-allowed}.add-platform-list-image{width:50px;height:70px;-o-object-fit:cover;object-fit:cover;border-radius:3px;flex-shrink:0}.add-platform-list-content{display:flex;flex-direction:column;gap:4px;flex:1}.add-platform-list-name{font-weight:500;color:#1f2937}.add-platform-list-details{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.add-platform-list-abbrev{font-size:12px;color:#6b7280;background-color:#f3f4f6;padding:2px 8px;border-radius:3px}.add-platform-list-brand{font-size:12px;color:#1e40af;background-color:#dbeafe;padding:2px 8px;border-radius:3px;font-weight:500}.add-platform-list-category{font-size:12px;color:#065f46;background-color:#d1fae5;padding:2px 8px;border-radius:3px;font-weight:500}.loading-spinner-overlay{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;z-index:100;pointer-events:none}.loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spinner-rotate .75s linear infinite}.loading-spinner-text{font-size:.875rem;color:var(--text-secondary)}@keyframes spinner-rotate{to{transform:rotate(360deg)}}:root{--primary: #2563eb;--secondary: #f43f5e;--accent: #2563eb;--dark-bg: #f8fafc;--card-bg: #ffffff;--card-hover: #eff6ff;--text: #0f172a;--text-secondary: #64748b;--border: #e2e8f0;--color-surface: #ffffff;--color-text-primary: #0f172a;--color-text-secondary: #64748b;--color-primary: #2563eb;--color-border: #e2e8f0;--color-shadow: rgba(15, 23, 42, .06);--success: #10b981;--warning: #f59e0b;--error: #f43f5e;--transition-smooth: .3s ease}body.variant-2{--primary: #53BDEB;--secondary: #25D366;--accent: #53BDEB;--dark-bg: #111B21;--card-bg: #202C33;--card-hover: #2A3942;--text: #E9EDEF;--text-secondary: #8696A0;--border: #2A3942;--color-surface: #1F2C34;--color-text-primary: #E9EDEF;--color-text-secondary: #8696A0;--color-primary: #53BDEB;--color-border: #2A3942;--color-shadow: rgba(0, 0, 0, .45);--success: #25D366;--warning: #D29922;--error: #DA3633;--transition-smooth: .3s ease}html,body{background-color:var(--dark-bg);color:var(--text);transition:all var(--transition-smooth)}.app-wrapper{background-color:var(--dark-bg);color:var(--text);transition:background-color var(--transition-smooth),color var(--transition-smooth)}.app-header{background-color:var(--card-bg);color:var(--text);border-bottom:1px solid var(--border);box-shadow:0 2px 8px var(--color-shadow);transition:background-color var(--transition-smooth),border-color var(--transition-smooth),box-shadow var(--transition-smooth)}.sidebar{background-color:var(--card-bg);color:var(--text);border-right:1px solid var(--border);box-shadow:2px 0 8px var(--color-shadow);transition:background-color var(--transition-smooth),color var(--transition-smooth),border-color var(--transition-smooth)}.nav-button{color:var(--text-secondary);transition:all var(--transition-smooth)}.nav-button:hover,.nav-button.active{background-color:var(--card-hover);color:var(--text)}.auth-card{background-color:var(--card-bg);color:var(--text);box-shadow:0 10px 30px #0000004d;transition:background-color var(--transition-smooth),color var(--transition-smooth)}.auth-input{background-color:var(--card-hover);border-color:var(--border);color:var(--text);transition:all var(--transition-smooth)}.auth-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #64b5f633}.auth-button{background-color:var(--primary);color:#fff;border:none;transition:all var(--transition-smooth)}.auth-button:hover{background-color:var(--secondary)}.status-success,.badge-success{background-color:color-mix(in srgb,var(--success) 15%,var(--card-bg));color:var(--success);border:1px solid color-mix(in srgb,var(--success) 30%,var(--border))}.status-warning,.badge-warning{background-color:color-mix(in srgb,var(--warning) 15%,var(--card-bg));color:var(--warning);border:1px solid color-mix(in srgb,var(--warning) 30%,var(--border))}.status-error,.badge-error{background-color:color-mix(in srgb,var(--error) 15%,var(--card-bg));color:var(--error);border:1px solid color-mix(in srgb,var(--error) 30%,var(--border))}.status-info,.badge-info{background-color:color-mix(in srgb,var(--primary) 15%,var(--card-bg));color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border))}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media(prefers-contrast:more){body.variant-2{--text: #FFFFFF;--text-secondary: #D0D0D0}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}#root{width:100%;min-height:100%;height:100%}html,body{margin:0;padding:0;height:100%;overflow:hidden;font-family:sans-serif}.app-wrapper{display:flex;flex-direction:column;height:100%;background-color:var(--dark-bg);color:var(--text);overflow:hidden}.app-header{color:var(--text);padding:.75rem 1.5rem;box-shadow:none;display:flex;align-items:center;justify-content:space-between;gap:2rem;text-align:left;z-index:10;flex-shrink:0}.app-header-left{display:flex;align-items:center;gap:1rem}.app-header-title{margin:0;font-size:1.5rem;font-weight:700;color:var(--text);font-family:sans-serif;line-height:1.2;letter-spacing:-1px;white-space:nowrap}.app-header-right{display:flex;align-items:center;justify-content:flex-end;gap:2rem}.auth-status{margin-top:0;margin-left:auto;display:flex;justify-content:flex-end;align-items:center;gap:.75rem;font-size:.9rem;position:relative}.breadcrumb-navigation{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary)}.breadcrumb-item{display:flex;align-items:center;gap:.5rem}.breadcrumb-separator{color:var(--text-secondary)}.breadcrumb-link{background:none;border:none;color:var(--primary);cursor:pointer;font-size:.9rem;padding:0;transition:color .2s ease;font-family:inherit}.breadcrumb-link:hover{color:#1d4ed8}.breadcrumb-text{color:var(--text);font-size:.9rem}.search-bar-container{position:relative;flex:0 1 400px;display:flex;align-items:center}.search-bar-input{width:100%;padding:.5rem 2.5rem .5rem 1rem;background-color:#fff;border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9rem;transition:border-color .2s ease;font-family:inherit}.search-bar-input::-moz-placeholder{color:var(--text-secondary)}.search-bar-input::placeholder{color:var(--text-secondary)}.search-bar-input:focus{outline:none;border-color:var(--primary)}.search-bar-input:disabled{cursor:not-allowed;opacity:.7}.search-bar-icon{position:absolute;right:.75rem;font-size:.9rem;pointer-events:none;color:#64748b}.profile-menu-container{position:relative}.profile-avatar-btn{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:transform .2s ease}.profile-avatar-btn:hover{transform:scale(1.05)}.profile-avatar-btn:focus{outline:2px solid rgba(37,99,235,.4);outline-offset:2px}.profile-dropdown-menu{position:absolute;top:100%;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 25px #00000026;min-width:280px;z-index:1000;margin-top:12px;overflow:hidden;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.profile-menu-header{padding:16px;border-bottom:1px solid #f0f0f0;background-color:#fff}.profile-menu-name{margin:0;font-weight:600;font-size:14px;color:#1f2937}.profile-menu-email{margin:4px 0 0;font-size:13px;color:#6b7280}.profile-menu-divider{height:1px;background-color:#f0f0f0}.profile-menu-item{width:100%;padding:12px 16px;background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:12px;font-size:14px;color:#1f2937;transition:background-color .2s ease;text-align:left;font-family:inherit}.profile-menu-item:hover{background-color:#f9fafb}.profile-menu-item:active{background-color:#f3f4f6}.profile-menu-icon{font-size:16px;flex-shrink:0}.profile-menu-label{flex:1;font-weight:500}.profile-menu-signout{color:#f43f5e;border-top:1px solid #f0f0f0;justify-content:center;padding:12px 16px;font-weight:600}.profile-menu-signout:hover{background-color:#fff1f2}.profile-menu-signout:active{background-color:#ffe4e6}.btn-logout{padding:.5rem 1rem;border-radius:999px;border:none;background:#fff3;color:#fff;font-weight:600;cursor:pointer;transition:background .2s ease}.btn-logout:hover{background:#ffffff59}.auth-screen{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem}.auth-card{background-color:#fff;padding:2rem;border-radius:12px;box-shadow:0 10px 30px #0f172a33;width:100%;max-width:420px;text-align:left}.auth-form{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem}.auth-input{width:100%;padding:.85rem;border-radius:6px;border:1px solid var(--color-border);background-color:var(--color-surface);color:var(--color-text-primary);font-family:inherit;transition:border-color var(--transition-smooth),background-color var(--transition-smooth),color var(--transition-smooth)}.auth-input:focus{border-color:var(--color-primary);outline:none}.auth-button{padding:.85rem 1.25rem;border-radius:6px;border:none;background-color:var(--primary);color:#fff;font-weight:600;cursor:pointer;transition:background .3s ease}.auth-button:hover:not(:disabled){background-color:#1d4ed8}.auth-error{padding:.5rem .75rem;border-radius:4px;background-color:color-mix(in srgb,var(--error) 12%,var(--card-bg));color:var(--error);font-size:.9rem;border:1px solid color-mix(in srgb,var(--error) 25%,var(--border))}.auth-footer{margin-top:1rem;display:flex;justify-content:center;align-items:center;gap:.35rem;font-size:.9rem;color:#4b5563}.auth-link{background:none;border:none;color:var(--primary);font-weight:600;cursor:pointer;padding:0}.auth-link:hover{text-decoration:underline}.app-header h1{margin:0 0 .5rem;font-size:2.5em}.app-header p{margin:0;font-size:1.1em;opacity:.95}.app-container{display:flex;flex-direction:row;flex:1;gap:0;min-height:0;height:100%;overflow:hidden}.content-wrapper{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.sidebar{width:220px;background-color:var(--card-bg);padding:0;box-shadow:2px 0 8px var(--color-shadow);position:relative;align-self:stretch;display:flex;flex-direction:column;transition:background-color var(--transition-smooth),box-shadow var(--transition-smooth);flex-shrink:0}.sidebar-app-header{display:none}.sidebar .app-header-left{justify-content:center;padding:1.25rem 1rem 1rem;border-bottom:1px solid var(--border)}.sidebar .app-header-title{text-align:center}.sidebar-app-header h1{margin:0;font-size:1.75rem;font-weight:700;color:var(--text);font-family:sans-serif;line-height:1.2;letter-spacing:-1px;word-break:break-word}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:.25rem;padding:.75rem .5rem}.sidebar-brand-chevron{font-size:.55rem;opacity:.5;margin-left:auto;padding-left:.5rem;flex-shrink:0}.sidebar-category-label{display:block;font-size:.65rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;padding:.35rem .75rem .2rem;opacity:.55}.sidebar-divider{border:none;border-top:1px solid var(--border);margin:.25rem .75rem}.sidebar-collection-header{display:flex;align-items:center;padding:.75rem .75rem .2rem;margin-top:.5rem}.sidebar-collection-header span{font-size:.65rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;opacity:.55;flex:1}.sidebar-collection-header button{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1rem;line-height:1;padding:.1rem .3rem;border-radius:4px;opacity:.55;transition:opacity .15s,color .15s;font-family:inherit}.sidebar-collection-header button:hover{opacity:1;color:var(--text)}.sidebar-sub-items{margin-left:1rem;padding-left:1rem;border-left:1px solid var(--border);margin-top:.25rem;margin-bottom:.25rem;display:flex;flex-direction:column;gap:.125rem}.sidebar-sub-items .nav-button{padding:.375rem .75rem;font-size:.875rem;font-weight:400;border-radius:6px}.nav-button{padding:.625rem .75rem;width:100%;border-radius:8px;background-color:transparent;border:none;outline:none;color:var(--text-secondary);cursor:pointer;text-align:left;font-size:1em;font-weight:400;transition:all .2s ease-in-out;display:flex;align-items:center;font-family:inherit}.nav-button:focus,.nav-button:focus-visible{outline:none}.nav-button:hover,.nav-button.open{background-color:var(--card-hover);color:var(--text)}.nav-button.active{background-color:var(--card-hover);color:var(--text);font-weight:500}.content{flex:1;overflow-y:auto;min-height:0;background-color:var(--dark-bg)}.content section h2{color:#333;margin-top:0;margin-bottom:1.5rem;font-size:1.8em;border-bottom:2px solid var(--primary);padding-bottom:.5rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{margin:0}.btn-add{padding:.75rem 1.5rem;background-color:var(--primary);border:none;color:#fff;border-radius:4px;cursor:pointer;font-weight:500;transition:all .3s ease}.btn-add:hover{background-color:#1d4ed8;box-shadow:0 2px 8px #2563eb4d}.form-add-user{background-color:#fff;padding:1.5rem;border-radius:4px;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}.form-group{margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#333}.form-group input{width:100%;max-width:400px;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1em;font-family:inherit;transition:border-color .3s ease}.form-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.btn-submit{padding:.75rem 1.5rem;background-color:var(--primary);border:none;color:#fff;border-radius:4px;cursor:pointer;font-weight:500;transition:all .3s ease;margin-top:1rem}.btn-submit:hover:not(:disabled){background-color:#1d4ed8;box-shadow:0 2px 8px #2563eb4d}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.data-table{width:100%;border-collapse:collapse;background-color:#fff;box-shadow:0 1px 3px #0000001a;border-radius:4px;overflow:hidden}.data-table thead{background-color:#f8fafc;color:var(--text);border-bottom:1px solid var(--border)}.data-table th{padding:1rem;text-align:left;font-weight:600}.data-table td{padding:1rem;border-bottom:1px solid #e0e0e0}.data-table tbody tr:hover{background-color:#f9f9f9}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr.selectable-row{cursor:pointer}.data-table tbody tr.selectable-row:hover,.data-table tbody tr.selectable-row:focus-visible{background-color:#eff6ff}.data-table tbody tr.selectable-row.selected{background-color:#dbeafe}.data-table tbody tr.selectable-row:focus-visible{outline:2px solid #a5b4fc;outline-offset:-2px}.loading,.error{padding:2rem;text-align:center;font-size:1.1em;border-radius:4px}.loading{background-color:color-mix(in srgb,var(--primary) 12%,var(--card-bg));color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border))}.error{background-color:color-mix(in srgb,var(--error) 12%,var(--card-bg));color:var(--error);border:1px solid color-mix(in srgb,var(--error) 25%,var(--border))}.no-data{padding:2rem;text-align:center;color:#999;font-size:1.1em}.no-data-container{display:flex;flex-direction:column;align-items:center;gap:.75rem}.form-search{display:flex;gap:1rem;margin-bottom:2rem;background-color:#fff;padding:1.5rem;border-radius:4px;box-shadow:0 1px 3px #0000001a}.search-input{flex:1;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1em;font-family:inherit;transition:border-color .3s ease}.search-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.btn-search{padding:.75rem 1.5rem;background-color:var(--primary);border:none;color:#fff;border-radius:4px;cursor:pointer;font-weight:500;transition:all .3s ease}.btn-search:hover:not(:disabled){background-color:#1d4ed8;box-shadow:0 2px 8px #2563eb4d}.btn-search:disabled{opacity:.6;cursor:not-allowed}.igdb-games-dropdown{background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 1px 3px #0000001a;max-height:420px;overflow-y:auto}.igdb-game-dropdown-item{display:flex;align-items:flex-start;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid #eee;cursor:default;transition:background-color .2s ease;min-height:72px}.igdb-game-dropdown-item:last-child{border-bottom:none}.igdb-game-dropdown-item:hover{background-color:#f4f6fb}.igdb-game-cover-sm{width:64px;height:64px;-o-object-fit:cover;object-fit:cover;border-radius:6px;flex-shrink:0;background-color:#e0e0e0}.igdb-game-dropdown-info{flex:1;display:flex;flex-direction:column;gap:.25rem;min-width:0}.igdb-game-dropdown-title{margin:0;font-size:1.05rem;font-weight:600;color:#222}.igdb-game-dropdown-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.85rem;color:#666}.igdb-game-dropdown-summary{margin:0;font-size:.85rem;color:#555;min-height:1.2em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.igdb-game-dropdown-actions{margin-left:auto;display:flex;align-items:flex-start}.btn-add-igdb{padding:.45rem 1rem;border-radius:4px;border:none;background-color:#13b5a8;color:#fff;font-weight:600;cursor:pointer;transition:background-color .2s ease,box-shadow .2s ease}.btn-add-igdb:hover:not(:disabled){background-color:#0f9b89;box-shadow:0 2px 6px #0f9b894d}.btn-add-igdb:disabled{opacity:.6;cursor:not-allowed}.igdb-section{display:flex;flex-direction:column;gap:1.5rem}.game-detail-pane{margin-top:1.5rem}.game-detail-view{display:flex;flex-direction:column;gap:1.5rem}.game-detail-status{margin:0;font-size:.9rem;color:var(--text)}.game-detail-status.error{color:#c62828}.game-detail-hero{display:flex;gap:1.5rem;flex-wrap:wrap;align-items:flex-start}.game-detail-cover{width:220px;min-height:320px;border-radius:14px;overflow:hidden;background-color:#e5e7eb;box-shadow:inset 0 0 0 1px #0f172a0f;flex-shrink:0}.game-detail-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.game-detail-cover-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-weight:600;font-size:.95rem}.game-detail-personal-details{flex:1;min-width:260px;display:flex;flex-direction:column;gap:1rem}.game-detail-info{flex:1;min-width:260px;display:flex;flex-direction:column;gap:.75rem}.game-detail-summary{margin:0;color:#334155;line-height:1.5}.game-detail-badges{display:flex;flex-wrap:wrap;gap:.5rem}.game-detail-badge{background-color:#eff6ff;color:var(--primary);padding:.35rem .9rem;border-radius:999px;font-size:.8rem;font-weight:600}.game-detail-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.game-detail-meta-card{background-color:#f8fafc;border-radius:12px;padding:1rem;border:1px solid #e5e7eb}.game-detail-meta-card p{margin:0;font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;color:#475569}.game-detail-meta-card strong{display:block;margin-top:.35rem;font-size:1.05rem;color:#0f172a}.game-detail-meta-card small{display:block;margin-top:.35rem;font-size:.75rem;color:#475569}.game-detail-user-section{background-color:#f9fafb;border-radius:12px;padding:1.25rem;border:1px solid #e5e7eb}.game-detail-user-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.game-detail-user-format{background-color:#dbeafe;color:var(--primary);padding:.25rem .75rem;border-radius:999px;font-weight:600;font-size:.85rem}.game-detail-user-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.9rem;margin-top:1rem}.game-detail-user-card{background-color:#fff;border-radius:10px;padding:.9rem 1rem;border:1px solid #e5e7eb}.game-detail-user-card p{margin:0;font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;color:#6b7280}.game-detail-user-card strong{display:block;margin-top:.25rem;font-size:1rem;color:#111827}.game-detail-user-notes{margin:1rem 0 0;color:#475569;font-weight:500}.game-detail-page{display:flex;flex-direction:column;gap:1.5rem}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.95rem;color:#475569}.breadcrumb-item{display:inline-flex;align-items:center;gap:.35rem}.breadcrumb-separator{font-weight:600;color:#94a3b8}.breadcrumb-button{background:none;border:none;padding:0;margin:0;color:#2563eb;font-weight:600;cursor:pointer}.breadcrumb-button:hover{text-decoration:underline}.breadcrumb-current{font-weight:600;color:#0f172a}.game-detail-toolbar-actions{display:flex;flex-wrap:wrap;gap:.75rem}.btn-secondary,.btn-danger,.btn-cancel{border:none;border-radius:8px;padding:.65rem 1.25rem;font-weight:600;cursor:pointer;transition:background .2s ease,transform .2s ease}.btn-secondary{background-color:#eff6ff;color:var(--primary)}.btn-secondary:hover:not(:disabled){background-color:#dbeafe;transform:translateY(-1px)}.btn-danger{background-color:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){background-color:#b91c1c}.btn-cancel{background-color:#94a3b8;color:#fff}.btn-cancel:hover:not(:disabled){background-color:#718096}.game-detail-edit-panel{background-color:#fff;border-radius:14px;padding:1.25rem;border:1px solid #e5e7eb;box-shadow:0 1px 8px #0f172a14;display:flex;flex-direction:column;gap:1rem}.game-detail-edit-delete{border-top:1px solid #e5e7eb;padding-top:.75rem;display:flex;flex-direction:column;gap:.5rem}.game-detail-edit-form{display:flex;flex-direction:column;gap:.75rem}.game-detail-edit-form textarea{width:100%;max-width:100%;min-height:120px;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1em;font-family:inherit;resize:vertical}.game-detail-edit-form textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.game-detail-edit-form-actions{display:flex;flex-wrap:wrap;gap:.5rem}.game-detail-tabs{display:flex;gap:.5rem;margin-bottom:1rem}.game-detail-tab{border:1px solid #e5e7eb;background-color:#fff;color:#1f2937;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-weight:600;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.game-detail-tab:hover{background-color:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.game-detail-tab.active{background-color:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 1px 6px #2563eb59}.game-detail-tab-panel{display:flex;flex-direction:column;gap:1rem}.dashboard{display:flex;flex-direction:column;gap:1.5rem}.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;background-color:#fff;border-radius:12px;box-shadow:0 1px 6px #0f172a1f}.dashboard-user{display:flex;align-items:center;gap:.75rem}.dashboard-avatar{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;display:grid;place-items:center;font-weight:700;font-size:1.1rem;flex-shrink:0;overflow:hidden}.dashboard-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:50%}.dashboard-user-meta{display:flex;flex-direction:column;gap:.15rem}.dashboard-user-name{margin:0;font-weight:700;color:#0f172a}.dashboard-user-role{margin:0;color:#64748b;font-size:.9rem}.dashboard-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-left:auto}.dashboard-import{display:flex;align-items:center;gap:.5rem}.dashboard-import-input{display:none}.dashboard-action-btn{padding:.55rem 1.1rem;border-radius:999px;border:1px solid #e2e8f0;background-color:#f8fafc;color:#0f172a;font-weight:600;cursor:pointer;transition:all .2s ease}.dashboard-action-btn:hover{background-color:#eff6ff;border-color:#cbd5e1;color:var(--primary)}.dashboard-import-result{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:.9rem 1rem;color:#0f172a;font-size:.95rem}.dashboard-import-result ul{margin:.35rem 0 0;padding-left:1.2rem;color:#475569}.dashboard-import-result li{margin-bottom:.25rem}.dashboard-import-error{background-color:#fee2e2;border:1px solid #fecaca;border-radius:10px;padding:.75rem 1rem;color:#b91c1c;font-size:.95rem}.game-import-section{display:flex;flex-direction:column;gap:2rem;max-width:900px;margin:0 auto}.import-header{display:flex;flex-direction:column;gap:.5rem}.import-header h3{margin:0;font-size:2rem;color:#0f172a;font-weight:700}.import-description{margin:0;color:#64748b;font-size:1rem}.btn-back{align-self:flex-start;padding:.5rem 1rem;background-color:transparent;border:1px solid #e2e8f0;border-radius:6px;color:#0f172a;cursor:pointer;font-weight:500;transition:all .2s ease;margin-bottom:.5rem}.btn-back:hover{background-color:#f1f5f9;border-color:#cbd5e1}.import-error{display:flex;align-items:center;justify-content:space-between;background-color:color-mix(in srgb,var(--error) 12%,var(--card-bg));border:1px solid color-mix(in srgb,var(--error) 25%,var(--border));border-radius:10px;padding:1rem;color:var(--error);font-size:.95rem}.btn-close{background:none;border:none;color:var(--error);font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease}.btn-close:hover{opacity:.7}.import-success{background-color:color-mix(in srgb,var(--success) 12%,var(--card-bg));border:1px solid color-mix(in srgb,var(--success) 25%,var(--border));border-radius:10px;padding:1.5rem;color:var(--success);display:flex;flex-direction:column;gap:1rem}.import-success h4{margin:0;font-size:1.2rem;color:var(--success)}.import-success p{margin:0;color:var(--success)}.import-dropzone{background-color:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;padding:3rem 2rem;text-align:center;transition:all .2s ease;cursor:pointer}.import-dropzone:hover{border-color:var(--primary);background-color:#eff6ff}.import-label{cursor:pointer;display:block}.import-content{display:flex;flex-direction:column;gap:.5rem;align-items:center}.import-icon{font-size:3rem;margin-bottom:.5rem}.import-main-text{margin:0;font-size:1.1rem;font-weight:600;color:#0f172a}.import-sub-text{margin:0;font-size:.9rem;color:#64748b}.import-page-view{width:100%;height:100%;padding:2rem;overflow-y:auto}.btn-secondary{padding:.5rem 1rem;background-color:#e2e8f0;border:1px solid #cbd5e1;border-radius:6px;color:#0f172a;cursor:pointer;font-weight:500;transition:all .2s ease}.btn-secondary:hover{background-color:#cbd5e1}.dashboard-section{background-color:var(--color-surface);border-radius:12px;padding:1.25rem;box-shadow:0 1px 6px var(--color-shadow);display:flex;flex-direction:column;gap:1rem;transition:background-color var(--transition-smooth),box-shadow var(--transition-smooth)}.dashboard-section-header{display:flex;align-items:center;justify-content:space-between}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.platform-card-wrapper{position:relative;cursor:pointer;color:#0f172a;align-self:start}.platform-card-shadow{position:absolute;top:6px;left:6px;width:100%;height:100%;background:var(--primary);border-radius:12px;opacity:.9;transition:transform .3s ease}.platform-card{position:relative;background-color:var(--card-bg);border:2px solid var(--primary);border-radius:12px;padding:1rem 1.1rem;box-shadow:0 2px 8px #0000004d;transition:transform .3s ease,box-shadow .3s ease,background-color var(--transition-smooth),border-color var(--transition-smooth);display:flex;flex-direction:column;gap:.5rem;min-height:100%;height:100%;color:var(--text)}.platform-card--lift:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 16px #0f172a24}.platform-card--lift:hover+.platform-card-shadow,.platform-card-wrapper:hover .platform-card-shadow{transform:translate(2px,2px)}.platform-card__header-row{display:flex;align-items:center;gap:.5rem;justify-content:space-between}.platform-card__delete-btn{background:none;border:none;color:#dc2626;font-size:1.3rem;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;margin-left:auto}.platform-card__delete-btn:hover{background-color:#fee2e2;color:#b91c1c;transform:scale(1.1)}.platform-card__delete-btn:active{transform:scale(.95)}.platform-card__emoji{font-size:1.2rem}.platform-card__header-row h3{margin:0;font-size:1.05rem;font-weight:700;color:#1f2937}.platform-card__body{padding:.1rem 0;display:flex;flex-direction:column;gap:.35rem;color:#111827}.platform-card__body p{margin:0}.platform-card__footer{margin-top:auto;display:flex;justify-content:flex-end}.btn-add-platform{padding:.55rem 1.25rem;border-radius:10px;border:2px solid #111827;background-color:#f9fafb;font-weight:700;cursor:pointer;transition:background-color .2s ease,transform .1s ease,box-shadow .2s ease}.btn-add-platform--solid{background-color:var(--primary);color:#fff;border-color:#1d4ed8;box-shadow:0 2px 6px #2563eb40}.btn-add-platform--solid:hover{background-color:#1d4ed8;transform:translateY(-1px);box-shadow:0 6px 12px #2563eb4d}.entity-table-container{width:100%;overflow-x:auto;border-radius:12px;box-shadow:0 6px 20px #0f172a1f;background:linear-gradient(135deg,#fff,#f9fafb)}.entity-table-wrapper{border-radius:12px;overflow-x:auto;overflow-y:hidden}.entity-table{width:100%;min-width:480px;border-collapse:collapse;font-size:.95rem;color:#4b5563;background-color:#fff}.entity-table thead{background-color:#f9fafb;color:#374151;text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;border-bottom:1px solid #e5e7eb}.entity-table th{padding:.9rem 1.25rem;font-weight:700;text-align:left}.entity-table td{padding:.95rem 1.25rem;border-bottom:1px solid #e5e7eb;background-color:#fff}.entity-table tr.is-striped td{background-color:#f9fafb}.entity-table tr:hover td{background-color:#eff6ff;color:#1f2937}.entity-table tr.is-selected td{background-color:#dbeafe;color:#1d4ed8;font-weight:600}.entity-table tr[role=button]{cursor:pointer}.entity-table tr[role=button]:focus-visible{outline:2px solid #a5b4fc;outline-offset:-2px}.entity-table-container+.entity-table-pagination{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;background-color:#fff;color:#4b5563;border:1px solid #e5e7eb;border-top:none;border-radius:0 0 12px 12px}.entity-table-pagination button{padding:.45rem .9rem;background-color:#e5e7eb;border:none;border-radius:8px;color:#1f2937;font-weight:600;cursor:pointer;transition:background-color .2s ease,transform .1s ease}.entity-table-pagination button:hover{background-color:#d1d5db;transform:translateY(-1px)}.entity-table-pagination span{font-size:.9rem}.entity-table-filter-input{width:100%;padding:.45rem .6rem;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;font-family:inherit;background-color:#fff;transition:border-color .2s ease,box-shadow .2s ease}.entity-table-filter-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1f}.entity-table-empty-cell{text-align:center;padding:1rem}.analytics-row{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.analytics-card{background:#fff;border-radius:14px;border:1px solid #e4e7ff;padding:1rem;box-shadow:0 8px 20px #0f172a14;display:flex;flex-direction:column;gap:.75rem;flex:1 1 320px;min-width:280px;max-width:560px}.analytics-chart-placeholder{background-color:#f5f7ff;border-radius:12px;border:1px solid rgba(79,70,229,.15);padding:.75rem;min-height:280px}.analytics-chart-placeholder svg{width:100%;height:220px;display:block}.status-badge{padding:.25rem .75rem;border-radius:999px;font-size:.85rem;font-weight:600;display:inline-block}.status-pending{background-color:color-mix(in srgb,var(--warning) 15%,var(--card-bg));color:var(--warning);border:1px solid color-mix(in srgb,var(--warning) 30%,var(--border))}.status-approved{background-color:color-mix(in srgb,var(--success) 15%,var(--card-bg));color:var(--success);border:1px solid color-mix(in srgb,var(--success) 30%,var(--border))}.status-rejected{background-color:color-mix(in srgb,var(--error) 15%,var(--card-bg));color:var(--error);border:1px solid color-mix(in srgb,var(--error) 30%,var(--border))}.badge{padding:.25rem .75rem;border-radius:999px;font-size:.85rem;background-color:color-mix(in srgb,var(--primary) 15%,var(--card-bg));color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));display:inline-block}.pending-game-detail{padding:1rem}.analytics-chart-months{font-size:.9rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem}.analytics-chart-months span{flex:1;min-width:60px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-detail-page{display:flex;flex-direction:column;gap:1.5rem;padding:.75rem 1rem;color:var(--text);min-height:100%;box-sizing:border-box}.console-detail-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.console-detail-back{margin-bottom:.4rem}.console-detail-title{margin:0;font-size:2rem;font-weight:700;color:var(--text)}.console-detail-underline{width:72px;height:3px;margin:.3rem 0 0;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--secondary))}.console-detail-subtitle p{margin:0;color:var(--text-secondary);font-size:.95rem}.console-stats-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem 0}.console-stats-bar-left{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.console-stat-tag{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:999px;border:1px solid var(--border);background:var(--card-bg);font-size:.875rem;font-weight:500;color:var(--text);transition:background-color var(--transition-smooth),border-color var(--transition-smooth),color var(--transition-smooth)}.console-stats-separator{display:inline-block;width:1px;height:1.25rem;background-color:var(--border);flex-shrink:0}.console-stat-format{display:inline-flex;align-items:center;gap:.35rem;font-size:.875rem;color:var(--text-secondary)}.console-stat-icon{flex-shrink:0}.console-stat-icon--physical{color:#3b82f6}.console-stat-icon--digital{color:#8b5cf6}.console-stat-investment{font-size:.875rem;color:var(--text-secondary);font-weight:500}.console-games-section{background-color:var(--card-bg);border-radius:14px;padding:1.5rem;border:1px solid var(--border);display:flex;flex-direction:column;gap:1rem;flex:1;transition:background-color var(--transition-smooth),border-color var(--transition-smooth)}.console-toolbar{display:flex;align-items:center;gap:1rem;padding:.6rem 1rem;background-color:var(--color-surface);border-radius:10px;border:1px solid var(--border);transition:background-color var(--transition-smooth),border-color var(--transition-smooth)}.console-search-input{flex:1;padding:.4rem .75rem;border:1px solid var(--border);border-radius:6px;font-size:.9rem;background-color:var(--dark-bg);color:var(--text);outline:none;transition:border-color var(--transition-smooth),background-color var(--transition-smooth),color var(--transition-smooth)}.console-search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.console-toolbar-right{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.console-sort-label{font-size:.72rem;font-weight:500;color:var(--text-secondary);white-space:nowrap}.console-sort-group{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.console-sort-select{border:1px solid var(--border);background:var(--dark-bg);border-radius:999px;padding:.2rem .55rem;font-size:.85rem;font-weight:500;color:var(--text);cursor:pointer;outline:none;transition:border-color var(--transition-smooth)}.console-sort-select:focus{border-color:var(--primary)}.console-view-toggle{display:flex;align-items:center;gap:.25rem;margin-left:.5rem}.console-view-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;border:1px solid var(--border);background:var(--dark-bg);color:var(--text);cursor:pointer;transition:all var(--transition-smooth)}.console-view-btn svg{width:20px;height:20px;fill:none!important;stroke:currentColor;stroke-width:2;overflow:visible}.console-view-btn:hover{background-color:var(--card-hover);color:var(--text)}.console-view-btn--active{background-color:var(--primary);border-color:var(--primary);color:#fff}.console-view-btn--active:hover{background-color:var(--primary);color:#fff}.console-view-btn--mobile-only{display:none}.btn-add-game{padding:.55rem 1.25rem;border-radius:999px;border:none;background-color:var(--primary);color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-add-game:hover{background-color:#1d4ed8;box-shadow:0 4px 12px #2563eb66}.console-detail-error{margin:0}.btn-add-game-fab{display:none;align-items:center;justify-content:center;position:fixed;bottom:1.5rem;right:1.5rem;width:52px;height:52px;padding:0;box-sizing:border-box;flex-shrink:0;border-radius:50%;border:none;background-color:#2563eb63;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-size:1.5rem;font-weight:300;line-height:52px;cursor:pointer;z-index:50;box-shadow:0 4px 16px #2563eb59;transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease}.btn-add-game-fab:hover{background-color:#1d4ed8e6;box-shadow:0 6px 20px #2563eb73;transform:scale(1.05)}.btn-add-game-fab:active{transform:scale(.97)}@media(min-width:1400px){.analytics-card{max-width:640px}}.hamburger-btn{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;flex-shrink:0;transition:background-color .2s ease}.hamburger-btn:hover{background-color:var(--card-hover)}.hamburger-btn span{display:block;width:20px;height:2px;background-color:var(--text);border-radius:2px;transition:transform .25s ease,opacity .25s ease;transform-origin:center}.hamburger-btn--open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger-btn--open span:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger-btn--open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.sidebar-backdrop{display:none}@media(max-width:768px){.hamburger-btn{display:flex}.sidebar-backdrop{display:block;position:fixed;inset:0;background-color:#00000073;z-index:99}.app-container{flex-direction:row;height:100%}.sidebar{position:fixed;top:0;left:0;height:100%;width:240px;z-index:100;transform:translate(-100%);transition:transform .28s ease;box-shadow:none}.sidebar--open{transform:translate(0);box-shadow:4px 0 24px #00000040}.content{padding:1rem;height:auto}.section-header{flex-direction:column;align-items:flex-start;gap:1rem}.form-group input{max-width:100%}.data-table th,.data-table td{padding:.75rem .5rem;font-size:.9em}.form-search{flex-direction:column}.search-input{width:100%;max-width:100%}.igdb-games-dropdown{max-height:none}.game-detail-hero{flex-direction:column}.game-detail-cover{width:100%;min-height:260px}.btn-secondary,.btn-danger,.btn-cancel{width:100%;padding:.5rem;font-size:.9em}.dashboard-header{flex-direction:column;align-items:flex-start}.dashboard-actions{width:100%;justify-content:flex-start}.analytics-chart-months{font-size:.75rem}.console-detail-page{gap:1rem}.console-detail-title{font-size:1.25rem}.console-detail-header{align-items:flex-start}.console-stats-bar{flex-wrap:wrap;gap:.5rem}.console-stats-bar-left{gap:.5rem}.console-stat-tag{font-size:.8rem;padding:.2rem .55rem}.console-stat-format,.console-stat-investment{font-size:.8rem}.btn-add-game-text,.console-stats-bar .btn-add-game{display:none}.btn-add-game-fab{display:flex}.btn-add-game{padding:.5rem .75rem}.console-toolbar{flex-wrap:wrap;gap:.5rem}.console-search-input{flex-basis:100%}.console-toolbar-right{width:100%;justify-content:space-between}.console-view-btn--mobile-only{display:flex}}.game-detail-new-header{display:flex;gap:1.25rem;align-items:flex-start;background-color:var(--card-bg);border-radius:12px;padding:1.25rem;border:1px solid var(--border);box-shadow:0 1px 6px var(--color-shadow)}.game-detail-new-cover{width:120px;min-width:120px;border-radius:8px;-o-object-fit:cover;object-fit:cover;box-shadow:0 2px 8px var(--color-shadow);align-self:flex-start}.game-detail-new-header-body{flex:1;display:flex;flex-direction:column;gap:.6rem;min-width:0}.game-detail-new-title-row{display:flex;align-items:flex-start;gap:1rem;justify-content:space-between}.game-detail-new-header .game-detail-new-title{margin:0;font-size:1.5rem;font-weight:700;color:var(--text);line-height:1.2}.game-detail-new-platform{margin:.25rem 0 0;font-size:.9rem;color:var(--primary);font-weight:500}.game-detail-delete-btn{background:none;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;padding:.3rem .55rem;display:inline-flex;align-items:center;transition:all .2s ease;flex-shrink:0}.game-detail-delete-btn:hover{background-color:color-mix(in srgb,var(--danger, #e74c3c) 12%,var(--card-bg));border-color:var(--danger, #e74c3c);color:var(--danger, #e74c3c)}.game-detail-delete-btn:disabled{opacity:.5;cursor:not-allowed}.game-detail-new-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.game-detail-new-meta-item{display:inline-flex;align-items:center;gap:.3rem;font-size:.85rem;color:var(--text)}.game-detail-star-rating{gap:.15rem}.game-detail-star--filled{color:#f5a623}.game-detail-star--empty{color:var(--text-secondary);opacity:.5}.game-detail-new-genres{display:flex;flex-wrap:wrap;gap:.4rem}.game-detail-new-genre-badge{background-color:color-mix(in srgb,var(--primary) 12%,var(--card-bg));color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));padding:.2rem .7rem;border-radius:999px;font-size:.8rem;font-weight:500}.game-detail-summary-section{display:flex;flex-direction:column;gap:.5rem}.game-detail-summary-toggle{display:inline-flex;align-items:center;gap:.4rem;background:none;border:none;color:var(--primary);cursor:pointer;font-size:.875rem;font-weight:500;padding:0;font-family:inherit;transition:opacity .2s}.game-detail-summary-toggle:hover{opacity:.75}.game-detail-summary-toggle svg{transition:transform .2s ease}.game-detail-new-summary{margin:0;color:var(--text);font-size:.9rem;line-height:1.6;padding:.75rem;background-color:var(--dark-bg);border-radius:8px;border:1px solid var(--border)}.game-detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}@media(max-width:900px){.game-detail-columns{grid-template-columns:1fr}}@media(max-width:600px){.game-detail-new-header{flex-direction:column;align-items:center;text-align:center;padding:1rem;gap:1rem}.game-detail-new-cover{width:140px;min-width:unset;align-self:center}.game-detail-new-header-body{width:100%;align-items:center}.game-detail-new-title-row{width:100%;flex-direction:row;justify-content:space-between;align-items:flex-start;text-align:left}.game-detail-new-title-row>div{flex:1}.game-detail-new-header .game-detail-new-title{font-size:1.25rem}.game-detail-new-platform{text-align:left}.game-detail-new-meta,.game-detail-new-genres{justify-content:flex-start;width:100%}.game-detail-summary-section{width:100%;align-items:flex-start}}.game-detail-section-card{background-color:var(--card-bg);border-radius:12px;padding:1.25rem;border:1px solid var(--border);box-shadow:0 1px 6px var(--color-shadow);display:flex;flex-direction:column;gap:1rem}.game-detail-section-header{display:flex;align-items:center;gap:.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.game-detail-section-title{margin:0;font-size:1rem;font-weight:700;color:var(--text)}.game-detail-section-header-actions{display:flex;align-items:center;gap:.75rem;margin-left:auto}.game-detail-section-icon--collection{color:var(--primary);flex-shrink:0}.game-detail-section-icon--playthrough{color:var(--success);flex-shrink:0}.game-detail-inline-status{margin-left:auto;font-size:.8rem;color:var(--text-secondary)}.game-detail-inline-error{margin-left:auto;font-size:.8rem;color:var(--error)}.game-detail-collection-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.game-detail-collection-field{display:flex;flex-direction:column;gap:.35rem}.game-detail-field-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--primary)}.public-page-content{flex:1;overflow-y:auto;min-height:0;background-color:var(--dark-bg)}.auth-modal-backdrop{position:fixed;inset:0;background-color:#00000080;z-index:1000;animation:fadeIn .2s ease-out}.auth-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#fff;padding:2rem;border-radius:12px;box-shadow:0 20px 40px #0000004d;width:90%;max-width:440px;z-index:1001;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.auth-modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.75rem;line-height:1;cursor:pointer;color:#6b7280;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background-color .2s,color .2s}.auth-modal-close:hover{background-color:#f3f4f6;color:#1f2937}.game-detail-field-select,.game-detail-field-input{width:100%;padding:.4rem .6rem;border:1px solid var(--border);border-radius:6px;background-color:var(--dark-bg);color:var(--text);font-size:.875rem;font-family:inherit;transition:border-color .2s ease;box-sizing:border-box}.game-detail-field-select:focus,.game-detail-field-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1f}.game-detail-field-textarea{width:100%;padding:.5rem .6rem;border:1px solid var(--border);border-radius:6px;background-color:var(--dark-bg);color:var(--text);font-size:.875rem;font-family:inherit;resize:vertical;min-height:70px;transition:border-color .2s ease;box-sizing:border-box}.game-detail-field-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1f}.game-detail-format-toggle{display:flex;gap:.35rem}.game-detail-format-btn{padding:.3rem .75rem;border-radius:999px;border:1px solid var(--border);background-color:var(--dark-bg);color:var(--text-secondary);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.game-detail-format-btn.active{background-color:var(--primary);border-color:var(--primary);color:#fff}.collection-tabs{margin-top:-.5rem}.collection-tabs__header{display:flex;gap:.5rem;align-items:center;border-bottom:1px solid var(--border);padding-bottom:.75rem;margin-bottom:.75rem}.collection-tab{padding:.4rem .9rem;border-radius:6px;border:1px solid var(--border);background-color:var(--dark-bg);color:var(--text-secondary);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.collection-tab:hover{border-color:var(--primary);color:var(--text)}.collection-tab--active{background-color:var(--primary);border-color:var(--primary);color:#fff}.collection-tab--add{background-color:var(--success);border-color:var(--success);color:#fff;font-size:1rem;line-height:1;padding:.3rem .7rem}.collection-tab--add:hover{opacity:.85}.collection-delete-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem .85rem;border-radius:6px;border:1px solid var(--error);background-color:transparent;color:var(--error);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.collection-delete-btn:hover{background-color:var(--error);color:#fff}.collection-delete-btn--header{padding:.35rem .5rem;border-radius:4px;font-size:0}.collection-delete-btn--header svg{transition:transform .2s ease}.collection-delete-btn--header:hover svg{transform:scale(1.15)}.collection-delete-section{display:flex;justify-content:flex-end;padding-top:.75rem;border-top:1px solid var(--border)}.game-detail-collection-danger{display:flex;align-items:center;gap:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}.game-detail-playthrough-inline-status{display:flex;gap:.5rem;font-size:.8rem}.game-detail-playthrough-section{display:flex;flex-direction:column;gap:.75rem}.game-detail-playthrough-header{display:flex;align-items:center;gap:.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.game-detail-playthrough-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.game-detail-playthrough-card{display:flex;flex-direction:column;gap:.35rem}.game-detail-playthrough-card:only-child{grid-column:1 / -1}.game-detail-playthrough-card label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--primary)}.game-detail-playthrough-card select,.game-detail-playthrough-card input[type=number],.game-detail-playthrough-card input[type=date]{width:100%;padding:.4rem .6rem;border:1px solid var(--border);border-radius:6px;background-color:var(--dark-bg);color:var(--text);font-size:.875rem;font-family:inherit;transition:border-color .2s ease;box-sizing:border-box}.game-detail-playthrough-card select:focus,.game-detail-playthrough-card input[type=number]:focus,.game-detail-playthrough-card input[type=date]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1f}.game-detail-playthrough-card textarea{width:100%;padding:.5rem .6rem;border:1px solid var(--border);border-radius:6px;background-color:var(--dark-bg);color:var(--text);font-size:.875rem;font-family:inherit;resize:vertical;min-height:70px;transition:border-color .2s ease;box-sizing:border-box}.game-detail-playthrough-card textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1f}.game-detail-playthrough-card textarea::-moz-placeholder{color:var(--text-secondary);opacity:.7}.game-detail-playthrough-card textarea::placeholder{color:var(--text-secondary);opacity:.7}.rating-input-group{display:flex;align-items:center;gap:.4rem}.rating-input-group input{flex:1;min-width:0}.rating-display{font-size:.85rem;color:var(--text-secondary);font-weight:500;white-space:nowrap}.game-detail-playthrough-status{font-size:.8rem;font-weight:600;color:var(--success);background-color:color-mix(in srgb,var(--success) 12%,var(--card-bg));border:1px solid color-mix(in srgb,var(--success) 25%,var(--border));padding:.2rem .6rem;border-radius:999px}.game-detail-playthrough-status.empty{color:var(--text-secondary);background-color:transparent;border:none}.game-detail-playthrough-loading,.game-detail-playthrough-updating{font-size:.8rem;color:var(--primary)}.game-detail-playthrough-error{font-size:.8rem;color:var(--error)}@media(max-width:900px){.game-detail-collection-grid,.game-detail-playthrough-grid{grid-template-columns:1fr}.game-detail-section-card{padding:.75rem}}.platform-grouped-games{display:flex;flex-direction:column;gap:1.5rem;width:100%}.platform-grouped-games__header{display:flex;justify-content:flex-end;padding:.5rem 0}.platform-grouped-games__toggle-all{padding:.45rem 1rem;border-radius:999px;border:1px solid var(--border);background-color:var(--card-bg);color:var(--text);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.platform-grouped-games__toggle-all:hover{background-color:var(--card-hover);border-color:var(--primary);color:var(--primary)}.platform-group{display:flex;flex-direction:column;gap:0;background-color:var(--card-bg);border-radius:12px;border:1px solid var(--border);overflow:hidden;transition:all .2s ease}.platform-group:hover{box-shadow:0 4px 12px var(--color-shadow)}.platform-group__header{width:100%;display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background-color:var(--card-bg);border:none;cursor:pointer;text-align:left;transition:background-color .2s ease;border-bottom:1px solid var(--border)}.platform-group__header:hover{background-color:var(--card-hover)}.platform-group__icon{font-size:.75rem;color:var(--text-secondary);flex-shrink:0;transition:transform .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.platform-group__title{margin:0;font-size:1.15rem;font-weight:700;color:var(--text);flex:1}.platform-group__count{font-size:.875rem;font-weight:500;color:var(--text-secondary);padding:.25rem .75rem;border-radius:999px;background-color:var(--dark-bg)}.platform-group__content{padding:1.25rem;border-top:1px solid var(--border)}@media(max-width:768px){.platform-grouped-games{gap:1rem}.platform-group__header{padding:.875rem 1rem}.platform-group__title{font-size:1rem}.platform-group__count{font-size:.8rem;padding:.2rem .6rem}.platform-group__content{padding:1rem}}.histogram-chart-wrapper{background-color:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:.75rem;height:100%}.chart-title{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.histogram-chart-content{display:flex;gap:1rem;align-items:stretch;flex:1;position:relative;min-height:0}.histogram-chart-content .recharts-wrapper{width:100%!important;height:100%!important}.histogram-chart-content .recharts-surface{height:100%!important}.histogram-chart-content .recharts-cartesian-axis-tick{font-size:12px!important;color:var(--text-secondary)!important}.histogram-chart-content .recharts-text{color:var(--text-secondary)!important}.histogram-tooltip{background-color:#000000e6;color:#fff;padding:.75rem;border-radius:4px;font-size:12px;box-shadow:0 2px 8px #00000026;min-width:-moz-fit-content;min-width:fit-content;text-align:center;white-space:nowrap;max-width:300px}.histogram-tooltip .tooltip-label{font-size:11px;color:#fff;font-weight:600;margin-bottom:.25rem;word-break:break-word;white-space:normal}.histogram-tooltip .tooltip-value{font-size:14px;color:#64b5f6;font-weight:700}@media(max-width:768px){.histogram-chart-wrapper{padding:1rem;gap:1rem}.histogram-chart-content{min-height:250px}.chart-title{font-size:1rem}}.radar-chart-wrapper{background-color:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:.75rem;height:100%}.radar-chart-content{flex:1;min-height:300px}@media(max-width:768px){.radar-chart-wrapper{padding:1rem}.radar-chart-content{min-height:220px}}.world-map-chart{min-height:350px}.world-map-wrapper{position:relative;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden}.world-map-wrapper .rsm-svg{margin-top:-50px}.world-map-country{fill:var(--border);stroke:var(--card-bg);stroke-width:.5;outline:none;pointer-events:none}.world-map-marker{cursor:pointer;transition:r .2s ease}.world-map-marker:hover{r:10}.world-map-marker-pulse{opacity:.3;animation:map-pulse 2s ease-out infinite;pointer-events:none}@keyframes map-pulse{0%{r:7;opacity:.4}to{r:20;opacity:0}}.world-map-tooltip{position:fixed;background-color:#000000d9;color:#fff;padding:.4rem .8rem;border-radius:6px;pointer-events:none;z-index:100;display:flex;flex-direction:column;gap:.15rem;white-space:nowrap;font-size:.8rem}.world-map-tooltip-name{font-weight:600}.world-map-tooltip-count{color:#94a3b8;font-size:.75rem}.world-map-unlocated{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;border-top:1px solid var(--border);padding-top:.75rem}.world-map-unlocated-label{font-size:.75rem;color:var(--text-secondary);white-space:nowrap}.world-map-tag{display:inline-flex;align-items:center;background-color:var(--border);color:var(--text-secondary);border-radius:4px;padding:.2rem .6rem;font-size:.75rem}.stats-card{background-color:var(--card-bg);border:2px solid var(--border);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem;transition:all var(--transition-smooth);color:var(--text)}.stats-card__header{display:flex;align-items:center;gap:.75rem}.stats-card__icon{font-size:1.5rem}.stats-card__title{margin:0;font-size:.85rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.stats-card__content{display:flex;flex-direction:column;gap:1rem}.stats-card__item{display:flex;justify-content:space-between;align-items:center}.stats-card__label{font-size:.9rem;color:var(--text-secondary);font-weight:500}.stats-card__value{font-size:1.5rem;font-weight:700;color:var(--text)}.stats-card--collection{border-left:4px solid #64B5F6}.stats-card--progress{border-left:4px solid #EF9A9A}.stats-card--wishlist{border-left:4px solid #81C784}@media(max-width:768px){.stats-card{padding:1rem;gap:1rem}.stats-card__icon,.stats-card__value{font-size:1.2rem}}.my-stats{display:flex;flex-direction:column;gap:2rem;padding:2rem;color:var(--text)}.my-stats-header{margin-bottom:.5rem}.my-stats-header h1{font-size:2rem;font-weight:700;margin:0;color:var(--text)}.my-stats-header p{font-size:1rem;color:var(--text-secondary);margin:0}.stats-cards-section{display:flex;flex-direction:column;gap:1.5rem}.stats-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.stats-charts-section{display:flex;flex-direction:column;gap:1.5rem}.charts-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem}.chart-container{background-color:var(--card-bg);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:all var(--transition-smooth)}.chart-container--full{grid-column:1 / -1}.chart-placeholder{display:flex;flex-direction:column;height:100%;padding:1.5rem;gap:1.5rem}.chart-header{display:flex;align-items:center;gap:.75rem}.chart-icon{font-size:1.5rem}.chart-title{margin:0;font-size:1rem;font-weight:600;color:var(--text)}.chart-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem;flex:1;justify-content:center;min-height:300px}.donut-chart,.pie-chart{width:100%;height:auto;max-width:200px}.chart-legend{display:flex;flex-direction:column;gap:.75rem;width:100%}.chart-legend.legend-horizontal{flex-direction:row;flex-wrap:wrap;justify-content:center}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.legend-color{width:12px;height:12px;border-radius:2px;flex-shrink:0}.bar-chart-vertical{display:flex;align-items:flex-end;justify-content:space-around;gap:1rem;width:100%;height:250px;padding:1rem 0}.bar-item{display:flex;flex-direction:column;align-items:center;gap:.75rem;flex:1}.bar-item .bar{width:100%;border-radius:4px 4px 0 0;min-height:20px;transition:all var(--transition-smooth)}.bar-item .bar:hover{opacity:.8}.bar-label{font-size:.75rem;color:var(--text-secondary);text-align:center;word-break:break-word}@media(max-width:1024px){.charts-row{grid-template-columns:1fr}.chart-container--full{grid-column:1}}@media(max-width:768px){.my-stats{padding:1rem;gap:1.5rem}.my-stats-header h1{font-size:1.5rem}.stats-cards-grid,.charts-row{grid-template-columns:1fr}.chart-content{min-height:200px}.chart-placeholder{padding:1rem}}.toast{position:fixed;top:1.75rem;right:1.75rem;z-index:9999;display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem .65rem 1.1rem;border-radius:8px;font-size:.82rem;font-weight:500;box-shadow:0 4px 20px var(--color-shadow, rgba(0, 0, 0, .25));animation:toast-slide-in .25s ease;white-space:nowrap}@keyframes toast-slide-in{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.toast--error{background-color:var(--error, #f43f5e);color:#fff}.toast--success{background-color:var(--success, #10b981);color:#fff}.toast-message{flex:1}.toast-close{background:none;border:none;color:inherit;cursor:pointer;font-size:.75rem;opacity:.7;padding:0;line-height:1;flex-shrink:0}.toast-close:hover{opacity:1}.loading-dots-container{display:flex;align-items:center;justify-content:center;padding:1rem}.loading-dots-text{font-size:1rem;color:var(--text-secondary);font-weight:500;display:inline-flex;align-items:baseline}.loading-dots{display:inline-flex;gap:2px;margin-left:2px}.loading-dots .dot{animation:loading-dots-blink 1.4s infinite both;opacity:0}.loading-dots .dot:nth-child(1){animation-delay:0s}.loading-dots .dot:nth-child(2){animation-delay:.2s}.loading-dots .dot:nth-child(3){animation-delay:.4s}@keyframes loading-dots-blink{0%,20%{opacity:0}40%{opacity:1}to{opacity:0}}.image-crop-modal-overlay{position:fixed;inset:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.image-crop-modal{background-color:#fff;border-radius:16px;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.image-crop-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid #e5e7eb}.image-crop-header h2{margin:0;font-size:24px;font-weight:700;color:#1f2937}.image-crop-close{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background-color .2s,color .2s}.image-crop-close:hover{background-color:#f3f4f6;color:#1f2937}.image-crop-body{padding:28px;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.image-crop-preview-container{width:100%;display:flex;justify-content:center;align-items:center}.image-crop-preview-wrapper{position:relative;width:280px;height:280px;border:3px solid #4f46e5;border-radius:12px;overflow:hidden;background:linear-gradient(45deg,#f3f4f6 25%,transparent 25%),linear-gradient(-45deg,#f3f4f6 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#f3f4f6 75%),linear-gradient(-45deg,transparent 75%,#f3f4f6 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0px;background-color:#fff}.image-crop-preview{position:absolute;top:50%;left:50%;max-width:none;transform-origin:center center;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.image-crop-controls{display:flex;flex-direction:column;gap:20px}.image-crop-control-group{display:flex;flex-direction:column;gap:10px}.image-crop-control-group label{font-size:14px;font-weight:600;color:#374151}.zoom-control{display:flex;align-items:center;gap:12px}.zoom-control span{font-size:18px;font-weight:600;color:#6b7280;width:20px;text-align:center}.zoom-slider{flex:1;height:6px;border-radius:3px;background:#e5e7eb;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.zoom-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#4f46e5;cursor:pointer;-webkit-transition:background-color .2s,transform .2s;transition:background-color .2s,transform .2s}.zoom-slider::-webkit-slider-thumb:hover{background:#4338ca;transform:scale(1.1)}.zoom-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#4f46e5;cursor:pointer;border:none;-moz-transition:background-color .2s,transform .2s;transition:background-color .2s,transform .2s}.zoom-slider::-moz-range-thumb:hover{background:#4338ca;transform:scale(1.1)}.image-crop-actions{display:flex;gap:12px}.btn-crop-secondary{flex:1;padding:10px 16px;background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s,border-color .2s,transform .1s}.btn-crop-secondary:hover{background-color:#e5e7eb;border-color:#9ca3af;transform:translateY(-1px)}.image-crop-hint{text-align:center;font-size:13px;color:#6b7280;margin:0;padding:12px;background-color:#f9fafb;border-radius:8px}.image-crop-footer{padding:20px 28px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:12px}.btn-crop-cancel,.btn-crop-confirm{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s;border:none}.btn-crop-cancel{background-color:#f3f4f6;color:#374151}.btn-crop-cancel:hover{background-color:#e5e7eb;transform:translateY(-1px)}.btn-crop-confirm{background-color:#4f46e5;color:#fff}.btn-crop-confirm:hover{background-color:#4338ca;transform:translateY(-1px)}@media(max-width:640px){.image-crop-modal{width:95%;max-height:95vh}.image-crop-preview-wrapper{width:240px;height:240px}.image-crop-header,.image-crop-body{padding:20px}.image-crop-footer{padding:16px 20px;flex-direction:column}.btn-crop-cancel,.btn-crop-confirm{width:100%}}.profile-view{width:100%;min-height:100vh;background-color:#f9fafb;padding:20px}.profile-header{display:flex;align-items:center;gap:20px;margin-bottom:40px}.profile-back-btn{padding:10px 20px;background-color:#4f46e5;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.profile-back-btn:hover{background-color:#4338ca}.profile-header h1{font-size:32px;font-weight:700;color:#1f2937;margin:0}.profile-container{display:grid;grid-template-columns:1fr 2fr;gap:40px;max-width:1200px;margin:0 auto}.profile-left{display:flex;flex-direction:column;align-items:center}.profile-image-container{position:relative;width:280px;height:280px;border:3px solid #e5e7eb;border-radius:12px;overflow:hidden;background-color:#fff;display:flex;align-items:center;justify-content:center}.profile-image-container img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.profile-image{display:block}.profile-avatar-large{width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:120px;font-weight:700;color:#fff;flex-shrink:0}.profile-image-upload-btn{position:absolute;bottom:12px;right:12px;width:48px;height:48px;background-color:#4f46e5;border:3px solid white;border-radius:50%;cursor:pointer;font-size:24px;display:flex;align-items:center;justify-content:center;transition:background-color .2s,transform .2s}.profile-image-upload-btn:hover{background-color:#4338ca;transform:scale(1.05)}.profile-image-upload-btn:disabled{opacity:.5;cursor:not-allowed}.profile-image-loading{position:absolute;inset:0;background-color:#fffffff2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.profile-image-loading p{margin:0;color:#4f46e5;font-weight:600;font-size:16px}.spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#4f46e5;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.profile-right{display:flex;flex-direction:column;gap:25px;justify-content:flex-start}.profile-section{background-color:#fff;border-radius:12px;padding:30px;box-shadow:0 1px 3px #0000001a}.profile-section h2{font-size:24px;font-weight:700;color:#1f2937;margin:0 0 15px;padding-bottom:15px;border-bottom:2px solid #e5e7eb}.profile-section-danger{border-left:4px solid #ef4444}.section-description{font-size:14px;color:#6b7280;margin:0 0 20px}.section-description.danger{color:#dc2626}.profile-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.profile-info-item{display:flex;flex-direction:column}.profile-info-item label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.profile-info-item p{font-size:16px;font-weight:500;color:#1f2937;margin:0;word-break:break-all}.btn{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s,transform .1s}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:#4f46e5;color:#fff}.btn-primary:hover:not(:disabled){background-color:#4338ca}.btn-secondary{background-color:#e5e7eb;color:#1f2937}.btn-secondary:hover:not(:disabled){background-color:#d1d5db}.btn-danger{background-color:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-block{width:100%;display:block}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-overlay-danger{background-color:#0009}.modal-content{background-color:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;padding:20px}.modal-content-danger{border-left:5px solid #ef4444}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:25px;border-bottom:1px solid #e5e7eb}.modal-header h2{font-size:20px;font-weight:700;color:#1f2937;margin:0}.modal-close-btn{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s}.modal-close-btn:hover:not(:disabled){color:#1f2937}.modal-body{padding:25px}.modal-form{width:100%}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}.form-group input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.form-group input:disabled{background-color:#f3f4f6;cursor:not-allowed}.confirmation-input{text-transform:uppercase;letter-spacing:2px;font-weight:600}.form-error{padding:12px;background-color:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:14px;margin-bottom:20px}.form-success{padding:12px;background-color:#dcfce7;border:1px solid #bbf7d0;border-radius:6px;color:#16a34a;font-size:14px;margin-bottom:20px}.warning-icon{font-size:48px;text-align:center;margin-bottom:15px}.modal-body h3{font-size:18px;font-weight:700;color:#dc2626;margin:0 0 15px;text-align:center}.modal-body>p{color:#374151;font-size:14px;line-height:1.6;margin:0 0 15px}.delete-warning-list{background-color:#fef2f2;border-left:4px solid #ef4444;padding:15px 15px 15px 20px;margin:15px 0;border-radius:6px;list-style-position:inside;color:#374151;font-size:14px;line-height:1.8}.delete-warning-list li{margin-bottom:8px}.delete-warning-list li:last-child{margin-bottom:0}.delete-warning-highlight{background-color:#fff7ed;border-left:4px solid #f97316;padding:12px 15px;margin:15px 0 0;border-radius:4px;color:#b45309;font-weight:500;font-size:13px}.export-section{background-color:#f0f9ff;border-left:4px solid #0284c7;padding:15px;margin:20px 0;border-radius:6px}.export-text{font-size:14px;color:#0c4a6e;font-weight:500;margin:0 0 12px}.export-section .btn-block{margin:0}.confirm-message{font-size:14px;color:#374151;margin-bottom:20px}.confirm-message strong{color:#dc2626;font-weight:700}.modal-actions{display:flex;gap:12px;margin-top:25px;justify-content:flex-end}.modal-actions .btn{flex:1}@media(max-width:768px){.profile-container{grid-template-columns:1fr;gap:30px}.profile-image-container{width:220px;height:220px}.profile-avatar-large{font-size:80px}.profile-info-grid{grid-template-columns:1fr;gap:20px}.profile-header{flex-direction:column;align-items:flex-start}.profile-section{padding:20px}.modal-content{width:95%}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}@media(max-width:480px){.profile-view{padding:12px}.profile-image-container{width:180px;height:180px}.profile-avatar-large{font-size:60px}.profile-image-upload-btn{width:40px;height:40px;font-size:18px}.profile-header h1{font-size:24px}.profile-section h2{font-size:18px}.modal-header,.modal-body{padding:15px}}.images-tab{display:flex;flex-direction:column;gap:1rem}.images-tab-icon{color:var(--text-secondary);flex-shrink:0}.images-tab-loading,.images-tab-empty{text-align:center;color:var(--text-secondary);padding:2rem 1rem;font-size:.875rem}.images-tab-file-input{display:none}.images-tab-upload{display:flex;flex-direction:column;gap:.5rem;padding:.875rem 1rem;background-color:var(--dark-bg);border:1px solid var(--border);border-radius:8px}.images-tab-upload-row{display:flex;gap:.5rem;align-items:center}.images-tab-caption-input{flex:1;min-width:0}.images-tab-upload-btn{padding:.4rem .9rem;background-color:var(--primary);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap;transition:opacity var(--transition-smooth)}.images-tab-upload-btn:hover:not(:disabled){opacity:.85}.images-tab-upload-btn:disabled{opacity:.45;cursor:not-allowed}.images-tab-upload-hint{margin:0;font-size:.72rem;color:var(--text-secondary)}.images-tab-gallery{display:flex;flex-direction:column;gap:.75rem}.images-tab-count{margin:0;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.images-tab-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.875rem}.images-tab-card{background-color:var(--card-bg);border:1px solid var(--border);border-radius:10px;overflow:hidden;box-shadow:0 1px 4px var(--color-shadow);transition:box-shadow var(--transition-smooth),transform var(--transition-smooth)}.images-tab-card:hover{box-shadow:0 6px 18px var(--color-shadow);transform:translateY(-2px)}.images-tab-img-wrap{position:relative;width:100%;padding-bottom:75%;overflow:hidden;background-color:var(--dark-bg)}.images-tab-img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.images-tab-primary-badge{position:absolute;top:.5rem;right:.5rem;background-color:var(--primary);color:#fff;padding:.2rem .6rem;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.04em}.images-tab-card-body{padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.images-tab-card-actions{display:flex;gap:.4rem}.images-tab-action-btn{flex:1;padding:.35rem .6rem;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;font-family:inherit;border:1px solid transparent;background-color:transparent;transition:background-color var(--transition-smooth),opacity var(--transition-smooth)}.images-tab-action-btn--primary{border-color:var(--primary);color:var(--primary)}.images-tab-action-btn--primary:hover{background-color:var(--card-hover)}.images-tab-action-btn--delete{border-color:var(--error);color:var(--error)}.images-tab-action-btn--delete:hover{opacity:.75}.images-tab-card-date{margin:0;font-size:.7rem;color:var(--text-secondary)}@media(max-width:768px){.images-tab-upload-row{flex-direction:column;align-items:stretch}.images-tab-upload-btn{width:100%;padding:.5rem}.images-tab-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}@media(max-width:480px){.images-tab-grid{grid-template-columns:repeat(2,1fr)}.images-tab-card-actions{flex-direction:column}.images-tab-action-btn{width:100%}}.star-rating-container{display:inline-flex;align-items:center;gap:.1rem}.star-item{display:inline-flex;align-items:center;cursor:default}.star-item--interactive{cursor:pointer}.star-half-wrapper{position:relative;display:inline-block;flex-shrink:0}.star-half-bg{display:block}.star-half-fill{position:absolute;top:0;left:0;width:50%;overflow:hidden;display:block}.star-shape--filled{color:#f5a623;transition:color .1s ease}.star-shape--hover{color:#ffd166;transition:color .1s ease}.star-shape--empty{color:var(--text-secondary);opacity:.35;transition:color .1s ease,opacity .1s ease}.game-detail-igdb-link{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-left:.5rem;background:var(--primary-color, #007bff);color:#fff;border-radius:50%;text-decoration:none;font-size:.75rem;font-weight:700;transition:all .2s ease;vertical-align:middle}.game-detail-igdb-link:hover{background:var(--primary-hover, #0056b3);transform:scale(1.1)}.game-detail-igdb-link:active{transform:scale(.95)}.game-detail-igdb-link:focus-visible{outline:2px solid var(--primary-color, #007bff);outline-offset:2px}.add-game-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.add-game-modal{background:var(--card-bg);border-radius:8px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 6px #0000001a}.add-game-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.add-game-modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text-primary)}.add-game-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.add-game-modal-close:hover{background-color:#f3f4f6}.add-game-modal-body{padding:1.5rem;overflow-y:auto;flex:1}.add-game-modal-error{background-color:#fee2e2;border:1px solid #fecaca;color:#991b1b;padding:.75rem;border-radius:4px;margin-bottom:1rem}.add-game-search-input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:4px;font-size:1rem;margin-bottom:1rem}.add-game-search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.add-game-search-input:disabled{background-color:#f3f4f6;cursor:not-allowed}.add-game-results{min-height:200px}.add-game-loading,.add-game-empty{text-align:center;color:#6b7280;padding:2rem}.add-game-empty-state{text-align:center;padding:2rem}.add-game-create-suggestion{margin-top:1.5rem;padding:1.5rem;background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:8px}.add-game-create-suggestion p{margin:0 0 1rem;color:#0c4a6e;font-weight:500}.btn-create-game{padding:.75rem 1.5rem;background-color:#0ea5e9;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-create-game:hover{background-color:#0284c7}.btn-create-game:active{background-color:#0369a1}.add-game-list{list-style:none;padding:0;margin:0}.add-game-list-item{margin-bottom:.5rem}.add-game-list-button{width:100%;padding:1rem;border:1px solid #e5e7eb;border-radius:4px;background:#fff;cursor:pointer;transition:all .2s;text-align:left;display:flex;align-items:center;gap:1rem}.add-game-list-button:hover:not(:disabled){border-color:#3b82f6;background-color:#eff6ff}.add-game-list-button:disabled{cursor:not-allowed;opacity:.6}.add-game-cover-img{width:60px;height:80px;-o-object-fit:cover;object-fit:cover;border-radius:4px;flex-shrink:0}.add-game-list-content{display:flex;justify-content:space-between;align-items:center;flex:1}.add-game-list-name{font-weight:500;color:#111827}.add-game-list-year{font-size:.875rem;color:#6b7280;background-color:#f3f4f6;padding:.25rem .5rem;border-radius:4px}.submit-game-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.submit-game-modal{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000026}.submit-game-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e0e0e0}.submit-game-modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#333}.submit-game-modal-close{background:none;border:none;font-size:2rem;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.submit-game-modal-close:hover{background-color:#f0f0f0;color:#333}.submit-game-modal-close:disabled{opacity:.5;cursor:not-allowed}.submit-game-modal-body{padding:1.5rem}.submit-game-info{margin:0 0 1.5rem;padding:1rem;background-color:#e3f2fd;border-left:4px solid #2196f3;border-radius:4px;color:#1565c0;font-size:.95rem}.submit-game-success{margin-bottom:1rem;padding:1rem;background-color:#e8f5e9;border-left:4px solid #4caf50;border-radius:4px;color:#2e7d32;font-weight:500}.submit-game-error{margin-bottom:1rem;padding:1rem;background-color:#ffebee;border-left:4px solid #f44336;border-radius:4px;color:#c62828;font-weight:500}.submit-game-form .form-group{margin-bottom:1.25rem}.submit-game-form label{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.submit-game-form label .required{color:#f44336}.submit-game-form input,.submit-game-form textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:inherit;transition:border-color .2s}.submit-game-form input:focus,.submit-game-form textarea:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a}.submit-game-form input:disabled,.submit-game-form textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.submit-game-form textarea{resize:vertical;min-height:100px}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem;max-height:200px;overflow-y:auto;padding:.75rem;border:1px solid #ddd;border-radius:4px;background-color:#fafafa}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.25rem;border-radius:3px;transition:background-color .2s}.checkbox-label:hover{background-color:#e8f4f8}.checkbox-label input[type=checkbox]{width:auto;margin:0;cursor:pointer}.checkbox-label input[type=checkbox]:disabled{cursor:not-allowed}.checkbox-label span{font-size:.9rem;color:#333}.loading-text{color:#666;font-style:italic;margin:0;padding:.5rem}.submit-game-form-actions{display:flex;gap:.75rem;margin-top:1.5rem}.submit-game-form-actions .btn-submit{flex:1;padding:.75rem 1.5rem;background-color:#2196f3;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.submit-game-form-actions .btn-submit:hover:not(:disabled){background-color:#1976d2}.submit-game-form-actions .btn-submit:disabled{background-color:#90caf9;cursor:not-allowed}.submit-game-form-actions .btn-cancel{padding:.75rem 1.5rem;background-color:#f5f5f5;color:#333;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.submit-game-form-actions .btn-cancel:hover:not(:disabled){background-color:#e0e0e0}.submit-game-form-actions .btn-cancel:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.submit-game-modal{width:95%;max-height:95vh}.submit-game-modal-header,.submit-game-modal-body{padding:1rem}.submit-game-form-actions{flex-direction:column}.submit-game-form-actions .btn-submit,.submit-game-form-actions .btn-cancel{width:100%}}.game-card{position:relative;display:flex;flex-direction:column;border:none;border-radius:14px;overflow:hidden;cursor:pointer;padding:0;aspect-ratio:3 / 4;background-color:#1e293b;transition:transform .2s ease,box-shadow .2s ease;outline:none;text-align:left}.game-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px #0000004d}.game-card:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.game-card--selected{outline:2px solid var(--primary);outline-offset:3px;box-shadow:0 0 0 4px #2563eb40}.game-card-img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.game-card-img-placeholder{position:absolute;inset:0;background:linear-gradient(135deg,#1e293b,#334155)}.game-card-format-badge{position:absolute;top:.6rem;left:.6rem;padding:.2rem .65rem;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.02em;z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.game-card-format-badge--physical{background-color:var(--primary);color:#fff}.game-card-format-badge--digital{background-color:#ffffffe0;color:#1e293b}.game-card-overlay{position:absolute;bottom:0;left:0;right:0;padding:2rem .75rem .65rem;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.5) 60%,transparent 100%);z-index:1;display:flex;flex-direction:column;gap:.35rem}.game-card-title{margin:0;font-size:.95rem;font-weight:700;color:#fff;line-height:1.25;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.game-card-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.game-card-region{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;color:#fffc;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-card-price{display:inline-flex;align-items:center;padding:.15rem .55rem;border-radius:6px;background-color:#065f46;color:#6ee7b7;font-size:.78rem;font-weight:700;white-space:nowrap;flex-shrink:0}.game-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}@media(min-width:640px){.game-cards-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media(min-width:1024px){.game-cards-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media(max-width:639px){.game-cards-grid--mobile-1col{grid-template-columns:1fr}.game-cards-grid--mobile-2col{grid-template-columns:repeat(2,1fr)}}.error-view{text-align:center;padding:3rem;background:var(--card-bg);border-radius:12px;box-shadow:0 2px 8px var(--color-shadow, rgba(0, 0, 0, .1))}.error-view-title{color:var(--error, #dc3545);margin-bottom:1rem;font-size:1.5rem;font-weight:600}.error-view-message{color:var(--text, #0f172a);margin-bottom:1.5rem;font-size:1rem;line-height:1.6}.error-view-back-btn{margin-top:1rem;padding:.75rem 1.5rem;background:var(--primary, #007bff);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:background .2s ease}.error-view-back-btn:hover{background:var(--secondary, #0056b3)}.error-view-back-btn:active{transform:translateY(1px)}.game-instance-detail-page{max-width:1200px;margin:0 auto;padding:0 .75rem 1.5rem}.game-instance-detail-back-link{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;margin-bottom:1.5rem;background:none;border:1px solid var(--border, #ddd);border-radius:6px;color:var(--text, #333);cursor:pointer;font-size:.9rem;transition:all .2s ease}.game-instance-detail-back-link:hover{background:var(--card-hover, #f5f5f5);border-color:var(--primary, #007bff)}.game-instance-detail-hero{display:flex;gap:2rem;margin:0 auto;margin-bottom:3rem;padding:2rem 0;background:transparent;max-width:1200px}.game-instance-detail-cover{width:264px;height:352px;border-radius:8px;-o-object-fit:cover;object-fit:cover;flex-shrink:0}.game-instance-detail-hero-content{flex:1;display:flex;flex-direction:column;gap:.5rem;padding-top:0}.game-instance-detail-franchise{font-size:1.1rem;color:var(--primary, #00a8e8);margin:0;font-weight:500}.game-instance-detail-title{font-size:2.5rem;font-weight:700;margin:0;color:var(--text, #0f172a);line-height:1.2}.game-instance-detail-release-date{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary, #64748b)}.game-instance-detail-genres{display:flex;flex-wrap:wrap;gap:.5rem}.game-instance-detail-genre-badge{padding:.15rem .4rem;background:color-mix(in srgb,var(--primary) 20%,var(--card-bg));border:1px solid color-mix(in srgb,var(--primary) 50%,var(--border));border-radius:6px;font-size:.75rem;font-weight:500;color:var(--primary, #00a8e8)}.game-instance-detail-platforms{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.game-instance-detail-platform-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .4rem;background:transparent;border:1px solid var(--border, #e2e8f0);border-radius:6px;font-size:.75rem;color:var(--text-secondary, #64748b)}.game-instance-detail-hero-summary{font-size:.95rem;line-height:1.7;color:var(--text, #e2e8f0);margin:.5rem 0 0;max-width:800px}.game-instance-detail-tabs{display:flex;gap:0;margin-bottom:2rem;background:var(--card-bg, #1e293b);border-radius:8px;padding:.25rem;overflow:hidden}.game-instance-detail-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1.5rem;background:transparent;border:none;color:var(--text-secondary, #94a3b8);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;border-radius:6px;position:relative}.game-instance-detail-tab:hover:not(.active){background:#ffffff0d;color:var(--text, #e2e8f0)}.game-instance-detail-tab.active{background:#ffffff1a;color:var(--text, #f8fafc)}.game-instance-detail-tab svg{flex-shrink:0}.game-instance-detail-section{margin-bottom:2rem;padding:1.5rem;background:var(--card-bg, #1e293b);border-radius:12px;box-shadow:0 2px 8px var(--color-shadow, rgba(0, 0, 0, .1))}.game-instance-detail-section-title{font-size:1.5rem;font-weight:600;margin:0 0 1rem;color:#00d9ff!important;display:flex;align-items:center;gap:.5rem}.game-instance-detail-section-subtitle{font-size:1.1rem;font-weight:600;margin:0 0 .75rem;color:#00d9ff!important;display:flex;align-items:center;gap:.5rem}.game-instance-detail-text{line-height:1.7;color:var(--text, #e2e8f0);margin:0}.game-instance-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.game-instance-detail-list{list-style:none;padding:0;margin:0}.game-instance-detail-list li{padding:.5rem 0;color:var(--text, #e2e8f0);border-bottom:1px solid var(--border, rgba(255, 255, 255, .1))}.game-instance-detail-list li:last-child{border-bottom:none}.game-instance-detail-screenshots{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.game-instance-detail-screenshot{width:100%;height:auto;border-radius:8px;cursor:pointer;transition:transform .2s ease}.game-instance-detail-screenshot:hover{transform:scale(1.02)}.game-instance-detail-videos{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.game-instance-detail-video-thumbnail-link{position:relative;display:block;border-radius:8px;overflow:hidden;cursor:pointer;transition:transform .2s ease}.game-instance-detail-video-thumbnail-link:hover{transform:scale(1.02)}.game-instance-detail-video-thumbnail{width:100%;height:auto;display:block}.game-instance-detail-video-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;opacity:.9;transition:opacity .2s ease}.game-instance-detail-video-thumbnail-link:hover .game-instance-detail-video-overlay{opacity:1}.game-instance-detail-video-link{display:inline-block;padding:.75rem 1.5rem;background:var(--primary, #007bff);color:#fff;text-decoration:none;border-radius:6px;font-weight:500;transition:background .2s ease}.game-instance-detail-video-link:hover{background:var(--secondary, #0056b3)}.game-instance-detail-link{color:var(--primary, #007bff);text-decoration:none;word-break:break-all}.game-instance-detail-link:hover{text-decoration:underline}@media(max-width:768px){.game-instance-detail-hero{flex-direction:column;align-items:center;text-align:center}.game-instance-detail-cover{width:200px}.game-instance-detail-title{font-size:1.5rem}.game-instance-detail-meta-row,.game-instance-detail-genres{justify-content:center}.game-instance-detail-screenshots{grid-template-columns:1fr}}.not-found-page{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:2rem}.not-found-content{text-align:center;max-width:500px}.not-found-content h1{font-size:6rem;font-weight:700;color:var(--primary-color, #4f46e5);margin:0;line-height:1}.not-found-content h2{font-size:2rem;font-weight:600;margin:1rem 0;color:var(--text-primary, #1f2937)}.not-found-content p{font-size:1.125rem;color:var(--text-secondary, #6b7280);margin:1rem 0 2rem}.not-found-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.not-found-actions .btn-primary,.not-found-actions .btn-secondary{padding:.75rem 1.5rem;font-size:1rem;border-radius:.5rem;border:none;cursor:pointer;font-weight:500;transition:all .2s}.not-found-actions .btn-primary{background-color:var(--primary-color, #4f46e5);color:#fff}.not-found-actions .btn-primary:hover{background-color:var(--primary-hover, #4338ca)}.not-found-actions .btn-secondary{background-color:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #1f2937)}.not-found-actions .btn-secondary:hover{background-color:var(--bg-tertiary, #e5e7eb)}.data-table{width:100%;min-width:480px;border-collapse:collapse;font-size:.95rem;color:#4b5563;background-color:#fff}.data-table thead{background-color:#f9fafb;color:#374151;text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;border-bottom:1px solid #e5e7eb}.data-table th{padding:.9rem 1.25rem;font-weight:700;text-align:left}.data-table td{padding:.95rem 1.25rem;border-bottom:1px solid #e5e7eb;background-color:#fff}.data-table tbody tr:hover td{background-color:#eff6ff;color:#1f2937}.data-table .selectable-row{cursor:pointer}.data-table .selectable-row.selected td{background-color:#dbeafe;color:#1d4ed8;font-weight:600}.data-table tr[role=button]:focus-visible{outline:2px solid #a5b4fc;outline-offset:-2px}.no-data{text-align:center;padding:24px;color:#6b7280}@media(prefers-color-scheme:dark){.data-table{background-color:var(--card-bg);color:var(--text)}.data-table thead{background-color:var(--dark-bg);color:var(--text-secondary);border-bottom-color:var(--border)}.data-table th{color:var(--text-secondary)}.data-table td{border-bottom-color:var(--border);background-color:var(--card-bg);color:var(--text)}.data-table tbody tr:hover td{background-color:var(--card-hover);color:var(--text)}.data-table .selectable-row.selected td{background-color:color-mix(in srgb,var(--primary) 20%,var(--card-bg));color:var(--primary)}.no-data{color:var(--text-secondary)}}.page-container{max-width:800px;margin:0 auto;padding:24px}.admin-detail-actions{display:flex;justify-content:flex-end;margin-bottom:16px}@media(max-width:768px){.page-container{padding:16px}}.console-detail-content{display:flex;gap:40px;margin-top:20px;flex-wrap:wrap}.console-image{flex-shrink:0}.console-image img{max-width:300px;max-height:400px;-o-object-fit:contain;object-fit:contain;border-radius:8px;box-shadow:0 2px 8px #0000001a}.console-details{flex:1;min-width:300px}.console-details h1{margin:0 0 24px;font-size:2em;color:#333}.console-info-row{display:flex;gap:12px;margin-bottom:16px;align-items:baseline}.console-info-row .label{font-weight:600;min-width:150px;color:#666}.console-info-row .value{color:#333}.loading,.error{padding:20px;text-align:center}.error{color:#d32f2f}.user-detail-page{padding:1rem}.user-detail-container{max-width:1200px;margin:0 auto}.user-detail-header{display:flex;gap:2rem;align-items:flex-start;padding:2rem;background:var(--card-bg, #f9f9f9);border-radius:8px;margin-bottom:2rem}.user-profile-picture{width:120px;height:120px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:3px solid var(--primary-color, #007bff)}.user-header-info{flex:1}.user-header-info h1{margin:0 0 .5rem;font-size:2rem;color:var(--text-primary, #333)}.user-username{margin:0 0 1rem;color:var(--text-secondary, #666);font-size:1.1rem}.user-badges{display:flex;gap:.5rem;flex-wrap:wrap}.badge{padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.badge-admin{background-color:#dc3545;color:#fff}.badge-user{background-color:#6c757d;color:#fff}.badge-active{background-color:#28a745;color:#fff}.badge-inactive{background-color:#ffc107;color:#333}.badge-public{background-color:#17a2b8;color:#fff}.badge-private{background-color:#6c757d;color:#fff}.user-detail-section{background:var(--card-bg, #f9f9f9);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.user-detail-section h2{margin:0 0 1rem;font-size:1.5rem;color:var(--text-primary, #333)}.user-detail-section p{margin:0;line-height:1.6;color:var(--text-secondary, #666)}.user-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.user-info-item{display:flex;flex-direction:column;gap:.25rem}.user-info-label{font-weight:600;color:var(--text-secondary, #666);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.user-info-value{color:var(--text-primary, #333);font-size:1rem}@media(max-width:768px){.user-detail-header{flex-direction:column;align-items:center;text-align:center}.user-header-info{display:flex;flex-direction:column;align-items:center}.user-info-grid{grid-template-columns:1fr}}.pending-games-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.pending-games-controls{display:flex;gap:1rem;align-items:center}.pending-games-filter-select{padding:.5rem}.detail-back-button{margin-bottom:1rem}.detail-grid-container{display:grid;gap:2rem}.detail-grid-container.with-cover{grid-template-columns:auto 1fr}.detail-grid-container.no-cover{grid-template-columns:1fr}.detail-cover-image{max-width:300px;border-radius:8px}.detail-status-section{margin-bottom:1.5rem;padding:1rem;background-color:#f0f9ff;border-radius:8px}.detail-status-item{margin-bottom:.5rem}.detail-info-section{margin-bottom:1.5rem}.detail-info-item{margin-bottom:.5rem}.detail-summary{margin-bottom:1.5rem}.detail-summary-text{margin-top:.5rem}.detail-genres-section,.detail-platforms-section{margin-bottom:1.5rem}.detail-badges-container{display:flex;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.detail-review-info{margin-bottom:1.5rem;padding:1rem;background-color:#f5f5f5;border-radius:8px}.detail-review-info-content,.detail-review-notes{margin-top:.5rem}.detail-form-group{margin-bottom:1.5rem}.detail-form-label{display:block;margin-bottom:.5rem;font-weight:700}.detail-required{color:red}.detail-form-input,.detail-form-textarea,.detail-form-select{width:100%;padding:.5rem;border-radius:4px;border:1px solid #ddd}.detail-checkbox-container{max-height:200px;overflow-y:auto;border:1px solid #ddd;border-radius:4px;padding:.5rem}.detail-checkbox-label{display:block;margin-bottom:.5rem;cursor:pointer}.detail-checkbox-input{margin-right:.5rem}.detail-empty-message{margin:0;color:#666}.detail-review-panel{margin-top:2rem;padding:1.5rem;border:1px solid #ddd;border-radius:8px;background-color:#fafafa}.detail-review-actions{display:flex;gap:1rem}.detail-approve-button{background-color:#28a745}.detail-reject-button{background-color:#dc3545}
