*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#f5f5f5;color:#333;line-height:1.6}.app{min-height:100vh}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#f5f5f5;padding:1rem}.auth-form{background:white;padding:2rem;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:400px}.auth-form h2{text-align:center;margin-bottom:1.5rem;color:#1a73e8;font-size:1.5rem}.auth-input{width:100%;border:2px solid #e1e1e1;border-radius:6px;padding:.75rem;font-size:1rem;font-family:inherit;margin-bottom:1rem;transition:border-color .2s}.auth-input:focus{outline:none;border-color:#1a73e8}.auth-button{width:100%;background:#1a73e8;color:#fff;border:none;border-radius:6px;padding:.75rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s;margin-bottom:1rem}.auth-button:hover:not(:disabled){background:#1557b0}.auth-button:disabled{background:#ccc;cursor:not-allowed}.auth-switch{text-align:center;color:#666;font-size:.9rem}.auth-switch-button{background:none;border:none;color:#1a73e8;cursor:pointer;text-decoration:underline;font-size:inherit}.auth-switch-button:hover{color:#1557b0}.error-message{background:#fee;color:#c33;padding:.75rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem;text-align:center}.login-prompt{text-align:center;padding:2rem 1rem;color:#666}.login-link{background:none;border:none;color:#1a73e8;cursor:pointer;text-decoration:underline;font-size:inherit;font-family:inherit}.login-link:hover{color:#1557b0}.auth-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.auth-modal{background:white;border-radius:8px;box-shadow:0 8px 32px #0000004d;position:relative;max-width:450px;width:100%;max-height:90vh;overflow-y:auto}.auth-modal-close{position:absolute;top:1rem;right:1rem;background:#f8f9fa;border:1px solid #e1e1e1;border-radius:50%;width:32px;height:32px;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:1}.auth-modal-close:hover{background:#e9ecef;color:#333}.auth-modal .auth-container{min-height:auto;padding:0;background:transparent}.header{background:white;padding:1rem 0;border-bottom:1px solid #e1e1e1;box-shadow:0 2px 4px #0000001a}.header-content{max-width:600px;margin:0 auto;padding:0 1rem;display:flex;justify-content:space-between;align-items:center}.header h1{font-size:1.8rem;font-weight:600;color:#1a73e8;margin:0}.header-user{display:flex;align-items:center;gap:1rem;font-size:.9rem;color:#666}.logout-button{background:#f8f9fa;color:#666;border:1px solid #e1e1e1;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;cursor:pointer;transition:all .2s}.logout-button:hover{background:#e9ecef;color:#333}.login-button{background:#1a73e8;color:#fff;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;cursor:pointer;transition:all .2s}.login-button:hover{background:#1557b0}.menu-bar{background:white;border-bottom:1px solid #e1e1e1;box-shadow:0 2px 4px #0000000d;position:sticky;top:0;z-index:100}.menu-container{max-width:600px;margin:0 auto;padding:.75rem 1rem;display:flex;align-items:center;gap:1rem}.menu-item{background:none;border:none;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;cursor:pointer;transition:all .2s;color:#666;white-space:nowrap}.menu-item:hover{background:#f8f9fa;color:#333}.menu-item.active{background:#e3f2fd;color:#1a73e8}.menu-search{flex:1;position:relative;max-width:300px}.menu-search-input{width:100%;border:1px solid #e1e1e1;border-radius:20px;padding:.5rem 1rem;font-size:.9rem;font-family:inherit;transition:border-color .2s}.menu-search-input:focus{outline:none;border-color:#1a73e8}.menu-search-clear{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.2rem;color:#666;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.menu-search-clear:hover{background-color:#f0f0f0;color:#333}.search-results-info{text-align:center;padding:.5rem 1rem;font-size:.875rem;color:#666;background:#f8f9fa;border-top:1px solid #e1e1e1}.main{max-width:600px;margin:0 auto;padding:2rem 1rem}.search-container{background:white;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000001a}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input{width:100%;border:2px solid #e1e1e1;border-radius:6px;padding:.75rem;font-size:1rem;font-family:inherit;transition:border-color .2s}.search-input:focus{outline:none;border-color:#1a73e8}.search-clear{position:absolute;right:.75rem;background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.search-clear:hover{background-color:#f0f0f0;color:#333}.search-results-info{margin-top:.75rem;font-size:.875rem;color:#666;text-align:center}.post-form-container{background:white;border-radius:8px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a}.post-form{display:flex;flex-direction:column;gap:1rem}.post-form-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.image-upload-label{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f8f9fa;border:2px solid #e1e1e1;border-radius:6px;cursor:pointer;font-size:.875rem;color:#666;transition:all .2s}.image-upload-label:hover{background:#e9ecef;border-color:#1a73e8}.image-upload-input{display:none}.image-preview-container{position:relative;display:inline-block;max-width:100%}.image-preview{max-width:100%;max-height:300px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.remove-image-button{position:absolute;top:8px;right:8px;background:rgba(0,0,0,.7);color:#fff;border:none;border-radius:50%;width:30px;height:30px;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.remove-image-button:hover{background:rgba(0,0,0,.9)}.post-textarea{border:2px solid #e1e1e1;border-radius:6px;padding:.75rem;font-size:1rem;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s}.post-textarea:focus{outline:none;border-color:#1a73e8}.post-button{background:#1a73e8;color:#fff;border:none;border-radius:6px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;cursor:pointer;align-self:flex-end;transition:background-color .2s}.post-button:hover:not(:disabled){background:#1557b0}.post-button:disabled{background:#ccc;cursor:not-allowed}.feed{display:flex;flex-direction:column;gap:1rem}.profile-header{background:white;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;text-align:center;margin-bottom:1rem}.profile-header h2{font-size:1.5rem;color:#1a73e8;margin-bottom:.5rem}.profile-header p{color:#666;font-size:1rem}.no-posts{text-align:center;padding:3rem 1rem;background:white;border-radius:8px;color:#666}.post{background:white;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;transition:box-shadow .2s}.post:hover{box-shadow:0 4px 12px #00000026}.post-content{font-size:1rem;margin-bottom:.75rem;white-space:pre-wrap;word-wrap:break-word}.post-image-container{margin:1rem 0}.post-image{max-width:100%;height:auto;border-radius:8px;box-shadow:0 2px 8px #0000001a;cursor:pointer;transition:transform .2s}.post-image:hover{transform:scale(1.02)}.post-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem;font-size:.875rem;color:#666}.post-author{font-weight:500}.post-timestamp{color:#666;font-size:.875rem}@media (max-width: 640px){.main{padding:1rem .5rem}.search-container,.post-form-container,.post{padding:1rem}.header h1{font-size:1.5rem}.header-content{flex-direction:column;gap:.5rem}.header-user{font-size:.8rem}.menu-container{padding:.5rem;gap:.25rem;flex-wrap:wrap}.menu-item{padding:.3rem .6rem;font-size:.75rem;flex-shrink:0}.menu-search{flex:1;min-width:120px;max-width:none}.menu-search-input{font-size:.8rem}.post-form-actions{flex-direction:column;align-items:stretch}.image-upload-label{justify-content:center}.image-preview{max-height:200px}.post-image:hover{transform:none}}
