:root{--color-background: #141414;--color-surface: #202020;--color-primary: #e50914;--color-text-primary: #ffffff;--color-text-secondary: #b3b3b3;--border-radius: 4px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--color-background);color:var(--color-text-primary)}#root{padding:0;max-width:100%}.content-container{padding-top:60px}.public-home{width:100%}.hero-section{display:flex;flex-direction:column;justify-content:center;align-items:center;height:70vh;text-align:center;padding:0 2rem;background:linear-gradient(to bottom,rgba(20,20,20,.5),var(--color-background)),url(https://images.unsplash.com/photo-1585504259744-a36a4a0f8142?q=80&w=2070&auto=format&fit=crop) center center/cover no-repeat}.hero-section h1{font-size:3.5rem;margin-bottom:1rem}.hero-section p{font-size:1.3rem;max-width:600px;margin-bottom:2rem}.hero-actions button{padding:15px 30px;font-size:1.2rem}.stats-section{display:flex;justify-content:space-around;text-align:center;padding:4rem 2rem;background-color:var(--color-background)}.stat-item h2{font-size:3rem;color:var(--color-primary)}.stat-item p{font-size:1.1rem;color:var(--color-text-secondary)}a{color:var(--color-text-primary);text-decoration:none}button{background-color:var(--color-primary);color:#fff;border:none;padding:10px 20px;border-radius:var(--border-radius);cursor:pointer;font-size:1rem;font-weight:700;transition:background-color .2s}button:hover{background-color:#f40612}.form-container{max-width:450px;margin:5rem auto;background-color:#000000bf;padding:60px;border-radius:var(--border-radius);display:flex;flex-direction:column;gap:20px}.form-container h1{margin-bottom:1rem}input[type=text],input[type=email],input[type=password],input[type=date],input[type=number],textarea{background:#333;border:none;border-radius:var(--border-radius);padding:16px;color:var(--color-text-primary);font-size:1rem}input:focus{outline:none;background:#454545}.app-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background-color:var(--color-background);position:fixed;top:0;left:0;width:100%;z-index:1000}.logo{font-size:1.5rem;font-weight:700;z-index:1001}.desktop-nav{display:none;align-items:center;gap:1.5rem}.desktop-nav a{font-weight:700;transition:color .2s;position:relative;padding:5px}.desktop-nav a:hover{color:var(--color-text-secondary)}.nav-link-with-badge{display:flex;align-items:center;gap:8px}.nav-badge{background-color:var(--color-primary);color:#fff;border-radius:10px;padding:2px 8px;font-size:.8rem;font-weight:700}.mobile-menu-button{background:none;border:none;color:#fff;cursor:pointer;padding:0;z-index:1001}.mobile-menu-overlay{position:fixed;top:0;left:-100%;width:100%;height:100%;background-color:var(--color-background);z-index:5000;display:flex;flex-direction:column;transition:left .3s ease-in-out}.mobile-menu-overlay.open{left:0}.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #333;width:100%}.close-menu-button{background:none;border:none;color:#fff;cursor:pointer}.mobile-menu-content{flex-grow:1;width:100%;overflow-y:auto}.mobile-profile-section{padding:1.5rem;border-bottom:1px solid #333}.mobile-nav-links{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem 0}.mobile-nav-links a{font-size:1.2rem;padding:1rem 1.5rem;width:100%;border-radius:var(--border-radius)}.mobile-nav-links a:hover{background-color:var(--color-surface)}.mobile-menu-footer{padding:1.5rem;width:100%}.logout-button-mobile{width:100%;background-color:var(--color-surface);color:var(--color-primary);font-weight:700}.logout-button-mobile:hover{background-color:#333}.profile-menu{position:relative}.profile-avatar-button{background:none;border:none;padding:0;border-radius:50%;cursor:pointer;position:relative}.profile-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;display:block}.unread-badge{position:absolute;top:-5px;right:-5px;background-color:var(--color-primary);color:#fff;border-radius:50%;width:20px;height:20px;display:flex;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;border:2px solid var(--color-background)}.dropdown-menu{position:absolute;top:100%;right:0;background-color:var(--color-surface);border-radius:var(--border-radius);box-shadow:0 8px 24px #00000080;margin-top:15px;width:280px;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.dropdown-header{display:flex;align-items:center;gap:10px;padding:15px;border-bottom:1px solid rgba(255,255,255,.1)}.dropdown-avatar{width:50px;height:50px;border-radius:50%}.user-info{display:flex;flex-direction:column}.user-info .username{font-weight:700;font-size:1.1rem}.user-info .email{font-size:.8rem;color:var(--color-text-secondary)}.dropdown-stats{list-style:none;padding:10px 0}.dropdown-stats li{display:flex;justify-content:space-between;align-items:center;padding:8px 15px;font-size:.9rem}.stat-value{font-weight:700;background-color:var(--color-primary);color:#fff;padding:2px 8px;border-radius:10px;font-size:.8rem}.dropdown-footer{border-top:1px solid rgba(255,255,255,.1);padding:10px;text-align:center}.dropdown-footer a{display:block;padding:8px;border-radius:var(--border-radius);cursor:pointer}.dropdown-footer a:hover{background-color:var(--color-primary);color:#fff}@media (min-width: 768px){.app-header{padding:1rem 3rem}.desktop-nav{display:flex}.mobile-menu-button{display:none}}.filters-container{background-color:var(--color-surface);padding:2rem;border-radius:var(--border-radius);margin-bottom:2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;align-items:end}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-weight:700;color:var(--color-text-secondary);font-size:.9rem}.filter-group input[type=text],.filter-group input[type=number]{width:100%;padding:12px}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:1rem;color:var(--color-text-primary)}.checkbox-label input{width:18px;height:18px}.dice-rating-input{display:flex;gap:.5rem}.dice-svg{width:30px;height:30px;transition:transform .2s}.loading-dashboard{text-align:center;padding-top:5rem;font-size:1.2rem}.dashboard-page{padding:2rem 3rem}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.dashboard-header h1{font-size:2.5rem;margin:0}.filter-toggle-button{background-color:var(--color-surface);color:var(--color-text-primary);border:1px solid #444}.filter-toggle-button:hover{background-color:#333}.game-grid-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.5rem}.game-card-link{text-decoration:none;color:inherit}.game-card{width:100%;height:250px;border-radius:var(--border-radius);overflow:hidden;position:relative;cursor:pointer;background-color:var(--color-surface);transition:transform .2s}.game-card:hover{transform:scale(1.05);box-shadow:0 8px 24px #00000080}.game-card img{width:100%;height:100%;object-fit:cover}.game-card .card-overlay{position:absolute;bottom:0;left:0;right:0;padding:1rem;background:linear-gradient(to top,rgba(0,0,0,.9),transparent);text-align:left}.owner-tag{display:block;font-size:.8rem;color:var(--color-secondary, #50e3c2);font-weight:700;margin-top:4px}.empty-dashboard{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-height:50vh;gap:1rem;border-radius:var(--border-radius);padding:2rem}.empty-dashboard h2{font-size:2rem;color:var(--color-text-primary)}.empty-dashboard p{font-size:1.2rem;color:var(--color-text-secondary);max-width:400px}.empty-dashboard button{margin-top:1rem;padding:15px 30px;font-size:1.2rem}.featured-game-container{position:relative;height:30vh;display:flex;align-items:flex-end;padding:4rem 4rem 2rem;color:#fff}.featured-background{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center}.featured-background:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to top,#141414 10%,#14141480 50%,#141414)}.featured-content{position:relative;z-index:2;max-width:80%}.featured-content h1{font-size:3rem;margin-bottom:1rem;text-shadow:2px 2px 8px rgba(0,0,0,.7)}.featured-content p{font-size:1.1rem;line-height:1.6;margin-bottom:2rem;color:var(--color-text-secondary)}.featured-content button{padding:12px 25px;font-size:1.1rem}.login-form{width:100%;display:flex;flex-direction:column;gap:1.5rem}.form-group,.password-input-wrapper{position:relative}.password-toggle-icon{position:absolute;top:50%;right:16px;transform:translateY(-50%);cursor:pointer;color:var(--color-text-secondary)}.login-form button:disabled{background-color:#555;cursor:not-allowed}.error-message{background-color:#e5091433;color:#f40612;padding:1rem;border-radius:var(--border-radius);text-align:center;font-weight:700}.success-message{background-color:#28a74533;color:#28a745;padding:1rem;border-radius:var(--border-radius);text-align:center;font-weight:700}.login-helpers{text-align:right;margin-top:-1rem;font-size:.9rem}.login-helpers a:hover{text-decoration:underline}.form-description{color:var(--color-text-secondary);text-align:center;margin-top:-1rem}.register-form{width:100%;display:flex;flex-direction:column;gap:1.5rem}.register-form input{width:100%}.register-form button{margin-top:1rem;padding:16px}.form-footer{color:var(--color-text-secondary);margin-top:2rem;text-align:center}.form-footer a{color:var(--color-text-primary);font-weight:700}.form-footer a:hover{text-decoration:underline}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size: 12px;--rc-drag-handle-mobile-size: 24px;--rc-drag-handle-bg-colour: rgba(0, 0, 0, .2);--rc-drag-bar-size: 6px;--rc-border-color: rgba(255, 255, 255, .7);--rc-focus-color: #0088ff}.ReactCrop{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.ReactCrop *,.ReactCrop *:before,.ReactCrop *:after{box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{overflow:hidden;max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-width:100%;max-height:inherit}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video{touch-action:none}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{touch-action:none}.ReactCrop__crop-mask{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px)}.ReactCrop__crop-selection{position:absolute;top:0;left:0;transform:translateZ(0);cursor:move}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--rc-border-color);opacity:.3}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed white}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){animation:marching-ants 1s;background-image:linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%);background-size:10px 1px,10px 1px,1px 10px,1px 10px;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;color:#fff;animation-play-state:running;animation-timing-function:linear;animation-iteration-count:infinite}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";display:block;position:absolute;background-color:#fff6}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{position:absolute;width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{top:0;left:0;transform:translate(-50%,-50%);cursor:nw-resize}.ReactCrop .ord-n{top:0;left:50%;transform:translate(-50%,-50%);cursor:n-resize}.ReactCrop .ord-ne{top:0;right:0;transform:translate(50%,-50%);cursor:ne-resize}.ReactCrop .ord-e{top:50%;right:0;transform:translate(50%,-50%);cursor:e-resize}.ReactCrop .ord-se{bottom:0;right:0;transform:translate(50%,50%);cursor:se-resize}.ReactCrop .ord-s{bottom:0;left:50%;transform:translate(-50%,50%);cursor:s-resize}.ReactCrop .ord-sw{bottom:0;left:0;transform:translate(-50%,50%);cursor:sw-resize}.ReactCrop .ord-w{top:50%;left:0;transform:translate(-50%,-50%);cursor:w-resize}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{top:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{right:0;top:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(50%)}.ReactCrop__drag-bar.ord-s{bottom:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{top:0;left:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media (pointer: coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:2000}.modal-content{background-color:var(--color-surface);padding:2rem;border-radius:var(--border-radius);width:90%;max-width:500px;max-height:90vh;display:flex;flex-direction:column;gap:1.5rem}.crop-modal .ReactCrop__image{max-height:60vh}.crop-actions{display:flex;justify-content:flex-end;gap:1rem}.add-game-page{max-width:1200px;margin:2rem auto;padding:2rem}.image-preview-container{position:relative;text-align:center;margin-top:1rem;display:inline-block;align-self:center}.image-preview{max-width:200px;max-height:200px;border-radius:var(--border-radius);border:2px solid #444}.remove-image-button{position:absolute;top:-10px;right:-10px;background-color:var(--color-primary);color:#fff;border:2px solid var(--color-background);border-radius:50%;width:30px;height:30px;font-size:1.5rem;line-height:26px;text-align:center;padding:0;cursor:pointer;font-weight:700}.remove-image-button:hover{background-color:#f40612}.file-input-label{background:#333;padding:16px;border-radius:var(--border-radius);text-align:center;cursor:pointer;transition:background-color .2s}.file-input-label:hover{background:#454545}.file-input{display:none}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}.adding-message{text-align:center;font-size:1.5rem;font-weight:700;color:var(--color-primary);padding:5rem 0}.search-mode{text-align:center}.search-mode h1{font-size:2.5rem}.search-mode p{font-size:1.2rem;color:var(--color-text-secondary);margin-bottom:2rem}.search-bar-container{position:relative;margin-bottom:3rem;display:inline-block;width:100%;max-width:600px}.search-bar-container input{width:100%;padding:20px;font-size:1.2rem;text-align:center;border:1px solid #333}.loader{position:absolute;right:20px;top:50%;transform:translateY(-50%);border:4px solid #f3f3f3;border-top:4px solid var(--color-primary);border-radius:50%;width:24px;height:24px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}.search-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-bottom:3rem}.search-result-card{width:100%;height:250px;border-radius:var(--border-radius);overflow:hidden;position:relative;cursor:pointer;background-color:var(--color-surface);transition:transform .2s}.search-result-card:hover{transform:scale(1.05);box-shadow:0 8px 24px #00000080}.search-result-card img{width:100%;height:100%;object-fit:cover}.search-result-card .card-overlay{position:absolute;bottom:0;left:0;right:0;padding:1rem;background:linear-gradient(to top,rgba(0,0,0,.9),transparent);text-align:left}.card-overlay h3{color:var(--color-text-primary);font-size:1rem;margin:0}.manual-toggle{text-align:center}.secondary-button{background:none;border:1px solid var(--color-text-secondary);color:var(--color-text-secondary)}.secondary-button:hover{background:var(--color-surface);color:var(--color-text-primary)}.manual-add-form{max-width:700px;margin:0 auto;background-color:var(--color-surface);padding:2rem;border-radius:var(--border-radius);display:flex;flex-direction:column;gap:1.5rem}.manual-add-form h2{text-align:center}.manual-add-form p{text-align:center;font-size:1rem;color:var(--color-text-secondary);margin-top:-1rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:700;color:var(--color-text-secondary)}.dice-rating-input{display:flex;gap:1rem;padding:.5rem 0}.dice-icon-wrapper{cursor:pointer}.dice-svg{width:40px;height:40px;transition:transform .2s}.dice-icon-wrapper:hover .dice-svg{transform:scale(1.1)}.dice-svg rect{fill:#444;transition:fill .2s}.dice-svg circle{fill:#222;transition:fill .2s}.dice-svg.active rect{fill:var(--color-primary)}.dice-svg.active circle{fill:#fff}@media (max-width: 768px){.add-game-page{padding:1rem;margin:1rem auto}.search-mode h1{font-size:2rem}.search-mode p{font-size:1rem}.search-bar-container input{padding:16px;font-size:1rem}.search-results-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem}.search-result-card{height:220px}.manual-add-form{padding:1.5rem}.form-grid{grid-template-columns:1fr;gap:1rem}}@media (max-width: 480px){.add-game-page{padding:.5rem;margin:.5rem auto}.search-mode{padding:0 1rem}.search-results-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.search-result-card{height:200px}.card-overlay h3{font-size:.9rem}.manual-add-form{padding:1rem;gap:1rem}.manual-add-form h2{font-size:1.5rem}.form-actions{flex-direction:column}.form-actions button{width:100%}.modal-content{padding:1.5rem;width:95%}.dice-svg{width:35px;height:35px}}.friends-container{max-width:900px;margin:2rem auto;padding:2rem;display:flex;flex-direction:column;gap:2rem}.friends-container h1{text-align:center;font-size:2.5rem}.friends-section{background-color:var(--color-surface);padding:2rem;border-radius:var(--border-radius)}.friends-section h2{margin-top:0;margin-bottom:1.5rem;border-bottom:1px solid #444;padding-bottom:1rem}.friend-search-container{position:relative}.friend-search-container input{width:100%;padding:16px;font-size:1.1rem}.friend-search-container .loader{position:absolute;right:16px;top:16px;border:4px solid #f3f3f3;border-top:4px solid var(--color-primary);border-radius:50%;width:24px;height:24px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.friend-search-results-container{margin-top:.5rem;border-radius:var(--border-radius);background-color:#111;overflow:hidden}.friend-search-results{list-style:none}.friend-search-results li{display:flex;align-items:center;padding:1rem;gap:1rem;border-bottom:1px solid #333}.friend-search-results li:last-child{border-bottom:none}.result-avatar{width:40px;height:40px;border-radius:50%}.result-user-info{display:flex;flex-direction:column;flex-grow:1}.result-user-info .username{font-weight:700}.result-user-info .email{font-size:.9rem;color:var(--color-text-secondary)}.add-friend-button{padding:8px 16px;font-size:.9rem}.no-search-results{padding:2rem;text-align:center;color:var(--color-text-secondary)}.friends-list{list-style:none}.friend-item{display:flex;align-items:center;padding:1rem 0;border-bottom:1px solid #333;gap:1rem}.friend-item:last-child{border-bottom:none}.friend-avatar{width:50px;height:50px;border-radius:50%}.friend-item span{font-weight:700;flex-grow:1}.friend-actions{display:flex;gap:10px}.accept-button{background-color:#28a745}.accept-button:hover{background-color:#218838}.decline-button,.cancel-button,.remove-button{background-color:#dc3545}.decline-button:hover,.cancel-button:hover,.remove-button:hover{background-color:#c82333}.no-items{color:var(--color-text-secondary);text-align:center;padding:1rem 0}@media (max-width: 768px){.friends-container{padding:1rem;margin:1rem auto}.friends-section{padding:1.5rem}.friends-container h1{font-size:2rem}}@media (max-width: 480px){.friends-container{padding:.5rem;margin:.5rem auto}.friends-section{padding:1rem}.friend-search-results li,.friend-item{flex-direction:column;text-align:center;gap:.5rem}.result-user-info{align-items:center}.friend-actions{width:100%;justify-content:center;margin-top:1rem}.friend-actions button{flex-grow:1;padding:12px}.friend-item span{flex-grow:0}}.messages-page{display:flex;height:calc(100vh - 60px);overflow:hidden;position:relative}.conversations-panel{width:100%;background-color:var(--color-surface);border-right:1px solid #333;display:flex;flex-direction:column;transition:transform .3s ease-in-out;position:absolute;top:0;left:0;height:100%;z-index:1}.chat-panel{flex-grow:1;display:flex;flex-direction:column;background-color:var(--color-background);position:absolute;top:0;left:0;width:100%;height:100%;transform:translate(100%);transition:transform .3s ease-in-out;z-index:2}.messages-page.chat-visible .conversations-panel{transform:translate(-100%)}.messages-page.chat-visible .chat-panel{transform:translate(0)}.panel-header{padding:1.5rem;border-bottom:1px solid #333;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.panel-header h3{font-size:1.2rem;flex-grow:1;text-align:center;margin:0 0 0 -24px}.conversations-panel .panel-header h3{margin-left:0}.new-message-button{background-color:var(--color-primary);color:#fff;border:none;border-radius:50%;width:36px;height:36px;font-size:2rem;line-height:36px;text-align:center;cursor:pointer;padding:0}.back-button{display:block;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:0 1rem 0 0;width:24px}.search-wrapper{padding:1rem;border-bottom:1px solid #333;flex-shrink:0}.conversation-search-input{width:100%;padding:10px;font-size:1rem}.conversation-list{list-style:none;overflow-y:auto;flex-grow:1}.conversation-list li{display:flex;align-items:center;gap:1rem;padding:1rem;cursor:pointer;border-bottom:1px solid #333;transition:background-color .2s}.conversation-list li:hover{background-color:#2a2a2a}.conversation-list li.active{background-color:var(--color-primary);color:#fff}.conversation-avatar{width:50px;height:50px;border-radius:50%;flex-shrink:0;background-color:#444}.conversation-info{flex-grow:1;overflow:hidden}.conversation-username{font-weight:700;display:block}.message-preview{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.9rem;color:var(--color-text-secondary);margin:0}.conversation-list li.active .message-preview{color:#eee}.conversation-badge{background-color:var(--color-primary);color:#fff;border-radius:50%;width:24px;height:24px;display:flex;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;flex-shrink:0}.conversation-list li.active .conversation-badge{background-color:#fff;color:var(--color-primary)}.messages-container{flex-grow:1;padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.message-bubble{padding:.75rem 1rem;border-radius:18px;max-width:75%;display:flex;flex-direction:column}.message-bubble p{margin:0;line-height:1.5}.message-bubble .timestamp{font-size:.75rem;color:var(--color-text-secondary);margin-top:.5rem}.message-bubble.sent{background-color:var(--color-primary);align-self:flex-end;border-bottom-right-radius:4px}.message-bubble.sent .timestamp{align-self:flex-end}.message-bubble.received{background-color:var(--color-surface);align-self:flex-start;border-bottom-left-radius:4px}.message-bubble.received .timestamp{align-self:flex-start}.message-input-form{display:flex;padding:1rem;border-top:1px solid #333;gap:1rem;flex-shrink:0}.message-input-form input{flex-grow:1}.no-chat-selected{display:flex;flex-direction:column;height:100%}.no-chat-selected .panel-header,.no-chat-selected p{display:none}@media (min-width: 768px){.conversations-panel{position:static;width:320px;flex-shrink:0}.chat-panel{position:static;transform:none}.messages-page.chat-visible .conversations-panel{transform:none}.back-button{display:none}.chat-panel .panel-header h3{text-align:left;margin-left:0}.no-chat-selected{justify-content:center;align-items:center}.no-chat-selected .panel-header{display:none}.no-chat-selected p{display:block;color:var(--color-text-secondary);font-size:1.2rem}.messages-container{padding:2rem}.message-bubble{max-width:60%}.message-input-form{padding:1.5rem}}@media (min-width: 1024px){.conversations-panel{width:360px}}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:2000}.modal-content{background-color:var(--color-surface);padding:2rem;border-radius:var(--border-radius);width:90%;max-width:400px;max-height:80vh;display:flex;flex-direction:column;gap:1.5rem}.modal-content.main-modal button{width:100%;padding:1rem;font-size:1.1rem}.modal-content h2{margin-top:0}.modal-search-input{width:100%;padding:12px;font-size:1rem}.modal-friend-list{list-style:none;overflow-y:auto;flex-grow:1}.modal-friend-list li{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:var(--border-radius);cursor:pointer;transition:background-color .2s}.modal-friend-list li:hover{background-color:#333}.modal-friend-list.multi-select li.selected{background-color:var(--color-primary)}.modal-avatar{width:40px;height:40px;border-radius:50%}.no-results-modal{text-align:center;color:var(--color-text-secondary);padding:2rem}.group-members-section{display:flex;flex-direction:column;gap:.5rem;flex-grow:1;overflow:hidden}.group-members-section p{font-weight:700;color:var(--color-text-secondary);margin:0}.creator-display{display:flex;align-items:center;gap:1rem;padding:.5rem;background-color:#111;border-radius:var(--border-radius)}.creator-display span{font-style:italic}.separator{border:none;border-top:1px solid #333;margin:.5rem 0}.hover-content{width:100%;text-align:center;font-size:1.1rem}.hover-content strong{color:#fff}.details-container{position:relative}.details-backdrop{position:absolute;top:0;left:0;right:0;height:60vh;background-size:cover;background-position:center;filter:blur(20px) brightness(.5);transform:scale(1.1)}.details-content{position:relative;z-index:2;padding:3rem;max-width:1200px;margin:0 auto}.details-header{display:flex;gap:3rem;align-items:flex-start;margin-top:5vh}.details-cover{width:250px;height:auto;border-radius:var(--border-radius);box-shadow:0 10px 30px #00000080;flex-shrink:0}.details-info h1{font-size:3rem;margin:0 0 1rem}.details-info p{font-size:1.1rem;margin-bottom:.5rem;color:var(--color-text-secondary)}.details-info strong{color:var(--color-text-primary)}.details-share{margin-top:2rem;font-size:1.1rem}.details-share input{margin-right:10px;transform:scale(1.2)}.details-actions{margin-top:2rem;display:flex;gap:1rem}.remove-button{background-color:#dc3545}.remove-button:hover{background-color:#c82333}.details-body{margin-top:3rem;padding:2rem;background-color:#0000004d;border-radius:var(--border-radius)}.details-body h3{margin-bottom:1rem}.details-body p{line-height:1.6;color:var(--color-text-secondary)}
