:root{--background:#FFFFFF;--foreground:#252525;--card:#FFFFFF;--card-foreground:#252525;--primary:#030213;--primary-foreground:#FFFFFF;--primary-hover:#1a1a2e;--secondary:#F2F2FF;--secondary-foreground:#030213;--muted:#ECECF0;--muted-foreground:#717182;--accent:#E9EBEF;--accent-foreground:#030213;--border:#E6E6E6;--ring:#B5B5B5;--shadow:0 1px 2px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.06);--bg:var(--background);--text:var(--foreground);--surface:var(--card);--success:#22C55E;--pending:#FACC15;--warning:#F97316;--info:#3B82F6;--error:#EF4444;--destructive:#D4183D;--input-background:#F3F3F5;--switch-background:#CBCED4;--chart-1:#E4572E;--chart-2:#3BA6C9;--chart-3:#4A63D6;--chart-4:#E3D34A;--chart-5:#D5A54C;--sidebar-bg:#FBFBFB;--sidebar-fg:#252525;--sidebar-primary:#030213}.dark{--background:#252525;--foreground:#FBFBFB;--card:#252525;--card-foreground:#FBFBFB;--primary:#FBFBFB;--primary-foreground:#333333;--secondary:#444444;--secondary-foreground:#FBFBFB;--muted:#3A3A3A;--muted-foreground:#C7C7C7;--accent:#444444;--accent-foreground:#FBFBFB;--destructive:#993333;--destructive-foreground:#E05555;--border:#3A3A3A;--ring:#707070;--bg:var(--background);--text:var(--foreground);--surface:var(--card);--primary-hover:#e0e0e0;--input-background:#444444;--switch-background:#707070;--chart-1:#645CFF;--chart-2:#2FBF91;--chart-3:#D5A54C;--chart-4:#B35BD4;--chart-5:#E1692E;--sidebar-bg:#333333;--sidebar-fg:#FBFBFB;--sidebar-primary:#645CFF}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg)}#__next,body,html{width:100%;max-width:100%;overflow-x:hidden}.container{max-width:100%;margin:0;padding:0}.app-container{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));padding-top:max(12px,env(safe-area-inset-top));padding-bottom:0!important;min-height:100vh}.app-header{padding:max(24px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 16px max(12px,env(safe-area-inset-left));position:sticky;top:0;z-index:10001;background:var(--background);border-bottom:2px solid var(--background)}.app-content,.app-footer{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.app-footer{padding-bottom:max(12px,env(safe-area-inset-bottom))}.app-footer a{color:var(--text-secondary);text-decoration:none;transition:color .2s}.app-footer a:hover{color:var(--text)}.app-footer .muted{color:var(--text-tertiary)}.safe-area-padding{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.safe-area-padding-top{padding-top:max(12px,env(safe-area-inset-top))}.safe-area-padding-bottom{padding-bottom:max(12px,env(safe-area-inset-bottom))}@media (max-width:480px){.feed-header{padding:10px 12px}.feed-scope-toggle button{min-width:70px}.feed-scope-toggle button,.new-post-btn{padding:6px 12px;font-size:13px}}@media (max-width:360px){.feed-header{padding:8px 10px}.feed-scope-toggle button{min-width:60px}.feed-scope-toggle button,.new-post-btn{padding:5px 10px;font-size:12px}}input,select,textarea{font-size:16px!important}input:not([type=checkbox]):not([type=radio]),select,textarea{appearance:none}.bottom-sheet{transform:translateZ(0);-webkit-transform:translateZ(0);will-change:transform;backface-visibility:hidden}body.bottom-sheet-open{overflow:hidden;position:fixed;width:100%;height:100%}.bottom-sheet-open,.bottom-sheet-open input:focus{scroll-behavior:auto!important}body.comments-sheet-open{overflow:hidden!important;position:fixed!important;width:100%!important;height:100%!important}body.comments-sheet-open #__next,body.comments-sheet-open .app-container,body.comments-sheet-open .feed-container{overflow:hidden!important;touch-action:none!important;pointer-events:none!important}body.comments-sheet-open .comments-bottom-sheet,body.comments-sheet-open .comments-bottom-sheet *{pointer-events:auto!important}.bottom-sheet-overlay{z-index:9999!important;position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;overscroll-behavior:contain;touch-action:none}body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}#__next,body{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1{font-size:28px;font-weight:800;letter-spacing:-.01em;margin:12px 0 4px}.container{max-width:1024px;padding:16px;margin:0 auto;width:100%}.topbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:8px 0 12px}button{appearance:none;background:var(--surface);color:var(--text);border:1px solid var(--border);padding:8px 12px;border-radius:9999px;box-shadow:var(--shadow);cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .02s ease-in-out}button:hover{border-color:var(--muted)}button:active{transform:translateY(1px)}button.primary{background:var(--primary);color:var(--surface);border-color:transparent}button.primary:hover{background:var(--primary-hover)}button.danger{background:var(--error);color:var(--surface);border-color:transparent}button.danger:hover{background:var(--destructive)}input,select,textarea{width:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--input-background);color:var(--text);font-size:16px}input[type=checkbox],input[type=radio]{width:auto;padding:0;border-radius:4px;background:initial}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:16px}.meetup-card{display:block}.meetup-card h3{margin-top:0}.meetup-card .muted{white-space:normal}.muted{color:var(--muted)}.chat-box{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:12px}img{max-width:100%;height:auto;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;pointer-events:auto}img:not([draggable=true]){-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none}.conversation-list{list-style:none;margin:0;padding:0}.link,a{color:var(--primary);text-decoration:none;transition:color .2s ease}.link:hover,a:hover{color:var(--primary-hover);text-decoration:underline}a:visited{color:var(--primary)}.form-grid{display:grid;grid-gap:24px;gap:24px}label{display:block;margin-bottom:8px;font-weight:500}.form-row{margin-top:24px}.chips{display:flex;flex-wrap:wrap;gap:12px}.chip{display:inline-block;padding:4px 10px;border-radius:9999px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);font-size:12px;color:var(--foreground)}.chip.active{border:2px solid var(--primary);color:var(--text);font-weight:700}.attendee-list{display:grid;grid-gap:8px;gap:8px}.attendee-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.msg{padding:6px 8px;border-radius:10px;margin:4px 0;background:var(--bg)}.msg.me{background:var(--info)}.composer{display:flex;gap:8px;align-items:center}.composer input{flex:1 1}.badge{min-width:18px;height:18px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;background:var(--primary);color:var(--surface);font-size:12px;box-shadow:var(--shadow)}#nprogress{pointer-events:none}#nprogress .bar{background:var(--primary);position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}.skeleton{background:var(--border);border-radius:6px}.shimmer{position:relative;overflow:hidden}.shimmer:after{content:"";position:absolute;top:0;left:-150px;height:100%;width:150px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);animation:shimmer 1.2s infinite}@keyframes shimmer{0%{transform:translateX(0)}to{transform:translateX(300%)}}.spin-slow{animation:spin 1.2s linear infinite}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pop{animation:pop .28s ease-out}@keyframes pop{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.feed-container{padding:0}.feed-header{padding:6px max(20px,env(safe-area-inset-left)) 4px max(20px,env(safe-area-inset-right))}.feed-scope-toggle{margin:8px 0}.feed-scope-toggle button{padding:8px 16px;border-radius:20px;transition:all .2s ease;background:var(--muted);color:var(--foreground);border:1px solid var(--border);cursor:pointer}.feed-scope-toggle button.active{background:var(--primary);color:white;border-color:transparent}.feed-scope-toggle button:not(.active):hover{background:var(--surface);border-color:var(--primary)}.new-post-btn{padding:12px;border-radius:50%;background:var(--primary);color:white;border:none;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;margin:0;width:44px;height:44px}.new-post-btn svg{width:20px;height:20px}.post-card{background:var(--surface);border-radius:0;margin-bottom:0;overflow:hidden;box-shadow:none;border:none}.post-header{padding:12px 8px;background:var(--surface);width:100%}.post-header,.post-user-info{display:flex;align-items:center;gap:12px}.post-user-info{flex:1 1;min-width:0}.post-username{font-weight:600;color:var(--foreground);text-decoration:none;font-size:14px}.post-username:hover{text-decoration:underline}.post-timestamp{color:var(--muted-foreground);font-size:12px;margin-top:2px;font-weight:400;line-height:1.2}.post-more-btn{background:none;border:none;padding:8px;border-radius:50%;cursor:pointer;font-size:18px;color:var(--foreground)}.post-more-btn:hover{background:var(--muted)}.post-media{position:relative;background:var(--background);width:100%;overflow:hidden}.post-media-container{position:relative;width:100%;padding-top:100%;background:var(--bg);cursor:pointer}.post-media-content{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}video::-webkit-media-controls-panel{background-color:rgba(0,0,0,.7)!important}video::-webkit-media-controls-play-button{background-color:var(--primary)!important;border-radius:50%!important;color:var(--primary-foreground)!important}video::-webkit-media-controls-play-button:hover{background-color:var(--primary)!important;opacity:.9!important}video::-webkit-media-controls-current-time-display,video::-webkit-media-controls-time-remaining-display{color:white!important}video::-webkit-media-controls-timeline{background-color:rgba(255,255,255,.3)!important}video::-webkit-media-controls-timeline::-webkit-slider-thumb{background-color:var(--primary)!important}video::-webkit-media-controls-volume-slider{background-color:rgba(255,255,255,.3)!important}video::-webkit-media-controls-volume-slider::-webkit-slider-thumb{background-color:var(--primary)!important}video::-webkit-media-controls-fullscreen-button,video::-webkit-media-controls-mute-button{background-color:initial!important;color:white!important}video::--moz-media-controls-panel,video::-moz-media-controls{background-color:rgba(0,0,0,.7)!important}video{color-scheme:light dark}.post-actions{display:flex;gap:10px;background:var(--surface);width:100%}.post-action-btn,.post-actions{align-items:center;padding:6px 8px}.post-action-btn{background:none;border:none;border-radius:12px;cursor:pointer;color:var(--foreground);transition:all .15s ease;display:inline-flex;gap:6px}.post-action-btn .action-count{font-size:13px;color:var(--foreground)}.post-action-btn.liked{color:var(--destructive)}.post-action-btn.saved{color:var(--primary)}.post-action-btn.saved svg{fill:var(--primary)}.comment-action-container{position:relative;display:flex;align-items:center}.comment-count{position:absolute;top:-8px;right:-8px;background:var(--primary);color:white;font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:16px;text-align:center;line-height:1.2;box-shadow:0 2px 4px rgba(0,0,0,.1)}.post-save-btn{margin-left:auto}.post-content{padding:8px 8px 12px;background:var(--surface);width:100%}.post-likes{font-weight:600;margin-bottom:8px}.post-caption,.post-likes{padding:0 8px;font-size:14px;color:var(--foreground)}.post-caption{margin-bottom:12px;line-height:1.4}.post-caption .username{font-weight:600;margin-right:6px;color:var(--foreground)}.post-comment-submit:disabled{background:var(--muted);color:var(--muted-foreground);cursor:not-allowed;opacity:.6}.modal-backdrop{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}.modal{background:var(--surface);border-radius:16px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);max-width:90vw;max-height:90vh;overflow:auto}.icon-button{background:none;border:none;padding:8px;border-radius:50%;cursor:pointer;transition:background-color .2s ease}.icon-button:hover{background:var(--bg)}.feed-empty,.feed-loading{text-align:center;padding:40px;background:var(--surface);color:var(--foreground)}.feed-empty .muted{margin-bottom:16px;color:var(--muted-foreground)}.feed-sentinel{height:20px;background:var(--surface)}.link{background:none;border:none;color:var(--primary);cursor:pointer;text-decoration:underline}.link:hover{color:var(--primary-hover)}.activity-card{background:var(--surface);border:none;border-radius:0;margin-bottom:0;overflow:hidden;box-shadow:none;border-bottom:1px solid var(--border)}.activity-header{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:none;background:var(--surface)}.activity-user-info{flex:1 1;min-width:0}.activity-username{font-weight:600;color:var(--text);text-decoration:none;font-size:14px}.activity-username:hover{text-decoration:underline}.activity-content{padding:12px 16px;background:var(--surface)}.activity-message{margin:0 0 8px;line-height:1.4;color:var(--text);font-size:14px}.activity-timestamp{color:var(--muted-foreground);font-size:12px;font-weight:400;line-height:1.2}.meetup-notification .activity-content{background:var(--success);border-left:4px solid var(--success)}@media (max-width:768px){.meetups-container{padding:0 12px}.meetups-container h2{font-size:24px;margin-bottom:16px}@media (max-width:480px){.meetups-container>div:first-of-type>div{flex-direction:column;align-items:stretch}.meetups-container>div:first-of-type>div>div{width:100%}.meetups-container>div:first-of-type>div>div>div{justify-content:center}}}.post-comment{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px;line-height:1.4;padding:4px 0}.post-comment-author{font-weight:600;color:var(--text);white-space:nowrap;font-size:14px}.post-comment-text{color:var(--text);word-wrap:break-word;font-size:14px}.post-comment-toggle{background:none;border:none;color:var(--muted);font-size:14px;cursor:pointer;padding:0;margin-top:4px;text-decoration:none}.post-comment-toggle:hover{color:var(--text);text-decoration:underline}.post-comments-preview{margin-top:8px}.post-comment-content{display:flex;align-items:flex-start;gap:8px;flex:1 1}.post-comment-actions{display:flex;align-items:center;gap:8px;margin-top:4px}.post-comment-like-btn{transition:color .2s ease;background:none;border:none;padding:4px;cursor:pointer;color:var(--muted);font-size:12px;display:flex;align-items:center;gap:4px}.post-comment-like-btn:hover{opacity:.8}.post-comment-like-btn:active{transform:scale(.95)}.upload-progress{margin-bottom:16px}.upload-progress-text{margin-bottom:8px;font-size:14px;color:var(--muted)}.upload-progress-bar{width:100%;height:4px;background-color:var(--border);border-radius:2px;overflow:hidden}.upload-progress-fill{height:100%;background-color:var(--primary);transition:width .3s ease}@keyframes heart-burst{0%{transform:translate(-50%,-50%) scale(0);opacity:0}50%{transform:translate(-50%,-50%) scale(1.2);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:0}}.heart-burst{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:80px;color:var(--error);pointer-events:none;animation:heart-burst 1s ease-out forwards;z-index:10}.topbar{background:var(--surface);padding:12px 16px;margin:0;position:relative;z-index:10000}.topbar button{background:none;border:none;padding:8px 12px;border-radius:8px;font-weight:500;font-size:14px;transition:background-color .2s ease}.topbar button:hover{background:var(--bg)}.topbar button.active{background:var(--primary);color:white}.feed-scope-toggle button{font-size:14px;font-weight:500;min-width:80px}.post-actions,.post-header{border-bottom:none}.post-comment-composer{border-top:1px solid var(--border)}.post-user-info .avatar,.post-user-info img{border:none}.feed-container .card{background:var(--surface);border:none;box-shadow:none;border-radius:0;padding:0}.comments-bottom-sheet,.feed-container,.post-card,.post-media,body{touch-action:pan-y}.allow-horizontal-gestures{touch-action:pan-x}.post-comments-preview{padding:0 16px;margin-bottom:8px}.post-comment-composer{padding:12px 16px;margin:0}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideUpIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}.comments-bottom-sheet-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:1000;touch-action:none}.comments-bottom-sheet{position:fixed;bottom:0;left:0;right:0;height:60vh;background-color:var(--background);border-top-left-radius:12px;border-top-right-radius:12px;z-index:1001;touch-action:pan-y;overscroll-behavior:contain;display:flex;flex-direction:column;box-shadow:0 -4px 20px rgba(0,0,0,.15)}.comments-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:16px max(16px,env(safe-area-inset-left)) 8px max(16px,env(safe-area-inset-right));border-bottom:1px solid var(--border);flex-shrink:0}.drag-handle{width:36px;height:4px;background-color:var(--muted-foreground);border-radius:2px;opacity:.6}.comments-sheet-title{font-size:16px;font-weight:600;color:var(--foreground);margin:0;flex:1 1;text-align:center}.close-button{background:none;border:none;font-size:24px;color:var(--muted-foreground);cursor:pointer;padding:4px;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.close-button:hover{background-color:var(--muted)}.comments-list{flex:1 1;overflow-y:auto;padding:16px max(16px,env(safe-area-inset-left)) 80px max(16px,env(safe-area-inset-right));-webkit-overflow-scrolling:touch;max-height:none;scroll-behavior:smooth}.comment-item{margin-bottom:16px}.comment-content{display:flex;gap:12px;align-items:flex-start}.comment-text-container{flex:1 1;min-width:0}.comment-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.comment-author{font-weight:600;font-size:14px;color:var(--foreground)}.comment-time{font-size:12px;color:var(--muted-foreground)}.comment-text{font-size:14px;color:var(--foreground);line-height:1.4;margin:0 0 8px;word-wrap:break-word}.comment-actions{display:flex;align-items:center;gap:8px}.comment-like-btn{background:none;border:none;font-size:16px;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .2s}.comment-like-btn:hover{background-color:var(--muted)}.comment-like-btn.liked{color:#ff4757}.comment-like-count{font-size:12px;color:var(--muted-foreground)}.loading-comments{text-align:center;padding:20px;color:var(--muted-foreground);font-size:14px}.load-more-btn{background:none;border:none;color:var(--muted-foreground);padding:12px;width:100%;border-radius:8px;transition:background-color .2s}.load-more-btn:hover{background-color:var(--muted)}.comments-input-container{position:absolute!important;bottom:0!important;left:0!important;right:0!important;background-color:var(--background);border-top:1px solid var(--border);padding:12px 16px max(12px,env(safe-area-inset-bottom));flex-shrink:0;z-index:10;transform:translateZ(0);will-change:transform}.emoji-bar{display:flex;gap:8px;margin-bottom:12px;padding:0 4px}.emoji-btn{background:none;border:none;font-size:20px;cursor:pointer;padding:8px;border-radius:8px;transition:background-color .2s;touch-action:manipulation}.emoji-btn:hover{background-color:var(--muted)}.comment-input-row{display:flex;gap:12px;align-items:flex-end}.comment-input{flex:1 1;border:1px solid var(--border);border-radius:20px;padding:12px 16px;font-size:14px;background-color:var(--background);color:var(--foreground);resize:none;min-height:44px;max-height:120px;line-height:1.4;transition:border-color .2s}.comment-input:focus{outline:none;border-color:var(--primary)}.comment-input::placeholder{color:var(--muted-foreground)}.comment-submit-btn{background-color:var(--primary);color:white;border:none;border-radius:20px;padding:12px 20px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s;flex-shrink:0;touch-action:manipulation}.comment-submit-btn:hover:not(:disabled){background-color:var(--primary-hover)}.comment-submit-btn:disabled{background-color:var(--muted);cursor:not-allowed}.view-comments-btn{background:none;border:none;padding:8px 0;color:var(--muted-foreground);font-size:14px;cursor:pointer;text-align:left;width:100%;transition:color .2s}.view-comments-btn:hover{color:var(--foreground)}@media (max-width:768px){.comments-bottom-sheet{height:70vh}.comments-input-container{padding-bottom:max(16px,env(safe-area-inset-bottom))}.emoji-btn{font-size:18px;padding:6px}.comment-input{font-size:16px}}@media (prefers-color-scheme:dark){.comments-bottom-sheet{box-shadow:0 -4px 20px rgba(0,0,0,.3)}.comment-input{background-color:var(--muted)}}.app-header h1{margin:0!important;font-size:28px;font-weight:800;position:relative;z-index:1002}.app-container{padding:0!important}.app-header+div{margin-bottom:2px}.topbar{margin-bottom:4px;padding:8px 0 2px!important}.app-content>div:not(:last-child){margin-bottom:24px}.app-content h2,.app-content h3{margin-bottom:16px}.app-content h3{margin-top:32px}.feed-header{display:flex;justify-content:space-between;align-items:center;padding:4px max(20px,env(safe-area-inset-left)) 2px max(20px,env(safe-area-inset-right));background:var(--surface);border-bottom:1px solid var(--border);margin-bottom:0;position:sticky;top:0;z-index:100;width:100%}.app-container .feed-container{padding:0!important;width:100vw!important;max-width:100vw!important;position:relative;left:50%;right:50%;margin:0 -50vw!important}.feed-container{width:100%;max-width:100%;margin:0;padding:0!important;background:var(--bg);overflow-x:hidden}.feed-scope-toggle{padding:0;margin:4px 0;display:flex;gap:8px;padding:8px 0;margin:0;width:100%;align-items:center}.new-post-modal{display:flex!important;flex-direction:column!important;max-height:90vh!important;overflow:hidden!important;border-radius:16px!important}.new-post-header{flex-shrink:0;background:var(--surface);border-bottom:1px solid var(--border);margin:-16px -16px 16px;padding:16px}.new-post-content{flex:1 1;overflow-y:auto;padding-right:4px;min-height:0}.new-post-content::-webkit-scrollbar{width:6px}.new-post-content::-webkit-scrollbar-track{background:var(--muted);border-radius:3px}.new-post-content::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.new-post-content::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground)}.new-post-footer{flex-shrink:0;background:var(--surface);border-top:1px solid var(--border);margin:16px -16px -16px;padding:16px}@media (max-width:768px){.new-post-modal{max-height:95vh!important;margin:16px;width:calc(100vw - 32px)!important;max-width:none!important}.new-post-header{margin:-16px -16px 12px;padding:12px 16px}.new-post-footer{margin:12px -16px -16px;padding:12px 16px}.new-post-content{margin-bottom:12px}}.messages-page{max-width:600px;margin:0 auto;padding:0;height:calc(100vh - 120px);min-height:0;display:flex;flex-direction:column;overflow:hidden}.messages-header-section{flex-shrink:0;padding:20px max(16px,env(safe-area-inset-left)) 20px max(16px,env(safe-area-inset-right));background:var(--background);z-index:10}.messages-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.messages-search-container{position:relative;display:flex;align-items:center;gap:12px;background:var(--bg);padding:12px 16px;border-radius:12px;border:1px solid var(--border);transition:border-color .2s ease}.messages-search-container:focus-within{border-color:var(--primary)}.messages-search-input{background:none;border:none;outline:none;flex:1 1;color:var(--foreground);font-size:15px;font-weight:400}.messages-search-clear{background:none;border:none;padding:4px;cursor:pointer;color:var(--muted-foreground);border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.messages-search-clear:hover{background:var(--border)}.messages-search-spinner{width:16px;height:16px;border-top:2px solid var(--border);border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}.messages-archive-toggle{display:flex;justify-content:center;margin-top:12px;margin-bottom:12px}.messages-archive-btn{background:var(--bg);color:var(--foreground);border:1px solid var(--border);padding:8px 16px;border-radius:20px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px}.messages-archive-btn.active{background:var(--primary);color:var(--primary-foreground)}.messages-archive-btn:hover{border-color:var(--primary)}.messages-archive-count{background:var(--primary-foreground);color:var(--primary);border-radius:10px;padding:2px 6px;font-size:11px;font-weight:600}.messages-content{flex:1 1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:16px max(16px,env(safe-area-inset-left)) max(16px,calc(16px + env(safe-area-inset-bottom))) max(16px,env(safe-area-inset-right));overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.search-results{display:flex;flex-direction:column;gap:24px}.search-results-section{margin-bottom:24px}.search-results-title{font-size:16px;font-weight:600;color:var(--foreground);margin:0 0 12px;padding:8px 0;border-bottom:1px solid var(--border)}.search-result-item{margin:0 0 16px;padding:16px;background:var(--surface);border-radius:12px;border:1px solid var(--border);cursor:pointer;transition:all .2s ease}.search-result-item:hover{background:var(--bg);border-color:var(--primary)}.search-result-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.search-result-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;background:var(--muted);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.search-result-avatar img{width:100%;height:100%;object-fit:cover}.search-result-info{flex:1 1;min-width:0}.search-result-title{font-weight:600;font-size:15px;margin-bottom:4px}.search-result-subtitle{font-size:13px;color:var(--muted-foreground)}.search-result-messages{margin-left:52px}.search-result-message{padding:8px 12px;background:var(--bg);border-radius:8px;margin:6px 0;font-size:14px;border:1px solid var(--border)}.search-result-message-sender{font-weight:500;color:var(--primary);margin-bottom:4px}.search-result-message-text{color:var(--foreground)}.search-result-message-time{font-size:12px;color:var(--muted-foreground);margin-top:4px}.search-result-more{font-size:13px;color:var(--muted-foreground);text-align:center;padding:8px}.messages-header h2{margin:0;font-size:24px;font-weight:700;color:var(--foreground)}.header-actions{display:flex;gap:8px}.conversations-container{display:flex;flex-direction:column;gap:12px;padding-right:4px;padding-top:12px;padding-bottom:50px}.conversation-item{display:flex;align-items:center;gap:16px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:12px;cursor:pointer;transition:all .2s ease;position:relative}.conversation-item:hover{background:var(--muted);border-color:var(--primary);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.conversation-avatar{flex-shrink:0;position:relative}.meetup-avatar{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:20px;color:white}.meetup-avatar,.user-avatar{width:48px;height:48px;border-radius:50%}.user-avatar{position:relative;overflow:hidden}.user-avatar img{width:100%;height:100%;object-fit:cover}.avatar-fallback{width:100%;height:100%;background:linear-gradient(135deg,#f093fb,#f5576c);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600;color:white}.conversation-content{flex:1 1;min-width:0}.conversation-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:4px}.conversation-title{display:flex;align-items:center;gap:8px;flex:1 1;min-width:0}.title-text{font-weight:600;font-size:16px;color:var(--foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subtitle-text{font-weight:500;font-size:14px}.conversation-time,.subtitle-text{color:var(--muted-foreground);white-space:nowrap}.conversation-time{font-size:12px;margin-left:8px}.conversation-preview{margin-top:4px}.last-message{line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.last-message,.no-messages{font-size:14px;color:var(--muted-foreground)}.no-messages{font-style:italic}.conversation-actions{display:flex;flex-direction:column;align-items:center;gap:8px;flex-shrink:0}.unread-badge{background:var(--primary);color:white;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600;min-width:20px;text-align:center;line-height:1}.arrow-icon{font-size:18px;color:var(--muted-foreground);font-weight:300}.quick-dm-section{margin-top:24px;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:12px}.quick-dm-section h4{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--foreground)}.dm-input-group{display:flex;gap:12px}.dm-input{flex:1 1;padding:12px 16px;border:1px solid var(--border);border-radius:8px;font-size:14px;background:var(--input-background);color:var(--foreground);transition:border-color .2s ease}.dm-input:focus{outline:none;border-color:var(--primary)}.dm-send-btn{padding:12px 24px;background:var(--primary);color:var(--primary-foreground);border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.dm-send-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.back-button-container{margin-top:24px;text-align:center}.back-btn{padding:12px 24px;background:var(--muted);color:var(--foreground);border:1px solid var(--border);border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.back-btn:hover{background:var(--muted-hover);border-color:var(--primary)}@media (max-width:768px){.messages-page{max-width:none;width:100%;height:calc(100vh - 110px)}.messages-header-section{padding:12px max(12px,env(safe-area-inset-left)) 0 max(12px,env(safe-area-inset-right))}.messages-content{padding:0 max(12px,env(safe-area-inset-left)) max(12px,calc(12px + env(safe-area-inset-bottom))) max(12px,env(safe-area-inset-right))}.app-header{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.conversation-item{padding:12px;gap:12px;margin:0 0 8px;border-radius:8px}.conversation-avatar,.meetup-avatar{width:40px;height:40px}.meetup-avatar{font-size:16px}.user-avatar{width:40px;height:40px}.avatar-fallback{font-size:16px}.title-text{font-size:15px}.subtitle-text{font-size:13px}.dm-input-group{flex-direction:column}.dm-send-btn{width:100%}.messages-header{padding:12px 0;margin-bottom:16px}.messages-header h2{font-size:20px}.conversations-container{gap:8px}}@media (max-width:480px){.messages-page{height:calc(100vh - 100px)}.messages-header-section{padding:8px max(8px,env(safe-area-inset-left)) 0 max(8px,env(safe-area-inset-right))}.messages-content{padding:0 max(8px,env(safe-area-inset-left)) max(8px,calc(8px + env(safe-area-inset-bottom))) max(8px,env(safe-area-inset-right))}.conversation-item{padding:10px;gap:10px}.conversation-avatar,.meetup-avatar{width:36px;height:36px}.meetup-avatar{font-size:14px}.user-avatar{width:36px;height:36px}.avatar-fallback,.title-text{font-size:14px}.subtitle-text{font-size:12px}}.direct-chat{max-width:none!important;display:flex;flex-direction:column;background:var(--background);width:100vw!important;position:relative}.direct-chat,.direct-chat-open{height:100vh;overflow:hidden}.direct-chat *{box-sizing:border-box}.direct-chat{padding:0!important;margin:0!important;left:0!important;right:0!important;top:0!important;bottom:0!important}.direct-chat,.direct-chat .messages-container{padding-left:0!important;padding-right:0!important}.direct-chat,.direct-chat .chat-header,.direct-chat .message-composer,.direct-chat .messages-container{margin-left:0!important;margin-right:0!important}.chat-header{padding:16px max(16px,env(safe-area-inset-left)) 16px max(16px,env(safe-area-inset-right));background:var(--surface);flex-shrink:0;position:fixed;top:calc(env(safe-area-inset-top, 0) + 60px);left:0;right:0;z-index:9998;margin:0;width:100%;border:none;box-shadow:0 2px 8px rgba(0,0,0,.1);touch-action:manipulation;pointer-events:auto}@supports (-webkit-touch-callout:none){.chat-header{position:fixed;top:env(safe-area-inset-top,0);z-index:9999}}.chat-header-info{display:flex;align-items:center;gap:16px}.back-btn-header{background:none;border:none;color:var(--primary);font-size:16px;cursor:pointer;padding:8px;border-radius:8px;transition:background-color .2s;margin:0}.back-btn-header:hover{background:var(--muted)}.chat-title-section{flex:1 1}.chat-header-info h2{margin:0 0 4px;font-size:20px;font-weight:600;color:var(--foreground)}.chat-participants{font-size:14px;color:var(--muted-foreground)}.messages-container{flex:1 1;overflow-y:auto;overflow-x:hidden;overflow-anchor:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding:0;position:relative;display:flex;flex-direction:column;scroll-snap-type:y proximity;margin-top:70px;margin-bottom:0;touch-action:pan-y}.error-message{background:var(--destructive);color:white;padding:12px 20px;margin:16px max(16px,env(safe-area-inset-left)) 16px max(16px,env(safe-area-inset-right));border-radius:8px;font-size:14px;text-align:center}.load-more-container{display:flex;justify-content:center;padding:16px 0;border-bottom:1px solid var(--border);margin-bottom:16px}.load-more-btn{background:var(--muted);border:1px solid var(--border);color:var(--foreground);padding:8px 16px;border-radius:20px;font-size:14px;cursor:pointer;transition:all .2s ease}.load-more-btn:hover:not(:disabled){background:var(--accent);border-color:var(--primary)}.load-more-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width:768px){.topbar{position:fixed!important;top:env(safe-area-inset-top,0)!important;left:0!important;right:0!important;width:100%!important;background:var(--surface)!important;z-index:10000!important}.direct-chat{height:100vh;overflow:hidden}.app-container .direct-chat,.direct-chat{margin:0!important;padding:0!important}.messages-container{margin-top:60px;margin-bottom:0}.chat-header{padding:12px max(12px,env(safe-area-inset-left)) 12px max(12px,env(safe-area-inset-right));top:calc(env(safe-area-inset-top, 0) + 50px)}.chat-header-info h2{font-size:18px}.chat-participants{font-size:12px}.error-message{margin:12px max(12px,env(safe-area-inset-left)) 12px max(12px,env(safe-area-inset-right));padding:10px 16px}.load-more-container{padding:12px 0;margin-bottom:12px}.load-more-btn{padding:6px 12px;font-size:13px}.message-composer{padding:10px max(12px,env(safe-area-inset-left)) 10px max(12px,env(safe-area-inset-right));bottom:max(env(safe-area-inset-bottom),0)!important;position:fixed!important;z-index:9999!important}.back-btn-header{font-size:14px;padding:8px}.message-bubble{max-width:85%!important;gap:8px!important;cursor:pointer;touch-action:pan-y!important}.message-bubble:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.message-avatar{width:28px;height:28px}.message-content{padding:10px 14px;border-radius:14px}.message-text{font-size:15px}.timestamp-separator{margin:16px 0}.timestamp-separator-text{padding:6px 12px;font-size:11px}}@media (max-width:480px){.topbar{position:fixed!important;top:env(safe-area-inset-top,0)!important;left:0!important;right:0!important;width:100%!important;background:var(--surface)!important;z-index:10000!important;padding:8px 12px!important}.chat-header{padding:10px max(10px,env(safe-area-inset-left)) 10px max(10px,env(safe-area-inset-right));top:calc(env(safe-area-inset-top, 0) + 45px)!important}.chat-header-info h2{font-size:16px}.chat-participants{font-size:12px}.messages-container{padding:0;margin-top:50px;margin-bottom:65px}.error-message{margin:8px max(8px,env(safe-area-inset-left)) 8px max(8px,env(safe-area-inset-right));padding:8px 12px;font-size:13px}.message-composer{padding:8px max(8px,env(safe-area-inset-left)) 8px max(8px,env(safe-area-inset-right));bottom:max(env(safe-area-inset-bottom),0)!important;position:fixed!important;z-index:9999!important}.back-btn-header{font-size:13px;padding:8px}}.messages-list{display:flex;flex-direction:column;gap:10px;padding:100px 20px 90px;overflow-x:hidden;transform:scaleY(-1)}@supports (-webkit-touch-callout:none){.message-avatar img,.messages-list img{display:block;transform:translateZ(0)}}.message-bubble{display:flex;gap:12px;max-width:70%;position:relative;transition:all .2s ease;cursor:pointer;touch-action:pan-y;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;tap-highlight-color:transparent;outline:none;transform:scaleY(-1)}.message-bubble :active,.message-bubble :focus,.message-bubble:active,.message-bubble:focus{outline:none!important;box-shadow:none!important}.message-bubble:hover{transform:scaleY(-1) translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.message-bubble.message-mine{align-self:flex-end;flex-direction:row-reverse}.message-bubble.message-other{align-self:flex-start;margin-left:-20px!important}.message-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}.message-avatar img{width:100%;height:100%;object-fit:cover;display:block}.message-avatar .avatar-fallback{width:100%;height:100%;background:linear-gradient(135deg,#f093fb,#f5576c);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:white;position:absolute;top:0;left:0;border-radius:50%}.message-content{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:12px 16px;position:relative;max-width:100%;word-wrap:break-word;overflow-wrap:break-word}.message-bubble.message-mine .message-content{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.message-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:4px}.message-username{display:none}.timestamp-separator{display:flex;justify-content:center;margin:20px 0;position:relative;transform:scaleY(-1)}.timestamp-separator:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border);z-index:1}.timestamp-separator-text{background:var(--surface);padding:8px 16px;border-radius:16px;font-size:12px;color:var(--muted-foreground);font-weight:500;z-index:2;position:relative;border:1px solid var(--border)}.message-bubble.tapped{transform:scaleY(-1) scale(.98);position:relative;z-index:10000}.message-time-revealed{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);background:var(--surface);color:var(--muted-foreground);font-size:11px;padding:4px 8px;border-radius:8px;border:1px solid var(--border);white-space:nowrap;opacity:0;transition:opacity .2s ease;z-index:9999;box-shadow:0 2px 8px rgba(0,0,0,.1);pointer-events:none}.message-bubble.tapped .message-time-revealed{opacity:1}.message-time{font-size:11px;opacity:.7}.message-text{font-size:14px;line-height:1.4;word-wrap:break-word}.message-composer{padding:12px max(16px,env(safe-area-inset-left)) 12px max(16px,env(safe-area-inset-right));border-top:1px solid var(--border);background:var(--surface);flex-shrink:0;position:fixed!important;bottom:0!important;left:0!important;right:0!important;z-index:9999!important;max-width:none;margin:0;border-top-left-radius:16px;border-top-right-radius:16px;touch-action:manipulation;width:100%;box-sizing:border-box}.composer-input-group{display:flex;gap:10px;align-items:center;width:100%;box-sizing:border-box;position:relative;z-index:9999}.composer-input-group button{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-callout:none}.composer-input{flex:1 1;padding:12px 16px;border:1px solid var(--border);border-radius:20px;font-size:16px;background:var(--input-background);color:var(--foreground);transition:border-color .2s ease;touch-action:manipulation;-webkit-user-select:text;user-select:text}.composer-input:focus{outline:none;border-color:var(--primary)}.composer-send-btn{padding:12px 20px;background:var(--primary);color:var(--primary-foreground);border:none;border-radius:24px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;touch-action:manipulation;-webkit-user-select:none;user-select:none}.composer-send-btn:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.composer-send-btn:disabled{opacity:.5;cursor:not-allowed}.direct-chat .message-composer{position:fixed!important;bottom:0!important;left:0!important;right:0!important;z-index:9999!important;width:100%!important}@media screen and (min-width:769px){.direct-chat .message-composer{bottom:0!important;position:fixed!important;z-index:9999!important}.direct-chat .messages-container{margin-bottom:80px!important}}.settings-page{max-width:600px;margin:0 auto;padding:0;background:var(--background);min-height:100vh}.settings-header{position:sticky;top:0;z-index:100;background:var(--background);border-bottom:1px solid var(--border);padding:16px 20px;display:flex;align-items:center;gap:16px}.settings-header h1{font-size:24px;font-weight:700;margin:0;color:var(--text)}.back-button{background:none;border:none;font-size:24px;color:var(--text);cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.back-button:hover{background:var(--hover)}.settings-sections{padding:12px 20px 20px}.settings-section{margin-bottom:20px}.settings-section:last-child{margin-bottom:0}.section-title{font-size:18px;margin:0 0 16px;padding:0 4px}.setting-item{display:flex;align-items:flex-start;padding:12px 16px;border-radius:12px;margin-bottom:8px;background:var(--card-background);border:1px solid var(--border);transition:all .2s ease;cursor:default}.setting-item.clickable{cursor:pointer}.setting-item.clickable:hover{background:var(--hover);border-color:var(--border-hover);transform:translateY(-1px)}.setting-item:last-child{margin-bottom:0}.setting-icon{font-size:20px;margin-right:12px;width:24px;text-align:center;flex-shrink:0}.setting-content{flex:1 1;min-width:0}.setting-title{font-size:16px;font-weight:600;color:var(--text);margin:0 0 2px;line-height:1.25}.settings-page .setting-title{margin-top:0!important;margin-bottom:2px!important}.settings-page .section-title{margin:0 0 8px!important}.setting-subtitle{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.3}.setting-control{margin-left:16px;flex-shrink:0;align-self:flex-start}.setting-arrow{font-size:18px;color:var(--text-secondary);margin-left:12px;flex-shrink:0}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border);transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:white;transition:.3s;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.toggle-switch input:checked+.toggle-slider{background-color:var(--primary)}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.select-dropdown{background:var(--input-background);border:1px solid var(--border);border-radius:8px;padding:8px 12px;font-size:14px;color:var(--text);min-width:120px;cursor:pointer;transition:border-color .2s}.select-dropdown:focus{outline:none;border-color:var(--primary)}.select-dropdown:disabled{opacity:.6;cursor:not-allowed}.error-message,.success-message{margin:16px 20px;padding:12px 16px;border-radius:8px;font-size:14px;display:flex;align-items:center;gap:8px}.success-message{background:var(--success-bg);color:var(--success);border:1px solid var(--success-border)}.error-message{background:var(--error-bg);color:var(--error);border:1px solid var(--error-border)}.danger-zone .setting-item{border-color:var(--destructive-border);background:var(--destructive-bg)}.danger-zone .setting-item:hover{background:var(--destructive-hover);border-color:var(--destructive)}.danger-zone .setting-title{color:var(--destructive)}@media (max-width:480px){.settings-header{padding:12px 16px}.settings-header h1{font-size:20px}.settings-sections{padding:10px 16px 16px}.setting-item{padding:14px;margin-bottom:6px}.setting-icon{font-size:18px;margin-right:14px}.setting-title{font-size:15px}.setting-subtitle{font-size:13px}}.dark .setting-item{background:var(--card-background-dark);border-color:var(--border-dark)}.dark .setting-item:hover{background:var(--hover-dark);border-color:var(--border-hover-dark)}.dark .toggle-slider{background-color:var(--border-dark)}.dark .toggle-slider:before{background-color:var(--background-dark)}.dark .select-dropdown{background:var(--input-background-dark);border-color:var(--border-dark);color:var(--text-dark)}.security-page{max-width:600px;margin:0 auto;padding:0;background:var(--background);min-height:100vh}.security-header{position:sticky;top:0;z-index:100;background:var(--background);border-bottom:1px solid var(--border);padding:16px 20px;display:flex;align-items:center;gap:16px}.security-header h1{font-size:24px;font-weight:700;margin:0;color:var(--text)}.security-sections{padding:12px 20px 20px}.security-section{margin-bottom:20px}.security-section:last-child{margin-bottom:0}.security-item{display:flex;align-items:flex-start;padding:12px 16px;border-radius:12px;margin-bottom:8px;background:var(--card-background);border:1px solid var(--border);transition:all .2s ease;cursor:default}.security-item.clickable{cursor:pointer}.security-item.clickable:hover{background:var(--hover);border-color:var(--border-hover);transform:translateY(-1px)}.security-item:last-child{margin-bottom:0}.security-item.technical{background:var(--technical-bg,#f8f9fa);border-color:var(--technical-border,#e9ecef)}.security-item.danger{border-color:var(--destructive-border);background:var(--destructive-bg)}.security-item.danger:hover{background:var(--destructive-hover);border-color:var(--destructive)}.security-icon{margin-right:12px;width:24px;text-align:center;flex-shrink:0;display:flex;align-items:center;justify-content:center}.security-content{flex:1 1;min-width:0}.security-title{font-size:16px;font-weight:600;color:var(--text);margin:0 0 2px;line-height:1.25}.security-page .security-title{margin-top:0!important;margin-bottom:2px!important}.security-subtitle{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.3}.security-page .section-title{margin:0 0 8px!important}.security-control{margin-left:16px;flex-shrink:0;align-self:flex-start}.security-arrow{font-size:18px;color:var(--text-secondary);margin-left:12px;flex-shrink:0}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.loading-spinner{width:32px;height:32px;border-top:3px solid var(--border);border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-container p{color:var(--text-secondary);font-size:14px;margin:0}.delete-confirmation{padding:20px;background:var(--destructive-bg);border:1px solid var(--destructive-border);border-radius:12px;margin-top:16px}.delete-warning{display:flex;align-items:center;gap:12px;margin-bottom:16px;color:var(--destructive)}.delete-warning p{margin:0;font-weight:500}.delete-input{width:100%;padding:12px 16px;border:1px solid var(--destructive-border);border-radius:8px;background:var(--background);color:var(--text);font-size:14px;margin-bottom:16px}.delete-input:focus{outline:none;border-color:var(--destructive)}.delete-actions{display:flex;gap:12px}.delete-button{padding:10px 20px;background:var(--destructive);color:white;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background-color .2s}.delete-button:hover:not(:disabled){background:var(--destructive-hover)}.delete-button:disabled{background:var(--border);cursor:not-allowed}.cancel-button{padding:10px 20px;background:var(--text-secondary);color:white;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background-color .2s}.cancel-button:hover{background:var(--text)}.danger-zone .section-title{color:var(--destructive)}@media (max-width:480px){.security-header{padding:12px 16px}.security-header h1{font-size:20px}.security-sections{padding:10px 16px 16px}.security-item{padding:14px;margin-bottom:6px}.security-icon{margin-right:14px}.security-title{font-size:15px}.security-subtitle{font-size:13px}.delete-actions{flex-direction:column}.cancel-button,.delete-button{width:100%}}.dark .security-item{background:var(--card-background-dark);border-color:var(--border-dark)}.dark .security-item:hover{background:var(--hover-dark);border-color:var(--border-hover-dark)}.dark .security-item.technical{background:var(--technical-bg-dark,#2d3748);border-color:var(--technical-border-dark,#4a5568)}.dark .delete-input{background:var(--background-dark);color:var(--text-dark)}.about-page{max-width:600px;margin:0 auto;padding:0;min-height:100vh}.about-header,.about-page{background:var(--background)}.about-header{position:sticky;top:0;z-index:100;border-bottom:1px solid var(--border);padding:16px 20px;display:flex;align-items:center;gap:16px}.about-header h1{font-size:24px;font-weight:700;margin:0;color:var(--text)}.about-content{padding:0 20px 20px}.about-intro{margin:24px 0 32px;text-align:center}.about-intro h2{font-size:28px;font-weight:700;color:var(--text);margin:0 0 16px}.about-intro p{font-size:16px;line-height:1.6;color:var(--text-secondary);max-width:500px;margin:0 auto}.about-section{margin-bottom:32px}.about-section:last-child{margin-bottom:0}.legal-section{margin-bottom:32px;padding:24px;background:var(--card-background);border:1px solid var(--border);border-radius:12px}.section-title{font-size:20px;font-weight:600;color:var(--text);margin:0 0 12px}.section-description{font-size:14px;color:var(--text-secondary);margin:0 0 20px;line-height:1.5}.legal-links{display:flex;flex-direction:column;gap:12px}.legal-link{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--background);border:1px solid var(--border);border-radius:8px;color:var(--text);text-decoration:none;transition:all .2s ease;font-weight:500}.legal-link:hover{background:var(--hover);border-color:var(--border-hover);transform:translateY(-1px)}.about-section p{font-size:16px;line-height:1.6;color:var(--text-secondary);margin:0 0 20px}.cta-button{background:var(--primary);color:white;border:none;padding:12px 24px;border-radius:8px;font-weight:600;font-size:16px;cursor:pointer;transition:background-color .2s}.cta-button:hover{background:var(--primary-hover)}@media (max-width:480px){.about-header{padding:12px 16px}.about-header h1{font-size:20px}.about-content{padding:0 16px 16px}.about-intro h2{font-size:24px}.about-intro p{font-size:15px}.legal-section{padding:20px}.section-title{font-size:18px}.legal-link{padding:10px 14px;font-size:14px}}.dark .legal-section{background:var(--card-background-dark);border-color:var(--border-dark)}.dark .legal-link{background:var(--background-dark);border-color:var(--border-dark);color:var(--text-dark)}.dark .legal-link:hover{background:var(--hover-dark);border-color:var(--border-hover-dark)}@media (max-width:768px){.app-container{padding-bottom:0!important}}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:var(--background);border-top:1px solid var(--border);box-shadow:0 -2px 10px rgba(0,0,0,.1);padding-bottom:max(8px,env(safe-area-inset-bottom))}@supports (-webkit-touch-callout:none){.mobile-bottom-nav{bottom:0;position:fixed;transform:translateZ(0);padding-bottom:max(8px,env(safe-area-inset-bottom));will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}html{height:100%;height:100vh;height:100dvh}body{min-height:100%;min-height:100vh;min-height:100dvh}.app-container{padding-bottom:0!important;min-height:100dvh}}@media (max-width:360px){.app-container{padding-bottom:0!important}.message-bubble{max-width:90%;gap:6px;cursor:pointer;touch-action:pan-y}.message-bubble:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.message-avatar{width:24px;height:24px}.message-content{padding:8px 12px;border-radius:12px}.message-text{font-size:14px}.timestamp-separator-text{padding:4px 10px;font-size:10px}}@media (min-width:1024px){.feed-container,.post-card{max-width:680px;margin:0 auto}}button:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.dark .feed-scope-toggle button{background:#2F2F2F;border-color:#555;color:var(--foreground)}.dark .feed-scope-toggle button:not(.active):hover{background:#383838;border-color:#6a6a6a}.dark .icon-button,.dark .post-action-btn,.dark .post-more-btn{color:var(--foreground)}.dark .new-post-btn{color:var(--primary-foreground)}.dark .new-post-btn svg{fill:var(--primary-foreground)}.post-view-container{width:100vw!important;max-width:100vw!important;position:relative;left:50%;right:50%;margin-left:-50vw!important;margin-right:-50vw!important;padding:0!important}@media (min-width:1024px){.post-view-container{width:100%!important;max-width:680px!important;position:static!important;left:auto!important;right:auto!important;margin:0 auto!important;padding:0!important}.post-view-container .post-card{max-width:680px;margin:0 auto}}@keyframes highlight-pulse{0%,to{box-shadow:0 0 0 0 rgba(59,130,246,0)}50%{box-shadow:0 0 0 4px rgba(59,130,246,.2)}}