body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.channel-list{background-color:#3f0e40;color:#fff;display:flex;flex-direction:column;height:100%;width:260px}.channel-list-header{border-bottom:1px solid #ffffff1a;padding:16px}.channel-list-header h3{color:#fff;font-size:16px;font-weight:900;margin:0}.channel-list-content{flex:1 1;overflow-y:auto;padding:8px 0}.channel-item{align-items:center;cursor:pointer;display:flex;gap:8px;padding:4px 16px;transition:background-color .1s ease}.channel-item:hover{background-color:#ffffff1a}.channel-list .channel-item:hover .channel-hash,.channel-list .channel-item:hover .channel-name{color:#fff!important}.channel-item.selected{background-color:#1264a3}.channel-list .channel-hash{color:#fff!important;font-size:14px;font-weight:400}.channel-list .channel-name{color:#fff!important;flex:1 1;font-size:15px;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-list .channel-item.selected .channel-name{color:#fff!important;font-weight:600}.general-badge{background-color:#fff3;border-radius:10px;color:#fff;font-size:10px;font-weight:600;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.empty-channels{padding:16px;text-align:center}.empty-channels p{color:#fffc;font-size:14px;line-height:1.4;margin:0}.slack-message{border-left:4px solid #0000;padding:8px 20px;pointer-events:auto;transition:all .1s ease}.slack-message:hover{background-color:#f8f8f8;border-left-color:#e0e0e0}.message-content{align-items:flex-start;display:flex;gap:8px;pointer-events:auto}.message-avatar{flex-shrink:0;height:36px;width:36px}.avatar-image{object-fit:cover}.avatar-image,.avatar-placeholder{border-radius:4px;height:36px;width:36px}.avatar-placeholder{align-items:center;background-color:#e0e0e0;color:#666;display:flex;font-size:14px;font-weight:700;justify-content:center}.avatar-placeholder.colored{color:#fff}.message-body{flex:1 1;min-width:0;pointer-events:auto}.message-header{align-items:baseline;display:flex;gap:8px;margin-bottom:2px}.message-author{color:#1d1c1d;cursor:pointer;font-size:15px;font-weight:900;line-height:1.46668;transition:color .2s ease}.message-author:hover{color:#1264a3}.message-time{color:#868e96;cursor:pointer;font-size:12px;font-weight:400;transition:color .2s ease}.message-time:hover{color:#495057}.message-edited{color:#616061;font-size:12px;font-style:italic}.message-text{word-wrap:break-word;color:#1d1c1d;font-size:15px;line-height:1.46668;pointer-events:auto;white-space:pre-wrap}.message-bold{font-weight:700}.message-italic{font-style:italic}.message-strikethrough{text-decoration:line-through}.message-code{background-color:#f1f2f6;border-radius:3px;color:#e01e5a;font-size:12px;padding:2px 4px}.message-code,.message-code-block{border:1px solid #e8e8e8;font-family:Monaco,Menlo,Consolas,monospace}.message-code-block{background-color:#f8f8f8;border-radius:4px;font-size:13px;line-height:1.4;margin:4px 0;overflow-x:auto;padding:8px 12px;white-space:pre}.message-code-block code{background:none;border:none;color:#1d1c1d;font-size:inherit;padding:0}.user-mention{background-color:#e3f2fd;border-radius:3px;color:#1565c0;font-weight:600;padding:2px 4px;text-decoration:none}.user-mention:hover{background-color:#bbdefb;color:#0d47a1}.channel-mention{background-color:#f3e5f5;border-radius:3px;color:#7b1fa2;font-weight:600;padding:2px 4px;text-decoration:none}.channel-mention:hover{background-color:#e1bee7;color:#4a148c}.special-mention{background-color:#fff3e0;border-radius:3px;color:#ef6c00;font-weight:600;padding:2px 4px}.message-link{color:#1264a3;cursor:pointer;font-weight:500;transition:all .2s ease}.message-link,.message-link:hover{pointer-events:auto;position:relative;text-decoration:underline;z-index:1}.message-link:hover{background-color:#1264a31a;border-radius:2px;color:#0d47a1;padding:1px 2px}.message-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.reaction{background-color:#f0f0f0;border:1px solid #e0e0e0;border-radius:12px;color:#1d1c1d;cursor:pointer;font-size:12px;padding:2px 6px;transition:background-color .1s ease}.reaction:hover{background-color:#e8f5e8;border-color:#4caf50}.system-message{background-color:#f8f9fa;border-left:3px solid #dee2e6;color:#616061;font-style:italic;margin:2px 0;padding:8px 20px}.system-message-content{align-items:center;display:flex;font-size:13px;gap:8px}.system-message.channel-join{background-color:#e8f5e9;border-left-color:#4caf50;color:#2e7d32}.system-message.channel-leave{background-color:#fff3e0;border-left-color:#ff9800;color:#ef6c00}.system-message.channel-name,.system-message.channel-purpose,.system-message.channel-topic{background-color:#e3f2fd;border-left-color:#2196f3;color:#1565c0}.system-message-text{flex:1 1}.system-message .message-time{font-size:11px}.thread-replies{border-left:2px solid #e0e0e0;margin-left:44px;margin-top:8px;padding-left:12px}.thread-header{margin-bottom:8px}.thread-count{color:#1264a3;cursor:pointer;font-size:13px;font-weight:600}.thread-count:hover{text-decoration:underline}.thread-messages{display:flex;flex-direction:column;gap:6px}.thread-reply{align-items:flex-start;display:flex;gap:8px;padding:4px 0}.thread-reply-avatar{flex-shrink:0;height:24px;width:24px}.thread-avatar-image{border-radius:3px;height:24px;object-fit:cover;width:24px}.thread-avatar-placeholder{align-items:center;background-color:#e0e0e0;border-radius:3px;color:#666;display:flex;font-size:10px;font-weight:700;height:24px;justify-content:center;width:24px}.thread-avatar-placeholder.colored{color:#fff}.thread-reply-content{flex:1 1;min-width:0}.thread-reply-header{align-items:baseline;display:flex;gap:6px;margin-bottom:1px}.thread-reply-author{color:#1d1c1d;font-size:13px;font-weight:700;line-height:1.46668}.thread-reply-time{color:#616061;font-size:11px;font-weight:400}.thread-reply-edited{color:#616061;font-size:11px;font-style:italic}.thread-reply-text{word-wrap:break-word;color:#1d1c1d;font-size:13px;line-height:1.46668;pointer-events:auto;white-space:pre-wrap}.thread-reply-reactions{display:flex;flex-wrap:wrap;gap:3px;margin-top:2px}.thread-reply-reactions .reaction{font-size:11px;padding:1px 4px}.message-files{display:flex;flex-direction:column;gap:8px;margin-top:8px}.message-file{max-width:400px}.message-image{background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.file-image{cursor:pointer;display:block;height:auto;max-height:300px;object-fit:contain;transition:opacity .2s ease;width:100%}.file-image:hover{opacity:.9}.image-caption{background-color:#f8f9fa;border-top:1px solid #e0e0e0;color:#495057;font-size:13px;font-style:italic;padding:8px 12px}.file-info{align-items:center;background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:12px;padding:12px;transition:background-color .2s ease}.file-info:hover{background-color:#e9ecef}.file-icon{flex-shrink:0;font-size:24px}.file-details{flex:1 1;min-width:0}.file-name{color:#1d1c1d;font-size:14px;font-weight:600;margin-bottom:2px;word-break:break-word}.file-meta{color:#616061;font-size:12px}.file-download{border:1px solid #1264a3;border-radius:4px;color:#1264a3;flex-shrink:0;font-size:13px;font-weight:600;padding:6px 12px;text-decoration:none;transition:all .2s ease}.file-download:hover{background-color:#1264a3;color:#fff;text-decoration:none}.media-error-message{background-color:#fdf2f2;border:1px solid #fecaca;border-radius:4px;color:#e74c3c;font-size:12px;font-style:italic;line-height:1.4;margin-top:4px;padding:6px 8px}.file-info.media-error{background-color:#fdf2f2;border-color:#fecaca}@media (prefers-color-scheme:dark){.message-link{color:#58a6ff}.message-link,.message-link:hover{pointer-events:auto;position:relative;z-index:1}.message-link:hover{background-color:#58a6ff1a;color:#79c0ff}.message-code{color:#f56565}.message-code,.message-code-block{background-color:#2d3748;border-color:#4a5568}.message-code-block code{color:#e2e8f0}.message-image{background-color:#2c2d30;border-color:#3f3f3f}.image-caption{background-color:#2c2d30;border-top-color:#3f3f3f;color:#d1d2d3}.file-info{background-color:#2c2d30;border-color:#3f3f3f}.file-info:hover{background-color:#36373a}.file-name{color:#d1d2d3}.file-meta{color:#868e96}.file-download{border-color:#58a6ff;color:#58a6ff}.file-download:hover{background-color:#58a6ff;color:#0d1117}}.date-marker{align-items:center;display:flex;margin:20px 0;padding:0 20px}.date-marker-line{background-color:#e0e0e0;flex:1 1;height:1px}.date-marker-text{background-color:#fff;border:1px solid #e0e0e0;border-radius:24px;color:#1d1c1d;font-size:13px;font-weight:700;min-width:-webkit-fit-content;min-width:fit-content;padding:0 16px;text-align:center;white-space:nowrap}@media (prefers-color-scheme:dark){.date-marker-line{background-color:#3f3f3f}.date-marker-text{background-color:#1a1d21;border-color:#3f3f3f;color:#d1d2d3}}.channel-view{background-color:#fff;display:flex;flex-direction:column;height:100%}.channel-header{background-color:#fff;border-bottom:1px solid #e0e0e0;flex-shrink:0;padding:16px 20px}.channel-info{max-width:100%}.channel-name{align-items:center;color:#1d1c1d;display:flex;font-size:18px;font-weight:900;gap:8px;margin:0 0 4px}.channel-topic{color:#495057;font-size:14px;line-height:1.4;margin:0 0 4px}.channel-meta{align-items:center;color:#495057;display:flex;flex-wrap:wrap;font-size:13px}.member-count{font-weight:600}.channel-purpose{color:#495057}.messages-container{flex:1 1;overflow-y:auto;padding-bottom:20px}.empty-state{align-items:center;color:#495057;display:flex;font-size:15px;height:100%;justify-content:center}.empty-state p{margin:0;text-align:center}.file-upload-container{margin:0 auto;max-width:600px;padding:40px}.file-upload-area{background-color:#fafafa;border:2px dashed #e0e0e0;border-radius:12px;cursor:pointer;margin-bottom:32px;padding:60px 40px;text-align:center;transition:all .2s ease}.file-upload-area:hover{background-color:#f0f8ff;border-color:#1264a3}.file-upload-area.loading{background-color:#f5f5f5;cursor:not-allowed}.upload-prompt h3{color:#1d1c1d;font-size:24px;font-weight:700;margin:16px 0 8px}.upload-prompt p{color:#616061;font-size:16px;line-height:1.5;margin:0 0 24px}.upload-prompt small{color:#868686;font-size:14px}.upload-icon{font-size:48px;margin-bottom:16px}.upload-button{background-color:#1264a3;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:background-color .2s ease}.upload-button:hover{background-color:#0f5a94}.loading-state{align-items:center;display:flex;flex-direction:column;gap:16px}.spinner{border:4px solid #e0e0e0;border-top-color:#1264a3;height:40px;width:40px}.loading-state p{color:#616061;font-size:16px;margin:0}.upload-instructions{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:24px}.upload-instructions h4{color:#1d1c1d;font-size:16px;font-weight:700;margin:0 0 16px}.upload-instructions ol{color:#616061;line-height:1.6;margin:0;padding-left:20px}.upload-instructions li{margin-bottom:4px}.guest-home{background-color:#f8f9fa;display:flex;flex-direction:column;min-height:100vh}.guest-header{align-items:center;background:linear-gradient(135deg,#4a154b,#611f69);box-shadow:0 2px 10px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:2rem}.guest-header .header-content h1{font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.guest-header .header-content p{font-size:1.1rem;margin:0;opacity:.9}.header-actions{gap:1rem}.club-access-link{border:2px solid #ffffff4d;border-radius:8px;color:#fff;font-weight:500;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.club-access-link:hover{background-color:#ffffff1a;border-color:#ffffff80}.upload-new-button{background-color:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;padding:.75rem 1.5rem}.upload-new-button:hover{background-color:#fff3;border-color:#ffffff80}.guest-upload-section{margin:0 auto;max-width:1200px;padding:3rem 2rem;width:100%}.guest-info{margin-bottom:3rem}.guest-info h2{color:#333;font-size:2rem;margin-bottom:1rem}.guest-info>p{color:#666;font-size:1.1rem;line-height:1.6;margin:0 auto 2rem;max-width:600px}.features-slider{margin-top:2rem;max-width:100%;overflow:hidden}.features-track{animation:slide 15s linear infinite;display:flex;gap:2rem;width:calc(300% + 4rem)}@keyframes slide{0%{transform:translateX(0)}33.33%{transform:translateX(calc(-33.33333% - .67rem))}66.66%{transform:translateX(calc(-66.66667% - 1.33rem))}to{transform:translateX(0)}}.features-track:hover{animation-play-state:paused}.feature{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000d;flex-shrink:0;min-width:250px;padding:1.5rem;text-align:center}.feature h3{color:#333;font-size:1.2rem;margin:0 0 .5rem}.feature p{color:#666;font-size:.95rem;margin:0}.error-message{border:1px solid #fcc;border-radius:8px;color:#c33;margin:1rem auto;padding:1rem}.app-layout{height:calc(100vh - 120px)}.main-content{background:#fff;overflow:hidden}.no-channel-selected{color:#666;height:100%}.no-channel-selected h2{color:#333;margin-bottom:.5rem}.guest-footer{background-color:#f8f9fa;border-top:1px solid #e9ecef;margin-top:auto;padding:1rem 2rem;text-align:center}.guest-footer p{color:#666;font-size:.9rem;margin:0}.github-link{color:#4a154b;font-weight:500;text-decoration:none;transition:color .2s ease}.github-link:hover{color:#611f69;text-decoration:underline}@media (max-width:768px){.guest-header{flex-direction:column;gap:1rem;text-align:center}.guest-header .header-content h1{font-size:2rem}.features-slider{margin-top:1.5rem}.features-track{gap:1rem;width:calc(300% + 2rem)}.feature{min-width:200px;padding:1rem}.guest-upload-section{padding:2rem 1rem}.app-layout{flex-direction:column;height:auto}}.auth-gateway{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-container{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;max-width:450px;padding:40px;text-align:center;width:100%}.auth-header h1{color:#2c3e50;font-size:1.8rem;font-weight:600;margin-bottom:8px}.auth-header p{color:#7f8c8d;font-size:1rem;margin-bottom:32px}.auth-form{margin-bottom:24px}.form-group{margin-bottom:20px;text-align:left}.form-group label{color:#2c3e50;display:block;font-size:.9rem;font-weight:500;margin-bottom:8px}.password-input-container{align-items:center;display:flex;position:relative}.form-group input{border:2px solid #e1e8ed;border-radius:8px;box-sizing:border-box;font-size:1rem;padding:12px 48px 12px 16px;transition:border-color .2s ease;width:100%}.password-toggle{align-items:center;background:none;border:none;border-radius:4px;color:#7f8c8d;cursor:pointer;display:flex;justify-content:center;padding:4px;position:absolute;right:12px;transition:color .2s ease,background-color .2s ease}.password-toggle:hover:not(:disabled){background-color:#f8f9fa;color:#667eea}.password-toggle:disabled{cursor:not-allowed;opacity:.5}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input:disabled{background-color:#f8f9fa;cursor:not-allowed}.error-message{background-color:#fee;border:1px solid #fed7d7;color:#c53030;font-size:.9rem;margin-bottom:16px;padding:12px}.auth-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:8px;justify-content:center;padding:14px 20px;transition:all .2s ease;width:100%}.auth-button:disabled{cursor:not-allowed;opacity:.6}.auth-button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;margin-bottom:16px}.auth-button.primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.auth-button.secondary{background:#0000;border:2px solid #667eea;color:#667eea}.auth-button.secondary:hover:not(:disabled){background:#667eea;color:#fff}.auth-divider{color:#95a5a6;font-size:.9rem;margin:20px 0;position:relative}.auth-divider:before{background:#e1e8ed;content:"";height:1px;left:0;position:absolute;right:0;top:50%;z-index:1}.auth-divider span{background:#fff;padding:0 16px;position:relative;z-index:2}.auth-info{border-top:1px solid #e1e8ed;margin-top:24px;padding-top:24px;text-align:left}.auth-info p{color:#7f8c8d;font-size:.85rem;line-height:1.4;margin:8px 0}.auth-info strong{color:#2c3e50}.spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;height:16px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:480px){.auth-container{margin:0 16px;padding:24px}.auth-header h1{font-size:1.5rem}}.auto-export-manager{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:20px 0;padding:20px}.auto-export-manager h3{border-bottom:2px solid #3498db;color:#2c3e50;margin-top:0;padding-bottom:10px}.auto-export-manager h4{color:#34495e;margin-bottom:10px;margin-top:20px}.export-info,.export-schedule,.last-export,.manual-export{margin-bottom:20px}.export-schedule p,.last-export p{color:#555;margin:5px 0}.passkey-input{display:flex;gap:10px;margin:10px 0}.passkey-input input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:14px;padding:10px}.passkey-input input:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.toggle-passkey{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:16px;padding:10px 15px}.toggle-passkey:hover{background:#e9ecef}.export-button{background:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:background-color .2s}.export-button:hover:not(:disabled){background:#2980b9}.export-button:disabled{background:#bdc3c7;cursor:not-allowed}.export-error{background:#fee;border:1px solid #fcc;border-radius:4px;color:#c33;margin:10px 0;padding:10px}.export-info ul{margin:10px 0;padding-left:20px}.export-info li{color:#666;margin:5px 0}.guest-view{color:#666;text-align:center}.guest-view h3{color:#7f8c8d}@media (max-width:768px){.auto-export-manager{margin:10px 0;padding:15px}.passkey-input{flex-direction:column}.toggle-passkey{align-self:flex-start;width:-webkit-fit-content;width:fit-content}}.App{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100vh}.app-header{align-items:center;background:linear-gradient(135deg,#3f0e40,#1264a3);color:#fff;display:flex;justify-content:space-between;min-height:60px;padding:20px 40px}.header-content{flex:1 1}.header-actions{align-items:center;display:flex;gap:16px}.app-header h1{font-size:24px;font-weight:700;margin:0}.app-header p{margin:4px 0 0}.app-header p,.user-role{font-size:14px;opacity:.9}.user-role{font-weight:500}.home-link{color:#fff;font-size:14px;margin-right:16px;opacity:.9;text-decoration:none;transition:opacity .2s ease}.home-link:hover{opacity:1}.club-app{background-color:#f8f9fa;display:flex;flex-direction:column;min-height:100vh}.club-header{align-items:center;background:linear-gradient(135deg,#4a154b,#611f69);box-shadow:0 2px 10px #0000001a;color:#fff;display:flex;gap:1rem;padding:1rem 2rem}.club-header h1{font-size:1.5rem;font-weight:600;margin:0}.logout-button{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.logout-button:hover{background:#ffffff4d;border-color:#ffffff80}.error-message{background-color:#f8d7da;border-radius:6px;color:#721c24;margin:20px auto;max-width:600px;padding:12px 20px;text-align:center}.error-message p{margin:0}.app-layout{display:flex;flex:1 1;overflow:hidden}.main-content{background-color:#fff}.main-content,.no-channel-selected{display:flex;flex:1 1;flex-direction:column}.no-channel-selected{align-items:center;color:#495057;justify-content:center;padding:40px;text-align:center}.no-channel-selected h2{color:#1d1c1d;font-size:24px;font-weight:700;margin:0 0 8px}.no-channel-selected p{font-size:16px;margin:0}.no-data-message{align-items:center;color:#495057;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:40px;text-align:center}.no-data-message h2{color:#1d1c1d;font-size:24px;font-weight:700;margin:0 0 16px}.no-data-message p{font-size:16px;line-height:1.5;margin:0;max-width:500px}.guest-upload-section{display:flex;flex:1 1;flex-direction:column;padding:40px}.guest-info{margin-bottom:32px;margin-left:auto;margin-right:auto;max-width:600px;text-align:center}.guest-info h2{color:#1d1c1d;font-size:28px;font-weight:700;margin:0 0 16px}.guest-info p{color:#495057;font-size:16px;line-height:1.6;margin:0}.app-footer{background-color:#f8f9fa;border-top:1px solid #e9ecef;display:flex;justify-content:center;padding:12px 20px}.upload-new-button{background-color:#1264a3;border:none;border-radius:6px;box-shadow:0 2px 4px #1264a333;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.upload-new-button:hover{background-color:#0d47a1;box-shadow:0 4px 8px #1264a34d;transform:translateY(-1px)}@media (max-width:768px){.app-header{flex-direction:column;gap:16px;padding:20px;text-align:center}.header-content{flex:none}.header-actions{justify-content:center}.app-layout{flex-direction:column}.channel-list{height:200px;width:100%}.main-content{flex:1 1}}
/*# sourceMappingURL=main.4bcdb7e6.css.map*/