main{max-width:800px;margin:0 auto;padding:2rem;min-height:100vh;overflow-x:clip}.loading-container{display:flex;align-items:center;justify-content:center;min-height:50vh;color:var(--text-secondary)}.login-redirect{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1.5rem;color:var(--text-secondary)}.hidden{display:none!important}.dashboard{display:flex;flex-direction:column;gap:2rem}#dashboard-nav{display:flex;flex-wrap:wrap;gap:.25rem}.dashboard-screen{display:flex;flex-direction:column;gap:2rem}.profile-section{background:var(--bg-card);border-radius:16px;padding:1.5rem;border:1px solid rgba(45,201,136,.1)}.server-select-wrapper{display:flex;align-items:center}.server-select{padding:.4rem 2.25rem .4rem .75rem;border-radius:6px;border:1px solid rgba(45,201,136,.2);background:var(--bg-card);color:var(--brand-teal);font-size:.8rem;font-weight:600;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%232dc988' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.server-select:focus{outline:none;border-color:var(--brand-teal);box-shadow:0 0 0 2px #2dc98826}.server-select option{background:var(--bg-primary);color:var(--text-primary)}.user-info{display:flex;align-items:center;gap:1rem}.user-avatar{width:64px;height:64px;border-radius:8px}.user-name{font-size:1.5rem;color:var(--brand-teal);margin:0}.user-uuid{font-size:.75rem;color:var(--text-secondary);font-family:monospace;margin:.25rem 0 0}.btn-primary{padding:.75rem 1.5rem;border-radius:8px;border:none;background:var(--brand-teal);color:var(--bg-primary);font-size:.875rem;font-weight:600;cursor:pointer;transition:opacity .2s}.btn-primary:hover:not(:disabled){opacity:.9}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:.75rem 1.5rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:transparent;color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:border-color .2s}.btn-secondary:hover{border-color:var(--brand-teal);color:var(--brand-teal)}section{background:var(--bg-card);border-radius:16px;padding:1.5rem;border:1px solid rgba(45,201,136,.1)}section h2{font-size:1.25rem;color:var(--brand-lime);margin:0 0 1rem}.info-tooltip{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:.4rem;vertical-align:middle;cursor:help;flex-shrink:0}.info-tooltip svg{display:block}.info-tooltip:after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);background:var(--bg-card);color:var(--text-secondary);font-size:.8rem;font-weight:400;line-height:1.4;padding:.5rem .75rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);white-space:normal;width:max-content;max-width:260px;pointer-events:none;opacity:0;transition:opacity .15s ease;z-index:100;box-shadow:0 4px 12px #0000004d}.info-tooltip:hover:after{opacity:1}.stats-tabs{display:flex;gap:.75rem;margin-bottom:1.5rem}.stats-tab{flex:1;padding:.75rem 1.25rem;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff08;color:var(--text-secondary);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.stats-tab:hover{background:#ffffff0d;border-color:#2dc9884d}.stats-tab.active{background:#2dc98826;border-color:#2dc9884d;color:var(--brand-teal)}.stats-server-section{animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.stat-card{background:#ffffff0d;border-radius:12px;padding:1.25rem;text-align:center;display:flex;flex-direction:column;gap:.5rem}.stat-value{font-size:2rem;font-weight:700;color:var(--brand-teal)}.stat-label{font-size:.875rem;color:var(--text-secondary)}.no-stats{color:var(--text-secondary);font-style:italic;text-align:center;margin-top:1rem}.chat-panel{display:flex;flex-direction:column}.chat-log{height:350px;overflow-y:auto;background:#0000004d;border:1px solid rgba(255,255,255,.08);border-radius:8px 8px 0 0;padding:.75rem;font-family:Fira Code,Cascadia Code,Consolas,monospace;font-size:.8125rem;line-height:1.6}.chat-empty{color:var(--text-secondary);font-style:italic;text-align:center;padding:2rem 0}.chat-event{padding:2px 0;word-break:break-word}.chat-time{color:#ffffff4d;margin-right:.5rem;font-size:.75rem}.chat-player-name{color:var(--text-primary);font-weight:500}.chat-event-join{color:#4ade80}.chat-event-quit{color:#a1a1aa}.chat-event-death{color:#f87171}.chat-event-chat,.chat-event-web_chat{color:var(--text-primary)}.chat-web-badge{display:inline-block;background:#2dc98833;color:var(--brand-teal);font-size:.625rem;font-weight:700;padding:1px 4px;border-radius:3px;margin-right:.375rem;vertical-align:middle;letter-spacing:.5px}.chat-input-bar{display:flex;gap:.75rem;border:1px solid rgba(255,255,255,.08);border-top:none;border-radius:0 0 8px 8px;padding:.5rem;background:#0003}.chat-input-bar input{flex:1;padding:.625rem .75rem;border-radius:6px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:var(--text-primary);font-size:.875rem}.chat-input-bar input:focus{outline:none;border-color:var(--brand-teal)}.chat-input-bar input:disabled{opacity:.6}.chat-status{font-size:.875rem;margin-top:.5rem}.chat-status.success{color:var(--brand-teal)}.chat-status.error{color:var(--offline)}.info-grid{display:flex;flex-direction:column;gap:.75rem}.info-row{display:flex;justify-content:space-between;padding:.75rem;background:#ffffff0d;border-radius:8px}.info-label{color:var(--text-secondary)}.info-value{color:var(--text-primary);font-weight:500}.dashboard-footer{text-align:center;padding-top:1rem}.dashboard-footer a{color:var(--text-secondary);text-decoration:none;font-size:.875rem}.dashboard-footer a:hover{color:var(--brand-teal)}.badge{padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600}.badge-on{background:#2dc98833;color:var(--brand-teal)}.badge-off{background:#f8717126;color:var(--offline)}.totp-note{margin-top:.75rem;padding:.75rem;background:#9370db1a;border-radius:8px;border:1px solid rgba(147,112,219,.2)}.totp-note p{color:#9370db;font-size:.8rem;margin:0}.totp-actions{margin-top:1rem}.disable-info{color:var(--text-secondary);font-size:.875rem;margin-bottom:.5rem}.disable-form{display:flex;gap:.75rem;align-items:center}.disable-form input{width:120px;padding:.6rem .75rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:var(--text-primary);font-size:1.1rem;text-align:center;letter-spacing:.2em;font-family:monospace}.disable-form input:focus{outline:none;border-color:var(--offline)}.btn-danger{padding:.6rem 1rem;border-radius:8px;border:1px solid rgba(248,113,113,.3);background:#f8717126;color:var(--offline);font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-danger:hover:not(:disabled){background:#f8717140}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.form-error{color:var(--offline);font-size:.8rem;margin-top:.5rem}.add-friend-form{display:flex;gap:.75rem;margin-bottom:.75rem}.add-friend-form input{flex:1;padding:.6rem 1rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:var(--text-primary);font-size:.9rem}.add-friend-form input:focus{outline:none;border-color:var(--brand-teal)}.btn-small-primary{padding:.6rem 1rem;font-size:.8rem;white-space:nowrap}.friend-status{font-size:.85rem;margin-bottom:.75rem}.friend-status.success{color:var(--brand-teal)}.friend-status.error{color:var(--offline)}.pending-requests{margin-bottom:1rem;padding:1rem;background:#ffffff08;border-radius:10px;border:1px solid rgba(255,255,255,.06)}.pending-requests h3{font-size:.95rem;color:var(--text-secondary);margin-bottom:.75rem}.pending-item{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.pending-item:last-child{border-bottom:none}.pending-avatar{width:32px;height:32px;border-radius:4px;flex-shrink:0}.pending-name{font-weight:600;color:var(--text-primary)}.pending-type{font-size:.75rem;color:var(--text-secondary);background:#ffffff0f;padding:.15rem .5rem;border-radius:4px}.pending-actions{margin-left:auto;display:flex;gap:.5rem}.btn-accept{padding:.35rem .75rem;border-radius:6px;border:none;background:#2dc98833;color:var(--brand-teal);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-accept:hover{background:#2dc98859}.btn-reject{padding:.35rem .75rem;border-radius:6px;border:none;background:#f8717126;color:var(--offline);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-reject:hover{background:#f8717140}.friends-list{display:flex;flex-direction:column;gap:.5rem}.no-friends,.no-conversations,.no-messages{color:var(--text-secondary);font-style:italic;text-align:center;padding:1rem 0}.friend-item{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;background:#ffffff0a;border-radius:10px;transition:background .2s}.friend-item:hover{background:#ffffff12}.friend-info{display:flex;align-items:center;gap:.6rem}.friend-avatar{width:32px;height:32px;border-radius:4px}.friend-name{font-weight:500;color:var(--text-primary)}.friend-actions{display:flex;gap:.5rem}.btn-msg-friend{padding:.3rem .65rem;border-radius:6px;border:1px solid rgba(45,201,136,.3);background:transparent;color:var(--brand-teal);font-size:.78rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-msg-friend:hover{background:#2dc98826}.btn-remove-friend{padding:.3rem .65rem;border-radius:6px;border:1px solid rgba(248,113,113,.2);background:transparent;color:var(--offline);font-size:.78rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-remove-friend:hover{background:#f8717126}.conversations-list{display:flex;flex-direction:column;gap:.5rem}.conversation-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#ffffff0a;border-radius:10px;cursor:pointer;transition:background .2s}.conversation-item:hover{background:#ffffff14}.conv-avatar{width:32px;height:32px;border-radius:4px;flex-shrink:0}.conv-info{flex:1;display:flex;flex-direction:column;gap:.15rem;min-width:0}.conv-name{font-weight:600;color:var(--text-primary);font-size:.9rem}.conv-preview{color:var(--text-secondary);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-source{font-size:.7rem;color:var(--text-secondary);background:#ffffff0f;padding:.15rem .4rem;border-radius:4px;flex-shrink:0}.message-view{display:flex;flex-direction:column;height:400px}.message-view-header{display:flex;align-items:center;gap:.75rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:.75rem}.btn-back{padding:.35rem .65rem;border-radius:6px;border:1px solid rgba(255,255,255,.15);background:transparent;color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:border-color .2s,color .2s}.btn-back:hover{border-color:var(--brand-teal);color:var(--brand-teal)}.message-partner{font-weight:600;color:var(--text-primary);font-size:1rem}.messages-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;padding:.5rem 0}.message-bubble{max-width:75%;padding:.6rem .85rem;border-radius:12px;font-size:.9rem}.message-bubble.mine{align-self:flex-end;background:#2dc98826;border:1px solid rgba(45,201,136,.2)}.message-bubble.theirs{align-self:flex-start;background:#ffffff0f;border:1px solid rgba(255,255,255,.08)}.message-header{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.25rem}.message-sender{font-weight:600;font-size:.78rem;color:var(--brand-teal)}.message-meta{font-size:.7rem;color:var(--text-secondary);white-space:nowrap}.message-text{color:var(--text-primary);word-wrap:break-word;line-height:1.4}.send-message-form{display:flex;gap:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.08);margin-top:auto}.send-message-form input{flex:1;padding:.6rem 1rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:var(--text-primary);font-size:.9rem}.send-message-form input:focus{outline:none;border-color:var(--brand-teal)}.map-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.map-header h2{margin:0}.map-header-actions{display:flex;align-items:center;gap:.35rem}.btn-locate{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;border:1px solid rgba(45,201,136,.3);background:#2dc9881a;color:var(--brand-teal);cursor:pointer;transition:background .2s}.btn-locate:hover{background:#2dc98833}.btn-fullscreen{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:var(--text-secondary);cursor:pointer;transition:all .2s}.btn-fullscreen:hover{background:#ffffff1a;color:var(--text-primary);border-color:var(--brand-teal)}.map-fullscreen{position:fixed;inset:0;z-index:9999;background:var(--bg-primary, #0f0f1a);padding:1rem;margin:0;border-radius:0;border:none;display:flex;flex-direction:column;overflow:auto}.map-fullscreen .map-container{flex:1;height:auto;min-height:0;border-radius:8px}.map-fullscreen .map-header,.map-fullscreen .claim-controls,.map-fullscreen .claim-legend,.map-fullscreen .map-legend{flex-shrink:0}.map-section .map-status{color:var(--text-secondary);font-style:italic;text-align:center;padding:2rem 0}.map-container{height:400px;border-radius:12px;overflow:hidden;background:#1a1a2e;border:1px solid rgba(255,255,255,.08)}.map-legend{display:flex;gap:1.25rem;margin-top:.75rem;justify-content:center;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-secondary)}.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.legend-self{background:#2dc988}.legend-home{background:#f59e0b}.legend-friend{background:#3b82f6}.marker-dot{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.9);box-shadow:0 0 6px #0006}.marker-self{background:#2dc988;width:16px;height:16px}.marker-home{background:#f59e0b;border-radius:2px;transform:rotate(45deg)}.marker-friend{background:#3b82f6}.marker-friend-offline{background:#6b7280}.leaflet-popup-content-wrapper{background:#1e1e2e!important;color:#e0e0e0!important;border-radius:10px!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:0 4px 16px #0006!important}.leaflet-popup-tip{background:#1e1e2e!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:none!important}.leaflet-popup-content{margin:10px 14px!important;font-size:.85rem!important;line-height:1.5!important}.map-popup strong{color:#2dc988}.status-online{color:#2dc988;font-weight:600}.status-offline{color:#6b7280;font-weight:600}.popup-time{font-size:.75rem;color:#888}.leaflet-control-zoom a{background:#1e1e2e!important;color:#e0e0e0!important;border-color:#ffffff26!important}.leaflet-control-zoom a:hover{background:#2a2a3e!important}.leaflet-control-attribution{background:#1e1e2ecc!important;color:#666!important}.leaflet-control-attribution a{color:#888!important}.leaflet-container{background:#1a1a2e!important}.map-compass{pointer-events:none}.map-server-label{background:#1e1e2ee6!important;color:var(--brand-teal)!important;padding:4px 12px!important;border-radius:6px!important;border:1px solid rgba(45,201,136,.3)!important;font-size:12px!important;font-weight:600!important;letter-spacing:.5px;pointer-events:none}.map-coords-display{background:#1e1e2ee6!important;color:#fff9!important;padding:4px 10px!important;border-radius:6px!important;border:1px solid rgba(255,255,255,.1)!important;font-family:monospace!important;font-size:11px!important;letter-spacing:.5px}.dimension-tabs{display:flex;gap:.5rem;padding:.5rem;background:var(--bg-card);border-radius:12px;border:1px solid rgba(45,201,136,.1);margin-bottom:1.5rem}.dim-tab{flex:1;padding:.6rem 1rem;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text-secondary);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.dim-tab:hover{background:#ffffff0d;color:var(--text-primary)}.dim-tab.active{background:#2dc98826;color:var(--brand-teal);border-color:#2dc9884d}.claim-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.75rem;padding:.75rem;background:#ffffff08;border-radius:10px;border:1px solid rgba(255,255,255,.06)}.claim-info,.claim-votes{font-size:.85rem;color:var(--text-secondary);font-weight:600}.claim-info{color:var(--brand-teal)}.btn-claim-mode{padding:.5rem 1rem;border-radius:8px;border:1px solid rgba(45,201,136,.3);background:transparent;color:var(--brand-teal);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s;margin-left:auto}.btn-claim-mode:hover,.btn-claim-mode.active{background:#2dc98826}.claim-legend{display:flex;gap:1rem;margin-bottom:.75rem;flex-wrap:wrap}.claim-legend label{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-secondary);cursor:pointer}.claim-legend input[type=checkbox]{accent-color:var(--brand-teal)}.trust-section .add-trust-form{display:flex;gap:.75rem;margin-bottom:.75rem}.trust-section .add-trust-form input{flex:1;padding:.6rem 1rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:var(--text-primary);font-size:.9rem}.trust-section .add-trust-form input:focus{outline:none;border-color:var(--brand-teal)}.trust-status{font-size:.85rem;margin-bottom:.75rem}.trust-status.success{color:var(--brand-teal)}.trust-status.error{color:var(--offline)}.trusted-list{display:flex;flex-direction:column;gap:.5rem}.no-trusts{color:var(--text-secondary);font-style:italic;text-align:center;padding:1rem 0}.trust-item{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;background:#ffffff0a;border-radius:10px;transition:background .2s}.trust-item:hover{background:#ffffff12}.trust-info{display:flex;align-items:center;gap:.6rem}.trust-avatar{width:32px;height:32px;border-radius:4px}.trust-name{font-weight:500;color:var(--text-primary)}.btn-remove-trust{padding:.3rem .65rem;border-radius:6px;border:1px solid rgba(248,113,113,.2);background:transparent;color:var(--offline);font-size:.78rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-remove-trust:hover{background:#f8717126}.threads-list{display:flex;flex-direction:column;gap:.5rem}.no-threads,.no-replies{color:var(--text-secondary);font-style:italic;text-align:center;padding:1rem 0}.thread-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#ffffff0a;border-radius:10px;cursor:pointer;transition:background .2s}.thread-item:hover{background:#ffffff14}.thread-avatar{width:32px;height:32px;border-radius:4px;flex-shrink:0}.thread-info{flex:1;display:flex;flex-direction:column;gap:.15rem;min-width:0}.thread-title{font-weight:600;color:var(--text-primary);font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.thread-meta{color:var(--text-secondary);font-size:.78rem;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.thread-author{font-weight:600;color:var(--text-primary)}.thread-time{color:var(--text-secondary);opacity:.7}.thread-reply-count{flex-shrink:0;background:#ffffff14;color:var(--text-secondary);font-size:.75rem;font-weight:600;padding:.2rem .55rem;border-radius:10px;min-width:1.5rem;text-align:center}.staff-badge{display:inline-block;font-size:.65rem;font-weight:700;padding:.1rem .35rem;border-radius:4px;text-transform:uppercase;letter-spacing:.3px;vertical-align:middle}.staff-badge.admin{background:#ef444433;color:#f87171}.staff-badge.mod{background:#3b82f633;color:#60a5fa}.new-thread-form{display:flex;flex-direction:column;gap:.75rem}.thread-field{position:relative}.new-thread-form input,.new-thread-form textarea,.reply-form textarea{width:100%;padding:.6rem 1rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:var(--text-primary);font-size:.9rem;font-family:inherit;resize:vertical;box-sizing:border-box}.new-thread-form input:focus,.new-thread-form textarea:focus,.reply-form textarea:focus{outline:none;border-color:var(--brand-teal)}.char-count{position:absolute;bottom:.4rem;right:.6rem;font-size:.7rem;color:var(--text-secondary);opacity:.6;pointer-events:none}.thread-form-status,.reply-form-status{font-size:.85rem;margin:0}.thread-form-status.error,.reply-form-status.error{color:var(--offline)}.thread-detail-content{margin-bottom:1rem}.thread-detail-card{background:#ffffff0a;border-radius:10px;padding:1rem;border:1px solid rgba(255,255,255,.06)}.thread-detail-title{margin:0 0 .6rem;color:var(--text-primary);font-size:1.1rem}.thread-detail-author{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}.thread-detail-name{font-weight:600;font-size:.85rem;color:var(--brand-teal)}.thread-detail-time{font-size:.75rem;color:var(--text-secondary)}.thread-detail-body{color:var(--text-primary);font-size:.9rem;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.thread-replies-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.reply-item{background:#ffffff08;border-radius:8px;padding:.75rem;border:1px solid rgba(255,255,255,.04)}.reply-header{display:flex;align-items:center;gap:.4rem;margin-bottom:.4rem;flex-wrap:wrap}.reply-avatar{width:24px;height:24px;border-radius:3px}.reply-name{font-weight:600;font-size:.8rem;color:var(--brand-teal)}.reply-time{font-size:.7rem;color:var(--text-secondary)}.reply-body{color:var(--text-primary);font-size:.85rem;line-height:1.45;white-space:pre-wrap;word-wrap:break-word}.reply-form{display:flex;flex-direction:column;gap:.5rem}.btn-delete{padding:.25rem .55rem;border-radius:6px;border:1px solid rgba(248,113,113,.2);background:transparent;color:var(--offline);font-size:.72rem;font-weight:500;cursor:pointer;transition:background .2s;margin-left:auto}.btn-delete:hover{background:#f8717126}.btn-load-more{width:100%;margin-top:.75rem;padding:.6rem 1rem;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--text-secondary);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s}.btn-load-more:hover{background:#ffffff14;border-color:var(--brand-teal);color:var(--text-primary)}.bottom-tab-bar{display:none}.bottom-tab{display:flex;flex:1;flex-direction:column;align-items:center;gap:.2rem;padding:.5rem 0;border:none;background:transparent;color:var(--text-secondary);font-size:.65rem;font-weight:600;cursor:pointer;transition:color .2s}.bottom-tab.active{color:var(--brand-teal)}.bottom-tab:hover{color:var(--text-primary)}@media(max-width:600px){main{padding:1rem 1rem 4.5rem}#dashboard-nav{display:none}.bottom-tab-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:100;background:#1e2a38fa;backdrop-filter:blur(12px);border-top:1px solid rgba(45,201,136,.15);padding-bottom:env(safe-area-inset-bottom)}.dashboard,.dashboard-screen{gap:1rem}section{padding:1rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.dim-tab{padding:.45rem .5rem;font-size:.78rem}.map-container{height:250px}.disable-form{flex-direction:column;align-items:stretch}.disable-form input{width:100%}.info-row{flex-direction:column;gap:.25rem}.conversation-item,.btn-primary,.btn-secondary,.btn-danger,.btn-small-primary,.btn-accept,.btn-reject,.btn-msg-friend,.btn-remove-friend,.btn-remove-trust{min-height:44px}.user-info,.chat-input-bar{flex-direction:column}.chat-log{height:250px}.add-friend-form{flex-direction:column}.friend-item{flex-direction:column;align-items:flex-start;gap:.5rem}.friend-actions{width:100%}.friend-actions button{flex:1}.pending-item{flex-wrap:wrap}.pending-actions{width:100%;margin-left:0}.message-bubble{max-width:90%}.send-message-form{flex-direction:column}.claim-controls{flex-direction:column;align-items:stretch}.btn-claim-mode{margin-left:0}.trust-section .add-trust-form{flex-direction:column}.trust-item{flex-direction:column;align-items:flex-start;gap:.5rem}.thread-item{flex-direction:column;align-items:flex-start}.thread-reply-count{align-self:flex-end}.new-thread-form input,.new-thread-form textarea,.reply-form textarea{font-size:16px}.btn-delete{min-height:44px}.info-tooltip:after{left:auto;right:0;transform:none}}@media(max-width:380px){.stats-grid{grid-template-columns:1fr}.dim-tab{padding:.35rem;font-size:.7rem}.map-container{height:200px}}
