body{font-family:Courier New,monospace;background:#fff;color:#000;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}button{font-family:inherit}input,textarea{font-family:inherit;color:#000}input::placeholder,textarea::placeholder{color:#666;opacity:1}a{color:inherit;text-decoration:none}@media(max-width:768px){body{font-size:14px}*{-webkit-tap-highlight-color:transparent}button,a,input,textarea{min-height:44px}}.pattern-lock-container{display:flex;flex-direction:column;align-items:center;gap:1.5rem;touch-action:none;overscroll-behavior:none}.pattern-instruction{font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;text-align:center;margin:0;color:#000}.pattern-lock-grid{display:grid;grid-template-columns:repeat(3,50px);gap:1.25rem;padding:1.5rem;border:4px solid #000;background:#fff;position:relative;box-shadow:0 4px 8px #0000001a;transition:box-shadow .2s;justify-content:center;touch-action:none}.pattern-lock-grid:active{box-shadow:0 2px 4px #00000026}.pattern-dot{width:50px;height:50px;border:3px solid #000;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:background .15s,box-shadow .15s;-webkit-user-select:none;user-select:none;box-shadow:0 2px 4px #0000001a}.pattern-dot:hover{background:#f0f0f0;box-shadow:0 4px 8px #0003}.pattern-dot.selected{background:#000;box-shadow:0 0 0 4px #0003,0 4px 12px #0000004d;animation:dotPulse .3s ease-out}.pattern-dot.active{background:#333;box-shadow:0 0 0 6px #00000026,0 6px 16px #0006;animation:dotActive .2s ease-out}@keyframes dotPulse{0%{box-shadow:0 0 #0003,0 2px 4px #0000001a}50%{box-shadow:0 0 0 6px #0003,0 6px 16px #0006}to{box-shadow:0 0 0 4px #0003,0 4px 12px #0000004d}}@keyframes dotActive{0%{box-shadow:0 0 0 4px #0003,0 4px 12px #0000004d}50%{box-shadow:0 0 0 8px #00000026,0 8px 20px #00000080}to{box-shadow:0 0 0 6px #00000026,0 6px 16px #0006}}.dot-number{color:#fff;font-weight:700;font-size:1rem;font-family:Courier New,monospace;display:inline-block}@keyframes numberPop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.pattern-buttons{display:flex;gap:.75rem;align-items:center}.pattern-reset,.pattern-choose{padding:.5rem 1.5rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1rem;cursor:pointer;text-transform:uppercase;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000001a;flex:1;min-width:0}.pattern-reset:hover,.pattern-choose:hover{background:#000;color:#fff;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.pattern-reset:active,.pattern-choose:active{transform:translateY(0) scale(.95);box-shadow:0 1px 2px #0000001a}.pattern-reset:disabled,.pattern-choose:disabled{opacity:.5;cursor:not-allowed}.pattern-reset:disabled:hover,.pattern-choose:disabled:hover{background:#fff;color:#000;transform:none;box-shadow:0 2px 4px #0000001a}.pattern-reset:disabled{background:#f5f5f5;color:#666;border-color:#999}.pattern-line{position:absolute;stroke:#000;stroke-width:4px;pointer-events:none;z-index:1}.pattern-lines line{filter:drop-shadow(0 2px 2px rgba(0,0,0,.2));stroke-width:4}@keyframes lineDraw{0%{stroke-dasharray:0,1000;opacity:0}to{stroke-dasharray:1000,0;opacity:1}}@media(max-width:768px){.pattern-lock-container{gap:1rem}.pattern-instruction{font-size:.9rem}.pattern-lock-grid{gap:.75rem;padding:1rem}.pattern-dot{width:45px;height:45px;border-width:2px}.pattern-lock-grid{grid-template-columns:repeat(3,45px)}.dot-number{font-size:.9rem}.pattern-buttons{flex-direction:column;width:100%;gap:.5rem}.pattern-reset,.pattern-choose{width:100%}}.avatar-creator{border:6px solid #000;background:#fff;padding:1.5rem;max-width:600px;margin:0 auto;box-sizing:border-box}.avatar-creator-header{border-bottom:4px solid #000;padding-bottom:.75rem;margin-bottom:1rem}.avatar-creator-header h2{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;text-transform:uppercase;margin:0;text-align:center}.avatar-creator-content{display:flex;flex-direction:row;gap:1.5rem;margin-bottom:1rem;align-items:flex-start}.avatar-canvas-container{border:4px solid #000;padding:1rem;background:#f5f5f5;display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar-canvas{border:2px solid #000;background:#fff;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;cursor:crosshair;width:192px;height:192px;display:block}.avatar-toolbar{border:4px solid #000;padding:1rem;background:#fff;width:200px;flex-shrink:0;display:flex;flex-direction:column;gap:1rem}.tool-group{margin:0}.tool-group h3{font-family:Courier New,monospace;font-size:.7rem;font-weight:700;text-transform:uppercase;margin:0 0 .5rem;border-bottom:2px solid #000;padding-bottom:.25rem}.tools{display:flex;flex-wrap:wrap;gap:.25rem}.tool-btn{width:36px;height:36px;padding:0;border:2px solid #000;background:#fff;font-size:1rem;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}.tool-btn:hover{background:#f0f0f0}.tool-btn.active{background:#000;color:#fff}.color-palette{display:flex;flex-wrap:wrap;gap:.25rem}.color-swatch{width:32px;height:32px;border:2px solid #000;cursor:pointer;transition:all .15s;padding:0}.color-swatch:hover{transform:scale(1.1);z-index:1;position:relative}.color-swatch.active{border-width:3px;box-shadow:0 0 0 2px #fff,0 0 0 4px #000}.color-picker{margin-top:.5rem}.color-input{width:100%;height:40px;border:3px solid #000;cursor:pointer}.size-control{display:flex;align-items:center;gap:.5rem}.size-slider{flex:1;margin:0}.size-value{font-family:Courier New,monospace;font-weight:700;font-size:.75rem;min-width:30px;text-align:right}.action-btn{padding:.5rem 1rem;border:3px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:.8rem;text-transform:uppercase;cursor:pointer;transition:all .15s;width:100%}.action-btn:hover{background:#000;color:#fff}.action-btn.clear{background:#fff;border-color:#000}.action-btn.clear:hover{background:#f0f0f0;color:#000}.avatar-creator-actions{display:flex;gap:1rem;justify-content:flex-end;border-top:4px solid #000;padding-top:1rem}.avatar-creator-actions .action-btn{width:auto;min-width:100px}.avatar-creator-actions .action-btn.cancel{background:#fff}.avatar-creator-actions .action-btn.cancel:hover{background:#f0f0f0;color:#000}.avatar-creator-actions .action-btn.save{background:#000;color:#fff}.avatar-creator-actions .action-btn.save:hover{background:#333}@media(max-width:550px){.avatar-creator{padding:1rem;max-width:100%}.avatar-creator-header h2{font-size:1.25rem}.avatar-creator-content{flex-direction:column;gap:1rem}.avatar-canvas-container{align-self:center}.avatar-canvas{width:160px;height:160px}.avatar-toolbar{width:100%}.avatar-creator-actions{flex-direction:column}.avatar-creator-actions .action-btn{width:100%}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#fff;padding:2rem}.login-container{width:100%;max-width:500px;border:6px solid #000;padding:3rem;background:#fff}.login-title{font-family:Courier New,monospace;font-size:3rem;font-weight:700;text-align:center;margin:0 0 1rem;text-transform:uppercase;letter-spacing:.2rem}.login-subtitle{font-family:Courier New,monospace;text-align:center;margin:0 0 2rem;font-size:1rem;text-transform:lowercase}.login-subtitle em{font-style:italic}.username-row{display:flex;align-items:center;gap:.75rem}.login-avatar-display{width:64px;height:64px;border:4px solid #000;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;flex-shrink:0}.username-row .login-input{flex:1}.login-form{display:flex;flex-direction:column;gap:2rem}.login-input{padding:1rem;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;font-weight:700;text-transform:uppercase;background:#fff;color:#000;width:100%;box-sizing:border-box}.login-input:focus{outline:none;background:#f0f0f0}.login-error{padding:1rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;text-align:center;text-transform:uppercase;min-height:calc(2rem + 8px);box-sizing:border-box;transition:opacity .2s}.login-error-empty{visibility:hidden;border-color:transparent}.login-loading{text-align:center;font-family:Courier New,monospace;font-weight:700;text-transform:uppercase}.login-button{padding:1rem 2rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s;width:100%}.login-button:hover:not(:disabled){background:#000;color:#fff}.login-button:disabled{opacity:.5;cursor:not-allowed}.login-button.secondary{background:#fff;border-width:3px}.login-button.secondary:hover:not(:disabled){background:#f0f0f0;color:#000}.login-actions{display:flex;gap:1rem}.login-actions .login-button{flex:1}.form-section{margin-bottom:1.5rem}.form-label{display:block;font-family:Courier New,monospace;font-weight:700;font-size:.9rem;text-transform:uppercase;margin-bottom:.5rem;color:#000}.avatar-section-setup{flex-shrink:0}.setup-avatar{width:32px;height:32px;border:3px solid #000;cursor:pointer;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;transition:transform .2s}.setup-avatar:hover{transform:scale(1.05)}.avatar-create-btn{min-width:120px;height:32px;border:3px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-size:.7rem;font-weight:700;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0 .5rem;white-space:nowrap}.avatar-create-btn:hover{background:#000;color:#fff}.avatar-creator-modal{position:fixed;inset:0;background:#000c;z-index:1000;overflow-y:auto;padding:2rem;box-sizing:border-box;display:block}@media(max-width:768px){.login-page{padding:1rem}.login-container{padding:1.5rem;border-width:4px}.login-title{font-size:2rem}.login-subtitle{font-size:.9rem}.username-row{flex-direction:column;align-items:stretch;gap:.5rem}.login-avatar-display{width:48px;height:48px;align-self:center}.display-name-row-with-avatar{flex-direction:column;gap:.5rem}.display-name-display{width:100%}.avatar-section-setup{align-self:center}.display-name-editor .display-name-row{flex-wrap:wrap}.display-name-input{min-width:100%}.color-picker-popup{left:50%;transform:translate(-50%)}.pattern-lock-grid{gap:.75rem;padding:1rem}.pattern-dot{width:40px;height:40px}.pattern-buttons{flex-direction:column;width:100%}.pattern-reset,.pattern-choose{width:100%}}.display-name-editor .login-button{padding:.5rem 1.5rem;width:auto;margin:.5rem auto 0;display:block}.display-name-row{display:flex;align-items:center;gap:.75rem}.display-name-input{flex:1;min-width:300px;padding:.75rem 1rem;height:calc(40px + 1.5rem);box-sizing:border-box}.color-preview-text{font-family:Courier New,monospace;font-weight:700;font-size:1.2rem;text-transform:uppercase;white-space:nowrap}.pattern-actions{display:flex;justify-content:center;margin-top:1rem}.choose-pattern-btn{width:auto;min-width:150px;padding:.75rem 2rem}.genre-selector{margin:2rem 0}.genre-selector h3{font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;text-transform:uppercase;margin-bottom:1.5rem;text-align:center}.genre-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;margin-bottom:1rem}.genre-button{padding:.75rem 1rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:.9rem;cursor:pointer;text-transform:uppercase;transition:all .2s}.genre-button:hover{background:#f0f0f0}.genre-button.selected{background:#000;color:#fff}.genre-count{font-family:Courier New,monospace;font-weight:700;text-align:center;text-transform:uppercase;margin-top:1rem}.favorite-movies-selector{margin:2rem 0}.favorite-movies-selector h3{font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;text-transform:uppercase;margin-bottom:1.5rem;text-align:center}.search-section{display:flex;gap:1rem;margin-bottom:2rem}.movie-search-input{flex:1;padding:.75rem;border:4px solid #000;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;background:#fff}.movie-search-input:focus{outline:none;background:#f0f0f0}.search-button{padding:.75rem 1.5rem;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1rem;cursor:pointer;text-transform:uppercase;transition:background .2s}.search-button:hover:not(:disabled){background:#000;color:#fff}.search-button:disabled{opacity:.5;cursor:not-allowed}.search-results{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem;max-height:400px;overflow-y:auto;border:3px solid #000;padding:.75rem;background:#fff}.movie-result-card{display:flex;align-items:center;gap:1rem;border:3px solid #000;padding:.75rem;background:#fff;cursor:pointer;transition:background .2s}.movie-result-card:hover{background:#f0f0f0}.movie-result-card.selected{background:#000;color:#fff}.movie-poster{width:60px;height:90px;object-fit:cover;flex-shrink:0;border:2px solid #000}.movie-info{flex:1;min-width:0}.movie-info h4{font-family:Courier New,monospace;font-weight:700;font-size:.9rem;margin-bottom:.25rem;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.movie-info p{font-family:Courier New,monospace;font-size:.8rem;color:#666}.selected-movies{margin-top:2rem}.selected-movies h4{font-family:Courier New,monospace;font-weight:700;text-transform:uppercase;margin-bottom:1rem}.selected-movies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.selected-movie-card{border:4px solid #000;padding:1rem;background:#fff;text-align:center}.movie-poster-small{width:80px;height:120px;object-fit:cover;margin-bottom:.5rem;border:2px solid #000}.selected-movie-card p{font-family:Courier New,monospace;font-weight:700;font-size:.8rem;margin-bottom:.5rem;text-transform:uppercase}.remove-button{padding:.25rem .75rem;border:2px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:.7rem;cursor:pointer;text-transform:uppercase}.remove-button:hover{background:#000;color:#fff}.onboarding-page{min-height:100vh;background:#fff;padding:2rem}.onboarding-container{max-width:1000px;margin:0 auto;border:6px solid #000;padding:3rem;background:#fff}.onboarding-container h1{font-family:Courier New,monospace;font-size:2.5rem;font-weight:700;text-align:center;text-transform:uppercase;margin-bottom:1rem}.onboarding-subtitle{font-family:Courier New,monospace;text-align:center;margin-bottom:2rem;font-size:1rem;text-transform:uppercase}.onboarding-form{display:flex;flex-direction:column}.optional-section{margin:2rem 0}.optional-section label{display:block;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;margin-bottom:.5rem}.optional-textarea{width:100%;padding:1rem;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;background:#fff;resize:vertical}.optional-textarea:focus{outline:none;background:#f0f0f0}.onboarding-error{padding:1rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;text-align:center;text-transform:uppercase;margin:1rem 0}.submit-button{padding:1rem 2rem;border:6px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1.2rem;cursor:pointer;text-transform:uppercase;transition:background .2s,color .2s;margin-top:2rem}@media(max-width:768px){.onboarding-page{padding:1rem}.onboarding-container{padding:1.5rem;border-width:4px}.onboarding-container h1{font-size:1.8rem}.onboarding-subtitle{font-size:.9rem}.avatar-section-onboarding{margin-bottom:1.5rem}.submit-button{font-size:1rem;padding:.75rem 1.5rem}}.avatar-section-onboarding{margin-bottom:2rem}.onboarding-label{display:block;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;margin-bottom:.5rem}.avatar-container-onboarding{display:flex;justify-content:center}.onboarding-avatar{width:64px;height:64px;border:4px solid #000;cursor:pointer;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;transition:transform .2s}.onboarding-avatar:hover{transform:scale(1.05)}.avatar-placeholder-btn-onboarding{width:64px;height:64px;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-size:2rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.avatar-placeholder-btn-onboarding:hover{background:#000;color:#fff}.avatar-creator-modal{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.onboarding-loading{text-align:center;font-family:Courier New,monospace;font-weight:700;font-size:1.5rem;text-transform:uppercase;padding:3rem}.swipe-container{position:relative;width:100%;max-width:420px;margin:0 auto;height:750px}.swipe-card{position:absolute;width:100%;height:100%;border:6px solid #000;background:#fff;transition:transform .2s ease-out,opacity .2s ease-out;cursor:grab;-webkit-user-select:none;user-select:none;display:flex;flex-direction:column;overflow:hidden;box-shadow:8px 8px #0003}.swipe-card:active{cursor:grabbing;transition:transform .1s ease-out}.swipe-hints{position:absolute;top:50%;left:0;right:0;display:flex;justify-content:space-between;pointer-events:none;z-index:10;padding:0 1rem}.swipe-hint{padding:1rem 1.5rem;border:4px solid #000;background:#fffffff2;font-family:Courier New,monospace;font-weight:700;font-size:1.1rem;text-transform:uppercase;opacity:0;transition:opacity .3s;box-shadow:4px 4px #0000004d}.swipe-hint.left{transform:rotate(-12deg);color:#d32f2f;border-color:#d32f2f}.swipe-hint.right{transform:rotate(12deg);color:#388e3c;border-color:#388e3c}.movie-card{width:100%;height:100%;display:flex;flex-direction:column;background:#fff;border-radius:0}.movie-card-poster-wrapper{position:relative;width:100%;height:350px;overflow:hidden;flex-shrink:0}.movie-card-poster{width:100%;height:100%;object-fit:cover;border-bottom:6px solid #000}.movie-card-overlay{position:absolute;inset:0;pointer-events:none;display:flex;justify-content:space-between;align-items:center;padding:2rem;z-index:2}.swipe-hint-left,.swipe-hint-right{padding:1rem 1.5rem;border:4px solid #000;background:#ffffffe6;font-family:Courier New,monospace;font-weight:700;font-size:1.2rem;text-transform:uppercase;opacity:0;transform:rotate(-10deg);transition:opacity .3s,transform .3s}.swipe-hint-right{transform:rotate(10deg)}.movie-card-content{padding:1.5rem;flex:1;display:flex;flex-direction:column;overflow-y:auto;background:#fff;min-height:0}.movie-card-header{margin-bottom:1rem}.movie-card-title{font-family:Courier New,monospace;font-size:1.6rem;font-weight:700;margin-bottom:.75rem;text-transform:uppercase;line-height:1.2;border-bottom:3px solid #000;padding-bottom:.75rem}.movie-card-meta{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.meta-badge{display:flex;align-items:center;gap:.25rem;padding:.4rem .75rem;border:3px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:.85rem;text-transform:uppercase}.age-badge{background:#ffeb3b}.runtime-badge{background:#e1bee7}.year-badge{background:#b2ebf2}.meta-label{font-size:.75rem}.meta-value{font-size:.85rem}.movie-genres{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;min-height:32px}.genre-badge{padding:.5rem 1rem;border:3px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:.75rem;text-transform:uppercase;border-radius:0;position:relative;transition:transform .2s,background .2s;box-shadow:3px 3px #000}.genre-badge:nth-child(1){background:#ffcdd2}.genre-badge:nth-child(2){background:#c8e6c9}.genre-badge:nth-child(3){background:#bbdefb}.genre-badge:nth-child(4){background:#fff9c4}.genre-badge:nth-child(5){background:#f8bbd0}.genre-badge:nth-child(6){background:#d1c4e9}.genre-badge:nth-child(7){background:#b2dfdb}.genre-badge:nth-child(8){background:#ffe0b2}.movie-card-description{font-family:Courier New,monospace;font-size:.95rem;line-height:1.6;margin-bottom:1rem;flex:1;display:block;min-height:60px;overflow-y:auto}.movie-card-trailer{padding:1rem 1.5rem;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;text-decoration:none;color:#000;text-align:center;text-transform:uppercase;transition:all .2s;display:block;margin-top:auto;box-shadow:4px 4px #000;cursor:pointer}.movie-card-trailer:hover{background:#000;color:#fff;transform:translate(-2px,-2px);box-shadow:6px 6px #000}.movie-card-trailer:active{transform:translate(0);box-shadow:2px 2px #000}.main-page{min-height:100vh;background:#fff}.main-header{border-bottom:6px solid #000;padding:2rem;display:flex;justify-content:space-between;align-items:center;background:#fff}.main-header h1{font-family:Courier New,monospace;font-size:2rem;font-weight:700;text-transform:uppercase;margin:0}.header-actions{display:flex;gap:1rem;align-items:center}.nav-link{padding:.5rem 1rem;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-decoration:none;color:#000;text-transform:uppercase;transition:background .2s}.nav-link:hover{background:#000;color:#fff}.user-info-header{display:flex;align-items:center;gap:.75rem}.header-avatar{width:32px;height:32px;border:2px solid #000;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.username{font-family:Courier New,monospace;font-weight:700;text-transform:uppercase}.logout-btn{padding:.5rem 1.5rem;border:4px solid #000;background:red;color:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1rem;cursor:pointer;text-transform:uppercase;transition:all .2s}.logout-btn:hover{background:#c00;transform:translateY(-2px);box-shadow:0 4px 8px #0003}@media(max-width:768px){.main-header{flex-direction:column;gap:1rem;padding:1rem}.main-header h1{font-size:1.5rem}.header-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;width:100%}.nav-link{font-size:.85rem;padding:.4rem .8rem}.user-info-header{order:-1;width:100%;justify-content:center}.username{font-size:.9rem}.logout-btn{font-size:.85rem;padding:.4rem 1rem}.main-content{padding:1rem}.main-content section{padding:1rem}.main-content h2{font-size:1.2rem}.past-movie-rating-card{flex-direction:column;align-items:center}.movie-rating-left{width:100%;align-items:center}.movie-rating-right{width:100%;flex:none}.movie-rating-stars{justify-content:center;gap:.25rem}.star-btn-editable{font-size:1.8rem}.movie-rating-comment{width:100%;box-sizing:border-box}.movie-comment-textarea{font-size:.95rem;padding:.75rem;min-height:100px;width:100%;max-width:100%;box-sizing:border-box}.saved-comment{width:100%;max-width:100%;box-sizing:border-box}.saved-comment p{word-wrap:break-word;overflow-wrap:break-word}.rating-actions{flex-direction:column;gap:.5rem;width:100%}.save-rating-btn,.cancel-rating-btn{width:100%;box-sizing:border-box}.past-meeting-card{padding:1rem;overflow-x:hidden}.past-meeting-header{margin-bottom:1rem;padding-bottom:.75rem}}.present-section{margin-bottom:3rem}.voting-prompt-card{text-align:center;padding:2rem;border:4px solid #000;background:#fff}.voting-prompt-card h3{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;text-transform:uppercase;margin-bottom:1rem}.voting-prompt-card p{font-family:Courier New,monospace;font-size:1.1rem;margin-bottom:.5rem}.voting-meeting-time{font-family:Courier New,monospace;font-size:1rem;font-weight:700;margin-bottom:1.5rem}.voting-theme{font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;margin:1rem 0;padding:.75rem 1rem;border-top:4px solid #000;border-left:4px solid #000;border-right:8px solid #000;border-bottom:8px solid #000;background:#ffeb3b;color:#000;text-transform:uppercase;display:inline-block;box-shadow:4px 4px #0000004d;transform:translate(0)}.voting-theme strong{font-weight:700}.vote-movies-btn,.suggest-movies-btn{padding:1rem 2rem;border:6px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1.2rem;cursor:pointer;text-transform:uppercase;transition:background .2s,color .2s}.vote-movies-btn:hover:not(:disabled),.suggest-movies-btn:hover:not(:disabled){background:#000;color:#fff}.suggest-movies-btn:disabled{opacity:.5;cursor:not-allowed}.swipe-area{margin:2rem 0;min-height:600px;display:flex;align-items:center;justify-content:center;cursor:grab;-webkit-user-select:none;user-select:none}.swipe-area:active{cursor:grabbing}.voting-complete h4{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;text-transform:uppercase;margin-bottom:1rem}.close-voting-btn{padding:1rem 2rem;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1rem;cursor:pointer;text-transform:uppercase;margin-top:1rem;transition:background .2s}.close-voting-btn:hover{background:#000;color:#fff}.skip-review-btn,.submit-review-btn{padding:1rem 2rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1rem;cursor:pointer;text-transform:uppercase;transition:background .2s,color .2s;letter-spacing:.05em}.upcoming-event-card{padding:1.5rem}.upcoming-event-card h3{font-family:Courier New,monospace;font-size:1.3rem;font-weight:700;text-transform:uppercase;margin-bottom:1rem}.upcoming-movies{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.upcoming-movie-card{border:6px double #000;padding:1rem;background:#fff;text-align:center;flex:1;min-width:150px}.upcoming-movie-card.selected{border:8px double #000;background:#ffeb3b;color:#000}.upcoming-movie-poster{width:100%;max-width:200px;height:auto;border:4px solid #000;margin:0 auto .75rem;display:block;box-shadow:4px 4px #0003;transition:transform .2s,box-shadow .2s}.upcoming-movie-card.selected .upcoming-movie-poster{border:5px solid #000;box-shadow:6px 6px #0000004d}.upcoming-movie-card h4{font-family:Courier New,monospace;font-size:.9rem;font-weight:700;margin:.5rem 0}.selected-badge{display:inline-block;padding:.5rem .75rem;background:#000;color:#fff;border:3px solid #000;font-family:Courier New,monospace;font-weight:700;font-size:.85rem;margin-top:.5rem;margin-right:.5rem;text-transform:uppercase}.upcoming-movie-card .trailer-link{margin-top:.5rem;display:inline-block;padding:.5rem .75rem;border:3px solid #000;background:#000;color:#fff;font-family:Courier New,monospace;font-weight:700;text-decoration:none;text-transform:uppercase;font-size:.85rem;transition:all .2s;box-sizing:border-box}.upcoming-movie-card .trailer-link:hover{background:#fff;color:#000}.upcoming-movie-card.selected .trailer-link{background:#000;color:#fff}.upcoming-movie-card.selected .trailer-link:hover{background:#fff;color:#000}.voting-prompt{text-align:center;padding:2rem}.voting-prompt h3{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;text-transform:uppercase;margin-bottom:1rem}.vote-now-button{display:inline-block;padding:1rem 2rem;border:4px solid #000;background:#000;color:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1.2rem;text-decoration:none;text-transform:uppercase;margin-top:1rem;transition:all .2s}.vote-now-button:hover{background:#fff;color:#000}.items-section-present{margin-top:2rem;padding-top:1.5rem;border-top:3px solid #000}.items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.items-header h4{font-family:Courier New,monospace;font-size:1.1rem;font-weight:700;text-transform:uppercase;margin:0}.add-item-btn{padding:.5rem 1rem;border:3px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:.9rem;cursor:pointer;text-transform:uppercase;transition:background .2s}.add-item-btn:hover{background:#000;color:#fff}.add-item-form{display:flex;gap:.75rem;margin-bottom:1rem;padding:1rem;border:3px solid #000;background:#fff}.add-item-input{flex:1;padding:.75rem;border:3px solid #000;font-family:Courier New,monospace;font-size:1rem;text-transform:uppercase}.add-item-input:focus{outline:none;border-color:#000}.submit-item-btn{padding:.75rem 1.5rem;border:3px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1rem;cursor:pointer;text-transform:uppercase;transition:background .2s}.submit-item-btn:hover:not(:disabled){background:#000;color:#fff}.submit-item-btn:disabled{opacity:.5;cursor:not-allowed}.items-list-present{display:flex;flex-direction:column;gap:.75rem}.item-card-present{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border:3px solid #000;background:#fff}.item-card-present.claimed{opacity:.6;border:2px dashed #999;background:#f5f5f5}.item-actions{display:flex;align-items:center;gap:.75rem}.delete-item-btn{padding:.25rem .5rem;border:2px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1.2rem;cursor:pointer;color:#000;line-height:1;transition:background .2s;min-width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.delete-item-btn:hover{background:#000;color:#fff}.no-items-message{font-family:Courier New,monospace;font-size:.9rem;color:#666;text-align:center;padding:1rem;border:2px dashed #ccc;background:#f9f9f9}.item-name{font-family:Courier New,monospace;font-weight:700;font-size:.9rem}.claim-button{padding:.4rem .8rem;border:3px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:.85rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.item-claimed-wrapper{display:flex;align-items:center;gap:.5rem;opacity:.7}.item-claimed-avatar{width:24px;height:24px;border:1.5px solid #999;border-radius:50%;object-fit:cover;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;flex-shrink:0;opacity:.8}.item-claimed-avatar-initial{width:24px;height:24px;border:1.5px solid #999;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Courier New,monospace;font-weight:400;font-size:.7rem;color:#fff;text-transform:uppercase;flex-shrink:0;opacity:.8}.item-claimed{font-family:Courier New,monospace;font-size:.8rem;color:#999;font-weight:400;font-style:italic}.no-upcoming-event{text-align:center;padding:2rem;font-family:Courier New,monospace;color:#666}.future-section{margin-bottom:3rem}.free-evenings-calendar{border:4px solid #000;padding:1rem;background:#fff}.week-dates-grid{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.5rem;-webkit-overflow-scrolling:touch}.week-dates-grid::-webkit-scrollbar{height:8px}.week-dates-grid::-webkit-scrollbar-track{background:#f0f0f0;border:1px solid #000}.week-dates-grid::-webkit-scrollbar-thumb{background:#000;border-radius:0}.day-card{border:3px solid #000;padding:.75rem .5rem;background:#fff;display:flex;flex-direction:column;align-items:center;gap:.4rem;min-width:70px;flex-shrink:0;transition:transform .2s,box-shadow .2s;cursor:pointer}.day-card:hover{transform:translateY(-2px);box-shadow:4px 4px #0000004d}.day-card.has-meeting{background:#ffeb3b;border-color:#ff9800;cursor:default}.day-card.marked-free{background:#e8f5e9;border-color:#4caf50}.day-header{display:flex;flex-direction:column;align-items:center;gap:.25rem;width:100%}.day-name{font-family:Courier New,monospace;font-size:.7rem;font-weight:700;text-transform:uppercase;color:#666}.day-number{font-family:Courier New,monospace;font-size:1.4rem;font-weight:700;line-height:1}.day-status{display:flex;justify-content:center;width:100%}.meeting-badge{font-family:Courier New,monospace;font-size:.65rem;font-weight:700;padding:.25rem .5rem;background:#ff9800;color:#fff;border:2px solid #000;text-transform:uppercase}.mark-free-btn{font-family:Courier New,monospace;font-size:.7rem;font-weight:700;padding:.4rem .6rem;border:2px solid #000;background:#fff;color:#000;cursor:pointer;text-transform:uppercase;transition:all .2s;width:100%;line-height:1.2}.mark-free-btn:hover{background:#000;color:#fff}.mark-free-btn.marked{background:#4caf50;color:#fff;border-color:#2e7d32}.mark-free-btn.marked:hover{background:#2e7d32}.free-users-list{display:flex;flex-direction:column;align-items:center;gap:.3rem;width:100%;margin-top:.2rem}.free-users-count{font-family:Courier New,monospace;font-size:.55rem;font-weight:700;color:#666;text-transform:uppercase;margin:0}.free-users-avatars{display:flex;gap:.25rem;align-items:center;justify-content:center;flex-wrap:wrap}.free-user-avatar{width:24px;height:24px;border:2px solid #000;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.free-user-avatar img{width:100%;height:100%;object-fit:cover}.free-user-initial{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:Courier New,monospace;font-weight:700;font-size:.7rem;color:#fff;text-transform:uppercase}.free-user-more{font-family:Courier New,monospace;font-size:.6rem;font-weight:700;color:#666}.loading-free-evenings{padding:2rem;text-align:center;font-family:Courier New,monospace;font-size:1rem;color:#666}.future-explanation{padding:1.5rem;border:3px solid #000;background:#fff}.future-explanation p{font-family:Courier New,monospace;font-size:.9rem;line-height:1.6;color:#333;margin:0;text-align:center}.past-section{margin-bottom:3rem}.past-meetings-list{display:flex;flex-direction:column;gap:1.5rem}.past-meeting-card{border:4px solid #000;padding:1.5rem;background:#fff;margin-bottom:1.5rem}.past-meeting-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #000}.past-meeting-date{font-family:Courier New,monospace;font-size:1rem;font-weight:700;margin-bottom:.5rem}.past-meeting-location{font-family:Courier New,monospace;font-size:.9rem;color:#666}.past-movie-rating-card{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;margin-bottom:2rem;padding:1rem;border:3px solid #000;background:#fff;align-items:flex-start}.movie-rating-left{display:flex;flex-direction:column;align-items:center;gap:.75rem;flex-shrink:0}.movie-rating-poster{width:120px;height:180px;object-fit:cover;border:3px solid #000}.movie-rating-name{font-family:Courier New,monospace;font-size:.9rem;font-weight:700;text-align:center;text-transform:uppercase;word-wrap:break-word;max-width:120px}.movie-rating-right{display:flex;flex-direction:column;gap:1rem;flex:1 1 250px;min-width:0}.movie-rating-stars{display:flex;gap:.5rem;align-items:center}.star-btn-editable{background:none;border:none;font-size:2rem;color:#ccc;cursor:pointer;padding:0;transition:color .2s;line-height:1}.star-btn-editable.filled,.star-btn-editable:hover,.movie-rating-stars:hover .star-btn-editable.filled{color:#000}.movie-rating-comment{display:flex;flex-direction:column;gap:.5rem}.comment-label-row{display:flex;align-items:center;gap:.5rem}.comment-label-row label{font-family:Courier New,monospace;font-weight:700;font-size:.9rem;text-transform:uppercase}.tooltip-container{position:relative;display:inline-block}.tooltip-icon{font-family:Courier New,monospace;font-size:1rem;font-weight:700;color:#666;cursor:pointer;border:2px solid #000;border-radius:50%;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;line-height:1;background:#fff;-webkit-user-select:none;user-select:none}.tooltip-icon:hover{background:#000;color:#fff}.tooltip-popup{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.5rem;padding:.75rem 1rem;background:#fff;border:3px solid #000;font-family:Courier New,monospace;font-size:.85rem;line-height:1.4;color:#000;z-index:1000;box-shadow:4px 4px #0003;min-width:300px;max-width:400px;white-space:normal}.tooltip-popup:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:#000}.movie-comment-textarea{width:100%;padding:.75rem;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;background:#fff;color:#000;resize:vertical;min-height:100px}.saved-comment{padding:.75rem;border:3px solid #000;background:#f9f9f9;font-family:Courier New,monospace;font-size:.9rem;line-height:1.6;position:relative}.saved-comment p{margin:0;margin-bottom:.5rem}.edit-rating-btn{padding:.4rem .8rem;border:3px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:.85rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.edit-rating-btn:hover{background:#000;color:#fff}.rating-actions{display:flex;gap:.5rem}.save-rating-btn,.cancel-rating-btn{padding:.5rem 1rem;border:3px solid #000;background:#000;color:#fff;font-family:Courier New,monospace;font-weight:700;font-size:.85rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.save-rating-btn:hover:not(:disabled){background:#333}.save-rating-btn:disabled{opacity:.5;cursor:not-allowed}.cancel-rating-btn{background:#fff;color:#000}.cancel-rating-btn:hover{background:#f0f0f0}.no-past-meetings{text-align:center;padding:2rem;font-family:Courier New,monospace;color:#666}.main-content{padding:2rem;max-width:1200px;margin:0 auto}.main-content section{margin-bottom:3rem;border:4px solid #000;padding:2rem;background:#fff}.meeting-details{margin-top:1rem;padding-top:1rem;border-top:2px solid #000}.meeting-time{font-family:Courier New,monospace;font-weight:700;font-size:1rem;margin-bottom:.75rem}.meeting-location{margin-top:.75rem}.location-address{font-family:Courier New,monospace;font-size:.9rem;margin-bottom:.5rem}.location-links{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}.location-link{padding:.4rem .8rem;border:3px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:.85rem;text-decoration:none;color:#000;transition:all .2s}.location-link:hover{background:#000;color:#fff}.main-content h2{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;text-transform:uppercase;margin-bottom:1.5rem;border-bottom:2px solid #000;padding-bottom:.5rem}.next-movie-card{display:flex;gap:2rem;padding:2rem;border:4px solid #000;background:#fff}.next-movie-poster{width:200px;height:auto;border:4px solid #000}.next-movie-info{flex:1}.next-movie-info h3{font-family:Courier New,monospace;font-size:2rem;font-weight:700;text-transform:uppercase;margin-bottom:1rem}.next-movie-info p{font-family:Courier New,monospace;font-size:1rem;line-height:1.6;margin-bottom:1rem}.trailer-link{display:inline-block;padding:.75rem 1.5rem;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;text-decoration:none;color:#000;text-transform:uppercase;transition:background .2s}.trailer-link:hover{background:#000;color:#fff}.movie-history-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.history-card{border:4px solid #000;padding:1rem;background:#fff;display:flex;flex-direction:column}.history-poster{width:100%;height:auto;margin-bottom:1rem;border:2px solid #000}.history-info h4{font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;text-transform:uppercase;margin-bottom:.5rem}.history-date{font-family:Courier New,monospace;font-size:.9rem;margin-bottom:.5rem}.history-rating{font-family:Courier New,monospace;margin-bottom:1rem}.stars{color:#000;font-size:1.2rem}.review-link{display:inline-block;padding:.5rem 1rem;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;text-decoration:none;color:#000;text-transform:uppercase;margin-top:.5rem;transition:background .2s}.review-link:hover{background:#000;color:#fff}.reviews-details{margin-top:1rem}.reviews-details summary{font-family:Courier New,monospace;font-weight:700;cursor:pointer;text-transform:uppercase;margin-bottom:.5rem}.reviews-list{margin-top:1rem;padding-left:1rem;border-left:4px solid #000}.review-item{margin-bottom:1rem;font-family:Courier New,monospace}.review-item strong{text-transform:uppercase}.review-item p{margin-top:.25rem;font-size:.9rem}.items-list{display:flex;flex-direction:column;gap:1rem}.item-card{border:4px solid #000;padding:1.5rem;display:flex;justify-content:space-between;align-items:center;background:#fff}.item-name{font-family:Courier New,monospace;font-weight:700;font-size:1.2rem;text-transform:uppercase}.item-claimed{font-family:Courier New,monospace;font-weight:700;text-transform:uppercase}.claim-button{padding:.5rem 1.5rem;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1rem;cursor:pointer;text-transform:uppercase;transition:background .2s}.claim-button:hover{background:#000;color:#fff}.main-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-family:Courier New,monospace;font-weight:700;font-size:1.5rem;text-transform:uppercase}.candidates-voting-section{margin-top:2rem;padding-top:2rem;border-top:3px solid #000}.candidates-voting-section h4{font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;text-transform:uppercase;margin-bottom:1.5rem}.candidates-voting-list{display:flex;flex-direction:column;gap:1.5rem}.candidate-voting-card{display:flex;gap:1.5rem;padding:1.5rem;border:3px solid #000;background:#fff}.candidate-voting-poster{width:120px;height:180px;object-fit:cover;border:2px solid #000;flex-shrink:0}.candidate-voting-info{flex:1;display:flex;flex-direction:column;gap:.75rem}.candidate-voting-info h5{font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;text-transform:uppercase;margin:0}.candidate-description{font-family:Courier New,monospace;font-size:.9rem;line-height:1.5;color:#333;margin:0}.vote-counts{display:flex;gap:1rem;font-family:Courier New,monospace;font-weight:700}.yes-count{color:#0a0}.no-count{color:#a00}.candidate-voting-actions{margin-top:.5rem}.vote-buttons{display:flex;gap:.75rem}.vote-yes-btn,.vote-yes-btn-modal{background:#0a0;color:#fff;border:3px solid #000;padding:.75rem 1.5rem;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.vote-yes-btn:hover,.vote-yes-btn-modal:hover{background:#0c0}.vote-no-btn,.vote-no-btn-modal{background:#a00;color:#fff;border:3px solid #000;padding:.75rem 1.5rem;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.vote-no-btn:hover,.vote-no-btn-modal:hover{background:#c00}.my-vote-display{display:flex;flex-direction:column;gap:.5rem}.my-vote-badge{display:inline-block;padding:.5rem 1rem;border:3px solid #000;font-family:Courier New,monospace;font-weight:700;font-size:.9rem;text-transform:uppercase;width:fit-content}.my-vote-badge.yes{background:#0a0;color:#fff}.my-vote-badge.no{background:#a00;color:#fff}.my-vote-reason{font-family:Courier New,monospace;font-size:.85rem;font-style:italic;color:#666;margin:0}.change-vote-btn{background:#666;color:#fff;border:2px solid #000;padding:.5rem 1rem;font-family:Courier New,monospace;font-weight:700;font-size:.85rem;text-transform:uppercase;cursor:pointer;width:fit-content}.change-vote-btn:hover{background:#555}.no-candidates-message{font-family:Courier New,monospace;font-size:1rem;text-align:center;padding:2rem;color:#666}.voting-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.voting-modal{background:#fff;border:4px solid #000;padding:2rem;max-width:500px;width:100%;font-family:Courier New,monospace}.voting-modal h3{font-size:1.5rem;font-weight:700;text-transform:uppercase;margin:0 0 1.5rem}.voting-modal-content{display:flex;flex-direction:column;gap:1rem}.vote-reason-input{width:100%;min-height:100px;padding:.75rem;border:3px solid #000;font-family:Courier New,monospace;font-size:.9rem;resize:vertical;box-sizing:border-box}.voting-modal-actions{display:flex;gap:.75rem;flex-wrap:wrap}.cancel-vote-btn{background:#666;color:#fff;border:3px solid #000;padding:.75rem 1.5rem;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.cancel-vote-btn:hover{background:#555}.suggest-movies-section{margin-top:2rem;padding-top:2rem;border-top:3px solid #000;text-align:left}.suggest-movies-section h4{font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;text-transform:uppercase;margin-bottom:1rem}.suggestions-limit-reached{font-family:Courier New,monospace;font-size:1rem;color:#666;font-style:italic;margin-bottom:1rem}.movie-search-input{flex:1;padding:.75rem;border:4px solid #000;font-family:Courier New,monospace;font-weight:700;background:#fff;font-size:1rem}.search-section button{padding:.75rem 1.5rem;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;cursor:pointer;text-transform:uppercase;transition:background .2s;font-size:1.1rem;letter-spacing:.1em;min-width:120px;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.search-result-card img{width:100px;height:auto;object-fit:cover;flex-shrink:0}.search-result-card div{flex:1}.search-result-card h5{font-family:Courier New,monospace;font-weight:700;text-transform:uppercase;margin-bottom:.5rem;font-size:1rem}.search-result-card p{font-family:Courier New,monospace;font-size:.9rem;margin-bottom:.5rem;line-height:1.4}.search-result-card button{padding:.5rem 1rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;cursor:pointer;text-transform:uppercase;margin-top:.5rem;transition:background .2s,color .2s;font-size:.9rem;letter-spacing:.05em}.voting-page{min-height:100vh;background:#fff;padding:2rem}.voting-container{max-width:600px;margin:0 auto}.voting-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-family:Courier New,monospace;font-weight:700;font-size:1.5rem;text-transform:uppercase}.voting-header{text-align:center;margin-bottom:2rem;border-bottom:6px solid #000;padding-bottom:1rem}.voting-header h1{font-family:Courier New,monospace;font-size:2.5rem;font-weight:700;text-transform:uppercase;margin-bottom:1rem}.voting-subtitle{font-family:Courier New,monospace;font-size:1rem;font-weight:700;color:#000;margin-top:.5rem;margin-bottom:.5rem}.voting-meeting-time{font-family:Courier New,monospace;font-size:1rem;font-weight:700;color:#000;margin-top:.5rem}.voting-actions-header{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem;flex-wrap:wrap}.vote-movies-btn,.suggest-movies-btn{padding:1rem 2rem;border:6px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1rem;cursor:pointer;text-transform:uppercase;transition:background .2s}.vote-movies-btn{font-size:1.2rem}.vote-movies-btn:hover,.suggest-movies-btn:hover{background:#000;color:#fff}.swipe-area{margin:2rem 0;min-height:600px;display:flex;align-items:center;justify-content:center}.voting-complete{text-align:center;padding:3rem;border:6px solid #000;background:#fff;margin:2rem 0}.voting-complete h2{font-family:Courier New,monospace;font-size:2rem;font-weight:700;text-transform:uppercase;margin-bottom:1rem}.voting-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.vote-button{padding:1.5rem 3rem;border:6px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1.5rem;cursor:pointer;text-transform:uppercase;transition:all .2s}.vote-button.like:hover,.vote-button.dislike:hover{background:#000;color:#fff}.review-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.review-modal{background:#fff;border:8px solid #000;padding:2rem;max-width:500px;width:90%;font-family:Courier New,monospace}.review-modal h3{font-family:Courier New,monospace;font-weight:700;font-size:1.5rem;text-transform:uppercase;margin-bottom:1.5rem;text-align:center}.review-textarea{width:100%;padding:1rem;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;resize:vertical;min-height:120px;margin-bottom:1.5rem;background:#fff}.review-textarea:focus{outline:none;background:#fff}.review-modal-actions{display:flex;gap:1rem;justify-content:center}.skip-review-btn,.submit-review-btn{padding:1rem 2rem;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1rem;cursor:pointer;text-transform:uppercase;transition:background .2s}.skip-review-btn:hover,.submit-review-btn:hover{background:#000;color:#fff}.suggest-movies-section{margin-top:3rem;border-top:6px solid #000;padding-top:2rem}.suggest-movies-section h2{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;text-transform:uppercase;margin-bottom:1rem}.add-movie-section{border:6px solid #000;padding:2rem;background:#fff;margin-top:2rem}.add-movie-section h2{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;text-transform:uppercase;margin-bottom:1rem}.search-section{display:flex;gap:1rem;margin-bottom:1rem}.movie-search-input{flex:1;padding:.75rem;border:4px solid #000;font-family:Courier New,monospace;font-weight:700;background:#fff}.movie-search-input:focus{outline:none}.search-section button{padding:.75rem 1.5rem;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;cursor:pointer;text-transform:uppercase;transition:background .2s}.search-section button:hover:not(:disabled){background:#000;color:#fff}.search-section button:disabled{opacity:.5;cursor:not-allowed}.search-results{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.search-result-card{border:4px solid #000;padding:1rem;display:flex;gap:1rem;background:#fff}.search-result-card img{width:100px;height:auto;object-fit:cover}.search-result-card h3{font-family:Courier New,monospace;font-weight:700;text-transform:uppercase;margin-bottom:.5rem}.search-result-card p{font-family:Courier New,monospace;font-size:.9rem;margin-bottom:.5rem}.search-result-card button{padding:.5rem 1rem;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;cursor:pointer;text-transform:uppercase;margin-top:.5rem;transition:background .2s}.search-result-card button:hover{background:#000;color:#fff}.movie-reviews-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.movie-reviews-modal{background:#fff;border:3px solid #000;max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column;font-family:Courier New,monospace}.movie-reviews-modal-header{padding:1.5rem;border-bottom:2px solid #000;display:flex;justify-content:space-between;align-items:flex-start}.movie-reviews-modal-title-section{display:flex;gap:1rem;align-items:flex-start}.movie-reviews-modal-poster{width:80px;height:120px;object-fit:cover;border:2px solid #000}.movie-reviews-modal-title-section h2{margin:0 0 .5rem;font-size:1.5rem;text-transform:uppercase;font-weight:700}.movie-reviews-modal-subtitle{margin:0;font-size:.9rem;color:#666}.movie-reviews-modal-close{background:#000;color:#fff;border:none;width:40px;height:40px;font-size:1.5rem;cursor:pointer;font-family:Courier New,monospace;font-weight:700;transition:background .2s}.movie-reviews-modal-close:hover{background:#333}.movie-reviews-modal-content{padding:1.5rem;overflow-y:auto;flex:1}.movie-reviews-modal-loading,.movie-reviews-modal-error,.movie-reviews-modal-empty{text-align:center;padding:2rem;font-size:1.1rem}.movie-reviews-modal-error{color:#d00}.movie-reviews-list{display:flex;flex-direction:column;gap:1.5rem}.movie-review-item{border:2px solid #000;padding:1.5rem;background:#f9f9f9}.movie-review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.movie-review-user{display:flex;align-items:center;gap:.75rem}.movie-review-avatar{width:40px;height:40px;border-radius:50%;border:2px solid #000;object-fit:cover}.movie-review-username{font-weight:700;font-size:1.1rem}.movie-review-rating{font-size:1.2rem}.movie-review-comment{margin:1rem 0;line-height:1.6;font-size:1rem}.movie-review-meta{display:flex;gap:1rem;font-size:.9rem;color:#666;margin-top:.5rem}.movie-review-date{font-weight:700}.movie-review-location{display:flex;align-items:center;gap:.25rem}.votes-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.votes-modal{background:#fff;border:3px solid #000;max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column;font-family:Courier New,monospace}.votes-modal-header{padding:1.5rem;border-bottom:2px solid #000;display:flex;justify-content:space-between;align-items:flex-start}.votes-modal-title-section{display:flex;gap:1rem;align-items:flex-start}.votes-modal-poster{width:80px;height:120px;object-fit:cover;border:2px solid #000}.votes-modal-title-section h2{margin:0 0 .5rem;font-size:1.5rem;text-transform:uppercase;font-weight:700}.votes-modal-subtitle{margin:0;font-size:.9rem;color:#666}.votes-modal-close{background:#000;color:#fff;border:none;width:40px;height:40px;font-size:1.5rem;cursor:pointer;font-family:Courier New,monospace;font-weight:700;transition:background .2s}.votes-modal-close:hover{background:#333}.votes-modal-content{padding:1.5rem;overflow-y:auto;flex:1}.votes-modal-empty{text-align:center;padding:2rem;font-size:1.1rem}.vote-item{border:2px solid #000;padding:1.5rem;background:#f9f9f9}.vote-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.vote-user{display:flex;align-items:center;gap:.5rem}.vote-avatar{width:32px;height:32px;border-radius:50%;border:2px solid #000;object-fit:cover}.vote-username{font-weight:700;font-size:.9rem}.vote-type{font-weight:700;font-size:.9rem;padding:.25rem .5rem;border:2px solid #000}.vote-type.yes{background:#d4edda;color:#155724}.vote-type.no{background:#f8d7da;color:#721c24}.vote-reason{font-size:.9rem;line-height:1.5;color:#333;margin:.5rem 0 0;padding-left:.5rem;border-left:2px solid #ccc;font-style:italic}.admin-page{min-height:100vh;background:#fff}.admin-header{border-bottom:6px solid #000;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;background:#fff}.admin-header h1{font-family:Courier New,monospace;font-size:2rem;font-weight:700;text-transform:uppercase;margin:0}.admin-nav-link{font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;color:#000;text-decoration:none;padding:.5rem 1rem;border:4px solid #000;transition:all .2s}.admin-nav-link:hover{background:#000;color:#fff}.admin-container{max-width:1000px;margin:0 auto;padding:2rem;display:flex;flex-direction:column;gap:2rem}.admin-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-family:Courier New,monospace;font-weight:700;font-size:1.5rem;text-transform:uppercase}.admin-section{border:6px solid #000;padding:2rem;background:#fff;margin-bottom:0}.admin-section h2{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;text-transform:uppercase;margin-bottom:1.5rem;border-bottom:2px solid #000;padding-bottom:.5rem}.users-list{display:flex;flex-direction:column;gap:1rem}.user-card{border:4px solid #000;padding:1.5rem;display:flex;justify-content:space-between;align-items:center;background:#fff}.user-info{display:flex;flex-direction:row;align-items:center;gap:1rem;flex:1}.user-avatar{width:48px;height:48px;border:3px solid #000;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;flex-shrink:0}.user-details{display:flex;flex-direction:column;gap:.5rem;flex:1}.username{font-family:Courier New,monospace;font-weight:700;font-size:1.2rem;text-transform:uppercase}.user-date{font-family:Courier New,monospace;font-size:.9rem}.admin-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-family:Courier New,monospace;font-weight:700;text-transform:uppercase}.admin-toggle input[type=checkbox]{width:20px;height:20px;cursor:pointer}.admin-button{padding:.75rem 1.5rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s;margin-bottom:1rem}.admin-button:hover{background:#000;color:#fff}.admin-button.small{padding:.5rem 1rem;font-size:.9rem;margin-left:1rem}.create-cycle-form{border:4px solid #000;padding:1.5rem;margin-bottom:2rem;background:#fff}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;margin-bottom:.5rem}.form-group input[type=datetime-local],.form-group input[type=text]{width:100%;padding:.75rem;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;background:#fff;color:#000}.movies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;max-height:400px;overflow-y:auto;padding:1rem;border:4px solid #000}.movie-select-item{border:4px solid #000;padding:.5rem;cursor:pointer;text-align:center;background:#fff;transition:all .2s}.movie-select-item:hover{background:#f0f0f0}.movie-select-item.selected{background:#000;color:#fff}.movie-select-item img{width:100%;height:auto;display:block;margin-bottom:.5rem}.movie-select-item span{font-family:Courier New,monospace;font-size:.85rem;font-weight:700;display:block}.cycles-list{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.cycle-card{border:4px solid #000;padding:1.5rem;background:#fff}.cycle-card.active{border-width:6px;background:#f9f9f9}.cycle-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.cycle-info{display:flex;flex-direction:column;gap:.5rem}.cycle-status{font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;padding:.25rem .75rem;border:3px solid #000;display:inline-block;width:fit-content}.cycle-card.active .cycle-status{background:#000;color:#fff}.cycle-dates{font-family:Courier New,monospace;font-size:.9rem}.cycle-creator{font-family:Courier New,monospace;font-size:.85rem;opacity:.7}.cycle-actions{display:flex;align-items:center;gap:1rem}.cycle-movies{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem;margin-top:1rem}.cycle-movie-item{border:3px solid #000;padding:.5rem;text-align:center;background:#fff}.cycle-movie-item img{width:100%;height:auto;display:block;margin-bottom:.5rem}.cycle-movie-item span{font-family:Courier New,monospace;font-size:.8rem;font-weight:700;display:block}.admin-password-form{max-width:500px;margin:0 auto}.admin-password-form input[type=password]{width:100%;padding:.75rem;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;background:#fff;color:#000}.error-message{display:block;color:#000;font-family:Courier New,monospace;font-size:.9rem;font-weight:700;margin-top:.5rem;padding:.5rem;border:3px solid #000;background:#fff}.admin-badge{font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;padding:.5rem 1rem;border:3px solid #000;background:#000;color:#fff}.create-user-form{border:4px solid #000;padding:1.5rem;margin-bottom:2rem;background:#fff}.create-user-form input[type=text]{width:100%;padding:.75rem;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;background:#fff;color:#000}.user-status{font-family:Courier New,monospace;font-size:.85rem;color:#666;font-style:italic}.user-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.delete-btn{background:red;color:#fff;border-color:#000}.delete-btn:hover:not(:disabled){background:#c00}.delete-btn:disabled{opacity:.6;cursor:not-allowed}.movie-search-section{margin-top:.5rem}.search-input-group{display:flex;gap:.5rem;margin-bottom:1rem}.movie-search-input{flex:1;padding:.75rem;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;background:#fff;color:#000}.search-btn{padding:.75rem 1.5rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.search-btn:hover:not(:disabled){background:#000;color:#fff}.search-btn:disabled{opacity:.5;cursor:not-allowed}.movie-search-results{border:4px solid #000;max-height:300px;overflow-y:auto;margin-bottom:1rem}.movie-search-result-item{display:flex;gap:1rem;padding:1rem;border-bottom:2px solid #000;cursor:pointer;transition:background .2s}.movie-search-result-item:last-child{border-bottom:none}.movie-search-result-item:hover{background:#f0f0f0}.movie-search-result-item img{width:60px;height:90px;object-fit:cover;border:2px solid #000;flex-shrink:0}.movie-search-result-item h4{font-family:Courier New,monospace;font-weight:700;font-size:1rem;margin:0 0 .5rem}.movie-search-result-item p{font-family:Courier New,monospace;font-size:.85rem;margin:0;color:#666}.selected-movie{font-family:Courier New,monospace;font-weight:700;padding:.5rem;background:#f0f0f0;border:2px solid #000;margin-top:.5rem}.meetings-list-admin{width:100%;box-sizing:border-box;margin-top:2rem}.meetings-grid{display:flex;flex-direction:column;gap:2rem;margin-top:1rem;width:100%;box-sizing:border-box}.meeting-card-admin{border:4px solid #000;padding:1.5rem;background:#fff;display:flex;flex-direction:column;gap:1rem;position:relative;min-width:0;overflow:visible;box-sizing:border-box;width:100%;max-width:100%}.meeting-card-content{display:flex;flex-direction:column;gap:1rem;width:100%;box-sizing:border-box}.meeting-poster-admin{width:80px;height:120px;object-fit:cover;border:3px solid #000;flex-shrink:0}.meeting-info-admin{flex:1;display:flex;flex-direction:column}.meeting-info-admin h4{font-family:Courier New,monospace;font-size:1.1rem;font-weight:700;text-transform:uppercase;margin:0 0 .5rem}.meeting-date-admin{font-family:Courier New,monospace;font-size:.9rem;margin:.25rem 0}.meeting-location-admin{font-family:Courier New,monospace;font-size:.85rem;margin:.25rem 0;color:#666}.ratings-summary-admin{display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem;font-family:Courier New,monospace;font-size:.85rem}.ratings-summary-admin span{font-weight:700}.selected-movies-list{margin-top:1rem;padding:1rem;border:3px solid #000;background:#f0f0f0}.selected-movie-label{font-family:Courier New,monospace;font-weight:700;font-size:.9rem;margin-bottom:.5rem}.selected-movie-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;margin:.25rem 0;background:#fff;border:2px solid #000;font-family:Courier New,monospace}.remove-movie-btn{background:red;color:#fff;border:2px solid #000;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;font-size:1rem}.remove-movie-btn:hover{background:#c00}.meeting-movies-admin{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.meeting-movie-item-admin{display:flex;flex-direction:column;align-items:center;gap:.25rem}.meeting-movie-title{font-family:Courier New,monospace;font-size:.85rem;font-weight:700;text-align:center}.voting-in-progress-message{padding:1rem;border:3px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:.9rem;text-transform:uppercase;text-align:center;color:#666}.delete-meeting-btn{padding:.5rem 1rem;border:3px solid #000;background:red;color:#fff;font-family:Courier New,monospace;font-weight:700;font-size:.85rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.delete-meeting-btn:hover:not(:disabled){background:#c00}.delete-meeting-btn:disabled{opacity:.6;cursor:not-allowed}.edit-meeting-btn{padding:.5rem 1rem;border:3px solid #000;background:#000;color:#fff;font-family:Courier New,monospace;font-weight:700;font-size:.85rem;text-transform:uppercase;cursor:pointer}.edit-meeting-btn:hover{background:#333}.edit-meeting-modal{border:4px solid #000;padding:1.5rem;margin-top:1rem;background:#fff}.edit-meeting-title{font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;text-transform:uppercase;margin:0 0 1rem}.edit-meeting-form .form-group input{width:100%;padding:.5rem 1rem;border:3px solid #000;font-family:Courier New,monospace;font-size:1rem;box-sizing:border-box}.edit-meeting-actions{display:flex;gap:1rem;margin-top:1rem}.meeting-card-admin.upcoming-meeting{border-color:#000;background:#f9f9f9}.upcoming-badge-admin{position:absolute;top:-2px;right:-2px;padding:.25rem .5rem;background:#000;color:#fff;font-family:Courier New,monospace;font-weight:700;font-size:.7rem;text-transform:uppercase;z-index:10;border:2px solid #000;box-sizing:border-box}@media(max-width:768px){.admin-header{flex-direction:column;gap:1rem;padding:1rem}.admin-header h1{font-size:1.5rem}.admin-container,.admin-section{padding:1rem}.admin-section h2{font-size:1.2rem}.create-user-form{flex-direction:column}.create-user-form input{width:100%}.users-list{gap:1rem}.user-card{flex-direction:column;gap:1rem}.user-info{width:100%}.user-actions{width:100%;justify-content:center}.admin-button{width:100%}.create-cycle-form{flex-direction:column}.movies-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.movie-select-item{padding:.5rem}.cycles-list{gap:1rem}.cycle-card{padding:1rem}.carousel-header{flex-direction:column;align-items:flex-start}.carousel-nav-buttons-top{width:100%;justify-content:space-between}.carousel-nav-btn{flex:1}.carousel-poster-container,.carousel-poster{max-width:100%}.carousel-movie-description{font-size:.9rem;text-align:center;padding:0}.carousel-tooltip{width:250px;font-size:.75rem}.carousel-movie-title{font-size:1rem}.carousel-movie-actions{flex-direction:column;width:100%}.carousel-movie-actions button{width:100%}}.bring-list-section-admin{margin-top:1.5rem;padding-top:1.5rem;border-top:3px solid #000}.bring-list-header-admin{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.bring-list-title-admin{font-family:Courier New,monospace;font-size:1.1rem;font-weight:700;text-transform:uppercase;margin:0}.add-item-btn-admin{padding:.5rem 1rem;border:3px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:.9rem;cursor:pointer;text-transform:uppercase;transition:background .2s,color .2s}.add-item-btn-admin:hover{background:#000;color:#fff}.add-item-form-admin{display:flex;gap:.75rem;margin-bottom:1rem;padding:1rem;border:3px solid #000;background:#fff}.add-item-input-admin{flex:1;padding:.75rem;border:3px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-size:1rem;text-transform:uppercase}.add-item-input-admin::placeholder{color:#999;text-transform:none}.add-item-input-admin:focus{outline:none;border-color:#000}.submit-item-btn-admin{padding:.75rem 1.5rem;border:3px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1rem;cursor:pointer;text-transform:uppercase;transition:background .2s,color .2s}.submit-item-btn-admin:hover:not(:disabled){background:#000;color:#fff}.submit-item-btn-admin:disabled{opacity:.5;cursor:not-allowed}.items-list-admin{display:flex;flex-direction:column;gap:.75rem}.item-card-admin{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border:3px solid #000;background:#fff}.item-name-admin{font-family:Courier New,monospace;font-weight:700;font-size:.9rem;text-transform:uppercase}.item-actions-admin{display:flex;align-items:center;gap:.75rem}.item-claimed-admin{font-family:Courier New,monospace;font-size:.85rem;text-transform:uppercase}.item-available-admin{font-family:Courier New,monospace;font-size:.85rem;color:#666;font-style:italic;text-transform:uppercase}.delete-item-btn-admin{padding:.25rem .5rem;border:2px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1.2rem;cursor:pointer;color:#000;line-height:1;transition:background .2s;min-width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.delete-item-btn-admin:hover{background:#000;color:#fff}.no-items-message-admin{font-family:Courier New,monospace;font-size:.9rem;color:#666;text-align:center;padding:1rem;border:2px dashed #ccc;background:#f9f9f9}.ai-suggestions-section{margin-top:1rem;padding:1.5rem;border-top:3px solid #000;background:#f9f9f9;width:100%;box-sizing:border-box;clear:both}.ai-suggestions-title{font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;text-transform:uppercase;margin:0 0 1rem}.ai-button{background:#000;color:#fff;border:none;padding:.75rem 2rem;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:background .2s}.ai-button:hover{background:#333}.ai-suggestions-loading{font-family:Courier New,monospace;padding:1rem;text-align:center;font-size:1rem}.ai-suggestions-count{font-family:Courier New,monospace;font-weight:700;margin:0 0 1rem;font-size:.9rem}.ai-suggestions-carousel-container{margin-top:1rem;width:100%}.carousel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.carousel-nav-buttons-top{display:flex;gap:.5rem}.carousel-viewport-wrapper{width:100%;overflow:hidden}.carousel-viewport{width:100%;overflow:hidden;position:relative}.carousel-track{display:flex;transition:transform .3s ease-in-out;will-change:transform}.carousel-slide{min-width:100%;flex-shrink:0;max-width:100%}.carousel-movie-card{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem;border:3px solid #000;background:#fff;text-align:center;width:100%;min-width:100%;max-width:100%;box-sizing:border-box}.carousel-poster-container{position:relative;width:100%;display:flex;justify-content:center;max-width:500px}.carousel-poster{width:100%;max-width:400px;height:auto;aspect-ratio:2 / 3;object-fit:cover;border:3px solid #000;display:block}.carousel-movie-title{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;margin:0;text-transform:uppercase;text-align:center;line-height:1.2;width:100%}.carousel-movie-description{font-family:Courier New,monospace;font-size:1rem;line-height:1.6;color:#333;margin:0;max-width:700px;width:100%;text-align:left;padding:0 1rem}.carousel-movie-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;width:100%;margin-top:.5rem}.carousel-nav-btn{background:#000;color:#fff;border:3px solid #000;padding:.5rem 1rem;font-size:.9rem;font-weight:700;cursor:pointer;font-family:Courier New,monospace;text-transform:uppercase;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.carousel-nav-btn:hover{background:#333;transform:scale(1.1)}.carousel-nav-btn:active{transform:scale(.95)}.carousel-indicators{display:flex;justify-content:center;gap:.5rem;margin-top:1rem;flex-wrap:wrap}.carousel-indicator{width:12px;height:12px;border:2px solid #000;background:#fff;cursor:pointer;border-radius:50%;transition:all .2s;padding:0}.carousel-indicator:hover{background:#ccc;transform:scale(1.2)}.carousel-indicator.active{background:#000}.candidates-list{margin-bottom:2rem;padding:1.5rem;border:3px solid #000;background:#fff}.candidates-list-title{font-family:Courier New,monospace;font-size:1rem;font-weight:700;margin:0 0 1rem;text-transform:uppercase}.candidates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;width:100%;box-sizing:border-box}.candidate-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:3px solid #000;background:#fff;position:relative;overflow:visible;box-sizing:border-box}.candidate-poster{width:100px;height:150px;object-fit:cover;border:2px solid #000;flex-shrink:0;transition:transform .2s,box-shadow .2s}.candidate-poster:hover{transform:scale(1.05);box-shadow:0 4px 8px #0000004d}.candidate-title{font-family:Courier New,monospace;font-size:.85rem;font-weight:700;text-align:center;text-transform:uppercase}.candidate-votes{display:flex;gap:.75rem;font-family:Courier New,monospace;font-weight:700;font-size:.9rem;margin-top:.25rem;align-items:center;justify-content:center}.yes-votes{color:#0a0}.no-votes{color:#a00}.select-movie-btn{padding:.5rem 1rem;border:3px solid #000;background:#000;color:#fff;font-family:Courier New,monospace;font-weight:700;font-size:.85rem;text-transform:uppercase;cursor:pointer;transition:background .2s;width:100%;margin-top:.5rem}.select-movie-btn:hover{background:#333}.remove-candidate-btn{position:absolute;top:-2px;right:-2px;background:red;color:#fff;border:2px solid #000;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;font-size:1rem;font-family:Courier New,monospace;z-index:10;box-sizing:border-box}.remove-candidate-btn:hover{background:#c00}.ai-suggestions-subsection{margin-top:2rem;padding-top:2rem;border-top:2px solid #000}.ai-suggestions-subtitle{font-family:Courier New,monospace;font-size:1rem;font-weight:700;margin:0 0 1rem;text-transform:uppercase}.ai-buttons-group{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.ai-recommendation-button{background:#333}.ai-recommendation-button:hover{background:#555}.votes-section{margin-top:1.5rem;padding:1rem;border:3px solid #000;background:#fff}.votes-section-title{font-family:Courier New,monospace;font-size:1rem;font-weight:700;text-transform:uppercase;margin:0 0 1rem;border-bottom:2px solid #000;padding-bottom:.5rem}.votes-list{display:flex;flex-direction:column;gap:1.5rem}.candidate-votes-detail{border:2px solid #ddd;padding:1rem;background:#f9f9f9}.candidate-votes-movie-title{font-family:Courier New,monospace;font-size:1rem;font-weight:700;text-transform:uppercase;margin:0 0 .75rem;color:#000}.votes-detail-list{display:flex;flex-direction:column;gap:.75rem}.vote-detail-item{padding:.75rem;border-left:3px solid #000;background:#fff}.vote-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;flex-wrap:wrap;gap:.5rem}.vote-detail-user{display:flex;align-items:center;gap:.5rem}.vote-detail-avatar{width:32px;height:32px;border-radius:50%;border:2px solid #000;object-fit:cover}.vote-detail-username{font-family:Courier New,monospace;font-weight:700;font-size:.9rem}.vote-detail-type{font-family:Courier New,monospace;font-weight:700;font-size:.9rem;padding:.25rem .5rem;border:2px solid #000}.vote-detail-type.yes{background:#d4edda;color:#155724}.vote-detail-type.no{background:#f8d7da;color:#721c24}.vote-detail-reason{font-family:Courier New,monospace;font-size:.9rem;line-height:1.5;color:#333;margin:.5rem 0 0;padding-left:.5rem;border-left:2px solid #ccc;font-style:italic}.ai-recommendation-section{margin-top:1.5rem;padding:1.5rem;border:4px solid #000;background:#fff}.ai-recommendation-title{font-family:Courier New,monospace;font-size:1rem;font-weight:700;text-transform:uppercase;margin:0 0 1rem;border-bottom:2px solid #000;padding-bottom:.5rem}.ai-recommendation-card{padding:1.5rem;border:4px solid #000;background:#f0f8ff;margin-top:1rem}.ai-recommendation-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.ai-recommendation-label{font-family:Courier New,monospace;font-size:.9rem;font-weight:700;text-transform:uppercase;color:#06c;margin:0}.ai-recommendation-poster{width:80px;height:120px;object-fit:cover;border:3px solid #000}.ai-recommendation-movie-title{font-family:Courier New,monospace;font-size:1.3rem;font-weight:700;text-transform:uppercase;margin:0 0 1rem;color:#000}.ai-recommendation-reason{font-family:Courier New,monospace;font-size:1rem;line-height:1.6;color:#333;margin:0 0 1.5rem}.select-recommended-movie-btn{background:#06c;color:#fff;border:4px solid #000;padding:.75rem 2rem;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s;width:100%}.select-recommended-movie-btn:hover{background:#0052a3;transform:scale(1.02)}.view-reviews-btn-small,.add-to-meeting-btn{background:#000;color:#fff;border:none;padding:.5rem 1rem;font-family:Courier New,monospace;font-weight:700;font-size:.85rem;text-transform:uppercase;cursor:pointer;transition:background .2s}.view-reviews-btn-small:hover,.add-to-meeting-btn:hover{background:#333}.view-reviews-btn-small{background:#666}.view-reviews-btn-small:hover{background:#555}.meeting-actions-admin{display:flex;gap:.5rem;margin-top:1rem;flex-wrap:wrap;align-items:center}.unselect-movie-btn{background:#ff9800;color:#fff;border:3px solid #000;padding:.5rem 1rem;font-family:Courier New,monospace;font-weight:700;font-size:.9rem;text-transform:uppercase;cursor:pointer;transition:background .2s}.unselect-movie-btn:hover{background:#f57c00}.view-reviews-btn:hover{background:#555}.profile-page{min-height:100vh;background:#fff}.profile-header{border-bottom:6px solid #000;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;background:#fff}.profile-header h1{font-family:Courier New,monospace;font-size:2rem;font-weight:700;text-transform:uppercase;margin:0}.profile-header h1 em{font-style:italic}.profile-back-btn{padding:.5rem 1rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.profile-back-btn:hover{background:#000;color:#fff}.profile-container{max-width:800px;margin:0 auto;padding:2rem}.profile-error{padding:1rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;text-align:center;text-transform:uppercase;margin-bottom:2rem}.profile-section{border:6px solid #000;padding:2rem;background:#fff;margin-bottom:2rem}.profile-section h2{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;text-transform:uppercase;margin-bottom:1.5rem;border-bottom:2px solid #000;padding-bottom:.5rem}.profile-section h2 em{font-style:italic}.avatar-section{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.profile-avatar{width:64px;height:64px;border:4px solid #000;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;cursor:pointer}.profile-avatar:hover{transform:scale(1.05)}.profile-avatar-placeholder{width:64px;height:64px;border:4px solid #000;background:#f0f0f0;display:flex;align-items:center;justify-content:center;font-family:Courier New,monospace;font-weight:700;font-size:.75rem;text-transform:uppercase;color:#666}.profile-button{padding:.75rem 1.5rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.profile-button:hover{background:#000;color:#fff}.profile-button:disabled{opacity:.5;cursor:not-allowed}.display-name-row-with-avatar{display:flex;align-items:center;justify-content:center;gap:.75rem}.display-name-display{cursor:pointer;padding:.5rem 0;text-align:center}.display-name-text{font-family:Courier New,monospace;font-weight:700;font-size:1.2rem;text-transform:uppercase;border-bottom:2px dashed #000;padding-bottom:.25rem;display:inline-block;transition:all .2s}.display-name-text.placeholder{text-transform:none;font-weight:400;font-style:italic}.display-name-display:hover .display-name-text{opacity:.7}.display-name-editor{margin-top:.5rem}.display-name-row{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.display-name-input{flex:1;min-width:300px;padding:.75rem 1rem;height:calc(40px + 1.5rem);box-sizing:border-box;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;background:#fff;color:#000}.display-name-input:focus{outline:none;background:#f0f0f0}.display-name-actions{display:flex;gap:1rem;justify-content:center}.color-picker-container{position:relative;display:inline-block}.color-picker-button{padding:.75rem;border:4px solid #000;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;height:calc(40px + 1.5rem);box-sizing:border-box}.color-picker-button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0003}.color-picker-swatch{width:32px;height:32px;border:3px solid #000;display:block;flex-shrink:0}.color-picker-popup{position:absolute;top:calc(100% + .5rem);left:0;z-index:1000;background:#fff;border:4px solid #000;padding:.75rem;box-shadow:0 4px 12px #0000004d}.neon-color-palette{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.neon-color-swatch{width:40px;height:40px;border:3px solid #000;cursor:pointer;transition:all .2s;padding:0;position:relative}.neon-color-swatch:hover{transform:scale(1.1);z-index:1}.neon-color-swatch.active{border-width:5px;box-shadow:0 0 0 2px #fff,0 0 0 4px #000}.profile-label{display:block;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;margin-bottom:.5rem}.profile-input{width:100%;padding:.75rem 1rem;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;background:#fff;color:#000;box-sizing:border-box}.profile-input:focus{outline:none;background:#f0f0f0}.profile-textarea{width:100%;padding:1rem;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;background:#fff;color:#000;resize:vertical;box-sizing:border-box}.profile-textarea:focus{outline:none;background:#f0f0f0}.profile-actions{display:flex;justify-content:center;margin-top:2rem}.profile-save-button{padding:1rem 2rem;border:6px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1.2rem;cursor:pointer;text-transform:uppercase;transition:background .2s,color .2s}.profile-save-button:hover:not(:disabled){background:#000;color:#fff}.profile-save-button:disabled{opacity:.5;cursor:not-allowed}.avatar-creator-modal{position:fixed;inset:0;background:#000c;z-index:1000;overflow-y:auto;padding:1rem;box-sizing:border-box;display:block}@media(max-width:768px){.profile-header{flex-direction:column;gap:1rem;padding:1rem}.profile-header h1{font-size:1.5rem}.profile-container,.profile-section{padding:1rem}.profile-section h2{font-size:1.2rem}.display-name-row{flex-wrap:wrap}.display-name-input{min-width:100%}.color-picker-popup{left:50%;transform:translate(-50%)}.display-name-actions{flex-direction:column}.display-name-actions .profile-button{width:100%}}.review-page{min-height:100vh;background:#fff;padding:2rem}.review-container{max-width:800px;margin:0 auto;border:6px solid #000;padding:3rem;background:#fff}.review-loading,.review-error{display:flex;align-items:center;justify-content:center;min-height:100vh;font-family:Courier New,monospace;font-weight:700;font-size:1.5rem;text-transform:uppercase}.review-container h1{font-family:Courier New,monospace;font-size:2.5rem;font-weight:700;text-transform:uppercase;margin-bottom:1rem;text-align:center}.review-container h2{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;text-transform:uppercase;margin-bottom:2rem;text-align:center}.review-form{display:flex;flex-direction:column;gap:2rem}.rating-section{display:flex;flex-direction:column;gap:1rem}.rating-section label{font-family:Courier New,monospace;font-weight:700;text-transform:uppercase}.star-rating{display:flex;gap:.5rem}.star{font-size:3rem;background:none;border:none;cursor:pointer;color:#ccc;transition:color .2s;padding:0}.rating-value{font-family:Courier New,monospace;font-weight:700;text-transform:uppercase}.comment-section{display:flex;flex-direction:column;gap:.5rem}.comment-section label{font-family:Courier New,monospace;font-weight:700;text-transform:uppercase}.comment-textarea{width:100%;padding:1rem;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;background:#fff;resize:vertical}.comment-textarea:focus{outline:none;background:#f0f0f0}.character-count{font-family:Courier New,monospace;font-size:.9rem;text-align:right}.review-actions{display:flex;gap:1rem;justify-content:flex-end}@media(max-width:768px){.review-page{padding:1rem}.review-container{padding:1.5rem;border-width:4px}.review-container h1{font-size:1.8rem}.review-container h2{font-size:1.2rem}.star{font-size:2rem}.review-actions{flex-direction:column}.review-actions button{width:100%}}.cancel-button,.submit-button{padding:1rem 2rem;border:4px solid #000;background:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1rem;cursor:pointer;text-transform:uppercase;transition:background .2s}.cancel-button:hover{background:#f0f0f0}.submit-button:hover:not(:disabled){background:#000;color:#fff}.submit-button:disabled{opacity:.5;cursor:not-allowed}.meetings-page{min-height:100vh;background:#fff}.meetings-header{border-bottom:6px solid #000;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;background:#fff}.meetings-header h1{font-family:Courier New,monospace;font-size:2rem;font-weight:700;text-transform:uppercase;margin:0}.meetings-back-btn{padding:.5rem 1rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.meetings-back-btn:hover{background:#000;color:#fff}.meetings-container{max-width:1000px;margin:0 auto;padding:2rem}.meetings-loading,.no-meetings{text-align:center;font-family:Courier New,monospace;font-size:1.5rem;padding:3rem}.meetings-list{display:flex;flex-direction:column;gap:1.5rem}.meeting-card{border:4px solid #000;padding:1.5rem;background:#fff}.meeting-header{display:flex;gap:1.5rem;margin-bottom:1rem;flex-wrap:wrap}.meeting-movies-list{display:flex;gap:1rem;flex-wrap:wrap}.meeting-movie-mini{display:flex;flex-direction:column;align-items:center;gap:.5rem}.meeting-movie-title-mini{font-family:Courier New,monospace;font-size:.8rem;font-weight:700;text-align:center;max-width:120px}.meeting-poster{width:120px;height:180px;object-fit:cover;border:3px solid #000;flex-shrink:0}.meeting-info{flex:1}.meeting-info h3{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;text-transform:uppercase;margin:0 0 .5rem}.meeting-date{font-family:Courier New,monospace;font-size:1rem;margin:.5rem 0}.meeting-location{font-family:Courier New,monospace;font-size:.9rem;margin:.5rem 0}.meeting-theme{font-family:Courier New,monospace;font-size:.9rem;margin:.5rem 0;font-style:italic}.ratings-summary{display:flex;gap:1rem;margin-top:1rem}.rating-badge{font-family:Courier New,monospace;font-weight:700;padding:.4rem .8rem;border:3px solid #000;background:#fff;font-size:.9rem}.meeting-actions{display:flex;gap:.5rem;flex-wrap:wrap}.rating-btn{padding:.5rem 1rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:.9rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.rating-btn:hover,.rating-btn.gathering{background:#000;color:#fff}.rating-btn.gathering:hover{background:#333}.rated-badge{font-family:Courier New,monospace;font-weight:700;padding:.5rem 1rem;border:3px solid #000;background:#f0f0f0;color:#666}.rating-modal{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.rating-modal-content{background:#fff;border:6px solid #000;padding:2rem;max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.rating-modal-content h2{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;text-transform:uppercase;margin-bottom:1.5rem;border-bottom:2px solid #000;padding-bottom:.5rem}.rating-section{margin-bottom:2rem}.rating-section h3{font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;text-transform:uppercase;margin-bottom:1rem}.star-rating{display:flex;gap:.5rem;margin-bottom:1rem}.star{font-size:2.5rem;background:none;border:none;cursor:pointer;color:#ccc;transition:color .2s;padding:0}.star.filled{color:#000}.rating-section label{display:block;font-family:Courier New,monospace;font-weight:700;text-transform:uppercase;margin-bottom:.5rem}.rating-section textarea{width:100%;padding:.75rem;border:4px solid #000;font-family:Courier New,monospace;font-size:1rem;background:#fff;resize:vertical;margin-bottom:1rem}.submit-rating-btn{padding:.75rem 1.5rem;border:4px solid #000;background:#000;color:#fff;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s;width:100%;margin-bottom:1rem}.submit-rating-btn:hover:not(:disabled){background:#333}.submit-rating-btn:disabled{opacity:.5;cursor:not-allowed}.close-modal-btn{padding:.75rem 1.5rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s;width:100%}.close-modal-btn:hover{background:#f0f0f0}@media(max-width:768px){.meetings-header{padding:1rem}.meetings-header h1{font-size:1.5rem}.meetings-container{padding:1rem}.meeting-header{flex-direction:column}.meeting-poster{width:100%;height:auto;max-height:300px}.rating-modal-content{padding:1rem}}.social-page{min-height:100vh;background:#fff}.social-header{border-bottom:6px solid #000;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;background:#fff}.social-header h1{font-family:Courier New,monospace;font-size:2rem;font-weight:700;text-transform:uppercase;margin:0}.social-back-btn{padding:.5rem 1rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.social-back-btn:hover{background:#000;color:#fff}.social-container{max-width:1200px;margin:0 auto;padding:2rem}.social-loading,.social-error{padding:2rem;border:4px solid #000;background:#fff;color:#000;font-family:Courier New,monospace;font-weight:700;text-align:center;text-transform:uppercase}.social-error{background:#fff;color:#000;margin-bottom:2rem}.social-empty{padding:3rem;text-align:center;font-family:Courier New,monospace;font-size:1.2rem;text-transform:uppercase}.users-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.user-card{border:6px solid #000;padding:1.5rem;background:#fff;display:flex;flex-direction:column;gap:1.5rem}.user-card-header{display:flex;align-items:center;gap:1rem;padding-bottom:1rem;border-bottom:2px solid #000}.user-avatar{width:64px;height:64px;border:4px solid #000;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;flex-shrink:0}.user-avatar-placeholder{width:64px;height:64px;border:4px solid #000;background:#f0f0f0;display:flex;align-items:center;justify-content:center;font-family:Courier New,monospace;font-weight:700;font-size:.6rem;text-transform:uppercase;color:#666;flex-shrink:0}.user-name-section{flex:1;min-width:0}.user-username{font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;text-transform:uppercase;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-display-name{font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-section{display:flex;flex-direction:column;gap:.75rem}.user-section h3{font-family:Courier New,monospace;font-size:.9rem;font-weight:700;text-transform:uppercase;margin:0;border-bottom:2px solid #000;padding-bottom:.25rem}.user-genres{display:flex;flex-wrap:wrap;gap:.5rem}.genre-badge{padding:.25rem .75rem;border:2px solid #000;background:#fff;font-family:Courier New,monospace;font-size:.7rem;font-weight:700;text-transform:uppercase}.user-movies{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.75rem}.user-movie-card{display:flex;flex-direction:column;align-items:center;gap:.5rem}.user-movie-poster{width:100%;aspect-ratio:2/3;object-fit:cover;border:2px solid #000}.user-movie-title{font-family:Courier New,monospace;font-size:.65rem;font-weight:700;text-transform:uppercase;margin:0;text-align:center;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2}.user-optional-text{font-family:Courier New,monospace;font-size:.85rem;margin:0;line-height:1.5;color:#333}.user-review{display:flex;flex-direction:column;gap:.75rem}.user-review-movie{display:flex;align-items:center;gap:.75rem;padding:.75rem;border:2px solid #000;background:#f5f5f5}.user-review-poster{width:50px;height:75px;object-fit:cover;border:2px solid #000;flex-shrink:0}.user-review-movie-info{flex:1;min-width:0}.user-review-title{font-family:Courier New,monospace;font-size:.75rem;font-weight:700;text-transform:uppercase;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-review-rating{font-size:.9rem;line-height:1}.user-review-comment{font-family:Courier New,monospace;font-size:.8rem;margin:0;line-height:1.4;color:#333;padding:.5rem;border:2px solid #000;background:#fff}@media(max-width:768px){.social-header{flex-direction:column;gap:1rem;padding:1rem}.social-header h1{font-size:1.5rem}.social-container{padding:1rem}.users-grid{grid-template-columns:1fr;gap:1.5rem}.user-card{padding:1rem}.user-movies{grid-template-columns:repeat(auto-fill,minmax(60px,1fr))}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Courier New,monospace;background:#fff;color:#000;line-height:1.6}.loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-family:Courier New,monospace;font-weight:700;font-size:1.5rem;text-transform:uppercase}
