footer{position:fixed;bottom:0;left:0;right:0;height:70px;display:flex;justify-content:center;align-items:center;border-top:1px solid #eee;background:white;width:100%;margin:0;z-index:10;font-size:26px;padding:0 10px}.navigation{width:80%;display:flex;justify-content:space-evenly;align-items:center}.navigation .link{padding:10px;font-size:1rem}.navigation .link.active{background-color:#eee;border-radius:5px}@media (max-width: 600px){footer{height:60px;font-size:26px}.navigation{width:100%;justify-content:space-around}.navigation .link{padding:8px}body{padding-bottom:80px}}@media (max-width: 400px){footer{height:55px;font-size:26px}body{padding-bottom:85px}}.post-card{background:#fff;border-radius:1rem;padding:1rem 1.25rem;margin:.75rem 0;box-shadow:0 2px 6px #00000012;display:flex;flex-direction:column;gap:.5rem;transition:transform .15s ease,box-shadow .15s ease;cursor:pointer}.post-card:hover{transform:translateY(-2px);box-shadow:0 3px 8px #0000001a}.post-header{display:flex;justify-content:space-between;align-items:center}.post-user-img{width:34px;height:34px;border-radius:50%}.post-tag{background-color:#a2d5f2;color:#0a3d62;border-radius:999px;padding:.25rem .6rem;font-size:.85rem;font-weight:500}.post-text{text-align:left}.post-text p{margin:.25rem 0 0;font-size:.95rem;color:#333;line-height:1.4;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-wrap:break-word}@media (min-width: 768px){.post-card{padding:1.25rem 1.5rem}.post-text p{-webkit-line-clamp:6}}.account-page{display:flex;flex-direction:column;align-items:center;padding:30px 20px}.profile-header{background:#fff;border-radius:10px;box-shadow:0 2px 6px #00000014;max-width:800px;width:100%;padding:30px;display:flex;flex-direction:column;align-items:center;margin-bottom:25px;box-sizing:border-box}.header-top{display:flex;justify-content:space-between;align-items:center;width:100%;flex-wrap:wrap;gap:20px}.left-section{display:flex;align-items:center;gap:20px}.profile-pic{width:90px;height:90px;border-radius:50%;object-fit:cover;border:3px solid #1da1f2;background:#f5f5f5}.info{display:flex;flex-direction:column;justify-content:center}.username{font-size:1.3rem;font-weight:600;color:#222}.study{font-size:1rem;color:#666}.stats{display:flex;align-items:center;gap:25px}.stat{display:flex;flex-direction:column;align-items:center}.stat-number{font-weight:600;font-size:1.1rem;color:#1da1f2}.stat-label{font-size:.9rem;color:#555}.edit-container{width:100%;display:flex;justify-content:center;margin-top:20px}.edit-btn{background-color:#1da1f2;color:#fff;border:none;border-radius:8px;padding:10px 25px;font-weight:500;font-size:.95rem;cursor:pointer;transition:background .2s ease}.edit-btn:hover{background-color:#1990da}.profile-posts{max-width:800px;width:100%;background:#fff;border-radius:10px;padding:25px 30px;box-shadow:0 2px 6px #00000014;box-sizing:border-box}.profile-posts h2{margin-bottom:10px;font-size:1.2rem;color:#222}.no-posts{text-align:center;background:#f5f5f5;padding:20px;border-radius:10px}.no-posts .submit-btn{margin-top:10px;display:inline-block;background:#1da1f2;color:#fff;padding:8px 16px;border-radius:6px;text-decoration:none;font-weight:500}.no-posts .submit-btn:hover{background:#1990da}.friends-overlay{position:fixed;top:0;right:-100%;width:100%;height:100%;background:#fff;box-shadow:-2px 0 8px #00000026;z-index:100;display:flex;flex-direction:column;border-radius:20px 0 0 20px;transition:right .35s ease}.friends-overlay.show{right:0}.friends-header{display:flex;align-items:center;padding:1rem;border-bottom:1px solid #eee;background-color:#f9fafb}.friends-header h2{flex:1;text-align:center;font-size:1.2rem;color:#222;margin:0}.back-btn{font-size:1.5rem;background:none;border:none;cursor:pointer;color:#1da1f2;font-weight:700}.friends-list{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:1rem}.friend-item{display:flex;align-items:center;justify-content:space-between;background:#f7f8fa;padding:.8rem 1rem;border-radius:12px;box-shadow:0 1px 3px #00000014}.friend-pic{width:45px;height:45px;border-radius:50%;object-fit:cover;border:2px solid #1da1f2}.friend-username{flex:1;margin-left:1rem;font-weight:500;color:#333}.friend-actions{display:flex;gap:.5rem}.friend-actions button{width:34px;height:34px;border:none;border-radius:50%;color:#fff;font-size:1rem;cursor:pointer;transition:transform .2s ease}.friend-info{display:flex;align-items:center;justify-content:center}.friend-actions button:hover{transform:scale(1.1)}.friend-actions .accept{background-color:#4caf50}.friend-actions .decline{background-color:#e53935}.stat.clickable{cursor:pointer;transition:transform .2s ease}.stat.clickable:hover{transform:scale(1.05)}@media (max-width: 600px){.header-top,.left-section{flex-direction:column;align-items:center}.stats{justify-content:center}}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background-color:#f2f4f7}.create-post-container{display:flex;flex-direction:column;align-items:center;padding:1rem;width:100%;max-width:600px;margin:0 auto}.create-post-container h2{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:#14171a;text-align:center}.create-post-form{display:flex;flex-direction:column;width:100%;background:#ffffff;padding:1rem;border-radius:1rem;box-shadow:0 2px 6px #00000014}.post-input{width:100%;border:1px solid #e1e8ed;border-radius:12px;padding:.75rem;font-size:1rem;resize:none;overflow:hidden;outline:none;background-color:#f9f9f9;transition:border-color .2s ease,background-color .2s ease}.post-input:focus{border-color:#1da1f2;background-color:#fff}.char-counter{align-self:flex-end;font-size:.85rem;color:#657786;transition:color .2s ease;margin-top:.25rem;margin-bottom:.25rem;text-align:right}.char-counter.warning{color:#e0245e;font-weight:600}.post-options{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;gap:.75rem}.tag-select{flex:1;padding:.5rem;border-radius:8px;border:1px solid #e1e8ed;background:#fff;font-size:1rem;color:#14171a;outline:none;transition:border-color .2s ease}.tag-select:focus{border-color:#1da1f2}.submit-btn{padding:.6rem 1rem;border-radius:8px;border:none;font-weight:600;cursor:pointer;transition:all .2s ease;flex-shrink:0}.submit-btn.disabled{background:#aab8c2;color:#fff;cursor:not-allowed}.submit-btn.active{background:#1da1f2;color:#fff}.submit-btn.active:hover{background:#1a91da}.selected-tag-pill{display:inline-flex;align-items:center;background:#a2d5f2;color:#0a3d62;border-radius:999px;padding:.25rem .75rem;font-size:.9rem;gap:.5rem;cursor:pointer}.edit-tag-btn{border:none;background:none;color:#0a3d62;font-size:.9rem;display:flex;align-items:center;cursor:pointer}.tag-dropdown-panel{margin-top:.5rem;border:1px solid #e1e8ed;border-radius:.75rem;background:#fff;overflow:hidden;display:flex;flex-direction:column}.tag-search{padding:.5rem;border:none;border-bottom:1px solid #e1e8ed;outline:none;font-size:.9rem}.tag-options{max-height:150px;overflow-y:auto}.tag-option{padding:.5rem .75rem;cursor:pointer;transition:background .2s}.tag-option:hover{background-color:#f0f4f8}.tag-option.disabled{color:#aab8c2;cursor:default}.visually-hidden{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}@media (min-width: 600px){.create-post-container{padding:2rem}.create-post-form{padding:1.5rem}.post-input{font-size:1.05rem}.submit-btn{font-size:1rem}}html,body{overflow-x:hidden}.posts-filter-header{background-color:#f2f4f7;border-bottom:1px solid #ddd;padding:.8rem 0 0;position:sticky;top:0;z-index:10;display:flex;justify-content:center;align-items:center}.posts-tabs{position:relative;display:flex;justify-content:space-around;align-items:center;gap:2.5rem;font-family:Inter,sans-serif;width:100%;max-width:600px;margin:0 auto}.tab{background:none;border:none;font-size:1.05rem;font-weight:500;color:#555;padding:.9rem .6rem;cursor:pointer;transition:color .25s ease;position:relative}.tab:hover{color:#1da1f2}.tab.active{color:#1da1f2;font-weight:600}.tab-underline{position:absolute;bottom:0;left:0;width:50%;height:5px;background-color:#1da1f2;border-radius:6px;transition:transform .3s ease}.posts-page{display:flex;flex-direction:column;align-items:center;padding:1rem;max-width:700px;margin:0 auto;font-family:Inter,sans-serif;background-color:#f2f4f7}@media (max-width: 600px){.posts-tabs{gap:2rem}.tab{font-size:1rem;padding:.8rem 0}.tab-underline{height:4px}}@media (max-width: 400px){.tab{font-size:1rem}}.post-page{display:flex;flex-direction:column;align-items:center;gap:1.25rem;padding:1rem;max-width:700px;margin:0 auto;font-family:Inter,sans-serif}.post-card{width:100%;background:#fff;border-radius:1rem;padding:1rem 1.25rem;box-shadow:0 2px 6px #00000012}.post-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.post-user{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:#0a3d62;font-weight:500}.post-user-img{width:36px;height:36px;border-radius:50%}.post-tag{background-color:#a2d5f2;color:#0a3d62;border-radius:999px;padding:.2rem .6rem;font-size:.85rem;font-weight:500}.post-text{font-size:1rem;line-height:1.4;color:#333;text-align:left}.reaction-form-section{width:100%}.reaction-form{display:flex;align-items:flex-end;gap:.5rem}.reaction-input{flex:1;min-height:2.5rem;resize:none;padding:.5rem;border-radius:.75rem;border:1px solid #dfe6e9;font-size:.95rem;outline:none;transition:border-color .2s}.reaction-input:focus{border-color:#74b9ff}.reaction-submit-btn{background-color:#74b9ff;color:#fff;border:none;border-radius:.75rem;padding:.5rem .9rem;font-weight:500;cursor:pointer;transition:background .2s}.reaction-submit-btn.disabled{background-color:#b2bec3;cursor:default}.reaction-list{width:100%;display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.reaction-item{background:#fff;border-radius:1rem;padding:.75rem 1rem;box-shadow:0 1px 4px #0000000d}.reaction-user{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.reaction-user-img{width:30px;height:30px;border-radius:50%}.reaction-username{font-weight:500;color:#2d3436}.reaction-text{font-size:.95rem;color:#444;margin:.25rem 0 0;text-align:left}.no-reactions{color:#636e72;text-align:center;margin-top:.75rem}.auth-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:#f9fafb;font-family:Inter,sans-serif}.auth-title{font-size:2rem;margin-bottom:1.5rem;color:#333}.auth-form{display:flex;flex-direction:column;gap:1rem;width:320px;background:white;padding:2rem;border-radius:1rem;box-shadow:0 4px 12px #0000001a}.auth-form label{display:flex;flex-direction:column;font-weight:500;color:#444}.auth-form input{padding:.6rem;margin-top:.3rem;border:1px solid #ccc;border-radius:8px;font-size:1rem;transition:border .2s}.auth-form input:focus{border-color:#4a90e2;outline:none}.auth-form button{padding:.75rem;border:none;border-radius:8px;background:#4a90e2;color:#fff;font-weight:600;cursor:pointer;transition:background .2s}.auth-form button:hover{background:#3c7ccc}.auth-form .secondary-btn{background:transparent;color:#4a90e2;border:1px solid #4a90e2}.auth-form .secondary-btn:hover{background:#e8f1fc}.popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center}.popup{background:white;padding:2rem;border-radius:12px;text-align:center;box-shadow:0 4px 16px #0003}.popup p{margin-bottom:1rem;color:#d32f2f;font-weight:500}.popup button{background:#4a90e2;color:#fff;border:none;border-radius:8px;padding:.5rem 1.2rem;cursor:pointer}.popup button:hover{background:#3c7ccc}.login-link{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:1rem;font-size:.95rem;color:#444}.login-btn-link{color:#4a90e2;font-weight:600;text-decoration:none;transition:color .2s}.login-btn-link:hover{color:#3c7ccc;text-decoration:underline}.file-upload-wrapper{display:flex;flex-direction:column;align-items:center;gap:.4rem}.file-input{display:none}.file-label{display:inline-block;background-color:#4a90e2;color:#fff;font-weight:600;padding:.7rem 1.2rem;border-radius:8px;cursor:pointer;text-align:center;width:100%;transition:background .2s ease,transform .1s ease}.file-label:hover{background-color:#1485d4}.file-label:active{transform:scale(.97)}.file-name{font-size:.9rem;color:#555;text-align:center;max-width:100%;word-break:break-all}.password-field{position:relative;display:flex;align-items:center;width:100%}.password-field input{width:100%;padding-right:3.5rem}.toggle-password{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#4a90e2;font-weight:600;cursor:pointer;padding:.25rem .5rem;border-radius:6px}.password-field button,.password-field button:hover{background:none;color:#000}.toggle-password:hover{background:rgba(74,144,226,.08)}.toggle-password:focus{outline:2px solid rgba(74,144,226,.18)}.not-found-container{display:flex;justify-content:center;align-items:center;height:calc(100vh - 80px);background-color:#f7f9fb;padding:20px}.not-found-card{background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;text-align:center;padding:60px 40px;max-width:480px;width:100%}.not-found-title{font-size:5rem;font-weight:700;color:#1da1f2;margin-bottom:10px}.not-found-subtitle{font-size:1.5rem;font-weight:600;color:#222;margin-bottom:10px}.not-found-text{font-size:1rem;color:#666;margin-bottom:25px}.home-btn{display:inline-block;background-color:#1da1f2;color:#fff;text-decoration:none;padding:10px 25px;border-radius:8px;font-weight:500;font-size:1rem;transition:background .2s ease}.home-btn:hover{background-color:#1990da}@media (max-width: 480px){.not-found-title{font-size:3.5rem}.not-found-subtitle{font-size:1.3rem}.not-found-card{padding:40px 20px}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}.App-header{background-color:#282c34;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin);color:#fff}.App-link{color:#61dafb}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html,body{height:100%;margin:0;overflow-x:hidden;overflow-y:auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{position:relative;min-height:100vh;padding-bottom:80px;display:flex;flex-direction:column}main{flex:1;max-width:1280px;margin:0 auto;padding:10px;box-sizing:border-box}a{text-decoration:none;color:#000}
