@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap);:root{--btn-radius:8px;--btn-font-weight:600;--btn-transition:background 0.18s ease,color 0.18s ease,border-color 0.18s ease,opacity 0.18s ease,box-shadow 0.18s ease,transform 0.1s ease;--btn-danger:#ff4d4f;--btn-danger-hover:#e53935;--btn-danger-dark:#c62828}.btn{border:1px solid #0000;box-sizing:border-box;display:inline-flex;font-family:inherit;font-size:.92rem;font-weight:600;font-weight:var(--btn-font-weight);gap:6px;height:38px;line-height:1;outline:none;padding:0 16px;text-decoration:none;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .1s ease;transition:var(--btn-transition);-webkit-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.btn,.btn-xs{border-radius:8px;border-radius:var(--btn-radius)}.btn-xs{font-size:.78rem;gap:4px;height:28px;padding:0 8px}.btn-s{border-radius:8px;border-radius:var(--btn-radius);font-size:.85rem;height:32px;padding:0 12px}.btn-m{font-size:.92rem;height:38px;padding:0 16px}.btn-l{font-size:1rem;height:44px;padding:0 22px}.btn-xl{border-radius:8px;border-radius:var(--btn-radius);font-size:1.1rem;height:52px;padding:0 28px;width:100%}.btn-icon{flex-shrink:0;padding:0;width:38px}.btn-xs.btn-icon{width:28px}.btn-s.btn-icon{width:32px}.btn-l.btn-icon{width:44px}.btn-xl.btn-icon{width:52px}.btn-full{width:100%}.btn-primary{border-color:var(--accent-green)}.btn-primary:hover:not(:disabled):not(.btn-loading){background:var(--accent-green-dark);border-color:var(--accent-green-dark)}.btn-primary:active:not(:disabled):not(.btn-loading){transform:translateY(1px)}.btn-secondary{background:#0000;border-color:var(--accent-green);color:var(--accent-green)}.btn-secondary:hover:not(:disabled):not(.btn-loading){background:#43a04714}.dark-mode .btn-secondary:hover:not(:disabled):not(.btn-loading){background:#66bb6a26}.btn-secondary:active:not(:disabled):not(.btn-loading){transform:translateY(1px)}.btn-ghost{background:#0000;border-color:#0000;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled):not(.btn-loading){background:var(--bg-hover);color:var(--text-primary)}.btn-ghost:active:not(:disabled):not(.btn-loading){transform:translateY(1px)}.btn-danger{background:#ff4d4f;background:var(--btn-danger);border-color:#ff4d4f;border-color:var(--btn-danger);color:#fff}.btn-danger:hover:not(:disabled):not(.btn-loading){background:#e53935;background:var(--btn-danger-hover);border-color:#e53935;border-color:var(--btn-danger-hover)}.btn-danger:active:not(:disabled):not(.btn-loading){background:#c62828;background:var(--btn-danger-dark);border-color:#c62828;border-color:var(--btn-danger-dark);transform:translateY(1px)}.btn:focus-visible{box-shadow:0 0 0 4px #43a0472e;outline:2px solid var(--accent-green);outline-offset:3px}.btn-danger:focus-visible{box-shadow:0 0 0 4px #ff4d4f33;outline-color:#ff4d4f;outline-color:var(--btn-danger)}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.45;pointer-events:none;transform:none!important}.btn.btn-loading{color:#0000!important;cursor:wait;pointer-events:none;position:relative}.btn.btn-loading>*{visibility:hidden}.btn.btn-loading:after{animation:btn-spin .65s linear infinite;border:2px solid #fff;border-radius:50%;border-top-color:#0000;content:"";height:1em;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:1em}.btn-ghost.btn-loading:after,.btn-secondary.btn-loading:after{border-color:var(--text-primary);border-top-color:#0000}@keyframes btn-spin{to{transform:translate(-50%,-50%) rotate(1turn)}}.btn-action{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;border-radius:var(--btn-radius);color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;gap:4px;height:28px;justify-content:center;padding:0 10px;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .1s ease;transition:var(--btn-transition);white-space:nowrap}.btn-action:hover{background:var(--bg-hover);border-color:var(--border-hover)}.btn-ban{align-items:center;background:#ff4d4f;background:var(--btn-danger);border:1px solid #ff4d4f;border:1px solid var(--btn-danger);border-radius:8px;border-radius:var(--btn-radius);color:#fff;cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;gap:4px;height:28px;justify-content:center;padding:0 10px;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .1s ease;transition:var(--btn-transition);white-space:nowrap}.btn-ban:hover{background:#e53935;background:var(--btn-danger-hover);border-color:#e53935;border-color:var(--btn-danger-hover)}.btn-unban{align-items:center;background:var(--accent-green);border:1px solid var(--accent-green);border-radius:8px;border-radius:var(--btn-radius);color:#fff;cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;gap:4px;height:28px;justify-content:center;padding:0 10px;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .1s ease;transition:var(--btn-transition);white-space:nowrap}.btn-unban:hover{background:var(--accent-green-dark);border-color:var(--accent-green-dark)}.btn-reset,.btn-send-code{align-items:center;background:#0000;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--btn-radius);color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:500;gap:4px;height:28px;justify-content:center;padding:0 10px;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .1s ease;transition:var(--btn-transition);white-space:nowrap}.btn-reset:hover,.btn-send-code:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-create{align-items:center;background:var(--accent-green);border:1px solid var(--accent-green);border-radius:8px;border-radius:var(--btn-radius);color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:6px;height:38px;justify-content:center;padding:0 18px;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .1s ease;transition:var(--btn-transition);white-space:nowrap}.btn-create:hover{background:var(--accent-green-dark);border-color:var(--accent-green-dark)}.btn-edit{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;border-radius:var(--btn-radius);color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;gap:4px;height:30px;justify-content:center;padding:0 10px;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .1s ease;transition:var(--btn-transition);white-space:nowrap}.btn-edit:hover{background:var(--bg-hover);border-color:var(--border-hover)}.btn-delete{align-items:center;background:#ff4d4f;background:var(--btn-danger);border:1px solid #ff4d4f;border:1px solid var(--btn-danger);border-radius:8px;border-radius:var(--btn-radius);color:#fff;cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;gap:4px;height:30px;justify-content:center;padding:0 10px;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .1s ease;transition:var(--btn-transition);white-space:nowrap}.btn-delete:hover{background:#e53935;background:var(--btn-danger-hover);border-color:#e53935;border-color:var(--btn-danger-hover)}.btn-cancel{align-items:center;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;border-radius:var(--btn-radius);color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;height:38px;justify-content:center;padding:0 20px;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .1s ease;transition:var(--btn-transition);white-space:nowrap}.btn-cancel:hover{background:var(--bg-card);border-color:var(--border-hover)}.btn-confirm-create,.btn-confirm-edit,.btn-confirm-unban{align-items:center;background:var(--accent-green);border:1px solid var(--accent-green);border-radius:8px;border-radius:var(--btn-radius);color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;height:38px;justify-content:center;padding:0 20px;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .1s ease;transition:var(--btn-transition);white-space:nowrap}.btn-confirm-create:hover,.btn-confirm-edit:hover,.btn-confirm-unban:hover{background:var(--accent-green-dark);border-color:var(--accent-green-dark)}.btn-confirm-ban,.btn-confirm-delete{align-items:center;background:#ff4d4f;background:var(--btn-danger);border:1px solid #ff4d4f;border:1px solid var(--btn-danger);border-radius:8px;border-radius:var(--btn-radius);color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;height:38px;justify-content:center;padding:0 20px;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .1s ease;transition:var(--btn-transition);white-space:nowrap}.btn-confirm-ban:hover,.btn-confirm-delete:hover{background:#e53935;background:var(--btn-danger-hover);border-color:#e53935;border-color:var(--btn-danger-hover)}.btn-confirm-reset{align-items:center;background:#1890ff;border:1px solid #1890ff;border-radius:8px;border-radius:var(--btn-radius);color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;height:38px;justify-content:center;padding:0 20px;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .1s ease;transition:var(--btn-transition);white-space:nowrap}.btn-confirm-reset:hover{background:#096dd9;border-color:#096dd9}:root{--modal-overlay-bg:#0000008c;--modal-backdrop:blur(4px);--modal-z:1000;--modal-z-top:1100;--modal-radius:16px;--modal-shadow:0 8px 32px var(--shadow-lg);--modal-border:1px solid var(--border-color);--modal-close-size:32px;--modal-close-color:var(--text-secondary);--modal-close-hover:var(--bg-hover)}@keyframes modal-appear{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes modal-overlay-fade{0%{opacity:0}to{opacity:1}}.modal-overlay-base{align-items:center;animation:modal-overlay-fade .15s ease;backdrop-filter:blur(4px);backdrop-filter:var(--modal-backdrop);-webkit-backdrop-filter:blur(4px);-webkit-backdrop-filter:var(--modal-backdrop);background:#0000008c;background:var(--modal-overlay-bg);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000;z-index:var(--modal-z)}.modal-container-base{animation:modal-appear .18s ease-out;background:var(--bg-card);border:var(--modal-border);border-radius:16px;border-radius:var(--modal-radius);box-shadow:0 8px 32px var(--shadow-lg);box-shadow:var(--modal-shadow);position:relative;width:100%}.modal-close-btn-std{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);color:var(--modal-close-color);cursor:pointer;display:flex;flex-shrink:0;font-size:1.1rem;height:32px;height:var(--modal-close-size);justify-content:center;transition:background .15s,color .15s;width:32px;width:var(--modal-close-size)}.modal-close-btn-std:hover{background:var(--bg-hover);background:var(--modal-close-hover);color:var(--text-primary)}:root{--bg-primary:#fff;--bg-secondary:#fff;--bg-tertiary:#fff;--bg-hover:#f6f7f8;--bg-card:#fff;--bg-dropdown:#fff;--text-primary:#191919;--text-secondary:#444;--text-tertiary:#666;--text-quaternary:#888;--border-color:#e6e6e6;--border-light:#efefef;--border-hover:#e0e0e0;--shadow-sm:#0000000a;--shadow-md:#0000000f;--shadow-lg:#0206171f;--accent-green:#43a047;--accent-green-dark:#2e7d32;--accent-green-light:#66bb6a;--success-bg:#e8f5e9;--success-text:#43a047}.dark-mode{--bg-primary:#1a1a1a;--bg-secondary:#1a1a1a;--bg-tertiary:#1a1a1a;--bg-hover:#333;--bg-card:#1e1e1e;--bg-dropdown:#252525;--text-primary:#e0e0e0;--text-secondary:silver;--text-tertiary:#a0a0a0;--text-quaternary:grey;--border-color:#3a3a3a;--border-light:#2f2f2f;--border-hover:#444;--shadow-sm:#0000004d;--shadow-md:#0006;--shadow-lg:#00000080;--accent-green:#66bb6a;--accent-green-dark:#43a047;--accent-green-light:#81c784;--success-bg:#1b5e20;--success-text:#81c784}body,html{margin:0;overflow-x:hidden;padding:0;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:var(--bg-secondary);color:#191919;color:var(--text-primary);font-family:Poppins,sans-serif;transition:background-color .3s ease,color .3s ease}code{font-family:inherit}.review-modal-overlay{align-items:center;animation:reviewFadeIn .2s ease-out;backdrop-filter:var(--modal-backdrop);-webkit-backdrop-filter:var(--modal-backdrop);background:var(--modal-overlay-bg);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--modal-z)}@keyframes reviewFadeIn{0%{opacity:0}to{opacity:1}}.review-modal{animation:reviewSlideUp .3s ease-out;background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 8px 32px var(--shadow-lg);box-sizing:border-box;max-width:440px;overflow:hidden;padding:24px;position:relative;width:90%}@keyframes reviewSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.review-modal-close{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.25rem;justify-content:center;padding:6px;position:absolute;right:16px;top:16px;transition:background-color .2s,color .2s}.review-modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.review-modal-title{color:var(--text-primary);font-size:1.35rem;font-weight:700;margin:0 0 8px}.review-modal-subtitle{color:var(--text-secondary);font-size:.95rem;line-height:1.4;margin:0 0 20px}.review-form{display:flex;flex-direction:column;gap:12px;min-width:0}.review-label{color:var(--text-primary);font-size:.9rem;font-weight:600}.review-scale{display:flex;gap:4px;margin-bottom:2px;min-width:0}.review-segment{background:var(--bg-tertiary);border:none;border-radius:var(--btn-radius);cursor:pointer;flex:1 1;height:28px;transition:transform .15s,opacity .15s}.review-segment:hover{transform:scaleY(1.15)}.review-segment.segment-1{background:#c0392b}.review-segment.segment-2{background:#d35400}.review-segment.segment-3{background:#e67e22}.review-segment.segment-4{background:#f39c12}.review-segment.segment-5{background:#f1c40f}.review-segment.segment-6{background:#d4ac0d}.review-segment.segment-7{background:#9acd32}.review-segment.segment-8{background:#7cb342}.review-segment.segment-9{background:#43a047}.review-segment.segment-10{background:#2e7d32}.review-segment.active.segment-1,.review-segment.active.segment-10,.review-segment.active.segment-2,.review-segment.active.segment-3,.review-segment.active.segment-4,.review-segment.active.segment-5,.review-segment.active.segment-6,.review-segment.active.segment-7,.review-segment.active.segment-8,.review-segment.active.segment-9{box-shadow:0 0 0 2px var(--bg-card);opacity:1}.review-segment:not(.active).segment-1,.review-segment:not(.active).segment-10,.review-segment:not(.active).segment-2,.review-segment:not(.active).segment-3,.review-segment:not(.active).segment-4,.review-segment:not(.active).segment-5,.review-segment:not(.active).segment-6,.review-segment:not(.active).segment-7,.review-segment:not(.active).segment-8,.review-segment:not(.active).segment-9{opacity:.35}.review-scale-labels{color:var(--text-secondary);display:flex;font-size:.75rem;justify-content:space-between;padding:0 2px}.review-textarea{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:.95rem;height:72px;max-width:100%;min-height:72px;padding:10px 12px;resize:none;transition:border-color .2s;width:100%}.review-textarea:focus{border-color:var(--accent-green);outline:none}.review-char-count{color:var(--text-secondary);font-size:.8rem;text-align:right}.review-error{color:#c0392b;color:var(--error-color,#c0392b);font-size:.9rem;margin:0}.review-actions{margin-top:8px}.review-btn-submit{background:var(--accent-green);border:none;border-radius:var(--btn-radius);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 20px;transition:opacity .2s,transform .1s;width:100%}.review-btn-submit:hover:not(:disabled){opacity:.9}.review-btn-submit:active:not(:disabled){transform:scale(.98)}.review-btn-submit:disabled{cursor:not-allowed;opacity:.7}.review-footer{align-items:center;border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:20px;padding-top:16px}.review-footer-btn{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--btn-radius);color:var(--text-primary);cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 18px;transition:background-color .2s,color .2s,border-color .2s}.review-footer-btn:hover{background:var(--bg-hover);border-color:var(--text-secondary)}.review-footer-btn.review-footer-btn-dismiss{border-color:var(--border-color);color:var(--text-secondary)}.review-footer-btn.review-footer-btn-dismiss:hover{border-color:var(--text-secondary);color:var(--text-primary)}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.main-layout{background:var(--bg-secondary);overflow-x:hidden;width:100%}.main-layout,.main-layout .main-content{display:flex;flex-direction:column;min-height:100vh;position:relative}.main-layout .main-content{box-sizing:border-box;margin-left:300px!important;padding:24px 32px 0;transition:margin-left .3s ease;width:auto}.main-content-body{display:flex;flex:1 1;flex-direction:column}@media (max-width:1280px){.main-layout .main-content{margin-left:260px!important}}@media (max-width:1100px){.main-layout .main-content{margin-left:72px!important;padding:20px 24px 0}}@media (max-width:900px){.main-layout .main-content{padding:16px 20px 0}}@media (max-width:600px){.main-layout .main-content{margin-left:56px!important;padding:16px 16px 0}}@media (max-width:480px){.main-layout .main-content{padding:12px 12px 0}}.avatar-ring{display:inline-block;line-height:0}.avatar-ring,.avatar-ring-image{border-radius:50%;position:relative}.avatar-ring-image{display:block;height:100%;object-fit:cover;width:100%;z-index:2}.avatar-ring-svg{height:118%;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:118%;z-index:1}.page-modal-overlay{align-items:center;backdrop-filter:var(--modal-backdrop);-webkit-backdrop-filter:var(--modal-backdrop);background:var(--modal-overlay-bg);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--modal-z-top)}.page-modal-overlay-locked{cursor:default}.page-modal{animation:pm-appear .12s ease-out;background:var(--bg-card);border-radius:16px;box-shadow:0 8px 24px var(--shadow-lg);max-width:320px;padding:32px;transition:background-color .3s ease,box-shadow .3s ease;width:92%}.page-modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.page-modal-title{color:var(--text-primary);font-size:1.25rem;font-weight:700;margin:0 0 8px;transition:color .3s ease}.page-modal-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:28px;height:30px;justify-content:center;padding:0;transition:background-color .2s ease,color .2s ease;width:30px}.page-modal-close-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.page-modal-body{color:var(--text-primary);font-size:.96rem;line-height:1.4;margin-top:6px;transition:color .3s ease}.page-modal-footer{display:flex;justify-content:center;margin-top:12px}@keyframes pm-appear{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.a2f-modal-content{align-items:center;display:flex;flex-direction:column;gap:20px;min-width:400px;padding:20px}.a2f-instructions{color:var(--text-primary);font-size:1rem;line-height:1.5;margin:0;text-align:center}.a2f-instructions strong{color:var(--accent-green)}.a2f-instructions-sub{color:var(--text-secondary);font-size:.9rem;margin:0;text-align:center}.a2f-timer{align-items:center;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:8px;padding:12px 20px}.a2f-timer-label{color:var(--text-secondary);font-size:.9rem}.a2f-timer-value{font-feature-settings:"tnum";color:var(--accent-green);font-size:1.2rem;font-variant-numeric:tabular-nums;font-weight:700}.a2f-timer-value.a2f-timer-expired{color:#f44336}.a2f-expired{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;padding:16px;text-align:center}.a2f-expired-message{align-items:center;color:var(--text-primary);display:flex;font-size:1rem;font-weight:500;gap:8px;margin:0 0 8px}.a2f-expired-message svg{flex-shrink:0;height:1.2rem;width:1.2rem}.a2f-resend-info{color:var(--text-secondary);font-size:.9rem;margin:0}.a2f-form{align-items:center;display:flex;flex-direction:column;gap:16px;width:100%}.a2f-code-input-wrapper{display:flex;justify-content:center;width:100%}.a2f-code-input{font-feature-settings:"tnum";background:var(--bg-card);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1.5rem;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:8px;max-width:280px;outline:none;padding:16px;text-align:center;transition:border-color .3s ease,background-color .3s ease;width:100%}.a2f-code-input:focus{border-color:var(--accent-green)}.a2f-code-input:disabled{cursor:not-allowed;opacity:.6}.a2f-code-input::placeholder{color:var(--text-tertiary);letter-spacing:4px}.a2f-error{color:#f44336;font-size:.9rem;margin:0;max-width:280px;text-align:center;width:100%}.a2f-submit-btn{font-size:1rem;margin:0 auto;max-width:280px;padding:12px;width:100%}.a2f-resend-section{display:flex;justify-content:center;margin-top:8px;width:100%}.a2f-resend-btn{font-size:1rem;margin:0 auto;max-width:280px;padding:12px;width:100%}.totp-modal-content{display:flex;flex-direction:column;gap:12px}.totp-instructions{color:var(--text-secondary);font-size:.95rem}.totp-form{display:flex;flex-direction:column;gap:10px}.totp-code-input-wrapper{display:flex;justify-content:center}.totp-code-input{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1.2rem;padding:8px 12px;text-align:center;width:160px}.totp-error{color:#d9534f;font-size:.9rem}.totp-submit-btn{width:100%}.totp-switch-section{align-items:center;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:12px;margin-top:20px;padding-top:20px}.totp-switch-text{color:var(--text-secondary);font-size:.9rem;margin:0;text-align:center}.totp-switch-btn{font-size:.9rem;width:100%}.forgot-password-overlay{align-items:center;backdrop-filter:var(--modal-backdrop);-webkit-backdrop-filter:var(--modal-backdrop);background:var(--modal-overlay-bg);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--modal-z-top)}.forgot-password-modal{background:var(--bg-card);border:var(--modal-border);border-radius:var(--modal-radius);box-shadow:var(--modal-shadow);max-width:450px;padding:32px;position:relative;width:90%}.forgot-password-close{align-items:center;background:none;border:none;border-radius:50%;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;line-height:1;padding:0;position:absolute;right:16px;top:16px;transition:background-color .2s;width:32px}.forgot-password-close:hover{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5)}.forgot-password-title{color:#333;color:var(--text-primary,#333);font-size:24px;font-weight:600;margin:0 0 16px}.forgot-password-description{color:#666;color:var(--text-secondary,#666);line-height:1.6;margin-bottom:24px}.forgot-password-form{display:flex;flex-direction:column;gap:16px}.forgot-password-field{display:flex;flex-direction:column;gap:8px}.forgot-password-field label{color:#333;color:var(--text-primary,#333);font-weight:500}.forgot-password-field input{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;color:#333;color:var(--text-primary,#333);font-size:16px;padding:12px;transition:border-color .2s}.forgot-password-field input:focus{border-color:#667eea;border-color:var(--accent-primary,#667eea);outline:none}.forgot-password-message{border-radius:6px;font-size:14px;padding:12px}.forgot-password-message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.forgot-password-message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.forgot-password-submit{font-size:16px;font-weight:600;margin-top:8px;padding:12px;width:100%}.forgot-password-submit:disabled{cursor:not-allowed;opacity:.6}.forgot-password-success{padding:16px 0;text-align:center}.forgot-password-success-icon{align-items:center;background:#d4edda;border-radius:50%;color:#155724;display:flex;font-size:32px;font-weight:700;height:64px;justify-content:center;margin:0 auto 24px;width:64px}.forgot-password-success-text{color:#333;color:var(--text-primary,#333);font-size:18px;font-weight:600;margin-bottom:16px}.forgot-password-masked-email{color:#667eea;color:var(--accent-primary,#667eea);font-size:20px;font-weight:600;margin:16px 0;word-break:break-all}.forgot-password-check-email{color:#666;color:var(--text-secondary,#666);line-height:1.6;margin-bottom:24px}.forgot-password-close-btn{font-size:16px;font-weight:600;padding:12px;width:100%}.signup-onecol{gap:0;margin:0 auto;max-width:400px;width:100%}.signup-group,.signup-onecol{display:flex;flex-direction:column}.signup-group{gap:8px}.signup-separator{border:none;border-top:1.5px solid var(--accent-green);margin:18px 0;transition:border-color .3s ease}.signup-columns{align-items:flex-start;display:flex;flex-direction:row;gap:32px;justify-content:center;width:100%}.signup-col{display:flex;flex-direction:column;gap:8px;max-width:220px;min-width:200px}.signup-label{align-self:flex-start;color:var(--accent-green);font-size:15px;font-weight:500;margin-bottom:0;margin-top:3px;transition:color .3s ease}.signup-input{background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;box-sizing:border-box;color:var(--text-primary);font-size:1rem;margin-bottom:8px;outline:none;padding:6px 8px;transition:border-color .3s ease,background-color .3s ease,color .3s ease;width:100%}#confirmPassword,#firstName,#lastName,#showedUsername{height:30px}#confirmPassword{margin-bottom:10px}.signup-input:focus{border-color:var(--accent-green)}.signup-unique-field{align-items:center;display:flex;gap:0}.signup-unique-input{border-left:0;border-radius:0 6px 6px 0;box-sizing:border-box;flex:1 1;padding:6px 8px 6px 0}#username{border-left:1px solid;border-color:#78b77b;box-sizing:initial;height:28px;margin-bottom:0;padding-bottom:0;padding-top:0;width:160px}#username,.username-prefix{align-items:center;display:flex;font-size:15px;justify-content:center}.username-prefix{background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px 0 0 6px;border-right:0;box-sizing:border-box;color:var(--accent-green);font-weight:600;height:30px;min-width:30px;padding:0;width:30px}.signup-public-switch{align-items:center;display:flex;gap:12px;margin-bottom:12px;margin-top:38px;padding-bottom:2px;padding-top:2px;transition:color .3s ease}.signup-public-switch,.signup-public-switch span,span{color:var(--accent-green);font-size:15px}.signup-remember{align-items:center;display:flex;flex-wrap:wrap;height:20px}.signup-remember label{color:var(--accent-green);display:flex;flex-wrap:wrap;font-size:15px;width:150px}#rememberMe,.signup-remember label{height:20px;text-align:center;vertical-align:middle}#rememberMe{background-color:#fff;box-sizing:initial;color:#43a047;margin-bottom:0;margin-right:10px;margin-top:0;width:20px}.signup-consent{align-items:center;display:flex;gap:6px;margin-top:8px}.signup-consent label{color:var(--accent-green);font-size:14px}.signup-consent a{color:#667eea;color:var(--accent-primary,#667eea);text-decoration:underline}.auth-message{margin-top:8px}.auth-message-error{color:#e53935}.auth-message-success{color:#43a047}.auth-message-hint{font-size:.9rem;font-weight:400;line-height:1.4;margin-top:10px}.auth-icon-inline{margin-right:8px}.switch{display:inline-block;height:24px;position:relative;width:44px}.switch input{height:0;opacity:0;width:0}.slider{background-color:var(--border-color);border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}.switch input:checked+.slider{background-color:var(--accent-green)}.slider:before{background-color:var(--bg-primary);border-radius:50%;bottom:3px;box-shadow:0 1px 4px var(--shadow-sm);content:"";height:18px;left:3px;position:absolute;transition:.4s;width:18px}.switch input:checked+.slider:before{transform:translateX(20px)}.signup-form{flex-direction:column;gap:8px;margin:0 auto 32px;width:320px}.signup-form,.signup-public{align-items:center;display:flex}.signup-public{align-self:flex-start;color:var(--text-primary);font-size:.9rem;gap:6px;margin-bottom:12px;transition:color .3s ease}.signup-btn{box-sizing:border-box;font-size:15px;font-weight:700;height:40px;margin:25px auto 0;padding:10px 15px}.btn-primary.signup-btn,.signup-btn{background:#0000 none repeat 0 0/auto auto padding-box border-box scroll;background:initial;background-color:var(--accent-green-light);border:1px solid #66bb6a;border-radius:10px;box-shadow:0 2px 8px 0 #43a04714;color:var(--bg-card);overflow:hidden;width:320px!important}.login-form{align-items:center;display:flex;flex-direction:column;gap:8px;margin:0 auto 32px;width:320px}.login-label{align-self:flex-start;color:var(--accent-green);font-size:.85rem;font-weight:500;line-height:1.2;margin-bottom:2px;transition:color .3s ease;width:100px}.login-input{background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;box-sizing:border-box;color:var(--text-primary);font-size:1rem;margin-bottom:8px;outline:none;padding:5px;transition:border-color .3s ease,background-color .3s ease,color .3s ease;width:100%}#identifier,#password{border-radius:5px;box-sizing:border-box;font-size:.9rem;height:30px;margin-bottom:0;padding:0}.login-input:focus{border-color:var(--accent-green)}.identifier-field,.password-field{margin-bottom:8px;position:relative;width:100%}.password-toggle{color:var(--text-tertiary);height:20px;padding:0;right:6px;top:calc(1.02rem + 11px);transform:translateY(-50%);width:20px}.password-toggle:hover{color:var(--text-primary)}.password-icon{margin-bottom:5px;margin-top:5px;overflow:visible}.password-icon,.password-icon circle,.password-icon path{height:30px;width:30px}.login-form svg{font-size:10px;height:20px;margin-bottom:0;margin-right:5px;margin-top:10px;width:20px}.login-forgot-password{display:flex;justify-content:flex-end;margin-bottom:8px;margin-top:8px}.forgot-password-link{background:none;border:none;color:#667eea;color:var(--accent-primary,#667eea);cursor:pointer;font-size:14px;padding:0;text-decoration:underline;transition:opacity .2s}.forgot-password-link:hover{opacity:.8}.login-remember{align-items:center;align-self:flex-start;color:var(--text-primary);display:flex;font-size:.9rem;gap:6px;margin-bottom:12px;transition:color .3s ease}.login-btn{border-radius:0;font-size:15px;font-weight:700;height:40px;margin:0 auto 15px;padding:5px 0;width:100%}.btn-signup{background:#0000 none repeat 0 0/auto auto padding-box border-box scroll;background:initial;background-color:initial;border-color:var(--accent-green)!important;border-radius:10px!important;border-bottom-left-radius:10px!important;border-bottom-right-radius:10px!important;border-style:solid!important;border-top-left-radius:10px!important;border-top-right-radius:10px!important;border-width:1px!important;color:var(--accent-green)!important;font-size:15px;margin-top:0;padding-bottom:10px;padding-top:10px}.btn-signup:hover{background:#0000;border-color:var(--accent-green-light);box-shadow:0 0 0 1px var(--accent-green-light);color:var(--accent-green)}.btn-google{align-items:center;background:var(--bg-card);border:1px solid var(--accent-green);color:var(--text-primary);display:flex;gap:8px;justify-content:center;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.btn-google:hover{background:var(--bg-hover)}.btn-apple{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);display:flex;gap:8px;justify-content:center;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.btn-apple:hover{background:var(--bg-hover)}.login-icon{height:22px;margin-right:4px;width:22px}.login-alt-button{background:#0000 none repeat 0 0/auto auto padding-box border-box scroll;background:initial;background-color:var(--accent-green-light);border:1px solid #66bb6a;border-radius:10px;border-bottom-left-radius:10px;border-bottom-right-radius:10px;border-top-left-radius:10px;border-top-right-radius:10px;box-sizing:border-box;color:var(--bg-card);font-family:inherit;font-size:15px;font-weight:700;height:40px;margin:25px auto 0;overflow:hidden;padding:10px 15px;width:320px}.auth-container,.login-alt-button{align-items:center;display:flex;justify-content:center}.auth-container{background:#0000 none repeat 0 0/auto auto padding-box border-box scroll;background:initial;background-color:initial;border-color:#0000;border-image:none;min-height:100vh;transition:background-color .3s ease;width:100%}.auth-card{align-items:center;background:#0000;display:flex!important;flex-direction:column;justify-content:center!important;width:280px!important}.welcome-logo{border-radius:20px;box-shadow:0 2px 8px var(--shadow-md);height:100px;margin-bottom:0;width:100px}.app-title{color:var(--text-primary);display:flex!important;flex-wrap:wrap!important;font-family:inherit;font-size:2.5rem;font-weight:700;height:50px!important;letter-spacing:2px;margin-bottom:5px;margin-top:5px;text-align:center;transition:color .3s ease;width:260px!important}.actions,.app-title{align-items:center!important;justify-content:center!important}.actions{display:flex;flex-direction:column;gap:16px}.actions,.actions .btn{width:260px}.btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:1.25rem;font-weight:700;justify-content:center;padding:12px 0;padding-left:0!important;padding-right:0!important;text-align:center;transition:background .2s,color .2s;width:100%}.btn-primary{background:var(--accent-green);box-shadow:0 2px 8px #43a04714;color:#fff}.btn-primary.login-btn{background:#0000 none repeat 0 0/auto auto padding-box border-box scroll;background:initial;background-clip:initial;-webkit-background-clip:unset;background-color:var(--accent-green)!important;color:var(--bg-card);font-size:15px!important;font-weight:700!important;margin-top:30px;padding-left:15px;padding-right:15px;width:320px}.btn-primary:hover{background:var(--accent-green-dark)}.dark-mode .btn-primary:hover{background:var(--accent-green)}.btn-secondary{background:var(--bg-hover);background-color:#66bb6a33!important;overflow:hidden!important;padding-bottom:10px!important;padding-top:10px!important;transition:background-color .3s ease,color .3s ease}.btn-secondary:hover{background:var(--border-hover)}.avatar-upload{align-items:center;display:flex;flex-direction:column;margin-bottom:0}.avatar-upload input[type=file]{display:none}.avatar-preview{cursor:pointer;margin-bottom:8px}.avatar-circle{background:var(--bg-hover);border-radius:50%;box-shadow:0 2px 8px var(--shadow-md);height:80px;transition:background-color .3s ease,box-shadow .3s ease;width:80px}.avatar-circle-img{border-radius:50%;display:block;height:100%;object-fit:cover;width:100%}.avatar-placeholder{align-items:center;background:var(--bg-hover);border-radius:50%;display:flex;height:80px;justify-content:center;overflow:hidden;transition:background-color .3s ease;width:80px}.avatar-placeholder-img{border-radius:50%;height:100%;object-fit:cover;width:100%}@media (max-width:900px){.signup-columns{align-items:center;flex-direction:column;gap:16px}.signup-col{max-width:100%;width:100%}}@media (max-width:600px){.auth-container{padding:16px}.auth-card{max-width:100%;width:100%}.welcome-logo{height:80px;margin-bottom:12px;width:80px}.app-title{font-size:2rem;letter-spacing:1px;margin-bottom:32px}.login-form,.signup-form{max-width:100%;width:100%}.actions,.login-alt-actions,.login-btn,.signup-btn{width:100%}.signup-columns{flex-direction:column}.signup-col{max-width:100%;width:100%}.btn{font-size:1.1rem;padding:10px 0}}.reset-password-title{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:16px 0 8px;text-align:center}.reset-password-description{color:var(--text-secondary);font-size:.95rem;margin-bottom:24px;text-align:center}.reset-password-message{border-radius:6px;font-size:14px;margin-bottom:16px;padding:12px}.reset-password-message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.reset-password-message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.reset-password-success{padding:32px 0;text-align:center}.reset-password-success-icon{align-items:center;background:#d4edda;border-radius:50%;color:#155724;display:flex;font-size:32px;font-weight:700;height:64px;justify-content:center;margin:0 auto 24px;width:64px}.reset-password-success-text{color:var(--text-primary);font-size:18px;font-weight:600;margin-bottom:16px}.reset-password-redirect{color:var(--text-secondary);font-size:14px}.auth-subtitle{color:var(--text-primary);font-size:1.3rem;margin-bottom:20px}.auth-description,.auth-subtitle{text-align:center;transition:color .3s ease}.auth-description{color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin-bottom:24px}.auth-info{background:var(--bg-secondary);color:var(--text-secondary);font-size:.9rem;margin-bottom:16px;text-align:center;transition:all .3s ease}.auth-info,.auth-status{border-radius:8px;padding:12px}.auth-status{align-items:center;display:flex;flex-direction:column;font-size:.95rem;font-weight:500;gap:8px;margin-bottom:20px}.auth-status.success{background-color:var(--success-bg);color:var(--success-text)}.auth-status.error{background-color:var(--error-bg);color:var(--error-text)}.auth-status svg{font-size:1.2rem}.redirect-message{color:var(--text-secondary);font-size:.85rem;margin-top:10px}.login-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--modal-z)}.login-modal{align-items:center;animation:slideUp .3s ease-out;background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 8px 32px var(--shadow-lg);display:flex;flex-direction:column;margin:0 auto;max-height:90vh;max-width:500px;min-height:0;overflow-x:auto;overflow-y:auto;position:relative;transition:background-color .3s ease,border-color .3s ease;width:90%}.login-modal-close{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.5rem;height:36px;justify-content:center;padding:8px;position:absolute;right:16px;top:16px;transition:all .3s ease;width:36px;z-index:10}.login-modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.login-modal .auth-card{align-items:center;border:none;box-shadow:none;box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;justify-content:flex-start;margin:0;max-width:100%;min-width:0;padding:40px 24px 32px;text-align:center;width:100%}.login-modal .auth-card .welcome-logo{display:block;margin:0 auto 16px}.login-modal .auth-card .app-title{display:block!important;flex-wrap:nowrap!important;height:auto!important;margin:0 auto 24px;overflow:visible;text-align:center;white-space:nowrap;width:auto!important}.login-modal .login-form{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;gap:8px;margin:0;max-width:100%;min-width:0;padding:0;width:100%}.login-modal .identifier-field,.login-modal .password-field{align-items:flex-start;box-sizing:border-box;display:flex;flex-direction:column;max-width:100%;width:100%}.login-modal .password-field{margin-bottom:8px}.login-modal .password-field .login-label{margin-bottom:2px;width:100%}.login-modal .password-input-wrapper{align-items:center;display:flex;position:relative;width:100%}.login-modal .password-field .login-input{box-sizing:border-box;padding-right:40px;width:100%}.login-modal .password-field .password-toggle{align-items:center;background:none;border:none;color:var(--text-tertiary);cursor:pointer;display:flex;height:24px;justify-content:center;margin:0;padding:0;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:color .3s ease;width:24px;z-index:1}.login-modal .password-field .password-toggle:hover{color:var(--text-primary)}.login-modal .password-field .password-icon{height:18px;margin:0;width:18px}.login-modal .login-label{text-align:left;width:100%}.login-modal .login-input{box-sizing:border-box;width:100%}.login-modal .login-forgot-password,.login-modal .login-remember{align-items:center;display:flex;justify-content:flex-start;width:100%}.login-modal .login-btn{box-sizing:border-box;max-width:100%;width:100%}@media (max-width:768px){.login-modal{max-height:95vh;width:95%}.login-modal .auth-card{padding:32px 24px 24px}}.signup-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--modal-z)}.signup-modal{align-items:center;animation:slideUp .3s ease-out;background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 8px 32px var(--shadow-lg);display:flex;flex-direction:column;margin:0 auto;max-height:90vh;max-width:900px;min-height:0;overflow-x:auto;overflow-y:auto;position:relative;transition:background-color .3s ease,border-color .3s ease;width:90%}.signup-modal-close{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.5rem;height:36px;justify-content:center;padding:8px;position:absolute;right:16px;top:16px;transition:all .3s ease;width:36px;z-index:10}.signup-modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.signup-modal .auth-card{border:none;box-shadow:none;flex-shrink:0;justify-content:flex-start;margin:0;min-width:0;padding:24px 20px 20px;text-align:center}.signup-modal .auth-card,.signup-modal .signup-form{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;max-width:100%;width:100%}.signup-modal .auth-card .app-title{display:block!important;flex-wrap:nowrap!important;font-size:2rem!important;height:auto!important;margin:0 auto 12px;overflow:visible;text-align:center;white-space:nowrap;width:auto!important}.signup-modal .auth-card .welcome-logo{display:block;height:70px;margin:0 auto 8px;width:70px}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.signup-modal .password-input-wrapper{align-items:center;display:flex;position:relative;width:100%}.signup-modal .password-input-wrapper .signup-input{box-sizing:border-box;padding-right:40px;width:100%}.signup-modal .password-toggle{align-items:center;background:none;border:none;color:var(--text-tertiary);cursor:pointer;display:flex;height:24px;justify-content:center;margin:0;padding:0;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:color .3s ease;width:24px;z-index:1}.signup-modal .password-toggle:hover{color:var(--text-primary)}.signup-modal .password-icon{height:18px;margin:0;width:18px}.signup-modal .signup-columns{align-items:flex-start;box-sizing:border-box;display:flex;flex-direction:row;gap:16px;justify-content:center;margin-bottom:12px;max-width:100%;width:100%}.signup-modal .signup-col{display:flex;flex:0 1 auto;flex-direction:column;gap:8px}.signup-modal .signup-col,.signup-modal .signup-col-left,.signup-modal .signup-col-right{max-width:220px;min-width:200px}.signup-modal .avatar-upload{margin-bottom:12px}.signup-modal .avatar-upload .signup-label{display:block;margin-bottom:8px;text-align:center;width:100%}.signup-modal .avatar-preview{align-items:center;display:flex;justify-content:center;margin:0 auto}.signup-modal .avatar-circle{margin:0 auto}.signup-modal .signup-remember{margin-bottom:8px;margin-top:4px}.signup-modal .login-alt-button,.signup-modal .signup-btn{box-sizing:border-box;margin-bottom:6px;margin-top:6px;max-width:100%;width:100%}.signup-modal .signup-label{font-size:14px;margin-bottom:4px;margin-top:2px;text-align:left;width:100%}.signup-modal .signup-unique-field{align-items:center;display:flex;width:100%}.signup-modal .signup-unique-field .username-prefix{flex-shrink:0}.signup-modal .signup-unique-field .signup-unique-input{flex:1 1;min-width:0}.signup-modal .signup-input{font-size:.95rem;margin-bottom:6px;padding:5px 8px}.signup-modal .avatar-upload{align-items:center;display:flex;flex-direction:column;width:100%}.signup-modal .signup-remember{align-items:center;display:flex;justify-content:flex-start;width:100%}@media (max-width:768px){.signup-modal{max-height:95vh;width:95%}.signup-modal .auth-card{padding:24px 16px 16px}.signup-modal .signup-columns{flex-direction:column;gap:12px}}.welcome-page{background:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow:visible;position:relative;transition:background-color .3s ease,color .3s ease}.welcome-page-loading{align-items:center;display:flex;justify-content:center;min-height:100vh}.welcome-loading-text{color:var(--text-primary)}.welcome-background-logos{height:100%;left:0;min-height:100vh;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}.welcome-background-logo{filter:blur(.5px);height:180px;object-fit:contain;opacity:.05;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:180px}.dark-mode .welcome-background-logo{opacity:.03}.welcome-background-logo-0{left:0;top:-5%;transform:rotate(0deg)}.welcome-background-logo-1{left:18%;top:-5%;transform:rotate(115deg)}.welcome-background-logo-2{left:36%;top:-5%;transform:rotate(230deg)}.welcome-background-logo-3{left:54%;top:-5%;transform:rotate(345deg)}.welcome-background-logo-4{left:72%;top:-5%;transform:rotate(100deg)}.welcome-background-logo-5{left:90%;top:-5%;transform:rotate(215deg)}.welcome-background-logo-6{left:9%;top:7%;transform:rotate(330deg)}.welcome-background-logo-7{left:27%;top:7%;transform:rotate(85deg)}.welcome-background-logo-8{left:45%;top:7%;transform:rotate(200deg)}.welcome-background-logo-9{left:63%;top:7%;transform:rotate(315deg)}.welcome-background-logo-10{left:81%;top:7%;transform:rotate(70deg)}.welcome-background-logo-11{left:99%;top:7%;transform:rotate(185deg)}.welcome-background-logo-12{left:0;top:19%;transform:rotate(300deg)}.welcome-background-logo-13{left:18%;top:19%;transform:rotate(55deg)}.welcome-background-logo-14{left:36%;top:19%;transform:rotate(170deg)}.welcome-background-logo-15{left:54%;top:19%;transform:rotate(285deg)}.welcome-background-logo-16{left:72%;top:19%;transform:rotate(40deg)}.welcome-background-logo-17{left:90%;top:19%;transform:rotate(155deg)}.welcome-background-logo-18{left:9%;top:31%;transform:rotate(270deg)}.welcome-background-logo-19{left:27%;top:31%;transform:rotate(25deg)}.welcome-background-logo-20{left:45%;top:31%;transform:rotate(140deg)}.welcome-background-logo-21{left:63%;top:31%;transform:rotate(255deg)}.welcome-background-logo-22{left:81%;top:31%;transform:rotate(10deg)}.welcome-background-logo-23{left:99%;top:31%;transform:rotate(125deg)}.welcome-background-logo-24{left:0;top:43%;transform:rotate(240deg)}.welcome-background-logo-25{left:18%;top:43%;transform:rotate(355deg)}.welcome-background-logo-26{left:36%;top:43%;transform:rotate(110deg)}.welcome-background-logo-27{left:54%;top:43%;transform:rotate(225deg)}.welcome-background-logo-28{left:72%;top:43%;transform:rotate(340deg)}.welcome-background-logo-29{left:90%;top:43%;transform:rotate(95deg)}.welcome-header{background:var(--bg-card);border-bottom:1px solid var(--border-color);left:0;padding:16px 0;position:fixed;right:0;top:0;transition:background-color .3s ease,border-color .3s ease;z-index:1000}.welcome-header-content{align-items:center;box-sizing:border-box;display:flex;gap:16px;justify-content:space-between;min-height:60px;padding:0 32px;width:100%}.welcome-logo-section{flex-shrink:0;gap:12px}.welcome-logo-section,.welcome-nav{align-items:center;display:flex;min-width:0}.welcome-nav{flex-wrap:nowrap;gap:24px;justify-content:center;left:50%;position:absolute;transform:translateX(-50%);z-index:1}.welcome-nav-link{border-radius:8px;color:var(--text-primary);flex-shrink:0;font-size:1rem;font-weight:500;padding:8px 16px;position:relative;text-decoration:none;transition:color .3s ease,background-color .3s ease;white-space:nowrap}.welcome-nav-link:hover{background:var(--bg-hover)}.welcome-nav-link:active,.welcome-nav-link:hover{color:var(--accent-green)}.welcome-header-logo{height:40px;object-fit:contain;width:40px}.welcome-header-title{color:var(--text-primary);font-size:1.5rem;font-weight:800;letter-spacing:2px;transition:color .3s ease}.welcome-header-actions{align-items:center;display:flex;flex-shrink:0;flex-wrap:nowrap;gap:8px;margin-left:auto;min-width:0}.welcome-header-link{background:none;border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;flex-shrink:0;font-family:inherit;font-size:inherit;font-weight:500;padding:8px 16px;text-decoration:none;transition:background-color .3s ease,color .3s ease;white-space:nowrap}.welcome-header-link:hover{background:var(--bg-hover);color:var(--accent-green)}.welcome-header-btn{background:var(--accent-green);border:none;border-radius:8px;box-shadow:0 2px 8px #43a0474d;color:#fff;cursor:pointer;flex-shrink:0;font-family:inherit;font-size:inherit;font-weight:600;padding:10px 20px;text-decoration:none;transition:background-color .3s ease,transform .2s ease,box-shadow .3s ease;white-space:nowrap}.welcome-header-btn:hover{background:var(--accent-green-light);box-shadow:0 4px 12px #43a04766;transform:translateY(-2px)}.welcome-user-info{align-items:center;display:flex;gap:12px;margin-right:12px}.welcome-user-avatar{height:40px;transition:border-color .3s ease;width:40px}.welcome-user-avatar-img{height:100%;width:100%}.welcome-username{color:var(--text-primary);cursor:pointer;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .3s ease,opacity .3s ease}.welcome-username:hover{color:var(--accent-green);opacity:.8}.welcome-logout-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;margin-right:8px;padding:8px;transition:color .3s ease,background-color .3s ease}.welcome-logout-btn:hover{background:var(--bg-hover);color:var(--accent-green)}.welcome-logout-icon{font-size:1.2rem}.welcome-flag{height:1.2em;width:1.2em}.welcome-flag-inline{margin-right:4px}.welcome-progress-35{width:35%}.welcome-progress-65{width:65%}.welcome-medal{align-items:center;color:var(--text-tertiary);display:inline-flex;justify-content:center;opacity:.75}.welcome-medal-bronze,.welcome-medal-gold,.welcome-medal-silver{color:inherit}.welcome-medal-lg{font-size:1.2rem}.welcome-dashboard-title-icon{margin-right:8px}.welcome-empty-state{color:var(--text-secondary);padding:20px;text-align:center}.welcome-icon-xs{font-size:.7rem}.welcome-logout-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.welcome-logout-modal{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 8px 32px var(--shadow-md);max-width:400px;padding:32px;transition:background-color .3s ease,border-color .3s ease;width:90%}.welcome-logout-modal-title{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin:0 0 16px;transition:color .3s ease}.welcome-logout-modal-message{color:var(--text-secondary);line-height:1.5;margin:0 0 24px;transition:color .3s ease}.welcome-logout-modal-actions{display:flex;gap:12px;justify-content:flex-end}.welcome-logout-modal-cancel,.welcome-logout-modal-confirm{border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 24px;transition:all .3s ease}.welcome-logout-modal-cancel{background:var(--bg-hover);color:var(--text-primary)}.welcome-logout-modal-cancel:hover{background:var(--bg-secondary)}.welcome-logout-modal-confirm{background:var(--accent-green);color:#fff}.welcome-logout-modal-confirm:hover{background:var(--accent-green-light);box-shadow:0 4px 12px #43a04766;transform:translateY(-2px)}.welcome-language-selector{position:relative}.welcome-language-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 8px var(--shadow-md);color:var(--text-primary);cursor:pointer;display:flex;flex-shrink:0;font-size:.9rem;font-weight:500;gap:6px;padding:8px 12px;transition:background-color .3s ease,border-color .3s ease,color .3s ease;white-space:nowrap}.welcome-language-btn:hover{background:var(--bg-hover)}.welcome-language-menu{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px var(--shadow-md);margin-top:8px;min-width:150px;overflow:hidden;position:absolute;right:0;top:100%;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease;z-index:1000}.welcome-language-option{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:.9rem;gap:10px;padding:10px 16px;text-align:left;transition:background-color .2s ease,color .3s ease;width:100%}.welcome-language-option:hover{background:var(--bg-hover)}.welcome-language-option.active{background:#43a0471a;color:var(--accent-green);font-weight:600}.dark-mode .welcome-language-option.active{background:#66bb6a33;color:var(--accent-green-light)}.welcome-dark-mode-toggle-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:50%;box-shadow:0 2px 8px var(--shadow-md);color:var(--text-primary);cursor:pointer;display:flex;flex-shrink:0;height:44px;justify-content:center;padding:0;transition:all .3s ease;width:44px}.welcome-dark-mode-toggle-btn:hover{background:var(--bg-hover);box-shadow:0 4px 12px var(--shadow-lg);transform:scale(1.1)}.welcome-dark-mode-icon{color:var(--accent-green);display:block;font-size:1.5rem;transition:transform .3s ease}.welcome-dark-mode-toggle-btn:hover .welcome-dark-mode-icon{transform:rotate(15deg)}.welcome-hero{background:#0000;margin:0 auto;max-width:1400px;overflow:hidden;padding:120px 32px 80px;position:relative;z-index:1}.welcome-hero-glow{animation:pulse 4s ease-in-out infinite;background:radial-gradient(circle,#43a0474d 0,#0000 70%);border-radius:50%;height:600px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:600px;z-index:0}@keyframes pulse{0%,to{opacity:.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.1)}}.welcome-hero-content{margin:0 auto;max-width:800px;position:relative;text-align:center;z-index:1}.welcome-hero-title{color:var(--text-primary);font-size:3.5rem;font-weight:800;line-height:1.2;margin-bottom:24px;transition:color .3s ease}.welcome-hero-title-accent{color:var(--accent-green);display:block}.dark-mode .welcome-hero-title-accent{color:var(--accent-green-light)}.welcome-hero-subtitle{color:var(--text-secondary);font-size:1.25rem;line-height:1.6;margin-bottom:40px;transition:color .3s ease}.welcome-hero-actions{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.welcome-btn{border:none;border-radius:12px;cursor:pointer;display:inline-block;font-family:inherit;font-size:1rem;font-weight:600;padding:14px 32px;text-decoration:none;transition:all .3s ease}.welcome-btn-primary{background:var(--accent-green);box-shadow:0 4px 16px #43a04766;color:#fff}.welcome-btn-primary:hover{background:var(--accent-green-light);box-shadow:0 6px 20px #43a04780;transform:translateY(-2px)}.welcome-btn-secondary{background:var(--bg-card);border:2px solid var(--accent-green);color:var(--text-primary);transition:all .3s ease}.welcome-btn-secondary:hover{background:var(--accent-green);color:#fff;transform:translateY(-2px)}.welcome-btn-coming-soon{cursor:not-allowed;opacity:.6;position:relative}.welcome-btn-coming-soon:hover{background:var(--bg-card);box-shadow:none;color:var(--text-primary);transform:none}.welcome-computers{background:#0000;padding:20px 32px 120px;position:relative;transition:background-color .3s ease;z-index:1}.welcome-computers-container{align-items:flex-start;display:flex;gap:20px;justify-content:center;margin:0 auto;max-width:1400px;min-height:520px;overflow:visible;perspective:1000px;position:relative;width:100%}.welcome-phones{background:#0000;padding:100px 32px 80px;position:relative;transition:background-color .3s ease;z-index:2}.welcome-phones-title{color:var(--text-primary);font-size:2rem;font-weight:700;margin:0 0 40px;text-align:center;transition:color .3s ease}.welcome-phones-container{align-items:center;display:flex;gap:40px;justify-content:center;margin:0 auto;max-width:1400px;overflow:visible;perspective:1000px;position:relative}.welcome-phone{z-index:3}.welcome-laptop,.welcome-phone{position:relative;transform-style:preserve-3d}.welcome-laptop{z-index:1}.welcome-laptop-left{transform:rotateY(-8deg)}.welcome-laptop-center{transform:scale(1.05);z-index:2}.welcome-laptop-right{transform:rotateY(8deg)}.welcome-laptop-screen{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:var(--bg-card);border:8px solid #1a1a1a;border-radius:8px 8px 0 0;box-shadow:0 10px 40px #0000004d;box-sizing:border-box;display:flex;height:400px;overflow:hidden;position:relative;transition:background-color .3s ease,border-color .3s ease;width:500px}.dark-mode .welcome-laptop-screen{border-color:#2a2a2a}.welcome-laptop-base{background:linear-gradient(180deg,#3a3a3a,#2a2a2a 50%,#1a1a1a);border-radius:0 0 8px 8px;border-top:1px solid #0000004d;box-shadow:0 8px 25px #0006,inset 0 2px 4px #ffffff0d,inset 0 -2px 4px #0000004d;height:30px;margin:0 auto;position:relative;width:516px}.welcome-laptop-base:before{background:linear-gradient(180deg,#1a1a1a,#0a0a0a);border-radius:0 0 3px 3px;box-shadow:inset 0 2px 4px #00000080;height:4px;top:0;width:120px}.welcome-laptop-base:after,.welcome-laptop-base:before{content:"";left:50%;position:absolute;transform:translateX(-50%)}.welcome-laptop-base:after{background:#ffffff1a;border-radius:2px;height:2px;top:8px;width:60px}.welcome-laptop-sidebar{background:var(--bg-primary);border-right:1px solid var(--border-color);flex-shrink:0;gap:16px;min-width:80px;padding:12px 0;transition:background-color .3s ease,border-color .3s ease;width:80px}.welcome-laptop-sidebar,.welcome-laptop-sidebar-logo{align-items:center;display:flex;flex-direction:column}.welcome-laptop-sidebar-logo{border-radius:8px;gap:6px;padding:8px}.welcome-laptop-sidebar-logo-img{border-radius:6px;height:32px;width:32px}.welcome-laptop-sidebar-title{color:var(--text-primary);font-size:.5rem;font-weight:700;letter-spacing:.5px;text-align:center;transition:color .3s ease}.welcome-laptop-sidebar-nav{display:flex;flex-direction:column;gap:8px;padding:0 8px;width:100%}.welcome-laptop-sidebar-link{align-items:center;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;flex-direction:column;font-size:.65rem;gap:4px;padding:8px 4px;text-align:center;transition:all .3s ease}.welcome-laptop-sidebar-link svg{color:var(--text-secondary);font-size:1rem;transition:color .3s ease}.welcome-laptop-sidebar-link span{font-size:.6rem;line-height:1.2;transition:color .3s ease}.welcome-laptop-sidebar-link:hover{background:var(--bg-hover);color:var(--text-primary)}.welcome-laptop-sidebar-link:hover span,.welcome-laptop-sidebar-link:hover svg{color:var(--text-primary)}.welcome-laptop-sidebar-link-active{background:#43a0471a;color:var(--accent-green)}.welcome-laptop-sidebar-link-active span,.welcome-laptop-sidebar-link-active svg{color:var(--accent-green)}.dark-mode .welcome-laptop-sidebar-link-active{background:#66bb6a26}.welcome-laptop-content{box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:12px;height:100%;overflow:hidden;padding:16px}.welcome-laptop-header{align-items:center;display:flex;gap:10px;margin-bottom:10px}.welcome-laptop-title{color:var(--text-primary);font-size:1.2rem;font-weight:700;transition:color .3s ease}.welcome-laptop-placeholder{align-items:center;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);display:flex;flex:1 1;font-size:.9rem;justify-content:center;transition:background-color .3s ease,border-color .3s ease}.welcome-laptop-challenges{display:flex;flex:1 1;flex-direction:column;gap:8px}.welcome-laptop-challenges-tabs{border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:8px;padding-bottom:8px}.welcome-laptop-tab{background:var(--bg-secondary);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.75rem;padding:6px 12px;transition:all .3s ease}.welcome-laptop-tab.active{background:var(--accent-green);color:#fff}.welcome-laptop-challenges-progress{color:var(--text-secondary);font-size:.8rem;font-weight:500}.welcome-laptop-challenges-list{display:flex;flex:1 1;flex-direction:column;gap:6px}.welcome-laptop-challenge-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;display:flex;flex-direction:column;gap:6px;padding:10px;transition:all .3s ease}.welcome-laptop-challenge-card.welcome-laptop-challenge-completed{background:#43a0471a;border-color:var(--accent-green);opacity:.9}.dark-mode .welcome-laptop-challenge-card.welcome-laptop-challenge-completed{background:#66bb6a26;border-color:var(--accent-green-light)}.welcome-laptop-challenge-title{color:var(--text-primary);font-size:.85rem;font-weight:600}.welcome-laptop-challenge-desc{color:var(--text-secondary);font-size:.7rem;font-style:italic}.welcome-laptop-challenge-tags{display:flex;flex-wrap:wrap;gap:6px}.welcome-laptop-tag{border-radius:4px;font-size:.65rem;font-weight:500;padding:3px 8px}.welcome-laptop-tag.tag-sante{background:#ec48991a;border:1px solid #ec4899;color:#ec4899}.welcome-laptop-tag.tag-ecologie{background:#22c55e1a;border:1px solid #22c55e;color:#22c55e}.welcome-laptop-tag.tag-relations{background:#3b82f61a;border:1px solid #3b82f6;color:#3b82f6}.welcome-laptop-tag.tag-productivite{background:#eab3081a;border:1px solid #eab308;color:#eab308}.welcome-laptop-tag.difficulty-easy{background:#22c55e1a;border:1px solid #22c55e;color:#22c55e}.welcome-laptop-tag.difficulty-medium{background:#f973161a;border:1px solid #f97316;color:#f97316}.welcome-laptop-tag.difficulty-hard{background:#ef44441a;border:1px solid #ef4444;color:#ef4444}.welcome-laptop-challenge-points{color:var(--accent-green);font-size:.75rem;font-weight:600;margin-top:4px}.welcome-laptop-profile{display:flex;flex:1 1;flex-direction:column;gap:8px}.welcome-laptop-profile-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;display:flex;flex-direction:column;flex-shrink:0;gap:8px;padding:10px}.welcome-laptop-profile-card-title{color:var(--text-primary);font-size:.9rem;font-weight:600;margin-bottom:8px}.welcome-laptop-profile-avatar-section{align-items:center;display:flex;gap:12px}.welcome-laptop-profile-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;flex-shrink:0;height:50px;width:50px}.welcome-laptop-profile-info{flex:1 1}.welcome-laptop-profile-username{color:var(--text-primary);font-size:.9rem;font-weight:600}.welcome-laptop-profile-handle{color:var(--text-secondary);font-size:.75rem}.welcome-laptop-profile-level{color:var(--accent-green);font-size:.7rem;font-weight:500;margin-top:4px}.welcome-laptop-profile-stats{display:flex;gap:16px;margin-top:8px}.welcome-laptop-profile-stat,.welcome-laptop-profile-xp-info{color:var(--text-secondary);font-size:.75rem}.welcome-laptop-profile-xp-info{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.welcome-laptop-profile-progress-bar{background:var(--bg-secondary);border-radius:10px;height:20px;overflow:hidden;position:relative;width:100%}.welcome-laptop-profile-progress-fill{align-items:center;background:var(--accent-green);border-radius:10px;color:#fff;display:flex;font-size:.7rem;font-weight:600;height:100%;justify-content:center}.welcome-laptop-profile-activities{display:flex;flex-direction:column;gap:8px}.welcome-laptop-profile-activity{align-items:center;background:var(--bg-secondary);border-radius:6px;display:flex;gap:10px;padding:6px}.welcome-laptop-activity-icon{color:var(--accent-green);font-size:.8rem;font-weight:700}.welcome-laptop-activity-details{display:flex;flex:1 1;flex-direction:column;gap:2px}.welcome-laptop-activity-details>div:first-child{color:var(--text-primary);font-size:.75rem}.welcome-laptop-activity-details>div:last-child{color:var(--text-secondary);font-size:.65rem}.welcome-laptop-activity-points{color:var(--accent-green);font-size:.75rem;font-weight:600}.welcome-laptop-leaderboard{display:flex;flex:1 1;flex-direction:column;gap:10px}.welcome-laptop-podium{align-items:flex-end;display:flex;flex-shrink:0;gap:8px;justify-content:center}.welcome-laptop-podium-item{align-items:center;background:var(--bg-card);border:2px solid var(--border-color);border-radius:8px;display:flex;flex:1 1;flex-direction:column;flex-shrink:0;gap:4px;padding:8px;position:relative}.welcome-laptop-podium-1{border-color:gold}.welcome-laptop-podium-2{border-color:silver}.welcome-laptop-podium-3{border-color:#cd7f32}.welcome-laptop-podium-medal{font-size:1.2rem;margin-bottom:4px}.welcome-laptop-podium-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;height:40px;width:40px}.welcome-laptop-podium-level{background:#43a0471a;border-radius:10px;color:var(--accent-green);font-size:.65rem;font-weight:500;padding:2px 6px}.welcome-laptop-podium-name{color:var(--text-primary);font-size:.8rem;font-weight:600}.welcome-laptop-podium-handle,.welcome-laptop-podium-stats{color:var(--text-secondary);font-size:.7rem}.welcome-laptop-podium-stats{display:flex;flex-direction:column;gap:2px;margin-top:4px;text-align:center}.welcome-laptop-others{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;flex-shrink:0;padding:10px}.welcome-laptop-others-title{color:var(--text-primary);font-size:.9rem;font-weight:600;margin-bottom:10px}.welcome-laptop-others-list{display:flex;flex-direction:column;gap:8px}.welcome-laptop-others-item{align-items:center;background:var(--bg-secondary);border-radius:6px;display:flex;gap:10px;padding:8px}.welcome-laptop-others-rank{color:var(--text-secondary);font-size:.75rem;font-weight:600;min-width:24px}.welcome-laptop-others-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;flex-shrink:0;height:32px;width:32px}.welcome-laptop-others-info{flex:1 1}.welcome-laptop-others-name{color:var(--text-primary);font-size:.75rem;font-weight:600}.welcome-laptop-others-handle{color:var(--text-secondary);font-size:.65rem}.welcome-laptop-others-stats{color:var(--text-secondary);display:flex;font-size:.7rem;gap:8px}.welcome-phone-left{position:relative;transform:rotateY(-15deg) rotateX(5deg);z-index:3}.welcome-phone-center{position:relative;transform:scale(1.1);z-index:4}.welcome-phone-right{position:relative;transform:rotateY(15deg) rotateX(5deg);z-index:3}.welcome-phone-frame{border-radius:40px;box-shadow:0 20px 60px #00000080,inset 0 0 0 2px #ffffff1a;height:560px;padding:12px;position:relative;width:280px;z-index:3}.dark-mode .welcome-phone-frame,.welcome-phone-frame{background:linear-gradient(145deg,#1a1a1a,#2a2a2a)}.welcome-phone-screen{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:var(--bg-primary);border-radius:32px;height:100%;opacity:.9;overflow:hidden;position:relative;transition:background-color .3s ease;width:100%}.welcome-phone-content{box-sizing:border-box;display:flex;flex-direction:column;gap:20px;height:100%;min-height:0;min-width:0;overflow:hidden;padding:24px 20px}.welcome-phone-header{align-items:center;display:flex;gap:10px;margin-bottom:10px}.welcome-phone-logo{height:32px;object-fit:contain;width:32px}.welcome-phone-title{color:var(--text-primary);font-size:1.1rem;font-weight:800;letter-spacing:1px;transition:color .3s ease}.welcome-phone-stats{display:flex;flex:1 1;flex-direction:column;gap:12px}.welcome-phone-stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:16px;transition:background-color .3s ease,border-color .3s ease}.welcome-phone-stat-label{color:var(--text-secondary);font-size:.75rem;margin-bottom:8px;transition:color .3s ease}.welcome-phone-stat-value{color:var(--accent-green);font-size:1.5rem;font-weight:700;margin-bottom:4px}.welcome-phone-stat-change{color:var(--text-secondary);font-size:.7rem;transition:color .3s ease}.welcome-phone-chart{align-items:flex-end;display:flex;flex:1 1;padding:20px 0}.welcome-phone-chart-bars{align-items:flex-end;display:flex;gap:6px;height:100%;justify-content:space-around;width:100%}.welcome-phone-chart-bar{background:var(--accent-green);border-radius:4px 4px 0 0;flex:1 1;min-height:20px;opacity:.8;transition:opacity .3s ease}.welcome-phone-list{display:flex;flex:1 1;flex-direction:column;gap:12px}.welcome-phone-list-item{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:12px;padding:12px;transition:background-color .3s ease,border-color .3s ease}.welcome-phone-list-icon{align-items:center;background:var(--bg-secondary);border-radius:10px;display:flex;font-size:1.5rem;height:40px;justify-content:center;transition:background-color .3s ease;width:40px}.welcome-phone-list-text{flex:1 1}.welcome-phone-list-title{color:var(--text-primary);font-size:.85rem;font-weight:600;margin-bottom:4px;transition:color .3s ease}.welcome-phone-list-subtitle{color:var(--text-secondary);font-size:.7rem;transition:color .3s ease}.welcome-phone-page-title{color:var(--text-primary);font-size:1.1rem;font-weight:700;transition:color .3s ease}.welcome-phone-challenges{display:flex;flex:1 1;flex-direction:column;gap:10px;overflow-y:auto}.welcome-phone-challenge-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;display:flex;flex-direction:column;gap:6px;padding:10px;transition:background-color .3s ease,border-color .3s ease}.welcome-phone-challenge-card.welcome-phone-challenge-completed{background:#43a0471a;border-color:var(--accent-green);opacity:.8}.dark-mode .welcome-phone-challenge-card.welcome-phone-challenge-completed{background:#66bb6a26;border-color:var(--accent-green-light)}.welcome-phone-challenge-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.welcome-phone-challenge-title{color:var(--text-primary);flex:1 1;font-size:.85rem;font-weight:700;min-width:0;transition:color .3s ease}.welcome-phone-challenge-tags{display:flex;flex-shrink:0;gap:4px}.welcome-phone-challenge-tag{border-radius:6px;font-size:.65rem;font-weight:500;padding:2px 6px;white-space:nowrap}.welcome-phone-challenge-tag.tag-productivite{background:#fff7e0;border:1px solid #d97706;color:#d97706}.dark-mode .welcome-phone-challenge-tag.tag-productivite{background:#d97706;border-color:#fff7e0;color:#fff7e0}.welcome-phone-challenge-tag.tag-sante{background:#ffe5eb;border:1px solid #f48fb1;color:#d81b60}.dark-mode .welcome-phone-challenge-tag.tag-sante{background:#d81b60;border-color:#f06292;color:#ffe5eb}.welcome-phone-challenge-tag.tag-ecologie{background:#e2f3e8;border:1px solid #81c784;color:#2e7d32}.dark-mode .welcome-phone-challenge-tag.tag-ecologie{background:#1b5e20;border-color:#66bb6a;color:#81c784}.welcome-phone-challenge-tag.tag-relations{background:#e6f0ff;border:1px solid #64b5f6;color:#1e40af}.dark-mode .welcome-phone-challenge-tag.tag-relations{background:#1e40af;border-color:#64b5f6;color:#e6f0ff}.welcome-phone-challenge-tag.difficulty-easy{background:#c8e6c9;border:1px solid #2e7d32;color:#2e7d32}.dark-mode .welcome-phone-challenge-tag.difficulty-easy{background:#1b5e20;border-color:#81c784;color:#81c784}.welcome-phone-challenge-tag.difficulty-medium{background:#ffe0b2;border:1px solid #e65100;color:#e65100}.dark-mode .welcome-phone-challenge-tag.difficulty-medium{background:#e65100;border-color:#ffe0b2;color:#ffe0b2}.welcome-phone-challenge-tag.difficulty-hard{background:#ffcdd2;border:1px solid #c62828;color:#c62828}.dark-mode .welcome-phone-challenge-tag.difficulty-hard{background:#c62828;border-color:#ffcdd2;color:#ffcdd2}.welcome-phone-challenge-desc{color:var(--text-tertiary);font-size:.7rem;line-height:1.4;transition:color .3s ease}.welcome-phone-challenge-footer{align-items:center;display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.welcome-phone-challenge-points{background:#f5f5f5;border:1px solid #e0e0e0;border-radius:6px;color:var(--text-secondary);font-size:.75rem;padding:4px 8px;transition:color .3s ease,background-color .3s ease}.dark-mode .welcome-phone-challenge-points{background:#2a2a2a;border-color:#3a3a3a;color:var(--text-secondary)}.welcome-phone-challenge-icon{color:var(--text-primary);font-size:.9rem;transition:color .3s ease}.welcome-phone-profile{display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto}.welcome-phone-profile-avatar{align-items:center;display:flex;justify-content:center;margin-bottom:8px;position:relative}.welcome-phone-profile-avatar-img{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid var(--border-color);border-radius:50%;height:60px;width:60px}.welcome-phone-profile-level{background:var(--accent-green);border-radius:10px;bottom:-8px;color:#fff;font-size:.65rem;font-weight:600;padding:3px 10px;position:absolute;white-space:nowrap}.welcome-phone-profile-name{color:var(--text-secondary);font-size:.85rem;margin-bottom:8px;text-align:center;transition:color .3s ease}.welcome-phone-profile-xp{display:flex;flex-direction:column;gap:8px}.welcome-phone-profile-xp-header{align-items:center;color:var(--text-primary);display:flex;font-size:.75rem;justify-content:space-between;transition:color .3s ease}.welcome-phone-profile-xp-level{color:var(--accent-green);font-weight:600}.welcome-phone-profile-xp-bar{background:var(--bg-secondary);border-radius:10px;height:20px;overflow:hidden;position:relative;width:100%}.welcome-phone-profile-xp-bar-fill{align-items:center;background:var(--accent-green);border-radius:10px;color:#fff;display:flex;font-size:.65rem;font-weight:600;height:100%;justify-content:center;transition:width .3s ease}.welcome-phone-profile-xp-stats{color:var(--text-secondary);font-size:.7rem;text-align:center;transition:color .3s ease}.welcome-phone-profile-activities{display:flex;flex-direction:column;gap:8px}.welcome-phone-profile-activities-title{color:var(--text-primary);font-size:.8rem;font-weight:600;margin-bottom:4px;transition:color .3s ease}.welcome-phone-profile-activity-item{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:10px;padding:8px;transition:background-color .3s ease,border-color .3s ease}.welcome-phone-profile-activity-icon{align-items:center;color:var(--accent-green);display:flex;font-size:.9rem;height:24px;justify-content:center;width:24px}.welcome-phone-profile-activity-details{display:flex;flex:1 1;flex-direction:column;gap:2px}.welcome-phone-profile-activity-label{color:var(--text-primary);font-size:.75rem;font-weight:600;transition:color .3s ease}.welcome-phone-profile-activity-date{color:var(--text-secondary);font-size:.65rem;transition:color .3s ease}.welcome-phone-profile-activity-points{color:var(--accent-green);font-size:.7rem;font-weight:600}.welcome-phone-leaderboard{display:flex;flex:1 1;flex-direction:column;gap:10px}.welcome-phone-leaderboard-item{align-items:center;background:var(--bg-card);border:2px solid var(--border-color);border-radius:12px;display:flex;flex-direction:column;gap:8px;padding:12px;transition:background-color .3s ease,border-color .3s ease}.welcome-phone-leaderboard-item.welcome-phone-leaderboard-rank-1{border-color:gold}.welcome-phone-leaderboard-item.welcome-phone-leaderboard-rank-2{border-color:silver}.welcome-phone-leaderboard-item.welcome-phone-leaderboard-rank-3{border-color:#cd7f32}.welcome-phone-leaderboard-medal{margin-bottom:4px}.welcome-phone-leaderboard-avatar{margin-bottom:8px;position:relative}.welcome-phone-leaderboard-avatar-img{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid var(--border-color);border-radius:50%;height:50px;width:50px}.welcome-phone-leaderboard-level{background:var(--accent-green);border-radius:8px;bottom:-6px;color:#fff;font-size:.6rem;font-weight:600;left:50%;padding:2px 8px;position:absolute;transform:translateX(-50%);white-space:nowrap}.welcome-phone-leaderboard-info{text-align:center;width:100%}.welcome-phone-leaderboard-name{color:var(--text-primary);font-size:.85rem;font-weight:700;margin-bottom:2px;transition:color .3s ease}.welcome-phone-leaderboard-username{color:var(--text-tertiary);font-size:.7rem;margin-bottom:8px;transition:color .3s ease}.welcome-phone-leaderboard-stats{border-top:1px solid var(--border-color);color:var(--text-secondary);display:flex;flex-direction:column;font-size:.7rem;gap:4px;padding-top:8px;transition:color .3s ease,border-color .3s ease}.welcome-phone-leaderboard-stats span{align-items:center;display:flex;gap:4px;justify-content:center}.welcome-dashboard{background:#0000;margin:0 auto;max-width:1400px;padding:20px 32px 60px;position:relative;z-index:1}.welcome-dashboard-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1.5fr}.welcome-dashboard-card{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 4px 16px var(--shadow-md);opacity:.92;padding:24px;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.welcome-dashboard-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:24px;justify-content:center;margin-bottom:20px;position:relative}.welcome-dashboard-header-content{align-items:center;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:8px;max-width:100%;min-width:0;padding:0 20px;text-align:center;width:100%}.welcome-dashboard-title{word-wrap:break-word;box-sizing:border-box;color:var(--text-primary);font-size:1.3rem;font-weight:700;line-height:1.4;margin:0;overflow-wrap:break-word;text-align:center;transition:color .3s ease;width:100%}.welcome-visits-subtitle{color:var(--text-secondary);font-size:1rem;font-weight:500;transition:color .3s ease}.welcome-period-selector{align-items:center;display:flex;flex-shrink:0;gap:12px;position:absolute;right:0;top:auto;transform:translateY(100%)}.welcome-period-select,.welcome-year-select{-webkit-appearance:none;appearance:none;background:var(--bg-card);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23666' d='M6 8 2 4h8z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:12px;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:500;outline:none;padding:10px 40px 10px 16px;position:relative;transition:all .2s ease}.dark-mode .welcome-period-select,.dark-mode .welcome-year-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23ccc' d='M6 8 2 4h8z'/%3E%3C/svg%3E");border-color:var(--border-color)}.welcome-period-select:hover,.welcome-year-select:hover{background-color:var(--bg-hover);border-color:var(--border-hover)}.welcome-period-select:focus,.welcome-year-select:focus{border-color:var(--accent-green);box-shadow:0 0 0 2px #43a0471a}.dark-mode .welcome-period-select:focus,.dark-mode .welcome-year-select:focus{box-shadow:0 0 0 2px #66bb6a26}.welcome-period-select option,.welcome-year-select option{background:var(--bg-card);color:var(--text-primary);padding:8px}.welcome-dashboard-highlight{color:var(--accent-green);font-weight:800;margin-left:4px}.welcome-dashboard-subtitle{color:var(--text-secondary);font-size:.9rem;transition:color .3s ease}.welcome-dashboard-tabs{display:flex;gap:8px;margin-bottom:24px}.welcome-dashboard-tab{background:var(--bg-secondary);border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;font-weight:500;padding:8px 16px;transition:all .3s ease}.welcome-dashboard-tab.active{background:var(--accent-green);color:#fff}.welcome-dashboard-tab:hover:not(.active){background:var(--bg-hover);color:var(--text-primary)}.welcome-dashboard-stats{display:flex;flex-direction:column;gap:16px}.welcome-stat-item{align-items:center;background:var(--bg-secondary);border-radius:12px;display:flex;gap:12px;padding:12px;transition:background-color .3s ease}.welcome-stat-icon{color:var(--accent-green);flex-shrink:0;font-size:1.5rem}.welcome-stat-content{display:flex;flex:1 1;flex-direction:column}.welcome-stat-label{color:var(--text-secondary);font-size:.85rem;transition:color .3s ease}.welcome-stat-value{color:var(--text-primary);font-size:1.1rem;font-weight:700;transition:color .3s ease}.welcome-chart-placeholder{margin-top:24px}.welcome-chart-container{height:400px;min-height:400px;position:relative;width:100%}.welcome-chart-bars{align-items:flex-end;display:flex;gap:6px;height:180px;justify-content:space-between;min-height:180px;padding:12px 8px}.welcome-chart-bar-container{align-items:center;display:flex;flex:1 1;flex-direction:column;max-width:40px;position:relative}.welcome-chart-bar{background:var(--accent-green);border-radius:8px 8px 0 0;cursor:pointer;min-height:2px;opacity:.7;position:relative;transition:all .3s ease;width:100%}.welcome-chart-bar.empty{background:var(--bg-secondary);opacity:.3}.welcome-chart-bar:hover{opacity:.8}.welcome-chart-bar.active{background:var(--accent-green);box-shadow:0 4px 12px #43a04766;opacity:1;z-index:2}.welcome-chart-bar.active.empty{background:var(--accent-green);opacity:.5}.welcome-chart-tooltip{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;bottom:100%;box-shadow:0 4px 12px var(--shadow-md);font-size:.85rem;left:50%;margin-bottom:8px;opacity:0;padding:8px 12px;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .3s ease;white-space:nowrap;z-index:10}.welcome-chart-bar.active .welcome-chart-tooltip{opacity:1}.welcome-chart-label{color:var(--text-secondary);font-size:.85rem;margin-top:8px;transition:color .3s ease}@media (max-width:1024px){.welcome-dashboard-container{grid-template-columns:1fr}.welcome-hero-title{font-size:2.5rem}}@media (max-width:1200px){.welcome-header-content{gap:10px;padding:0 20px}.welcome-nav{gap:10px;max-width:calc(100% - 400px)}.welcome-nav-link{font-size:.85rem;padding:6px 8px}.welcome-header-actions{flex-shrink:0;gap:6px}.welcome-header-btn{font-size:.85rem;padding:8px 14px}.welcome-header-title{font-size:1.3rem}}@media (max-width:900px){.welcome-header-content{gap:8px;padding:0 16px}.welcome-nav{gap:8px;max-width:calc(100% - 350px)}.welcome-nav-link{font-size:.8rem;padding:5px 7px}.welcome-header-actions{gap:4px}.welcome-header-btn{font-size:.8rem;padding:6px 12px}.welcome-header-title{font-size:1.2rem}.welcome-language-btn{font-size:.8rem;padding:6px 8px}}@media (max-width:768px){.welcome-header{padding:12px 0}.welcome-header-content{flex-wrap:wrap;gap:8px;padding:0 16px}.welcome-logo-section{flex-shrink:0;gap:8px}.welcome-header-title{font-size:1.1rem;letter-spacing:.5px}.welcome-header-logo{height:28px;width:28px}.welcome-header-link{display:none}.welcome-nav{flex-basis:100%;flex-wrap:wrap;gap:8px;justify-content:center;left:auto;margin-left:0;margin-top:8px;order:3;padding:0;position:static;transform:none;width:100%}.welcome-nav-link{font-size:.8rem;padding:5px 8px}.welcome-header-actions{flex-shrink:0;gap:4px;order:2}.welcome-header-btn{font-size:.85rem;padding:6px 12px}.welcome-language-btn{font-size:.8rem;padding:6px 8px}.welcome-dark-mode-toggle-btn{height:36px;width:36px}.welcome-hero{padding:100px 16px 60px}.welcome-hero-title{font-size:2rem}.welcome-hero-subtitle{font-size:1rem}.welcome-hero-actions{flex-direction:column;width:100%}.welcome-btn{text-align:center;width:100%}.welcome-dashboard{padding:40px 16px}.welcome-dashboard-card{padding:16px}}.welcome-footer{background:var(--bg-primary);border-top:1px solid var(--border-color);margin-top:80px;padding:0;position:relative;width:100%;z-index:1}.welcome-footer-container{margin:0 auto;max-width:1400px;padding:48px 32px 24px}.welcome-footer-content{grid-gap:48px;display:grid;gap:48px;grid-template-columns:repeat(4,1fr);margin-bottom:32px}.welcome-footer-column{display:flex;flex-direction:column}.welcome-footer-title{color:var(--text-primary);font-size:1rem;font-weight:600;letter-spacing:.5px;margin:0 0 20px;text-transform:uppercase;transition:color .3s ease}.welcome-footer-links{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.welcome-footer-links li{margin:0}.welcome-footer-links a{color:var(--text-secondary);display:inline-block;font-size:.9rem;text-decoration:none;transition:color .2s ease}.welcome-footer-links a:hover{color:var(--accent-green)}.welcome-footer-social{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.welcome-footer-social li{margin:0}.welcome-footer-social-link{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:not-allowed;display:flex;font-family:inherit;font-size:.9rem;gap:10px;opacity:.7;padding:0;text-align:left;text-decoration:none;transition:color .2s ease}.welcome-footer-social-link:hover{color:var(--accent-green);opacity:1}.welcome-footer-icon{flex-shrink:0;font-size:1.2rem}.welcome-footer-social-link span{align-items:center;display:flex;gap:6px}.welcome-coming-soon{color:var(--text-tertiary);font-size:.75rem;font-style:italic}.welcome-footer-bottom{border-top:1px solid var(--border-color);padding-top:24px;text-align:center}.welcome-footer-bottom-text{color:var(--text-tertiary);font-size:.85rem;line-height:1.5;margin:0;transition:color .3s ease}@media (max-width:1200px){.welcome-footer-content{gap:40px;grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.welcome-footer-container{padding:32px 20px 20px}.welcome-footer-content{gap:32px;grid-template-columns:1fr}.welcome-footer-title{margin-bottom:16px}.welcome-footer-bottom-text{font-size:.8rem}}@media (max-width:600px){.welcome-header-content{flex-wrap:wrap;gap:6px;min-height:auto;padding:0 12px}.welcome-logo-section{flex-shrink:0;gap:6px}.welcome-header-title{font-size:1rem;letter-spacing:0}.welcome-header-logo{height:24px;width:24px}.welcome-nav{flex-basis:100%;gap:6px;justify-content:center;left:auto;margin-left:0;margin-top:6px;order:3;position:static;transform:none;width:100%}.welcome-nav-link{font-size:.75rem;padding:4px 6px}.welcome-nav-link:nth-child(n+4){display:none}.welcome-header-actions{flex-shrink:0;gap:4px;margin-left:auto;order:2}.welcome-header-btn{font-size:.75rem;padding:6px 10px}.welcome-header-link{font-size:.75rem;padding:4px 8px}.welcome-language-btn{font-size:.75rem;padding:5px 6px}.welcome-user-info{gap:8px;margin-right:6px}.welcome-user-avatar{height:32px;width:32px}.welcome-username{font-size:.85rem}.welcome-dark-mode-toggle-btn{height:32px;width:32px}.welcome-footer-container{padding:24px 16px 16px}.welcome-footer-content{gap:24px}.welcome-footer-links,.welcome-footer-social{gap:10px}.welcome-footer-links a,.welcome-footer-social-link{font-size:.85rem}}.app-header{justify-content:flex-end;position:fixed;right:16px;top:16px;z-index:100003}.app-header,.header-controls{align-items:center;display:flex}.header-controls{gap:12px}.language-selector{position:relative}.language-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 8px var(--shadow-md);color:var(--text-primary);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;padding:8px 12px;transition:background-color .3s ease,border-color .3s ease,color .3s ease}.language-btn svg{border-radius:2px;box-shadow:0 1px 2px #0000001a;flex-shrink:0}.language-btn:hover{background:var(--bg-hover)}.language-menu{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px var(--shadow-md);margin-top:8px;min-width:150px;overflow:hidden;position:absolute;right:0;top:100%;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease;z-index:1000}.language-option{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:.9rem;gap:10px;padding:10px 16px;text-align:left;transition:background-color .2s ease,color .3s ease;width:100%}.language-option svg{border-radius:2px;box-shadow:0 1px 2px #0000001a;flex-shrink:0}.language-option:hover{background:var(--bg-hover)}.language-option.active{background:#43a0471a;color:var(--accent-green);font-weight:600}.dark-mode .language-option.active{background:#66bb6a33;color:var(--accent-green-light)}.dark-mode-toggle-btn{align-items:center;background:var(--bg-card);border-image:none;border-radius:50%;border-style:solid;border-width:1px;border:1px solid var(--border-color);border-color:var(--border-color);box-shadow:0 2px 8px var(--shadow-md);color:var(--bg-card);cursor:pointer;display:flex;height:44px;justify-content:center;padding:0;transition:all .3s ease;width:44px}.dark-mode-toggle-btn:hover{background:var(--bg-hover);box-shadow:0 4px 12px var(--shadow-lg);transform:scale(1.1)}.dark-mode-icon{color:var(--success-text);display:block;font-size:1.5rem;transition:transform .3s ease}.dark-mode-icon path{fill:currentColor;color:var(--success-text)}.dark-mode-toggle-btn:hover .dark-mode-icon{transform:rotate(15deg)}@media (max-width:768px){.app-header{right:12px;top:12px}.header-controls{gap:8px}.language-btn{font-size:.85rem;padding:6px 10px}.dark-mode-toggle-btn{height:40px;width:40px}.dark-mode-icon{font-size:1.3rem}}.mention-dropdown{animation:mention-appear .12s ease;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;bottom:calc(100% + 4px);box-shadow:0 8px 32px var(--shadow-lg);left:0;list-style:none;margin:0;max-height:300px;max-width:320px;min-width:240px;overflow-y:auto;padding:4px;position:absolute;scrollbar-color:var(--border-color) #0000;scrollbar-width:thin;z-index:600}@keyframes mention-appear{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.mention-dropdown-item{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:10px;outline:none;padding:8px 10px;transition:background .1s}.mention-dropdown-item--active,.mention-dropdown-item:hover{background:var(--bg-hover)}.mention-avatar{border-radius:50%;flex-shrink:0;height:36px;object-fit:cover;width:36px}.mention-avatar-placeholder{align-items:center;background:var(--bg-hover);color:var(--text-secondary);display:flex;font-size:.9rem;font-weight:700;justify-content:center}.mention-info{display:flex;flex:1 1;flex-direction:column;min-width:0}.mention-display{color:var(--text-primary);font-size:.9rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mention-username{color:var(--text-tertiary);font-size:.78rem}.mention-badge{background:#43a0471f;border-radius:4px;color:var(--accent-green);flex-shrink:0;font-size:.68rem;font-weight:700;letter-spacing:.02em;padding:2px 6px;white-space:nowrap}.dark-mode .mention-badge{background:#66bb6a26}.mention-dropdown-state{align-items:center;color:var(--text-tertiary);cursor:default;display:flex;font-size:.85rem;gap:8px;justify-content:center;padding:14px 10px}.mention-dropdown-empty{color:var(--text-quaternary)}.mention-spinner{animation:btn-spin .65s linear infinite;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-green);display:inline-block;flex-shrink:0;height:14px;width:14px}.dark-mode .mention-dropdown{box-shadow:0 8px 32px #00000080}.create-post-modal-overlay{align-items:center;backdrop-filter:var(--modal-backdrop);-webkit-backdrop-filter:var(--modal-backdrop);background:var(--modal-overlay-bg);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:var(--modal-z)}.create-post-modal{background:var(--bg-card);border:var(--modal-border);border-radius:var(--modal-radius);box-shadow:var(--modal-shadow);display:flex;flex-direction:column;max-height:90vh;max-width:600px;transition:all .3s ease;width:100%}.create-post-modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:20px 24px}.create-post-modal-header h2{color:var(--text-primary);font-size:1.3rem;font-weight:600;margin:0}.create-post-modal-close{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:20px;height:var(--modal-close-size);justify-content:center;padding:0;transition:background .15s,color .15s;width:var(--modal-close-size)}.create-post-modal-close:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.create-post-modal-close:disabled{cursor:not-allowed;opacity:.5}.create-post-modal-form{display:flex;flex:1 1;flex-direction:column;min-height:0}.create-post-modal-content{flex:1 1;overflow-y:auto;padding:24px}.create-post-challenges-section{border-bottom:1px solid var(--border-color);margin-bottom:16px;padding-bottom:16px}.create-post-challenges-title{align-items:center;color:var(--text-primary);display:flex;font-size:.95rem;font-weight:600;gap:8px;margin-bottom:12px}.create-post-challenges-icon{color:var(--accent-green);font-size:16px}.create-post-challenges-list{display:flex;flex-direction:column;gap:6px}.create-post-challenge-card{background:var(--bg-hover);border:2px solid var(--border-color);border-radius:8px;cursor:pointer;padding:8px 12px;text-align:left;transition:all .2s ease;width:100%}.create-post-challenge-card:hover{background:#43a0470d;border-color:var(--accent-green)}.create-post-challenge-card.selected{background:#43a0471a;border-color:var(--accent-green)}.dark-mode .create-post-challenge-card.selected{background:#66bb6a26}.create-post-challenge-content{display:flex;flex-direction:column;gap:4px}.create-post-challenge-title{color:var(--text-primary);font-size:.85rem;font-weight:600;line-height:1.2}.create-post-challenge-desc{-webkit-line-clamp:1;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:.75rem;line-height:1.3;overflow:hidden}.create-post-challenge-points{color:var(--accent-green);font-size:.7rem;font-weight:600;margin-top:2px}.create-post-challenge-preview{background:var(--bg-secondary);border:2px solid var(--accent-green);border-radius:12px;margin-bottom:16px;padding:12px}.create-post-challenge-preview-header{align-items:center;color:var(--text-primary);display:flex;font-size:.9rem;font-weight:600;gap:8px;margin-bottom:12px}.create-post-challenge-preview-icon{color:var(--accent-green);font-size:16px}.create-post-challenge-preview-remove{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:14px;height:24px;justify-content:center;margin-left:auto;padding:0;transition:background .15s,color .15s;width:24px}.create-post-challenge-preview-remove:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.create-post-challenge-preview-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:12px}.create-post-challenge-preview-title{color:var(--text-primary);font-size:1rem;font-weight:600;margin-bottom:6px}.create-post-challenge-preview-desc{color:var(--text-secondary);font-size:.9rem;line-height:1.4;margin-bottom:8px}.create-post-challenge-preview-points{color:var(--accent-green);font-size:.85rem;font-weight:600}.create-post-input-wrapper{position:relative;width:100%}.create-post-input{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:15px;line-height:1.5;max-height:200px;min-height:44px;overflow-x:hidden;overflow-y:hidden;padding:12px;resize:none;transition:all .2s ease;width:100%}.create-post-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #007bff1a;outline:none}.create-post-input:disabled{cursor:not-allowed;opacity:.6}.create-post-char-count{color:var(--text-secondary);font-size:12px;margin-top:4px;text-align:right}.create-post-image-preview{background:var(--bg-hover);border-radius:12px;margin-top:16px;overflow:hidden;position:relative}.create-post-image-preview img{display:block;height:auto;max-height:400px;object-fit:contain;width:100%}.create-post-image-actions{align-items:center;display:flex;gap:8px;position:absolute;right:8px;top:8px}.create-post-recrop-image,.create-post-remove-image{align-items:center;background:#000000b3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:14px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.create-post-recrop-image:hover:not(:disabled),.create-post-remove-image:hover:not(:disabled){background:#000000e6;transform:scale(1.1)}.create-post-recrop-image:disabled,.create-post-remove-image:disabled{cursor:not-allowed;opacity:.5}.create-post-crop-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-top:16px;padding:16px}.create-post-crop-header{margin-bottom:16px}.create-post-crop-header h3{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0}.create-post-crop-container{background:var(--bg-hover);border-radius:8px;cursor:move;margin:0 auto;max-width:100%;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none;width:100%}.create-post-crop-image{display:block;height:auto;max-height:400px;max-width:100%;object-fit:contain}.create-post-crop-overlay{border:2px solid var(--accent-green);box-shadow:0 0 0 9999px #00000080;cursor:move;position:absolute;z-index:10}.create-post-crop-handle{background:var(--accent-green);border:2px solid #fff;border-radius:50%;cursor:nwse-resize;height:12px;position:absolute;width:12px}.create-post-crop-handle-nw{cursor:nwse-resize;left:-6px;top:-6px}.create-post-crop-handle-ne{cursor:nesw-resize;right:-6px;top:-6px}.create-post-crop-handle-sw{bottom:-6px;cursor:nesw-resize;left:-6px}.create-post-crop-handle-se{bottom:-6px;cursor:nwse-resize;right:-6px}.create-post-crop-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:16px}.create-post-error{background:#ef44441a;border-radius:8px;color:#ef4444;font-size:14px;margin-top:12px;padding:12px}.create-post-modal-footer{border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:16px;padding:20px 24px}.create-post-options{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.create-post-image-label{align-items:center;background:var(--bg-hover);border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s ease}.create-post-image-label:hover:not(:has(input:disabled)){background:var(--bg-secondary)}.create-post-image-label input:disabled{cursor:not-allowed}.create-post-privacy-toggle{align-items:center;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s ease}.create-post-privacy-toggle:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--primary-color)}.create-post-privacy-toggle.public{border-color:#22c55e;color:#22c55e}.create-post-privacy-toggle.private{border-color:#ef4444;color:#ef4444}.create-post-privacy-toggle:disabled{cursor:not-allowed;opacity:.5}.create-post-icon{font-size:16px}.create-post-actions{display:flex;gap:12px;justify-content:flex-end}.create-post-actions .btn{min-width:100px}@media (max-width:600px){.create-post-modal{border-radius:16px 16px 0 0;margin-top:auto;max-height:100vh;max-width:100%}.create-post-modal-overlay{align-items:flex-end;padding:0}.create-post-modal-content,.create-post-modal-footer,.create-post-modal-header{padding:16px}.create-post-options{align-items:stretch;flex-direction:column}.create-post-image-label,.create-post-privacy-toggle{justify-content:center;width:100%}}.mention-text{color:#000;white-space:pre-wrap;word-break:break-word}.dark-mode .mention-text{color:#e7e7e7}.mention-link{color:var(--accent-green);font-weight:600;text-decoration:none}.mention-link:hover{color:#22c55e;color:var(--accent-green-hover,#22c55e);text-decoration:underline}.mention-link:focus{outline:none;text-decoration:underline}.report-user-modal-content{display:flex;flex-direction:column;gap:20px}.report-user-modal-text{color:var(--text-primary);font-size:15px;line-height:1.5;margin:0}.report-user-modal-username{color:var(--text-primary);font-weight:700}.report-user-modal-actions{display:flex;flex-direction:column;gap:10px}.report-user-modal-btn{align-items:center;border:none;border-radius:24px;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;justify-content:center;padding:14px 16px;transition:background .2s ease,color .2s ease;width:100%}.report-user-modal-btn-icon{font-size:16px}.report-user-modal-btn-report{background:#e91e6326;color:#e91e63}.report-user-modal-btn-report:hover{background:#e91e6340}.report-user-modal-btn-report-block{background:#e91e6333;color:#c2185b}.report-user-modal-btn-report-block:hover{background:#e91e634d}.report-user-modal-btn-cancel{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary)}.report-user-modal-btn-cancel:hover{background:var(--bg-hover);color:var(--text-primary)}.unified-item-menu-wrapper{align-items:center;display:inline-flex;position:relative}.unified-item-menu-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;justify-content:center;padding:6px;transition:all .2s ease}.unified-item-menu-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.unified-item-menu-dropdown{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-lg);margin-top:6px;max-height:80vh;max-width:320px;min-width:240px;overflow:hidden;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1001}.unified-item-menu-dropdown--bottom-start{left:0;right:auto}.unified-item-menu-dropdown--bottom-end{left:auto;right:0}.unified-item-menu-option{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;gap:12px;padding:12px 16px;text-align:left;transition:background .2s ease;width:100%}.unified-item-menu-option:hover{background:var(--bg-hover)}.unified-item-menu-option-danger{color:#e91e63}.unified-item-menu-option-danger:hover{background:#e91e631a}.unified-item-menu-icon{align-items:center;display:flex;flex-shrink:0;font-size:16px;justify-content:center;width:20px}.home-layout{display:flex;min-height:100vh}.home-layout,.home-main{background:var(--bg-tertiary);transition:background-color .3s ease}.home-main{box-sizing:border-box;flex:1 1;padding:24px 32px}.home-page-title{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin:0 0 24px;transition:color .3s ease}.home-banner{background:url(/static/media/background.dc3ab0ca6bd0f9cb5c0b.png) 50%/cover no-repeat;border-radius:24px;box-shadow:0 2px 16px var(--shadow-md);color:#fff;margin-bottom:32px;min-height:220px;overflow:hidden;padding:48px 32px 32px;position:relative}.home-banner:before{background:#000000a6;border-radius:24px;bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.home-banner>*{position:relative;z-index:2}.home-title{color:#fff;font-size:2.2rem;font-weight:700;margin-bottom:12px}.home-title-green{color:var(--accent-green)}.dark-mode .home-title-green{color:var(--accent-green-light)}.home-subtitle{color:#fff;font-size:1.1rem;margin-bottom:24px}.home-banner-actions{display:flex;gap:16px;margin-top:50px}.home-banner-actions .btn{width:100px}.home-content-layout{align-items:flex-start;display:flex;gap:24px;margin:0 auto;max-width:1200px}.home-sidebar{flex-shrink:0;position:-webkit-sticky;position:sticky;top:24px;width:300px}.home-sidebar-stats{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 2px 12px var(--shadow-md);padding:16px}.home-sidebar-title{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:1.1rem;font-weight:700;margin:0 0 12px;padding-bottom:12px}.home-stats{display:flex;flex-direction:column;gap:0;margin-bottom:0}.home-stat-item{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:12px;padding:12px 0;transition:background-color .2s ease}.home-stat-item:last-child{border-bottom:none}.home-stat-item:hover{background:var(--bg-hover);border-radius:8px;margin:0 -16px;padding:12px 16px}.home-stat-item-icon{align-items:center;color:var(--accent-green);display:flex;flex-shrink:0;font-size:18px;justify-content:center;width:24px}.home-stat-item-content{flex:1 1;min-width:0}.home-stat-item-value{color:var(--text-primary);font-size:.95rem;font-weight:600;line-height:1.2;margin-bottom:2px}.home-stat-item-label{color:var(--text-secondary);font-size:.8rem;line-height:1.2}.home-stat-card{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;padding:16px;transition:background-color .3s ease,box-shadow .3s ease,transform .3s ease}.home-stat-card:hover{background:var(--bg-hover);box-shadow:0 2px 8px var(--shadow-md);transform:translateY(-2px)}.home-stat-icon{color:var(--accent-green);font-size:2rem;margin-bottom:8px;transition:color .3s ease,transform .3s ease}.home-stat-card:hover .home-stat-icon{transform:scale(1.05)}.dark-mode .home-stat-icon{color:var(--accent-green-light)}.home-stat-value{color:var(--accent-green);font-size:1.3rem;font-weight:700;margin-bottom:4px;transition:color .3s ease}.home-stat-label{color:var(--text-secondary);font-size:.9rem;text-align:center;transition:color .3s ease}.home-feed{flex:1 1;margin:0 auto;max-width:600px;min-width:0}.home-feed-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:18px}.home-feed-filters{border-bottom:1px solid var(--border-color);display:flex;gap:0}.home-feed-filter{background:#0000;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;font-size:1rem;font-weight:500;margin-bottom:-1px;padding:12px 16px;position:relative;transition:all .2s ease}.home-feed-filter:hover{background:var(--bg-hover);color:var(--text-primary)}.home-feed-filter.active{border-bottom-color:var(--accent-green);color:var(--accent-green)}.home-feed-title{color:var(--text-primary);font-size:1.3rem;font-weight:700;margin:0;transition:color .3s ease}.create-post-btn{align-items:center!important;background:var(--accent-green)!important;border:none!important;color:#fff!important;display:flex!important;font-size:.95rem;font-weight:500;gap:8px!important;justify-content:center!important;max-width:none!important;min-width:-webkit-fit-content;min-width:fit-content;padding:10px 20px!important;white-space:nowrap!important;width:auto!important}.create-post-btn:hover{background:var(--accent-green-dark)!important}.dark-mode .create-post-btn:hover{background:var(--accent-green)!important}.create-post-btn *{color:#fff!important}.create-post-btn span{display:inline-block!important;font-weight:500;line-height:1.2;max-width:none!important;overflow:visible!important;text-overflow:clip!important;width:auto!important}.create-post-btn span,.create-post-btn-icon{color:#fff!important;margin:0;opacity:1!important;padding:0;visibility:visible!important}.create-post-btn-icon{align-items:center;display:inline-flex!important;flex-shrink:0;font-size:16px;justify-content:center}.feed-empty,.feed-loading{color:var(--text-secondary);padding:40px 20px;text-align:center}.feed-list{display:flex;flex-direction:column;gap:0}.feed-list-item{width:100%}.feed-list-item+.feed-list-item{border-top:1px solid #0000001f;border-top:1px solid var(--border-color,#0000001f);margin-top:16px;padding-top:16px}.feed-item{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 1px 3px #0000001f;padding:16px;transition:all .2s ease}.feed-item:hover{background:var(--bg-hover);border-color:var(--border-color)}.feed-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.feed-item-user{align-items:center;cursor:pointer;display:flex;flex:1 1;gap:12px;min-width:0}.feed-avatar-ring{flex-shrink:0;height:48px;width:48px}.feed-avatar-img{border-radius:50%;height:48px;width:48px}.feed-item-user-info{flex:1 1;min-width:0}.feed-item-username-wrapper{display:flex;flex-direction:column;gap:2px}.feed-item-display-name{color:var(--text-primary);font-size:15px;font-weight:700;line-height:1.2;word-break:break-word}.feed-item-username{color:var(--text-secondary);font-size:14px;font-weight:400;line-height:1.2;word-break:break-word}.feed-item-date{color:var(--text-secondary);font-size:13px}.feed-item-header-right{align-items:center;display:flex;gap:8px;position:relative}.feed-item-type{color:var(--text-secondary);flex-shrink:0}.feed-type-icon{font-size:18px}.feed-item-menu-wrapper{position:relative}.feed-item-menu-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:16px;justify-content:center;padding:8px;transition:all .2s ease}.feed-item-menu-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.feed-item-menu-dropdown{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-lg);margin-top:8px;min-width:280px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.feed-item-menu-option{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:15px;gap:12px;padding:12px 16px;text-align:left;transition:background .2s ease;width:100%}.feed-item-menu-option:hover{background:var(--bg-hover)}.feed-item-menu-option-danger{color:#e91e63}.feed-item-menu-option-danger:hover{background:#e91e631a}.feed-item-menu-icon{align-items:center;display:flex;flex-shrink:0;font-size:18px;justify-content:center;width:20px}.feed-item-content{color:#000;font-size:15px;line-height:1.5;margin-bottom:12px;white-space:pre-wrap;word-break:break-word}.dark-mode .feed-item-content{color:#e7e7e7}.feed-item-image{background:#0000;border-radius:12px;margin-bottom:12px;overflow:hidden;width:100%}.feed-item-image img{border-radius:8px;display:block;height:auto;max-height:300px;object-fit:contain;width:100%}.feed-item-challenge-card{background:#0000;border:1px solid var(--accent-green);border-radius:8px;margin-bottom:12px;margin-top:12px;padding:8px 10px;transition:all .3s ease}.feed-item-challenge-header{align-items:center;color:var(--accent-green);display:flex;font-size:.7rem;font-weight:600;gap:4px;margin-bottom:4px}.feed-item-challenge-icon{font-size:12px}.feed-item-challenge-label{font-size:.65rem;letter-spacing:.3px;text-transform:uppercase}.feed-item-challenge-title{color:var(--text-primary);font-size:.8rem;font-weight:600;line-height:1.2;margin-bottom:2px}.feed-item-challenge-desc{-webkit-line-clamp:1;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:.75rem;line-height:1.3;margin-bottom:4px;overflow:hidden}.feed-item-challenge-points{color:var(--accent-green);font-size:.7rem;font-weight:600}.feed-item-actions{align-items:center;border-top:1px solid var(--border-color);display:flex;gap:8px;justify-content:space-between;margin-top:12px;padding-top:12px}.feed-action-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;flex:1 1;font-size:.9rem;gap:6px;justify-content:center;padding:8px 12px;transition:all .2s ease}.feed-action-btn:hover:not(.disabled){background:var(--bg-hover);color:var(--text-primary)}.feed-action-btn.disabled{cursor:not-allowed;opacity:.5}.feed-action-btn.active{color:var(--accent-green)}.feed-action-btn.active.feed-action-like{color:#e91e63}.feed-action-icon{font-size:16px}.feed-action-count{font-size:.85rem;font-weight:500;min-width:20px;text-align:left}.home-challenges{margin-bottom:32px}.home-challenges-title{color:var(--text-primary);font-size:1.3rem;font-weight:700;margin-bottom:18px;transition:color .3s ease}.home-challenges-note{margin-top:8px}.home-challenges-list{display:flex;flex-wrap:wrap;gap:24px}.challenge-card{border-radius:16px;box-shadow:0 2px 12px var(--shadow-md);gap:12px;overflow:hidden;padding:24px;transition:all .3s ease}.home-challenges-list .challenge-card{flex-basis:calc(33.33333% - 16px);flex-grow:0;flex-shrink:0;max-width:calc(33.33333% - 16px);min-width:0}.home-challenges-list .challenge-card-empty{background:#0000;border:1px dashed var(--border-color);box-shadow:none;pointer-events:none}.challenge-card:hover{border-color:var(--accent-green);box-shadow:0 4px 20px var(--shadow-lg);transform:translateY(-4px)}.dark-mode .challenge-card:hover{border-color:var(--accent-green-light)}.challenge-header{flex-wrap:wrap;gap:8px;margin-bottom:4px}.challenge-user{color:var(--accent-green);font-weight:700;transition:color .3s ease}.challenge-tag{background:var(--bg-hover);border:1px solid #0000;border-radius:8px;color:var(--text-primary);font-size:.8rem;font-weight:500;padding:4px 10px;transition:all .3s ease}.challenge-santebienetre{background:#e3f7e7;border-color:#81c784;color:#43a047}.dark-mode .challenge-santebienetre{background:#1b5e20;border-color:#66bb6a;color:#81c784}.challenge-ecology{background:#e8f5e9;border-color:#81c784;color:#2e7d32}.dark-mode .challenge-ecology{background:#1b5e20;border-color:#66bb6a;color:#81c784}.challenge-productivity{background:#fff3e0;border-color:#ff9800;color:#e65100}.dark-mode .challenge-productivity{background:#e65100;border-color:#ff9800;color:#fff3e0}.challenge-relations{background:#fce4ec;border-color:#f48fb1;color:#c2185b}.dark-mode .challenge-relations{background:#c2185b;border-color:#f06292;color:#fce4ec}.challenge-title{font-size:1.15rem;font-weight:700;line-height:1.4;margin-bottom:8px;margin-top:4px}.challenge-desc{color:var(--text-secondary);flex:1 1;font-size:.95rem;line-height:1.5;margin-bottom:12px;transition:color .3s ease}.challenge-actions{align-items:center;border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:space-between;margin-top:auto;padding-top:12px}.challenge-actions .btn{flex-shrink:0;margin-left:auto;width:50px}.challenge-popularity{font-size:.9rem}@media (max-width:900px){.home-main{padding:20px 24px}.home-title{font-size:1.8rem}.home-subtitle{font-size:1rem}.home-banner{min-height:180px;padding:36px 24px 24px}.home-content-layout{flex-direction:column}.home-sidebar{position:static;width:100%}.home-stats{flex-direction:column;gap:0}.home-stat-item{padding:10px 0}.home-stat-item:hover{margin:0 -16px;padding:10px 16px}.home-stat-card{flex-basis:calc(33.333% - 8px);flex-grow:1;flex-shrink:1;min-width:100px;padding:16px}.home-challenges-list{flex-direction:column;gap:16px}.challenge-card{min-width:auto}}@media (max-width:600px){.home-main{padding:16px}.home-banner{border-radius:16px;min-height:160px;padding:24px 16px}.home-title{font-size:1.5rem;margin-bottom:8px}.home-subtitle{font-size:.95rem;margin-bottom:16px}.home-banner-actions{flex-direction:column;gap:12px}.home-stat-card{padding:12px}.home-stat-icon{font-size:1.5rem}.home-stat-value{font-size:1.1rem}.home-stat-label{font-size:.8rem}.home-challenges-title{font-size:1.1rem}.challenge-card{padding:16px 18px}.challenge-title{font-size:1rem}.challenge-desc{font-size:.9rem}.home-feed-header{align-items:stretch;flex-direction:column}.home-content-layout{flex-direction:column;gap:16px}.home-sidebar{position:static;width:100%}.home-stats{flex-direction:row;flex-wrap:wrap;gap:12px}.home-stat-card{flex-basis:calc(33.333% - 8px);flex-grow:1;flex-shrink:1;min-width:100px}.home-feed{max-width:100%;width:100%}.create-post-btn{justify-content:center;width:100%}.create-post-btn span{display:inline-block!important}}.challenges-page{align-items:stretch;background:var(--bg-tertiary);box-sizing:border-box;display:flex;flex-direction:column;min-height:100vh;padding:24px 32px;transition:background-color .3s ease;width:100%}.challenges-page-content{margin:0 auto;max-width:1400px;min-width:0;width:100%}@media (max-width:1280px){.challenges-page{padding:20px 28px}}@media (max-width:900px){.challenges-page{padding:16px 20px}}@media (max-width:600px){.challenges-page{padding:12px 16px}}@media (max-width:480px){.challenges-page{padding:10px 12px}}.popular-challenges-section{margin-bottom:32px}.popular-challenges-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);width:100%}.popular-challenge-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 1px 4px var(--shadow-sm);min-width:0;overflow:hidden;position:relative;transition:all .3s ease}.popular-challenge-card.challenge-card-unified .challenge-title{-webkit-line-clamp:2;line-clamp:2;font-size:.95rem}.popular-challenge-card.challenge-card-unified .challenge-desc{-webkit-line-clamp:2;line-clamp:2;font-size:.8rem}.popular-challenge-card .challenge-tag{font-size:.7rem;padding:2px 6px}.popular-challenge-card:hover{border-color:var(--accent-green);box-shadow:0 4px 12px var(--shadow-md)}.dark-mode .popular-challenge-card:hover{border-color:var(--accent-green-light)}.challenge-popularity{align-items:center;color:var(--text-secondary);display:flex;font-size:.75rem;font-weight:500;gap:4px;transition:color .3s ease}.section-separator{background:var(--border-color);transition:background-color .3s ease}.section-separator-vertical{align-self:stretch;display:block;margin:0 8px;min-width:1px;width:1px}.section-separator-horizontal{display:block;height:1px;margin:24px 0;min-height:1px;width:100%}.section-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.section-header-spaced{margin-top:16px}.section-header .challenges-section-title,.section-header h3.challenges-section-title{color:var(--text-primary);flex-shrink:0;font-size:1.1rem;margin:0;transition:color .3s ease}.section-header h3{color:var(--text-primary);font-size:1.1rem;margin:0;transition:color .3s ease}.section-header .daily-badge{flex-shrink:0;margin-bottom:0;margin-top:0}.section-header .section-sub{margin-bottom:0;margin-left:auto}.section-sub{color:var(--text-tertiary);font-size:.9rem;margin-bottom:8px}.section-sub,.timer{transition:color .3s ease}.timer{color:var(--accent-green);font-weight:700}.reset-dates-button{background-color:#007bff;background-color:var(--accent-color,#007bff);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;margin-left:12px;padding:6px 12px}.reset-dates-button:hover{opacity:.9}.bonus-title-text{margin-left:8px}.category-badge,.daily-badge{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);display:inline-block;font-size:.85rem;margin-left:0;padding:4px 8px;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.category-badge,.daily-badge,.daily-badge-row{margin-bottom:8px;margin-top:6px}.challenges-header{align-items:center;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px;width:100%}.challenges-header .page-title-container{align-items:center;flex:1 1;margin-bottom:0;min-width:0}.challenges-title-text{align-items:center;color:var(--text-primary);display:flex;font-size:1.3rem;font-weight:700;gap:12px;margin:0;padding:0;transition:color .3s ease}.challenges-title-icon{color:var(--accent-green);flex-shrink:0;font-size:1.2rem}.challenges-tabs{-webkit-overflow-scrolling:touch;border-bottom:2px solid var(--border-color);display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;min-width:0;overflow-x:auto;overflow-y:hidden;padding-bottom:8px;scrollbar-width:thin;width:100%}.challenges-tab{align-items:center;background:#0000;border:none;border-radius:8px 8px 0 0;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.challenges-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.challenges-tab.active{background:var(--bg-hover);color:var(--accent-green)}.challenges-tab-icon{font-size:16px}.challenges-popular-block{box-sizing:border-box;margin-bottom:24px;width:100%}.challenges-combined-section{margin-bottom:32px}.challenges-combined-section:last-child{margin-bottom:0}.challenges-view-and-filters{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px;min-width:0;width:100%}.challenges-view-and-filters .challenges-view-options{flex-shrink:0;margin-left:auto}.challenges-filters-row-top{align-items:center;flex-wrap:wrap;gap:12px;justify-content:flex-start;overflow:visible}.challenges-filter-buttons-wrap,.challenges-filters-row-top{display:flex;flex:1 1;min-width:0}.challenges-category-select,.challenges-filter-select-wrap{display:none}.challenges-filters-row-top .challenges-filter-btns{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.challenges-view-and-filters-no-category .challenges-filters-row-top{display:none}.challenges-filter-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.9rem;font-weight:500;height:36px;justify-content:center;min-height:36px;padding:8px 14px;transition:all .2s ease;white-space:nowrap}.challenges-filter-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.challenges-filter-btn.active{background:var(--accent-green);border-color:var(--accent-green);color:#fff}.dark-mode .challenges-filter-btn.active{background:var(--accent-green-light);border-color:var(--accent-green-light);color:#000}.challenges-view-options-badge{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);flex-shrink:0;font-size:.85rem;font-weight:600;padding:6px 10px}.challenges-view-options{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.challenges-view-options-label{color:var(--text-secondary);font-size:.9rem;font-weight:500}.challenges-view-options-btns{display:flex;gap:6px}.challenges-view-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:8px;height:36px;justify-content:center;min-width:36px;padding:0 12px;transition:all .2s ease}.challenges-view-btn .challenges-view-btn-icon,.challenges-view-btn span{color:inherit}.challenges-view-btn-icon{flex-shrink:0;font-size:1rem}.challenges-view-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.challenges-view-btn.active{background:var(--accent-green);border-color:var(--accent-green);color:#fff}.dark-mode .challenges-view-btn.active{background:var(--accent-green-light);border-color:var(--accent-green-light);color:#fff}.challenges-filter-btn.tag-sante{background:#ffe5eb;border-color:#f48fb1;color:#d81b60}.challenges-filter-btn.tag-ecologie{background:#e2f3e8;border-color:#81c784;color:#2e7d32}.challenges-filter-btn.tag-relations{background:#e6f0ff;border-color:#64b5f6;color:#1e40af}.challenges-filter-btn.tag-productivite{background:#fff7e0;border-color:#ffb74d;color:#d97706}.challenges-filter-btn.tag-sante:focus-visible,.challenges-filter-btn.tag-sante:hover{background:#ffe5eb;border-color:#f48fb1;color:#d81b60}.challenges-filter-btn.tag-ecologie:focus-visible,.challenges-filter-btn.tag-ecologie:hover{background:#e2f3e8;border-color:#81c784;color:#2e7d32}.challenges-filter-btn.tag-relations:focus-visible,.challenges-filter-btn.tag-relations:hover{background:#e6f0ff;border-color:#64b5f6;color:#1e40af}.challenges-filter-btn.tag-productivite:focus-visible,.challenges-filter-btn.tag-productivite:hover{background:#fff7e0;border-color:#ffb74d;color:#d97706}.challenges-filter-btn.tag-sante.active{background:#d81b60;border-color:#d81b60;color:#fff}.challenges-filter-btn.tag-ecologie.active{background:#2e7d32;border-color:#2e7d32;color:#fff}.challenges-filter-btn.tag-relations.active{background:#1e40af;border-color:#1e40af;color:#fff}.challenges-filter-btn.tag-productivite.active{background:#d97706;border-color:#d97706;color:#fff}.dark-mode .challenges-filter-btn.tag-sante{background:#d81b60;border-color:#f06292;color:#ffe5eb}.dark-mode .challenges-filter-btn.tag-ecologie{background:#1b5e20;border-color:#66bb6a;color:#81c784}.dark-mode .challenges-filter-btn.tag-relations{background:#1e40af;border-color:#42a5f5;color:#e6f0ff}.dark-mode .challenges-filter-btn.tag-productivite{background:#d97706;border-color:#ffa726;color:#fff7e0}.dark-mode .challenges-filter-btn.tag-sante:focus-visible,.dark-mode .challenges-filter-btn.tag-sante:hover{background:#d81b60;border-color:#f06292;color:#ffe5eb}.dark-mode .challenges-filter-btn.tag-ecologie:focus-visible,.dark-mode .challenges-filter-btn.tag-ecologie:hover{background:#1b5e20;border-color:#66bb6a;color:#81c784}.dark-mode .challenges-filter-btn.tag-relations:focus-visible,.dark-mode .challenges-filter-btn.tag-relations:hover{background:#1e40af;border-color:#42a5f5;color:#e6f0ff}.dark-mode .challenges-filter-btn.tag-productivite:focus-visible,.dark-mode .challenges-filter-btn.tag-productivite:hover{background:#d97706;border-color:#ffa726;color:#fff7e0}.dark-mode .challenges-filter-btn.tag-sante.active{background:#f48fb1;border-color:#f48fb1;color:#3a0a1f}.dark-mode .challenges-filter-btn.tag-ecologie.active{background:#81c784;border-color:#81c784;color:#0d2b12}.dark-mode .challenges-filter-btn.tag-relations.active{background:#64b5f6;border-color:#64b5f6;color:#0b1b4d}.dark-mode .challenges-filter-btn.tag-productivite.active{background:#ffb74d;border-color:#ffb74d;color:#4a2a00}.bonus-list.challenges-cards-grid,.daily-list.challenges-cards-grid,.popular-list.challenges-cards-grid,.weekly-list.challenges-cards-grid{grid-gap:24px;align-items:stretch;display:grid;gap:24px;min-width:0;padding:0 8px;width:100%}.bonus-list.challenges-cards-grid .challenge-card,.daily-list.challenges-cards-grid .challenge-card,.daily-list.challenges-cards-grid .daily-card,.popular-list.challenges-cards-grid .challenge-card,.popular-list.challenges-cards-grid .popular-challenge-card,.weekly-list.challenges-cards-grid .challenge-card,.weekly-list.challenges-cards-grid .daily-card{align-self:stretch;height:315px;height:var(--challenge-card-height,315px);min-height:315px;min-height:var(--challenge-card-height,315px);min-width:0;overflow:hidden}.bonus-list.challenges-cards-grid>.empty,.daily-list.challenges-cards-grid>.empty,.popular-list.challenges-cards-grid>.empty,.weekly-list.challenges-cards-grid>.empty{grid-column:1/-1}.challenges-cards-grid-1{grid-template-columns:1fr}.challenges-cards-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.challenges-cards-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.challenges-cards-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:900px){.challenges-page .challenge-card.challenge-card-unified{--card-row-status:36px;--card-row-title:46px;--card-row-desc:46px;--card-row-tag:36px;--card-row-fois:36px;--card-padding-y:10px}.bonus-list.challenges-cards-grid,.daily-list.challenges-cards-grid,.popular-list.challenges-cards-grid,.weekly-list.challenges-cards-grid{gap:18px;padding:0 4px}.bonus-list.challenges-cards-grid .challenge-card,.daily-list.challenges-cards-grid .challenge-card,.daily-list.challenges-cards-grid .daily-card,.popular-list.challenges-cards-grid .challenge-card,.popular-list.challenges-cards-grid .popular-challenge-card,.weekly-list.challenges-cards-grid .challenge-card,.weekly-list.challenges-cards-grid .daily-card{height:315px;height:var(--challenge-card-height,315px);min-height:315px;min-height:var(--challenge-card-height,315px)}.challenges-cards-grid-3,.challenges-cards-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.challenges-page .challenge-card.challenge-card-unified{--card-row-status:34px;--card-row-title:42px;--card-row-desc:42px;--card-row-tag:34px;--card-row-fois:34px;--card-padding-y:8px}.bonus-list.challenges-cards-grid,.daily-list.challenges-cards-grid,.popular-list.challenges-cards-grid,.weekly-list.challenges-cards-grid{gap:14px;padding:0}.bonus-list.challenges-cards-grid .challenge-card,.daily-list.challenges-cards-grid .challenge-card,.daily-list.challenges-cards-grid .daily-card,.popular-list.challenges-cards-grid .challenge-card,.popular-list.challenges-cards-grid .popular-challenge-card,.weekly-list.challenges-cards-grid .challenge-card,.weekly-list.challenges-cards-grid .daily-card{height:315px;height:var(--challenge-card-height,315px);min-height:315px;min-height:var(--challenge-card-height,315px)}.challenge-card-unified .challenge-row-category-color{height:6px;min-height:6px}.challenge-card-unified .challenge-row-category-color .challenge-category-dot{border-radius:0;min-height:6px}.challenges-cards-grid-2,.challenges-cards-grid-3,.challenges-cards-grid-4{grid-template-columns:1fr}}.challenges-rows-scroll{background:var(--bg-card);border:1px solid var(--border-color);border-radius:0;box-sizing:border-box;margin-bottom:0;max-width:100%;overflow-x:auto;overflow-y:hidden;width:100%}.challenges-table{border-collapse:collapse;min-width:720px;table-layout:fixed;width:100%}.challenges-table td,.challenges-table th{border-bottom:1px solid var(--border-color);padding:8px 10px;text-align:left;vertical-align:middle}.challenges-table td+td,.challenges-table th+th{border-left:1px solid var(--border-color)}.challenges-table thead th{background:var(--bg-card);color:var(--accent-green);font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.dark-mode .challenges-table thead th{color:var(--accent-green-light)}.challenges-th-btn{align-items:center;background:#0000;border:none;color:inherit;cursor:pointer;display:flex;font:inherit;gap:6px;padding:0;position:relative;text-align:left;width:100%}.challenges-th-btn.is-active:after{content:"^";font-size:.7rem;opacity:.9;position:absolute;right:0;top:50%;transform:translateY(-50%)}.challenges-table[data-sort-order=desc] .challenges-th-btn.is-active:after{content:"v"}.challenges-th-text{align-items:center;display:inline-flex}.challenges-td-color,.challenges-th-color{text-align:center}.challenges-table .challenge-category-dot{border-radius:3px;display:inline-block;height:16px;vertical-align:middle;width:16px}.challenges-table .challenges-td-color,.challenges-table .challenges-th-color{line-height:1;padding:0;text-align:center;vertical-align:middle}.challenges-col-color{width:28px}.challenges-th-icon{color:var(--accent-green);display:inline-block;font-size:.9rem;vertical-align:middle}.dark-mode .challenges-th-icon{color:var(--accent-green-light)}.challenges-col-status{width:120px}.challenges-col-title{width:220px}.challenges-col-desc{width:420px}.challenges-col-points{width:90px}.challenges-col-level{width:100px}.challenges-col-category{width:140px}.challenges-col-fois{width:120px}.challenge-status-cell{align-items:center;display:flex;gap:8px}.challenges-table .challenge-status-circle{display:none}.challenges-table .challenge-desc,.challenges-table .challenge-title{display:block;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.challenges-table tbody tr{cursor:pointer}.challenges-table tbody tr:hover{background:var(--bg-hover)}.challenges-table tbody tr.completed{background:#eaf9ed}.dark-mode .challenges-table tbody tr.completed{background:#1b5e20}.challenges-table tbody tr.completed .challenge-title{color:var(--text-tertiary);text-decoration:line-through}.challenges-popular-done-row td{background:var(--bg-hover);color:var(--accent-green);font-weight:700}.dark-mode .challenges-popular-done-row td{color:var(--accent-green-light)}.challenges-rows-scroll .challenge-card,.challenges-rows-scroll .challenge-card-row,.challenges-rows-scroll .daily-card{border-radius:0}.challenges-rows-scroll .challenges-rows-header,.challenges-rows-scroll .challenges-view-rows .challenge-card-row,.challenges-rows-scroll .challenges-view-rows .daily-card.challenge-card-row{box-sizing:border-box;padding-left:0;padding-right:0}.challenges-rows-header{grid-gap:0;align-items:stretch;border-bottom:1px solid var(--border-color);box-sizing:border-box;color:var(--accent-green);display:grid;font-size:.75rem;font-weight:600;gap:0;grid-template-columns:28px 120px 1fr 2fr 90px 100px 140px;grid-template-rows:1fr;letter-spacing:.02em;margin:0;min-height:40px;padding:0;text-transform:uppercase;width:100%}.challenges-rows-header .challenges-rows-th-category-color{align-items:center;background:#0000;border:none;cursor:default;display:flex;gap:0;justify-content:center;min-width:0;padding:0;position:relative}.challenges-rows-header .challenges-rows-th-category-color:hover{outline:none}.challenges-rows-header .challenges-rows-th-icon{color:var(--accent-green);flex-shrink:0;font-size:.9rem}.dark-mode .challenges-rows-header .challenges-rows-th-icon{color:var(--accent-green-light)}.challenges-rows-header .challenges-rows-th-separator{background:var(--border-color);bottom:4px;flex-shrink:0;position:absolute;right:0;top:4px;width:1px}.dark-mode .challenges-rows-header{color:var(--accent-green-light)}.challenges-rows-header button.challenges-rows-th{align-items:center;background:#0000;border:none;border-radius:0;color:inherit;cursor:pointer;display:flex;font:inherit;gap:4px;min-width:0;padding:10px 8px;text-align:left;transition:outline .15s ease;width:100%}.challenges-rows-header button.challenges-rows-th-sortable{position:relative}.challenges-rows-header button.challenges-rows-th:hover{outline:1px solid var(--border-color);outline-offset:-1px}.challenges-rows-header button.challenges-rows-th:focus-visible{outline:2px solid #43a047;outline:2px solid var(--accent-green,#43a047);outline-offset:-2px}.challenges-rows-header button.challenges-rows-th-active{background:var(--bg-hover);border-radius:0;outline:2px solid var(--border-color);outline-offset:-2px}.challenges-rows-header button.challenges-rows-th-active:after{content:"^";font-size:.7rem;opacity:.9;position:absolute;right:8px;top:50%;transform:translateY(-50%)}.challenges-rows-header[data-sort-order=desc] button.challenges-rows-th-active:after{content:"v"}.challenges-rows-header .challenges-rows-th-category-color{grid-column:1;grid-row:1}.challenges-rows-header button.challenges-rows-th:nth-child(2){border-left:1px solid var(--border-color);grid-column:2;grid-row:1;padding-left:8px;padding-right:8px;white-space:nowrap}.challenges-rows-header button.challenges-rows-th:nth-child(3){grid-column:3}.challenges-rows-header button.challenges-rows-th:nth-child(3),.challenges-rows-header button.challenges-rows-th:nth-child(4){border-left:1px solid var(--border-color);grid-row:1;min-width:0;overflow:hidden;padding-left:10px;padding-right:8px;text-overflow:ellipsis;white-space:nowrap}.challenges-rows-header button.challenges-rows-th:nth-child(4){grid-column:4}.challenges-rows-header button.challenges-rows-th:nth-child(5){border-left:1px solid var(--border-color);grid-column:5;grid-row:1;min-width:90px;overflow:visible;padding-left:10px;padding-right:8px;white-space:nowrap}.challenges-rows-header button.challenges-rows-th:nth-child(6){border-left:1px solid var(--border-color);grid-column:6;grid-row:1;min-width:100px;overflow:visible;padding-left:10px;padding-right:8px;white-space:nowrap}.challenges-rows-header button.challenges-rows-th:nth-child(7){border-left:1px solid var(--border-color);grid-column:7;grid-row:1;min-width:140px;overflow:visible;padding-left:10px;padding-right:8px;white-space:nowrap}.challenges-rows-th{min-width:0}.challenges-rows-header button.challenges-rows-th-sortable{padding-right:20px}.challenges-rows-th-status{text-align:left}.challenges-rows-scroll .challenge-card-row,.challenges-rows-scroll .challenges-rows-header,.challenges-rows-scroll .daily-card.challenge-card-row{max-width:100%;min-width:0}.bonus-list.challenges-view-rows,.daily-list.challenges-view-rows,.weekly-list.challenges-view-rows{align-items:stretch;display:flex;flex-direction:column;gap:0}.challenges-view-rows .challenge-card-row,.challenges-view-rows .challenge-card.challenge-card-row,.challenges-view-rows .daily-card.challenge-card-row{grid-gap:0!important;align-items:stretch;box-sizing:border-box;display:grid!important;gap:0!important;grid-template-columns:28px 120px 1fr 2fr 90px 100px 140px;grid-template-rows:1fr;max-height:44px;max-width:100%;min-height:44px;min-width:0;padding:0;width:100%}.challenge-row-category-color{align-items:center;border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);display:flex;grid-column:1;grid-row:1;justify-content:center;min-width:0;padding:0 6px}.challenge-category-dot{background:var(--border-color);border-radius:3px;flex-shrink:0;height:12px;width:12px}.challenge-category-dot.tag-sante{background:#d81b60}.dark-mode .challenge-category-dot.tag-sante{background:#f48fb1}.challenge-category-dot.tag-ecologie{background:#2e7d32}.dark-mode .challenge-category-dot.tag-ecologie{background:#81c784}.challenge-category-dot.tag-relations{background:#1e40af}.dark-mode .challenge-category-dot.tag-relations{background:#64b5f6}.challenge-category-dot.tag-productivite{background:#d97706}.dark-mode .challenge-category-dot.tag-productivite{background:#ffb74d}.challenges-rows-header-popular{grid-template-columns:28px 120px 1fr 2fr 90px 100px 140px 120px}.challenges-rows-header-popular .challenges-rows-th-fois,.challenges-rows-header-popular button.challenges-rows-th:nth-child(8){border-left:1px solid var(--border-color);grid-column:8;grid-row:1;min-width:120px;padding:10px 8px 10px 10px;white-space:nowrap}.challenges-rows-header .challenges-rows-th-fois{align-items:center;color:inherit;cursor:default;display:flex;font:inherit;justify-content:flex-start;text-align:left}.challenges-view-rows-popular .challenge-card-row.popular-row{grid-template-columns:28px 120px 1fr 2fr 90px 100px 140px 120px}.challenge-card-row.popular-row .challenge-row-fois{align-items:center;background:#0000;border-bottom:1px solid var(--border-color);box-shadow:inset 1px 0 0 0 var(--border-color);color:var(--text-secondary);display:flex;font-size:.78rem;font-weight:500;grid-column:8;grid-row:1;justify-content:flex-start;margin:0;min-height:0;padding:8px 8px 8px 10px;text-align:left}.challenges-view-rows .challenge-card-row.popular-row:last-child .challenge-row-fois{border-bottom:none}.challenges-popular-realisé-header{background:var(--bg-hover);border-bottom:1px solid var(--border-color);border-top:1px solid var(--border-color);box-sizing:border-box;color:var(--accent-green);font-size:.9rem;font-weight:700;margin:0;padding:10px 12px;width:100%}.dark-mode .challenges-popular-realisé-header{color:var(--accent-green-light)}.challenge-card-row .challenge-action,.challenge-card-row .challenge-card-tags .challenge-tag,.challenge-card-row .challenge-desc,.challenge-card-row .challenge-row-category,.challenge-card-row .challenge-row-level,.challenge-card-row .challenge-row-points,.challenge-card-row .challenge-title,.challenge-card-row .daily-desc,.challenge-card-row .daily-title{align-items:center;align-self:stretch;border-bottom:1px solid var(--border-color);display:flex;min-height:0;overflow:hidden}.challenge-card-row .challenge-desc:empty,.challenge-card-row .daily-desc:empty{min-width:0}.challenges-view-rows .challenge-card-row:last-child .challenge-action,.challenges-view-rows .challenge-card-row:last-child .challenge-card-tags .challenge-tag,.challenges-view-rows .challenge-card-row:last-child .challenge-desc,.challenges-view-rows .challenge-card-row:last-child .challenge-row-category,.challenges-view-rows .challenge-card-row:last-child .challenge-row-category-color,.challenges-view-rows .challenge-card-row:last-child .challenge-row-level,.challenges-view-rows .challenge-card-row:last-child .challenge-row-points,.challenges-view-rows .challenge-card-row:last-child .challenge-title,.challenges-view-rows .daily-card.challenge-card-row:last-child .challenge-action,.challenges-view-rows .daily-card.challenge-card-row:last-child .challenge-card-tags .challenge-tag,.challenges-view-rows .daily-card.challenge-card-row:last-child .challenge-desc,.challenges-view-rows .daily-card.challenge-card-row:last-child .challenge-row-category,.challenges-view-rows .daily-card.challenge-card-row:last-child .challenge-row-category-color,.challenges-view-rows .daily-card.challenge-card-row:last-child .challenge-row-level,.challenges-view-rows .daily-card.challenge-card-row:last-child .challenge-row-points,.challenges-view-rows .daily-card.challenge-card-row:last-child .challenge-title{border-bottom:none}.challenges-view-rows .challenge-card-row:last-child,.challenges-view-rows .daily-card.challenge-card-row:last-child{border-radius:0}.challenge-card-row .challenge-card-tags{display:contents}.challenge-card-row .challenge-action{align-items:center;align-self:stretch;display:flex;gap:6px;grid-column:2;grid-row:1;margin:0;min-width:0;padding:8px}.challenge-card-row .challenge-action .icon-btn{font-size:.9rem;padding:4px}.challenge-card-row .challenge-action .icon-btn svg{height:.9rem;width:.9rem}.challenge-card-row .challenge-title,.challenge-card-row .daily-title{align-items:center;align-self:stretch;border-left:1px solid var(--border-color);color:var(--text-primary);display:flex;font-size:.82rem;font-weight:600;gap:4px;grid-column:3;grid-row:1;justify-content:flex-start;min-width:0;overflow:hidden;padding:8px 8px 8px 10px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.challenge-card-row .challenge-title .bonus-badge{flex-shrink:0;font-size:.7rem;margin-right:0;padding:2px 6px}.challenge-card-row .challenge-title .bonus-title-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.challenge-card-row .challenge-desc,.challenge-card-row .daily-desc{align-items:center;align-self:stretch;border-left:1px solid var(--border-color);color:var(--text-secondary);display:flex;font-size:.78rem;grid-column:4;grid-row:1;line-height:1.2;min-height:0;min-width:0;overflow:hidden;padding:8px 8px 8px 10px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.challenge-card-row .challenge-row-category,.challenge-card-row .challenge-row-level,.challenge-card-row .challenge-row-points{align-items:center;align-self:stretch;background:#0000!important;border:none!important;border-radius:0;box-shadow:inset 1px 0 0 0 var(--border-color);display:flex;font-size:.78rem;font-weight:500;grid-row:1;justify-content:flex-start;line-height:1.2;min-width:0;overflow:hidden;padding:8px 8px 8px 10px;text-overflow:ellipsis;white-space:nowrap}.challenge-card-row .challenge-row-points{grid-column:5}.challenge-card-row .challenge-row-level{grid-column:6}.challenge-card-row .challenge-row-category{grid-column:7}.challenge-card-row .challenge-row-points{color:var(--text-secondary)}.challenge-card-row .challenge-row-level{font-weight:600;justify-content:center}.challenge-card-row .challenge-row-level.difficulty-easy{background:#c8e6c9!important;border:1px solid #2e7d32!important;color:#2e7d32!important}.challenge-card-row .challenge-row-level.difficulty-medium{background:#ffe0b2!important;border:1px solid #e65100!important;color:#e65100!important}.challenge-card-row .challenge-row-level.difficulty-hard{background:#ffcdd2!important;border:1px solid #c62828!important;color:#c62828!important}.dark-mode .challenge-card-row .challenge-row-level.difficulty-easy{background:#1b5e20!important;border-color:#81c784!important;color:#81c784!important}.dark-mode .challenge-card-row .challenge-row-level.difficulty-medium{background:#e65100!important;border-color:#ffe0b2!important;color:#ffe0b2!important}.dark-mode .challenge-card-row .challenge-row-level.difficulty-hard{background:#c62828!important;border-color:#ffcdd2!important;color:#ffcdd2!important}.challenge-card-row .challenge-card-tags .challenge-tag{align-items:center;align-self:stretch;display:inline-flex;flex-shrink:0;grid-row:1;justify-content:center;line-height:1;min-height:0;white-space:nowrap}.challenge-card-row .challenge-card-tags .challenge-tag:nth-child(3){box-shadow:inset 1px 0 0 0 var(--border-color);grid-column:5;margin:0;padding:8px 8px 8px 10px}.challenge-card-row .challenge-card-tags .challenge-tag:nth-child(2){box-shadow:inset 1px 0 0 0 var(--border-color);grid-column:6;margin:0;padding:8px 8px 8px 10px}.challenge-card-row .challenge-card-tags .challenge-tag:first-child{box-shadow:inset 1px 0 0 0 var(--border-color);grid-column:7;margin:0;padding:8px 8px 8px 10px}.challenge-card-row .challenge-title,.challenge-card-row .daily-title{-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:unset;flex-wrap:nowrap}.challenge-status-circle{display:none}.challenge-card-row .challenge-status-circle{font-size:.95rem}.status-circle-todo{color:var(--text-tertiary);font-size:1.1rem}.challenge-card-row .status-circle-todo{font-size:.95rem}.status-circle-done{color:var(--accent-green);font-size:1.1rem}.challenge-card-row .status-circle-done{font-size:.95rem}.dark-mode .status-circle-done{color:var(--accent-green-light)}.challenge-row-status-badge{align-items:center;border-radius:14px;display:inline-flex;flex-shrink:0;font-size:.68rem;font-weight:600;justify-content:center;padding:3px 8px;white-space:nowrap}.challenge-row-status-badge.status-done{background:#0000;color:#2e7d32}.dark-mode .challenge-row-status-badge.status-done{background:#0000;color:#81c784}.challenge-row-status-badge.status-todo{background:#0000;border:none;color:var(--text-secondary)}.challenge-card-row .challenge-row-status-badge{background:#0000!important;border:none!important;border-radius:0!important}.challenge-card-row .challenge-card-tags .challenge-tag{background:#0000!important;border:none!important;border-radius:0;font-size:.78rem;font-weight:500;line-height:1.2;padding:0}.challenge-card-row .challenge-card-tags .challenge-tag.difficulty-easy,.challenge-card-row .challenge-card-tags .difficulty-easy{color:#2e7d32!important}.dark-mode .challenge-card-row .challenge-card-tags .challenge-tag.difficulty-easy,.dark-mode .challenge-card-row .challenge-card-tags .difficulty-easy{color:#81c784!important}.challenge-card-row .challenge-card-tags .challenge-tag.difficulty-medium,.challenge-card-row .challenge-card-tags .difficulty-medium{color:#e65100!important}.dark-mode .challenge-card-row .challenge-card-tags .challenge-tag.difficulty-medium,.dark-mode .challenge-card-row .challenge-card-tags .difficulty-medium{color:#ffe0b2!important}.challenge-card-row .challenge-card-tags .challenge-tag.difficulty-hard,.challenge-card-row .challenge-card-tags .difficulty-hard{color:#c62828!important}.dark-mode .challenge-card-row .challenge-card-tags .challenge-tag.difficulty-hard,.dark-mode .challenge-card-row .challenge-card-tags .difficulty-hard{color:#ffcdd2!important}.challenge-card-row .challenge-card-tags .challenge-tag.challenge-points-blue{color:#666!important}.dark-mode .challenge-card-row .challenge-card-tags .challenge-tag.challenge-points-blue{color:#b0b0b0!important}.challenge-card-row .challenge-card-tags .challenge-tag.tag-sante{color:#d81b60!important}.dark-mode .challenge-card-row .challenge-card-tags .challenge-tag.tag-sante{color:#ffe5eb!important}.challenge-card-row .challenge-card-tags .challenge-tag.tag-ecologie{color:#2e7d32!important}.dark-mode .challenge-card-row .challenge-card-tags .challenge-tag.tag-ecologie{color:#81c784!important}.challenge-card-row .challenge-card-tags .challenge-tag.tag-relations{color:#1e40af!important}.dark-mode .challenge-card-row .challenge-card-tags .challenge-tag.tag-relations{color:#e6f0ff!important}.challenge-card-row .challenge-card-tags .challenge-tag.tag-productivite{color:#d97706!important}.dark-mode .challenge-card-row .challenge-card-tags .challenge-tag.tag-productivite{color:#fff7e0!important}@media (max-width:900px){.challenges-rows-header{font-size:.68rem}.challenge-card-row .challenge-title,.challenge-card-row .daily-title{font-size:.78rem}.challenge-card-row .challenge-desc,.challenge-card-row .daily-desc{font-size:.72rem}}@media (max-width:600px){.challenges-rows-scroll .challenge-card-row,.challenges-rows-scroll .challenges-rows-header,.challenges-rows-scroll .daily-card.challenge-card-row{min-width:720px}}@media (max-width:900px){.challenges-cards-grid-2,.challenges-cards-grid-3,.challenges-cards-grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.challenges-cards-grid-1,.challenges-cards-grid-2,.challenges-cards-grid-3,.challenges-cards-grid-4{grid-template-columns:1fr}.challenges-view-options{margin-bottom:12px}.challenges-view-btn{font-size:.9rem;height:32px;width:32px}}.challenges-content{min-height:200px}.challenges-content,.challenges-tab-panel{box-sizing:border-box;overflow:visible;width:100%}.challenges-tab-panel{max-width:100%;min-width:0}.challenges-top{align-items:center;box-sizing:border-box;display:flex;justify-content:space-between;margin-bottom:4px;max-width:100%;padding:8px 12px;width:100%}.page-title{color:var(--text-primary);font-size:1.3rem;font-weight:700;transition:color .3s ease}.cancels-box{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;flex-shrink:0;min-width:120px;padding:6px 10px;text-align:right;transition:background-color .3s ease,border-color .3s ease}.cancels-inline{color:var(--text-secondary);font-size:.9rem;font-weight:600;transition:color .3s ease}.challenges-filters-row{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px}.challenges-filters-row .category-buttons{margin-bottom:0}.challenges-filters-row .category-badge{flex-shrink:0;margin-bottom:0}.category-buttons{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.cat-btn{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.9rem;padding:6px 10px;transition:background-color .3s ease,border-color .3s ease,color .3s ease}.cat-btn:hover{background:var(--bg-hover)}.cat-btn.active{background:linear-gradient(90deg,#e8f5e9,#c8e6c9);border-color:#a5d6a7;color:var(--accent-green-dark)}.dark-mode .cat-btn.active{background:linear-gradient(90deg,#1b5e20,#2e7d32);border-color:#43a047;color:var(--accent-green-light)}.cat-btn-all.active{border-color:#000!important;border-width:2px!important}.cat-btn-all.active,.dark-mode .cat-btn-all.active{background:var(--bg-card)!important;color:var(--text-primary)!important;font-weight:600!important}.dark-mode .cat-btn-all.active{border-color:#fff!important;border-width:2px!important}.cat-btn[data-category=santebienetre].active{background:#ffe5eb!important;border-color:#d81b60!important;border-width:2px!important;color:#d81b60!important;font-weight:600!important}.dark-mode .cat-btn[data-category=santebienetre].active{background:#d81b60!important;border-color:#f48fb1!important;border-width:2px!important;color:#ffe5eb!important;font-weight:600!important}.cat-btn[data-category=ecology].active{background:#e2f3e8!important;border-color:#2e7d32!important;border-width:2px!important;color:#2e7d32!important;font-weight:600!important}.dark-mode .cat-btn[data-category=ecology].active{background:#1b5e20!important;border-color:#66bb6a!important;border-width:2px!important;color:#81c784!important;font-weight:600!important}.cat-btn[data-category=relations].active{background:#e6f0ff!important;border-color:#1e40af!important;border-width:2px!important;color:#1e40af!important;font-weight:600!important}.dark-mode .cat-btn[data-category=relations].active{background:#1e40af!important;border-color:#64b5f6!important;border-width:2px!important;color:#e6f0ff!important;font-weight:600!important}.cat-btn[data-category=productivity].active{background:#fff7e0!important;border-color:#d97706!important;border-width:2px!important;color:#d97706!important;font-weight:600!important}.dark-mode .cat-btn[data-category=productivity].active{background:#d97706!important;border-color:#ffb74d!important;border-width:2px!important;color:#fff7e0!important;font-weight:600!important}.weekly-list{gap:6px}.daily-list,.weekly-list{display:flex;flex-direction:column}.daily-list{gap:8px}.challenge-card{border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:6px;justify-content:flex-start;padding:10px 12px;transition:background-color .3s ease,box-shadow .3s ease}.challenge-card.challenge-card-unified{--card-row-gap:5px;--card-row-status:40px;--card-row-title:50px;--card-row-desc:50px;--card-row-tag:40px;--card-row-fois:40px;--card-padding-y:12px;--card-bar-height:6px;--challenge-card-height:calc(var(--card-bar-height) + var(--card-padding-y)*2 + var(--card-row-status) + var(--card-row-title) + var(--card-row-desc) + var(--card-row-tag)*3 + var(--card-row-gap)*5 + var(--card-row-fois));height:var(--challenge-card-height);min-height:var(--challenge-card-height);overflow:hidden;padding:0}.challenge-card.challenge-card-unified .challenge-card-inner{align-items:center;display:flex;flex:1 1;flex-direction:column;min-height:100%;min-width:0;text-align:center}.challenge-card.challenge-card-unified .challenge-row-category-color{align-items:center;align-self:stretch;border:none;border-radius:0;display:flex;flex-shrink:0;grid-column:unset;grid-row:unset;height:6px;justify-content:center;min-height:6px;padding:0;width:100%}.challenge-card.challenge-card-unified .challenge-row-category-color .challenge-category-dot{border-radius:0;height:100%;min-height:6px;width:100%}.challenge-card.challenge-card-unified .challenge-card-content{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:var(--card-row-gap);justify-content:flex-start;min-width:0;padding:var(--card-padding-y) 16px;text-align:center;width:100%}.challenge-card.challenge-card-unified .challenge-action{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;min-height:var(--card-row-status);width:100%}.challenge-card.challenge-card-unified .challenge-status-circle{display:none}.challenge-card.challenge-card-unified .challenge-title,.challenge-card.challenge-card-unified .daily-title{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;justify-content:center;line-height:1.2;max-height:var(--card-row-title);min-height:var(--card-row-title);overflow:hidden;text-align:center}.challenge-card.challenge-card-unified .challenge-desc,.challenge-card.challenge-card-unified .daily-desc{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;line-height:1.3;max-height:var(--card-row-desc);min-height:var(--card-row-desc);overflow:hidden;text-align:center}.challenge-card.challenge-card-unified .challenge-card-tags{align-items:center;display:flex;flex-direction:column;gap:var(--card-row-gap);justify-content:center;margin-bottom:0;min-height:calc(var(--card-row-tag)*3 + var(--card-row-gap)*2)}.challenge-card.challenge-card-unified .challenge-card-tags .challenge-tag{align-items:center;display:inline-flex;padding:2px 6px}.challenge-card.challenge-card-unified .challenge-row-fois{align-items:center;color:var(--text-secondary);display:flex;font-size:.75rem;font-weight:500;margin-top:0;min-height:var(--card-row-fois)}.daily-card{background:var(--bg-card);border-radius:12px;box-shadow:0 1px 4px var(--shadow-sm);box-sizing:border-box;display:flex;flex-direction:column;gap:6px;justify-content:flex-start;padding:10px 12px;position:relative;transition:background-color .3s ease,box-shadow .3s ease;width:100%}.challenge-card-tags{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.challenge-card .challenge-card-tags+.challenge-title,.daily-card .challenge-card-tags+.challenge-title{margin-bottom:0;margin-top:0}.challenge-card .challenge-title,.daily-card .challenge-title{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.challenge-card .challenge-desc,.daily-card .challenge-desc{flex:1 1;margin-bottom:0;min-height:0}.challenge-header,.challenge-title-row{align-items:center;display:flex;margin-bottom:2px;margin-top:2px}.challenge-title-row{flex-wrap:wrap;gap:8px;justify-content:space-between;width:100%}.challenge-title-row .challenge-title{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.challenge-title,.daily-title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--text-primary);display:-webkit-box;flex:0 0 auto;font-size:1rem;font-weight:700;line-height:1.35;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;transition:color .3s ease;word-break:break-word}.challenges-cards-grid-1 .challenge-title,.challenges-cards-grid-1 .daily-title{-webkit-line-clamp:6;line-clamp:6}.challenges-cards-grid-1 .challenge-desc,.challenges-cards-grid-1 .daily-desc{-webkit-line-clamp:8;line-clamp:8;max-height:none}.challenges-cards-grid-2 .challenge-title,.challenges-cards-grid-2 .daily-title{-webkit-line-clamp:3;line-clamp:3}.challenges-cards-grid-2 .challenge-desc,.challenges-cards-grid-2 .daily-desc{-webkit-line-clamp:4;line-clamp:4;max-height:none}.challenges-cards-grid-3 .challenge-title,.challenges-cards-grid-3 .daily-title{-webkit-line-clamp:2;line-clamp:2}.challenges-cards-grid-3 .challenge-desc,.challenges-cards-grid-3 .daily-desc{-webkit-line-clamp:3;line-clamp:3;max-height:none}.challenges-cards-grid-4 .challenge-title,.challenges-cards-grid-4 .daily-title{-webkit-line-clamp:2;line-clamp:2}.challenges-cards-grid-4 .challenge-desc,.challenges-cards-grid-4 .daily-desc{-webkit-line-clamp:3;line-clamp:3;max-height:none}.challenge-title-row>.challenge-title{margin:0}.challenge-title-row>.challenge-title .bonus-badge{flex-shrink:0;margin-right:0}.challenge-title-row>.challenge-title>span:not(.bonus-badge){-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;line-height:1.35;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.challenges-cards-grid-1 .challenge-title .bonus-title-text{-webkit-line-clamp:6;line-clamp:6}.challenges-cards-grid-2 .challenge-title .bonus-title-text{-webkit-line-clamp:3;line-clamp:3}.challenges-cards-grid-3 .challenge-title .bonus-title-text{-webkit-line-clamp:2;line-clamp:2}.challenge-desc-row{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:2px;margin-top:2px;width:100%}.challenge-desc,.daily-desc{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;align-self:stretch;color:var(--text-tertiary);display:-webkit-box;flex:0 1 auto;font-size:.85rem;line-height:1.5;margin:0;min-height:0;min-width:0;overflow:hidden;padding:0;text-overflow:ellipsis;transition:color .3s ease;word-break:break-word}.challenge-tags{align-items:center;display:flex;flex-shrink:0;gap:6px}.challenge-tag{background:#f1f8f3;border-radius:6px;color:#2e7d32;font-size:.75rem;padding:3px 6px;white-space:nowrap}.dark-mode .challenge-tag{background:#1b5e20;color:#81c784}.tag-sante{background:#ffe5eb;border:1px solid #f48fb1;color:#d81b60}.dark-mode .tag-sante{background:#d81b60;border-color:#f06292;color:#ffe5eb}.tag-ecologie{background:#e2f3e8;border:1px solid #81c784;color:#2e7d32}.dark-mode .tag-ecologie{background:#1b5e20;border-color:#66bb6a;color:#81c784}.tag-relations{background:#e6f0ff;border:1px solid #64b5f6;color:#1e40af}.dark-mode .tag-relations{background:#1e40af;border-color:#42a5f5;color:#e6f0ff}.tag-productivite{background:#fff7e0;border:1px solid #ffb74d;color:#d97706}.dark-mode .tag-productivite{background:#d97706;border-color:#ffa726;color:#fff7e0}.challenge-tag.difficulty-easy,.difficulty-easy{background:#c8e6c9!important;border:1px solid #2e7d32!important;color:#2e7d32!important;font-weight:600}.dark-mode .challenge-tag.difficulty-easy,.dark-mode .difficulty-easy{background:#1b5e20!important;border-color:#81c784!important;color:#81c784!important}.challenge-tag.difficulty-medium,.difficulty-medium{background:#ffe0b2!important;border:1px solid #e65100!important;color:#e65100!important;font-weight:600}.dark-mode .challenge-tag.difficulty-medium,.dark-mode .difficulty-medium{background:#e65100!important;border-color:#ffe0b2!important;color:#ffe0b2!important}.challenge-tag.difficulty-hard,.difficulty-hard{background:#ffcdd2!important;border:1px solid #c62828!important;color:#c62828!important;font-weight:600}.dark-mode .challenge-tag.difficulty-hard,.dark-mode .difficulty-hard{background:#c62828!important;border-color:#ffcdd2!important;color:#ffcdd2!important}.challenge-points{background:#fff7e6;border-radius:0;color:#ff9800;font-size:.75rem;padding:3px 6px}.dark-mode .challenge-points{background:#ff9800;color:#fff7e6}.challenge-points-blue{background:#8080801a;border:1px solid #8080804d;border-radius:6px;color:#666;font-size:.75rem;font-weight:600;padding:3px 6px}.dark-mode .challenge-points-blue{background:#c8c8c81a;border-color:#c8c8c84d;color:#b0b0b0}.challenge-card.completed{background:#eaf9ed;border:2px solid #43a047;min-height:auto}.dark-mode .challenge-card.completed{background:#1b5e20;border-color:#66bb6a}.challenge-card.completed .challenge-title{color:var(--text-tertiary);text-decoration:line-through}.challenge-desc-row .challenge-tag{align-items:center;display:inline-flex;flex-shrink:0;line-height:1.5}.challenge-card .challenge-action,.daily-card .challenge-action{align-items:center;align-self:flex-end;display:flex;flex-shrink:0;gap:8px;margin-bottom:0;margin-top:auto;min-height:32px;padding-top:6px}.icon-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;font-size:1rem;justify-content:center;padding:6px;transition:color .3s ease,background-color .3s ease}.icon-btn svg{height:1rem;width:1rem}.icon-btn:hover{background:var(--bg-hover)}.icon-btn.done{background:#42a55a14;border-color:#42a55a2e;color:var(--accent-green)}.dark-mode .icon-btn.done{background:#42a55a33;border-color:#42a55a66}.daily-card{border:1px solid #0000;cursor:pointer;transition:background .22s ease,border-color .22s ease,box-shadow .22s ease}.daily-card:hover{box-shadow:0 6px 16px var(--shadow-md)}.daily-card.completed{min-height:auto}.dark-mode .daily-card.completed{background:#1b5e20;border-color:#66bb6a}.daily-card.completed .daily-title{color:var(--text-tertiary);text-decoration:line-through}.empty{color:var(--text-quaternary);font-size:.9rem;padding:8px;transition:color .3s ease}.bonus-card{background:linear-gradient(135deg,#fffbea 0,var(--bg-card) 100%)!important;border:2px solid gold!important}.dark-mode .bonus-card{background:linear-gradient(135deg,#665000 0,var(--bg-card) 100%)!important;border-color:gold!important}.bonus-badge{align-items:center;background:linear-gradient(135deg,gold,#ffed4e);border-radius:6px;color:#000;display:inline-flex;font-size:.7rem;font-weight:700;gap:3px;padding:2px 6px;text-transform:uppercase;white-space:nowrap}.bonus-badge svg{flex-shrink:0;height:.85rem;width:.85rem}.dark-mode .bonus-badge{color:#000}@media (max-width:900px){.challenges-tabs{-webkit-overflow-scrolling:touch;margin-bottom:20px;overflow-x:auto;padding-bottom:6px}.challenges-tab{font-size:13px;padding:8px 16px;white-space:nowrap}.challenges-tab-icon{font-size:14px}.popular-challenges-list{gap:12px;grid-template-columns:1fr}.popular-challenge-card{min-width:0}.section-separator-horizontal{display:block;margin:20px 0}.section-header{gap:6px}.section-header .challenges-section-title,.section-header h3.challenges-section-title{font-size:1rem}.section-sub{font-size:.85rem}.category-badge,.daily-badge{font-size:.8rem;padding:3px 6px}.section-header-daily{flex-wrap:wrap}.challenges-header{align-items:center;flex-direction:row;gap:12px;justify-content:space-between;margin-bottom:20px}.challenges-header .page-title-container{flex:1 1;min-width:0}.challenges-header .page-title-text{font-size:1.15rem}.cancels-box{flex-shrink:0;margin-right:0;width:auto}.category-buttons{overflow-x:auto;padding-bottom:4px;width:100%}.category-buttons::-webkit-scrollbar{height:4px}.category-buttons::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.challenges-view-and-filters{align-items:stretch;flex-direction:column;gap:8px;margin-bottom:14px}.challenges-view-and-filters .challenges-view-options{justify-content:flex-end;margin-left:0}.challenges-filters-row-top{gap:8px}.challenges-filter-btn{font-size:.85rem;height:32px;min-height:32px;padding:6px 12px}.challenges-view-options-label{font-size:.85rem}.challenges-view-btn{font-size:.85rem;height:32px;min-width:32px;padding:0 10px}.challenges-view-options-badge{font-size:.8rem;padding:5px 8px}.challenges-combined-section{margin-bottom:24px}}@media (max-width:768px){.challenges-filter-buttons-wrap{display:none}.challenges-filter-select-wrap{display:flex;flex:1 1;min-width:0}.challenges-category-select{-webkit-appearance:none;appearance:none;background:var(--bg-card);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23666' d='M6 8 1 3h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:block;font-size:.9rem;font-weight:500;max-width:280px;padding:8px 36px 8px 12px;transition:background-color .2s ease,border-color .2s ease;width:100%}.challenges-category-select:focus,.challenges-category-select:hover{border-color:var(--accent-green);outline:none}.dark-mode .challenges-category-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23ccc' d='M6 8 1 3h10z'/%3E%3C/svg%3E")}}@media (max-width:600px){.challenges-category-select{max-width:100%}.challenges-tabs{gap:4px;margin-bottom:16px;padding-bottom:6px}.challenges-tab{font-size:12px;padding:6px 12px}.challenges-tab-icon{font-size:13px}.challenges-header{align-items:center;flex-direction:row;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:16px;padding:0}.challenges-header .page-title-container{flex:1 1;min-width:0}.challenges-header .page-title-text{font-size:1.1rem;white-space:normal;word-break:break-word}.challenges-header .page-title-back-button{flex-shrink:0;height:36px;width:36px}.challenges-header .page-title-back-icon{font-size:.9rem}.cancels-box{flex-shrink:0;min-width:0;order:3;text-align:left;width:100%}.cancels-inline{font-size:.8rem;white-space:normal;word-break:break-word}.category-buttons{gap:4px;margin-bottom:8px}.cat-btn{font-size:.8rem;padding:5px 8px;white-space:nowrap}.section-header .challenges-section-title,.section-header h3.challenges-section-title{font-size:.95rem}.section-sub{font-size:.8rem}.category-badge,.daily-badge{font-size:.75rem;padding:2px 6px}.challenges-view-and-filters{gap:6px;margin-bottom:12px}.challenges-filter-btn{font-size:.8rem;height:30px;min-height:30px;padding:5px 10px}.challenges-view-options-label{font-size:.8rem}.challenges-view-btn{font-size:.8rem;height:30px;min-width:30px;padding:0 8px}.challenges-view-btn span{display:none}.challenges-view-btn .challenges-view-btn-icon{display:inline-flex;margin:0}.challenges-view-options-badge{font-size:.75rem;padding:4px 6px}.challenges-combined-section{margin-bottom:20px}.section-separator-horizontal{margin:16px 0}.challenge-card{min-height:70px;padding:5px}.daily-card{min-height:70px;padding:8px}.challenge-card.completed,.daily-card.completed{min-height:auto}.challenge-title-row{align-items:center;flex-direction:row;gap:6px}.challenge-title-row .challenge-title{flex:1 1;min-width:0}.challenge-title-row .challenge-tags{flex-shrink:0}.challenge-desc-row{align-items:center;flex-direction:row;gap:8px}.challenge-card .challenge-action,.daily-card .challenge-action{align-items:center;display:flex;flex-shrink:0;gap:8px}.daily-list,.weekly-list{gap:6px}.bonus-list.challenges-cards-grid,.daily-list.challenges-cards-grid,.popular-list.challenges-cards-grid,.weekly-list.challenges-cards-grid{gap:12px;padding:0}.challenge-detail-actions .challenge-modal-btn{font-size:.9rem;min-width:100px;padding:8px 16px}}@media (max-width:480px){.challenges-tab{font-size:11px;padding:5px 10px}.section-header .challenges-section-title,.section-header h3.challenges-section-title{font-size:.9rem}.challenges-filter-btn{font-size:.75rem;height:28px;min-height:28px;padding:4px 8px}.challenges-view-btn{height:28px;min-width:28px;padding:0 6px}.challenges-header .page-title-container{margin-left:-8px;padding:0 8px}.challenges-header .page-title-text{font-size:1rem}.challenges-header .page-title-back-button{height:32px;width:32px}}.challenge-detail-modal-body{display:flex;flex-direction:column;gap:12px}.challenge-detail-title{align-items:center;color:var(--text-primary);display:flex;flex-wrap:wrap;font-size:1.1rem;font-weight:600;gap:8px;margin:0 0 4px}.challenge-detail-title .bonus-badge{flex-shrink:0;font-size:.75rem;padding:2px 6px}.challenge-detail-desc{color:var(--text-secondary);font-size:.95rem;line-height:1.4;margin:0;white-space:pre-wrap}.challenge-detail-tags{display:flex;flex-wrap:wrap;gap:8px}.challenge-detail-tags .challenge-tag{border-radius:8px;font-size:.85rem;padding:4px 10px}.challenge-detail-actions{border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:center;margin-top:12px;padding-top:16px}.challenge-detail-actions .challenge-modal-btn{border-radius:10px;cursor:pointer;font-size:.95rem;font-weight:600;min-width:120px;padding:10px 20px;transition:all .2s ease}.challenge-detail-actions .btn-primary.challenge-modal-btn{background:var(--accent-green);border:none;color:#fff}.challenge-detail-actions .btn-primary.challenge-modal-btn:hover{background:#2e7d32;color:#fff}.dark-mode .challenge-detail-actions .btn-primary.challenge-modal-btn{background:var(--accent-green-light);color:#000}.dark-mode .challenge-detail-actions .btn-primary.challenge-modal-btn:hover{background:#81c784;color:#000}.challenge-detail-actions .btn-secondary.challenge-modal-btn{background:#0000;border:2px solid var(--border-color);color:var(--text-secondary)}.challenge-detail-actions .btn-secondary.challenge-modal-btn:hover{background:var(--bg-hover);border-color:var(--text-tertiary);color:var(--text-primary)}.challenge-confirm-message{color:var(--text-primary);font-size:.96rem;margin:0 0 16px}.page-title-container{align-items:center;box-sizing:border-box;display:flex;flex-shrink:0;flex-wrap:nowrap;gap:12px;margin-bottom:24px;margin-left:-32px;margin-right:-32px;padding:0 32px;width:100%}.page-title-back-button,.page-title-container,.page-title-text{line-height:1;vertical-align:middle}.page-title-back-button{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:50%;box-shadow:0 2px 8px var(--shadow-md);color:var(--text-primary);cursor:pointer;display:flex;flex-shrink:0;height:40px;justify-content:center;line-height:1;margin:0;padding:0;transition:all .3s ease;width:40px}.page-title-back-button:hover{background:var(--bg-hover);border-color:var(--accent-green);box-shadow:0 4px 12px var(--shadow-lg);color:var(--accent-green);transform:translateX(-2px)}.page-title-back-button:active{transform:translateX(-4px)}.page-title-back-icon{flex-shrink:0;font-size:1rem;transition:transform .3s ease}.page-title-back-button:hover .page-title-back-icon{transform:translateX(-2px)}.page-title-text{align-items:center;color:var(--text-primary);display:flex;flex:1 1;font-size:1.3rem;font-weight:700;line-height:1.3;margin:0;padding:0;white-space:nowrap}@media (max-width:768px){.page-title-container{gap:10px;margin-bottom:20px}.page-title-back-button{height:36px;width:36px}.page-title-back-icon{font-size:.9rem}.page-title-text{font-size:1.3rem}}@media (max-width:480px){.page-title-text{font-size:1.2rem}}.user-context-menu-wrapper{align-items:center;display:inline-flex;position:relative}.user-context-menu-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;justify-content:center;padding:6px;transition:all .2s ease}.user-context-menu-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.user-context-menu-dropdown{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-lg);margin-top:6px;min-width:240px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1001}.user-context-menu-dropdown--bottom-start{left:0;right:auto}.user-context-menu-dropdown--bottom-end{left:auto;right:0}.user-context-menu-option{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;gap:12px;padding:12px 16px;text-align:left;transition:background .2s ease;width:100%}.user-context-menu-option:hover{background:var(--bg-hover)}.user-context-menu-option-danger{color:#e91e63}.user-context-menu-option-danger:hover{background:#e91e631a}.user-context-menu-icon{align-items:center;display:flex;flex-shrink:0;font-size:16px;justify-content:center;width:20px}.leaderboard-page{align-items:stretch;background:var(--bg-tertiary);flex-direction:column;min-height:100vh;padding:24px 32px}.leaderboard-header,.leaderboard-page{box-sizing:border-box;display:flex;width:100%}.leaderboard-header{align-items:center;gap:16px;justify-content:space-between;margin-bottom:24px}.leaderboard-header .page-title-container{align-items:center;flex:1 1;margin-bottom:0;min-width:0}.leaderboard-title-text{align-items:center;color:var(--text-primary);display:flex;font-size:1.3rem;font-weight:700;gap:12px;margin:0;padding:0;transition:color .3s ease}.leaderboard-title-icon{color:var(--accent-green);flex-shrink:0;font-size:1.2rem}.leaderboard-container{flex:1 1;min-width:0;width:100%}.leaderboard-content{margin:0 auto;max-width:1000px;min-width:0}.leaderboard-tabs-select,.leaderboard-tabs-select-wrap{display:none}.leaderboard-tabs{border-bottom:2px solid var(--border-color);display:flex;gap:8px;margin-bottom:24px;padding-bottom:8px}.leaderboard-tab{background:#0000;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;flex-shrink:0;font-size:.95rem;font-weight:500;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.leaderboard-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.leaderboard-tab.active{background:var(--bg-hover);color:var(--accent-green)}.dark-mode .leaderboard-tab.active{color:var(--accent-green-light)}.leaderboard-empty{color:var(--text-secondary);padding:2rem;text-align:center}.leaderboard-clickable{cursor:pointer}.leaderboard-medal{align-items:center;color:var(--text-tertiary);display:inline-flex;justify-content:center;opacity:.75}.leaderboard-medal-bronze,.leaderboard-medal-gold,.leaderboard-medal-silver{color:inherit}.podium-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr);margin-bottom:48px}.podium-item{align-items:center;background:var(--bg-card);border-radius:16px;box-shadow:0 4px 16px var(--shadow-md);display:flex;flex-direction:column;padding:24px;position:relative;text-align:center;transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease}.podium-item:hover{box-shadow:0 8px 24px var(--shadow-lg);transform:translateY(-4px)}.podium-rank-1{border:3px solid gold}.podium-rank-2{border:3px solid silver}.podium-rank-3{border:3px solid #cd7f32}.podium-medal{align-items:center;display:flex;font-size:3rem;justify-content:center;margin-bottom:12px}.podium-medal svg{height:3rem;width:3rem}.podium-avatar{margin-bottom:16px;position:relative}.podium-avatar-ring{height:80px;width:80px}.podium-avatar-img{transition:box-shadow .3s ease}.podium-level{background:var(--accent-green);border-radius:12px;bottom:-8px;color:#fff;font-size:.75rem;font-weight:600;left:50%;padding:4px 12px;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:3}.podium-info{width:100%}.podium-name{color:var(--text-primary);font-size:1.1rem;font-weight:700;margin-bottom:4px;transition:color .3s ease}.podium-username{color:var(--text-tertiary);font-size:.9rem;margin-bottom:12px;transition:color .3s ease}.podium-stats{border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:6px;padding-top:12px;transition:border-color .3s ease}.stat-item{color:var(--text-secondary);display:inline-flex;font-size:.95rem;font-weight:500;gap:6px;transition:color .3s ease}.stat-item svg{flex-shrink:0;height:1rem;width:1rem}.leaderboard-list{background:var(--bg-card);border-radius:16px;box-shadow:0 2px 12px var(--shadow-md);padding:24px;transition:background-color .3s ease,box-shadow .3s ease}.list-title{color:var(--text-primary);font-size:1.3rem;font-weight:600;margin-bottom:20px;transition:color .3s ease}.leaderboard-row{align-items:center;border-bottom:1px solid var(--border-light);display:flex;gap:16px;padding:16px;transition:background .2s ease,border-color .3s ease}.leaderboard-row:last-child{border-bottom:none}.leaderboard-row:hover{background:var(--bg-hover)}.podium-item .leaderboard-row-menu{position:absolute;right:8px;top:8px}.leaderboard-row .leaderboard-row-menu{flex-shrink:0;margin-left:auto}.row-rank{color:var(--text-quaternary);font-size:1.2rem;font-weight:700;min-width:40px;transition:color .3s ease}.row-avatar-ring{height:50px;width:50px}.row-info{flex:1 1}.row-name{color:var(--text-primary);font-size:1rem;font-weight:600;margin-bottom:2px}.row-name,.row-username{transition:color .3s ease}.row-username{color:var(--text-tertiary);font-size:.85rem}.row-stats{display:flex;gap:24px}.row-stat{align-items:center;display:flex;flex-direction:column;gap:2px}.row-stat-label{color:var(--text-quaternary);font-size:.75rem;font-weight:500;text-transform:uppercase;transition:color .3s ease}.row-stat-value{color:var(--text-primary);font-size:1rem;font-weight:700;transition:color .3s ease}@media (max-width:1280px){.leaderboard-page{padding:20px 28px}}@media (max-width:900px){.leaderboard-page{padding:16px 20px}.leaderboard-header{margin-bottom:20px}.leaderboard-title-text{font-size:1.2rem}.leaderboard-title-icon{font-size:1.1rem}.leaderboard-tabs{margin-bottom:20px}.leaderboard-tab{font-size:.9rem;padding:8px 16px}.podium-container{gap:16px;grid-template-columns:1fr;margin-bottom:32px}.podium-item{padding:20px}.row-stats{gap:16px}}@media (max-width:768px){.leaderboard-tabs{display:none}.leaderboard-tabs-select-wrap{display:block;margin-bottom:20px;width:100%}.leaderboard-tabs-select{-webkit-appearance:none;appearance:none;background:var(--bg-card);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23666' d='M6 8 1 3h10z'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;display:block;font-size:1rem;font-weight:500;padding:12px 40px 12px 16px;transition:border-color .2s ease;width:100%}.leaderboard-tabs-select:focus,.leaderboard-tabs-select:hover{border-color:var(--accent-green);outline:none}.dark-mode .leaderboard-tabs-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23ccc' d='M6 8 1 3h10z'/%3E%3C/svg%3E")}}@media (max-width:600px){.leaderboard-page{padding:12px 16px}.leaderboard-header{margin-bottom:16px}.leaderboard-title-text{font-size:1.15rem}.leaderboard-tabs-select-wrap{margin-bottom:16px}.leaderboard-tabs-select{font-size:.95rem;padding:10px 14px}.leaderboard-empty{font-size:.95rem;padding:1.5rem 1rem}.podium-container{gap:12px;margin-bottom:24px}.podium-item{padding:16px}.podium-avatar-ring{height:60px;width:60px}.podium-medal{font-size:2rem}.podium-medal svg{height:2rem;width:2rem}.podium-name{font-size:1rem}.podium-username{font-size:.85rem}.leaderboard-list{padding:16px}.list-title{font-size:1.1rem;margin-bottom:16px}.leaderboard-row{flex-wrap:wrap;gap:12px;padding:12px}.row-rank{font-size:1rem;min-width:30px}.row-avatar-ring{height:40px;width:40px}.row-info{flex:1 1;min-width:120px}.row-name{font-size:.95rem}.row-username{font-size:.8rem}.row-stats{border-top:1px solid var(--border-light);flex-direction:row;gap:12px;justify-content:space-around;margin-top:8px;padding-top:8px;width:100%}.row-stat{flex:1 1}.row-stat-label{font-size:.7rem}.row-stat-value{font-size:.9rem}}@media (max-width:480px){.leaderboard-page{padding:10px 12px}.leaderboard-header{margin-bottom:14px}.leaderboard-title-text{font-size:1.1rem}.leaderboard-tabs-select-wrap{margin-bottom:14px}.leaderboard-tabs-select{font-size:.9rem;padding:10px 12px}.podium-item{padding:14px}.podium-avatar-ring{height:56px;width:56px}.podium-medal{font-size:1.75rem}.podium-medal svg{height:1.75rem;width:1.75rem}.leaderboard-list{padding:12px}.list-title{font-size:1rem;margin-bottom:12px}.leaderboard-row{padding:10px}.row-avatar-ring{height:36px;width:36px}}.profile-main{align-items:stretch;background:var(--bg-tertiary);box-sizing:border-box;display:flex;flex-direction:column;min-height:100vh;padding:24px 32px;transition:background-color .3s ease;width:100%}.profile-page-inner{box-sizing:border-box;margin:0 auto;max-width:1200px;width:100%}.profile-content-layout{align-items:flex-start;display:flex;gap:24px;width:100%}.profile-content-main{align-items:center;display:flex;flex:1 1;flex-direction:column;min-width:0}.profile-sidebar-spacer{flex-shrink:0;width:300px}.profile-main>.profile-header{align-items:center;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px;width:100%}.profile-main>.profile-header .page-title-container{align-items:center;flex:1 1;margin-bottom:0;min-width:0}.profile-main>.profile-header .page-title-back-button:active{opacity:.85;transform:scale(.97)}.profile-title-text{align-items:center;color:var(--text-primary);display:flex;font-size:1.3rem;font-weight:700;gap:12px;margin:0;padding:0;transition:color .3s ease}.profile-title-icon{color:var(--accent-green);flex-shrink:0;font-size:1.2rem}.profile-card{background:var(--bg-card);border-radius:12px;box-shadow:0 2px 12px var(--shadow-md);box-sizing:border-box;margin-bottom:0;margin-left:auto;margin-right:auto;max-width:600px;padding:24px 28px;transition:background-color .3s ease,box-shadow .3s ease;width:100%}.profile-header{align-items:center;display:flex;justify-content:space-between}.profile-avatar{background:var(--bg-hover);border-radius:50%;height:80px;margin-right:24px;position:relative;transition:background-color .3s ease;width:80px}.profile-avatar-img,.profile-avatar-ring{height:100%;width:100%}.profile-avatar-img{border-radius:50%;display:block;object-fit:cover}.profile-avatar-level{background:var(--accent-green);border-radius:12px;bottom:-8px;color:#fff;font-size:.75rem;font-weight:600;left:50%;padding:2px 8px;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:3}.profile-info{flex:1 1;min-width:0}.profile-info h2{color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1.25;margin:0 0 6px;transition:color .3s ease}.profile-username{color:var(--text-secondary);font-size:.95rem;font-weight:500;margin-bottom:12px;transition:color .3s ease}.profile-username-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.profile-username-row .profile-username{margin-bottom:0}.profile-header-user-menu{flex-shrink:0;margin-left:auto}.profile-follow-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:9999px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;padding:8px 16px;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.profile-follow-btn:hover:not(:disabled){background:var(--bg-hover)}.profile-follow-btn-add{border-color:var(--accent-green);color:var(--accent-green)}.profile-follow-btn-add:hover:not(:disabled){background:#22c55e1a}.profile-follow-btn-done{background:#22c55e1a;border-color:var(--accent-green);color:var(--accent-green)}.profile-follow-btn-done:hover:not(:disabled){background:#22c55e33}.profile-follow-icon{font-size:1rem}.profile-follow-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.profile-follow-btn-accept{background:var(--accent-green);border-color:var(--accent-green);color:#fff}.profile-follow-btn-accept:hover:not(:disabled){background:#1a9e3e;border-color:#1a9e3e}.profile-follow-btn-decline{background:var(--bg-hover);border-color:var(--border-color);color:var(--text-secondary)}.profile-follow-btn-decline:hover:not(:disabled){background:#ef44441a;border-color:#ef4444;color:#ef4444}.profile-follow-btn-pending{cursor:default;opacity:.9}.profile-follow-btn-unfriend{background:var(--bg-hover);border-color:var(--border-color);color:var(--text-secondary)}.profile-follow-btn-unfriend:hover:not(:disabled){background:#ef44441a;border-color:#ef4444;color:#ef4444}.profile-follow-btn:active:not(:disabled){opacity:.95;transform:scale(.98)}.profile-follow-spinner{animation:profile-follow-spin .8s linear infinite;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-green);display:inline-block;height:18px;width:18px}@keyframes profile-follow-spin{to{transform:rotate(1turn)}}.profile-bio-container{margin-bottom:12px;margin-top:4px;position:relative}.profile-bio{color:var(--text-primary);font-size:.95rem;line-height:1.5;margin-bottom:8px;transition:color .3s ease}.profile-bio-translation{border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.9rem;font-style:italic;line-height:1.5;margin-bottom:8px;padding-top:8px;transition:color .3s ease,border-color .3s ease}.profile-translate-btn{align-items:center;background:#0000;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.85rem;gap:6px;padding:4px 12px;transition:all .3s ease}.profile-translate-btn:hover{background:var(--bg-hover);border-color:var(--accent-green);color:var(--accent-green)}.profile-translate-btn:disabled{cursor:not-allowed;opacity:.6}.profile-edit-btn{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.9rem;font-weight:500;margin-top:8px;padding:8px 16px;transition:all .3s ease}.profile-edit-btn:hover{background:var(--bg-hover);border-color:var(--accent-green);color:var(--accent-green)}.profile-actions{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.profile-actions,.profile-menu-container{position:relative}.profile-menu-btn{align-items:center;background:#0000;border:1px solid var(--border-color);border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:16px;height:36px;justify-content:center;transition:all .3s ease;width:36px}.profile-menu-btn:hover{background:var(--bg-hover);border-color:var(--accent-green);color:var(--accent-green)}.profile-menu-dropdown{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-lg);margin-top:8px;min-width:200px;overflow:hidden;position:absolute;right:0;top:44px;z-index:1000}.profile-menu-item{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:.95rem;gap:12px;padding:12px 16px;text-align:left;transition:background-color .2s ease;width:100%}.profile-menu-item:hover{background:var(--bg-hover)}.profile-menu-icon{color:var(--text-secondary);flex-shrink:0;font-size:16px}.profile-menu-item:hover .profile-menu-icon{color:var(--accent-green)}.profile-share-btn{align-items:center;background:#0000;border:1px solid var(--border-color);border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.2rem;height:36px;justify-content:center;transition:all .3s ease;width:36px}.profile-share-btn:hover{background:var(--bg-hover);border-color:var(--accent-green);color:var(--accent-green)}.share-feedback{background:var(--bg-card);border-radius:6px;box-shadow:0 2px 8px var(--shadow-md);color:var(--text-primary);font-size:.85rem;padding:6px 12px;position:absolute;right:0;top:44px;white-space:nowrap;z-index:10}.profile-stats{border-top:1px solid var(--border-color);display:flex;gap:32px;margin-top:24px;padding-top:24px;transition:border-color .3s ease}.profile-card .profile-header{padding-bottom:4px}.profile-stat-clickable,.profile-stats>div{align-items:flex-start;display:flex;flex-direction:column}.profile-stat-clickable{background:none;border:none;color:inherit;cursor:pointer;font:inherit;margin:0;padding:0}.profile-stat-clickable:hover .profile-stat-label,.profile-stat-clickable:hover .profile-stat-value,.profile-stat-value{color:var(--accent-green)}.profile-stat-value{font-size:1.5rem;font-weight:700;margin-bottom:4px;transition:color .3s ease}.profile-stat-label{color:var(--text-secondary);font-size:.9rem;transition:color .3s ease}.profile-xp-card{background:var(--bg-card);border-radius:12px;box-shadow:0 2px 12px var(--shadow-md);box-sizing:border-box;margin-bottom:18px;margin-left:auto;margin-right:auto;max-width:960px;padding:20px 28px;transition:background-color .3s ease,box-shadow .3s ease;width:100%}.profile-xp-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.profile-xp-header h3{color:var(--text-primary);font-size:1.3rem;font-weight:700;margin:0;transition:color .3s ease}.profile-level-indicator{align-items:center;color:var(--accent-green);display:flex;font-size:.95rem;font-weight:600;gap:8px}.level-text{color:var(--accent-green)}.level-arrow,.level-text{transition:color .3s ease}.level-arrow{color:var(--text-secondary)}.profile-xp-content{display:flex;flex-direction:column;gap:16px}.profile-xp-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.xp-stat-item{display:flex;flex-direction:column;gap:4px}.xp-stat-label{color:var(--text-secondary);font-size:.85rem;transition:color .3s ease}.xp-stat-value{color:var(--text-primary);font-size:1.2rem;font-weight:700;transition:color .3s ease}.profile-xp-bar-container{width:100%}.profile-xp-bar{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;height:32px;overflow:hidden;position:relative;transition:background-color .3s ease,border-color .3s ease;width:100%}.profile-xp-progress{-webkit-appearance:none;appearance:none;background:#0000;border:none;height:100%;left:0;position:absolute;top:0;width:100%}.profile-xp-progress::-webkit-progress-bar{background:#0000}.profile-xp-progress::-webkit-progress-value{background:var(--accent-green);border-radius:16px}.profile-xp-progress::-moz-progress-bar{background:var(--accent-green);border-radius:16px}.profile-xp-bar-fill{background:var(--accent-green);border-radius:16px;height:100%;position:relative;transition:width .5s ease,background-color .3s ease}.profile-xp-bar-fill,.xp-percentage{align-items:center;display:flex;justify-content:center}.xp-percentage{bottom:0;color:#fff;font-size:.9rem;font-weight:700;left:0;position:absolute;right:0;text-shadow:0 1px 2px #0003;top:0}.profile-activity{background:var(--bg-card);border-radius:12px;box-shadow:0 2px 12px var(--shadow-md);box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:960px;padding:20px 28px;transition:background-color .3s ease,box-shadow .3s ease;width:100%}.profile-activity h3{color:var(--text-primary);font-size:1.3rem;font-weight:700;margin:0 0 20px;transition:color .3s ease}.activity-list{display:flex;flex-direction:column;gap:0}.activity-item+.activity-item{border-top:1px solid #0000001f;border-top:1px solid var(--border-color,#0000001f);margin-top:12px;padding-top:12px}.dark-mode .activity-item+.activity-item{border-top-color:#ffffff1f;border-top-color:var(--border-color,#ffffff1f)}.activity-item{align-items:center;background:var(--bg-secondary);border-radius:8px;display:flex;gap:12px;padding:12px;position:relative;transition:background-color .3s ease}.activity-icon{color:var(--accent-green);flex-shrink:0;font-size:1.2rem;font-weight:700}.activity-details{flex:1 1;min-width:0}.activity-label{color:var(--text-primary);font-size:.95rem;font-weight:500;margin-bottom:4px;transition:color .3s ease}.activity-date{color:var(--text-secondary);font-size:.85rem;transition:color .3s ease}.activity-points{color:var(--accent-green);flex-shrink:0;font-size:.9rem;font-weight:600;transition:color .3s ease}.activity-menu-container{flex-shrink:0;position:relative}.activity-menu-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;padding:0;transition:all .2s ease;width:28px}.activity-menu-btn:hover{background:var(--bg-hover);color:var(--accent-green)}.activity-menu-dropdown{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-lg);margin-top:4px;min-width:200px;overflow:hidden;position:absolute;right:0;top:32px;z-index:1000}.activity-menu-item{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:.95rem;gap:12px;padding:12px 16px;text-align:left;transition:background-color .2s ease;width:100%}.activity-menu-item:hover{background:var(--bg-hover)}.activity-menu-icon{color:var(--text-secondary);flex-shrink:0;font-size:16px}.activity-footer,.activity-menu-item:hover .activity-menu-icon{color:var(--accent-green)}.activity-footer{cursor:pointer;font-size:.9rem;font-weight:500;margin-top:16px;text-align:center;transition:color .3s ease}.activity-footer:hover{color:var(--accent-green-dark)}.activity-all-list{display:flex;flex-direction:column;gap:12px;margin-top:16px;max-height:600px;overflow-y:auto}.activity-load-more{align-self:center;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.9rem;font-weight:500;margin-top:12px;padding:10px 20px;transition:all .3s ease}.activity-load-more:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--accent-green);color:var(--accent-green)}.activity-load-more:disabled{cursor:not-allowed;opacity:.6}.profile-tabs-container{background:var(--bg-card);border-radius:12px;box-shadow:0 2px 12px var(--shadow-md);margin:18px auto;max-width:600px;transition:background-color .3s ease,box-shadow .3s ease;width:100%}.profile-tabs-select,.profile-tabs-select-wrap{display:none}.profile-tabs{-ms-overflow-style:none;-webkit-overflow-scrolling:touch;border-bottom:1px solid var(--border-color);display:flex;overflow-x:auto;scrollbar-width:none}.profile-tabs::-webkit-scrollbar{display:none}.profile-tab{background:#0000;border:none;border-bottom:3px solid #0000;color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:.95rem;font-weight:500;min-width:-webkit-fit-content;min-width:fit-content;padding:16px 20px;position:relative;transition:all .2s ease;white-space:nowrap}.profile-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.profile-tab.active{border-bottom-color:var(--accent-green);color:var(--accent-green);font-weight:600}.profile-tab:active{background:var(--bg-secondary)}.profile-tab-content{margin:0 auto;max-width:600px;min-height:200px;padding:24px}.profile-empty,.profile-loading{color:var(--text-secondary);font-size:.95rem;line-height:1.5;padding:48px 24px;text-align:center;transition:color .3s ease}.profile-posts-tab{margin:0 auto;max-width:600px}.profile-posts-list{display:flex;flex-direction:column;gap:0}.profile-posts-list>*+*{border-top:1px solid #0000001f;border-top:1px solid var(--border-color,#0000001f);margin-top:20px;padding-top:20px;transition:border-color .3s ease}.dark-mode .profile-posts-list>*+*{border-top-color:#ffffff1f;border-top-color:var(--border-color,#ffffff1f)}.profile-posts-list .feed-item{position:relative}.profile-posts-list .feed-item+.feed-item:before{border-bottom:1px solid #0000001f;border-bottom:1px solid var(--border-color,#0000001f);content:"";height:16px;left:0;pointer-events:none;position:absolute;right:0;top:-32px}.profile-posts-list .feed-item+.feed-item{border-top:none;margin-top:32px;padding-top:0}.dark-mode .profile-posts-list .feed-item+.feed-item:before{border-bottom-color:#ffffff1f;border-bottom-color:var(--border-color,#ffffff1f)}.profile-posts-list .feed-item{border-radius:12px;transition:background-color .2s ease,box-shadow .2s ease}.profile-posts-list .feed-item-header-right{gap:12px}.profile-posts-list .feed-item-content,.profile-posts-list .feed-item-header{margin-bottom:14px}.profile-posts-list .feed-item-actions{margin-top:14px;padding-top:14px}.profile-post-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:16px;transition:all .3s ease}.profile-post-item:hover{box-shadow:0 2px 8px var(--shadow-md)}.profile-post-content{color:var(--text-primary);font-size:15px;line-height:1.6;margin-bottom:12px;white-space:pre-wrap;word-break:break-word}.profile-post-image{background:#0000;border-radius:12px;margin-bottom:12px;overflow:hidden;width:100%}.profile-post-image img{border-radius:8px;display:block;height:auto;max-height:300px;object-fit:contain;width:100%}.profile-post-date{color:var(--text-secondary);font-size:13px;margin-top:8px}.profile-post-challenge-card{background:#0000;border:1px solid var(--accent-green);border-radius:8px;margin-bottom:12px;margin-top:12px;padding:8px 10px;transition:all .3s ease}.profile-post-challenge-header{align-items:center;color:var(--accent-green);display:flex;font-size:.7rem;font-weight:600;gap:4px;margin-bottom:4px}.profile-post-challenge-icon{font-size:12px}.profile-post-challenge-label{font-size:.65rem;letter-spacing:.3px;text-transform:uppercase}.profile-post-challenge-title{color:var(--text-primary);font-size:.8rem;font-weight:600;line-height:1.2;margin-bottom:2px}.profile-post-challenge-desc{-webkit-line-clamp:1;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:.75rem;line-height:1.3;margin-bottom:4px;overflow:hidden}.profile-post-challenge-points{color:var(--accent-green);font-size:.7rem;font-weight:600}.profile-likes-tab,.profile-progression-tab{margin:0 auto;max-width:600px}.profile-progression-tab{display:flex;flex-direction:column}.profile-progression-tab .profile-xp-card{background:#0000;box-shadow:none;margin:0;padding:0}.profile-challenges-tab{margin:0 auto;max-width:600px}.profile-challenges-tab .profile-activity{background:#0000;box-shadow:none;margin:0;padding:0}.profile-challenges-tab .profile-activity h3{font-size:1.1rem;margin-bottom:16px}@media (max-width:1280px){.profile-main{padding:20px 28px}}@media (max-width:900px){.profile-main{padding:16px 20px}.profile-sidebar-spacer{width:200px}.profile-main>.profile-header{margin-bottom:20px}.profile-title-text{font-size:1.2rem}.profile-card{padding:16px 20px}.profile-stats{gap:24px;margin-top:20px;padding-top:20px}.profile-stat-value{font-size:1.3rem}.profile-posts-list>*+*{margin-top:16px;padding-top:16px}.profile-posts-list .feed-item+.feed-item{margin-top:24px}.profile-posts-list .feed-item+.feed-item:before{height:12px;top:-24px}}@media (max-width:768px){.profile-tabs{display:none}.profile-tabs-select-wrap{border-bottom:1px solid var(--border-color);display:block;padding:12px 16px}.profile-tabs-select{-webkit-appearance:none;appearance:none;background:var(--bg-card);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23666' d='M6 8 1 3h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;display:block;font-size:1rem;font-weight:500;padding:10px 40px 10px 14px;width:100%}.profile-tabs-select:focus,.profile-tabs-select:hover{border-color:var(--accent-green);outline:none}.dark-mode .profile-tabs-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23ccc' d='M6 8 1 3h10z'/%3E%3C/svg%3E")}.profile-sidebar-spacer{display:none}.profile-main{padding:16px}.profile-main>.profile-header{margin-bottom:16px}.profile-title-text{font-size:1.15rem}.profile-card{padding:16px}.profile-card .profile-header{align-items:flex-start;flex-direction:column}.profile-avatar{margin-bottom:12px;margin-right:0}.profile-actions{align-self:flex-end}.profile-stats{flex-direction:row;flex-wrap:wrap;gap:20px;margin-top:20px;padding-top:20px}.profile-xp-stats{grid-template-columns:1fr}.profile-xp-header{align-items:flex-start;flex-direction:column;gap:12px}}@media (max-width:600px){.profile-main{padding:12px 16px}.profile-main>.profile-header{margin-bottom:14px}.profile-title-text{font-size:1.1rem}.profile-tabs-select-wrap{padding:10px 12px}.profile-tabs-select{font-size:.95rem;padding:10px 12px}.profile-tab-content{padding:16px}.profile-posts-list>*+*{margin-top:12px;padding-top:12px}.profile-posts-list .feed-item+.feed-item{margin-top:20px}.profile-posts-list .feed-item+.feed-item:before{height:10px;top:-20px}.profile-card{padding:12px 16px}.profile-main>.profile-header .page-title-text{font-size:1.1rem;white-space:normal;word-break:break-word}.profile-main>.profile-header .page-title-back-button{flex-shrink:0;height:36px;width:36px}.profile-main>.profile-header .page-title-back-icon{font-size:.9rem}.profile-avatar{height:64px;width:64px}.profile-info h2{font-size:1.25rem}.profile-stats{gap:16px}.profile-stat-value{font-size:1.2rem}.profile-activity,.profile-xp-card{padding:16px}.profile-activity h3,.profile-xp-header h3{font-size:1.1rem}}@media (max-width:480px){.profile-main{padding:10px 12px}.profile-title-text{font-size:1.05rem}.profile-tabs-select{font-size:.9rem;padding:8px 10px}.profile-card{padding:10px 12px}.profile-avatar{height:56px;width:56px}.profile-stat-value{font-size:1.1rem}.profile-stats{gap:12px}.profile-main>.profile-header .page-title-container{margin-left:-8px;padding:0 8px}.profile-main>.profile-header .page-title-text{font-size:1rem}.profile-main>.profile-header .page-title-back-button{height:32px;width:32px}}.activity-footer:hover{color:var(--accent-green-light);text-decoration:underline}.profile-private-notice{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:12px;color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin-top:20px;padding:20px 24px;text-align:center;transition:all .3s ease}.profile-private-notice strong{color:var(--text-primary);display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.all-challenges-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.all-challenges-modal{background:var(--bg-card);border-radius:16px;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:700px;transition:all .3s ease;width:100%}.all-challenges-modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:20px 24px}.all-challenges-modal-header h2{color:var(--text-primary);font-size:1.3rem;font-weight:600;margin:0}.all-challenges-modal-close{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:20px;justify-content:center;padding:4px 8px;transition:all .2s ease}.all-challenges-modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.all-challenges-modal-content{flex:1 1;overflow-y:auto;padding:24px}.all-challenges-empty,.all-challenges-loading{color:var(--text-secondary);padding:40px 20px;text-align:center}.all-challenges-list{display:flex;flex-direction:column;gap:12px}.all-challenges-item{align-items:center;background:var(--bg-secondary);border-radius:8px;display:flex;gap:12px;padding:12px;position:relative;transition:background-color .3s ease}.all-challenges-icon{color:var(--accent-green);flex-shrink:0;font-size:1.2rem;font-weight:700}.all-challenges-details{flex:1 1;min-width:0}.all-challenges-label{color:var(--text-primary);font-size:.95rem;font-weight:500;margin-bottom:4px;transition:color .3s ease}.all-challenges-date{color:var(--text-secondary);font-size:.85rem;transition:color .3s ease}.all-challenges-points{color:var(--accent-green);flex-shrink:0;font-size:.9rem;font-weight:600;transition:color .3s ease}.all-challenges-menu-container{flex-shrink:0;position:relative}.all-challenges-menu-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;padding:0;transition:all .2s ease;width:28px}.all-challenges-menu-btn:hover{background:var(--bg-hover);color:var(--accent-green)}.all-challenges-menu-dropdown{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-lg);margin-top:4px;min-width:200px;overflow:hidden;position:absolute;right:0;top:32px;z-index:1000}.all-challenges-menu-item{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:.95rem;gap:12px;padding:12px 16px;text-align:left;transition:background-color .2s ease;width:100%}.all-challenges-menu-item:hover{background:var(--bg-hover)}.all-challenges-menu-icon{color:var(--text-secondary);flex-shrink:0;font-size:16px}.all-challenges-menu-item:hover .all-challenges-menu-icon{color:var(--accent-green)}.all-challenges-load-more{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.9rem;font-weight:500;margin-top:16px;padding:10px 20px;transition:all .3s ease;width:100%}.all-challenges-load-more:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--accent-green);color:var(--accent-green)}.all-challenges-load-more:disabled{cursor:not-allowed;opacity:.6}@media (max-width:600px){.all-challenges-modal{border-radius:16px 16px 0 0;margin-top:auto;max-height:100vh;max-width:100%}.all-challenges-modal-overlay{align-items:flex-end;padding:0}.all-challenges-modal-content,.all-challenges-modal-header{padding:16px}}.follow-list-modal-body{max-height:70vh;min-height:120px;overflow-y:auto}.follow-list-modal-empty,.follow-list-modal-error,.follow-list-modal-loading{color:var(--text-secondary);padding:24px;text-align:center}.follow-list-modal-error{color:#f4212e;color:var(--error-color,#f4212e)}.follow-list-modal-list{list-style:none;margin:0;padding:0}.follow-list-modal-item{align-items:center;border-bottom:1px solid var(--border-color);display:flex}.follow-list-modal-item:last-child{border-bottom:none}.follow-list-modal-item-menu{flex-shrink:0;margin-left:auto;padding:4px}.follow-list-modal-user-btn{align-items:center;background:#0000;border:none;color:inherit;cursor:pointer;display:flex;flex:1 1;gap:12px;min-width:0;padding:12px 16px;text-align:left;transition:background .15s ease}.follow-list-modal-user-btn:hover{background:var(--bg-hover)}.follow-list-modal-avatar-ring{flex-shrink:0}.follow-list-modal-avatar{border-radius:50%;height:40px;object-fit:cover;width:40px}.follow-list-modal-user-info{display:flex;flex-direction:column;gap:2px;min-width:0}.follow-list-modal-display-name{color:var(--text-primary);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.follow-list-modal-username{color:var(--text-secondary);font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-page{align-items:stretch;background:var(--bg-tertiary);flex-direction:column;min-height:100vh;padding:24px 32px;transition:background-color .3s ease}.search-header,.search-page{box-sizing:border-box;display:flex;width:100%}.search-header{align-items:center;gap:16px;justify-content:space-between;margin-bottom:24px}.search-header .page-title-container{align-items:center;flex:1 1;margin-bottom:0;min-width:0}.search-title{align-items:center;color:var(--text-primary);display:flex;font-size:1.3rem;font-weight:700;gap:12px;margin:0;padding:0;transition:color .3s ease}.search-title-icon{color:var(--accent-green);flex-shrink:0;font-size:1.2rem}.search-container{margin:0 auto;max-width:800px;min-width:0;width:100%}.search-bar-container{margin-bottom:24px}.search-input-wrapper{align-items:center;background:var(--bg-card);border-radius:12px;box-shadow:0 2px 12px var(--shadow-md);display:flex;padding:12px 16px;position:relative;transition:box-shadow .3s ease,background-color .3s ease}.search-input-wrapper:focus-within{box-shadow:0 4px 16px var(--shadow-lg)}.search-icon{color:var(--text-secondary);flex-shrink:0;font-size:18px;margin-right:12px}.search-input{background:#0000;border:none;flex:1 1;font-family:inherit;font-size:16px}.search-input::placeholder{color:var(--text-secondary)}.search-tabs-select,.search-tabs-select-wrap{display:none}.search-tabs{-webkit-overflow-scrolling:touch;border-bottom:2px solid var(--border-color);display:flex;flex-wrap:nowrap;gap:8px;margin-bottom:24px;min-width:0;overflow-x:auto;padding-bottom:8px;width:100%}.search-tab{align-items:center;background:#0000;border:none;border-radius:8px 8px 0 0;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;position:relative;transition:all .2s ease;white-space:nowrap}.search-tab:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.search-tab.active{background:var(--bg-hover);color:var(--accent-green)}.search-tab:disabled{cursor:not-allowed;opacity:.5}.tab-icon{font-size:16px}.coming-soon-badge{background:var(--bg-secondary);border-radius:4px;color:var(--text-secondary);font-size:10px;margin-left:4px;padding:2px 6px}.search-results{min-height:200px}.search-empty,.search-loading{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.search-empty p,.search-loading p{font-size:16px;margin:0}.users-results{width:100%}.results-title{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:18px;font-weight:600;margin-bottom:16px;padding-bottom:8px}.users-list{display:flex;flex-direction:column;gap:12px}.user-result-card{align-items:center;background:var(--bg-card);border-radius:12px;box-shadow:0 2px 8px var(--shadow-sm);cursor:pointer;display:flex;gap:16px;padding:16px;position:relative;transition:all .2s ease}.user-result-card-menu{position:absolute;right:8px;top:8px;z-index:2}.user-result-card:hover{background:var(--bg-hover);box-shadow:0 4px 12px var(--shadow-md);transform:translateY(-2px)}.user-result-avatar{flex-shrink:0}.user-result-avatar-ring{height:56px;width:56px}.user-result-avatar-img{border-radius:50%;height:56px;width:56px}.user-result-info{flex:1 1;min-width:0}.user-result-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:4px}.user-result-username{color:var(--text-primary);flex:1 1;font-size:16px;font-weight:600;min-width:0;word-break:break-word}.privacy-badge{align-items:center;border-radius:12px;display:flex;flex-shrink:0;font-size:11px;font-weight:500;gap:4px;padding:4px 8px;white-space:nowrap}.privacy-badge.public{background:#22c55e1a;color:#22c55e}.privacy-badge.private{background:#ef44441a;color:#ef4444}.privacy-icon{font-size:10px}.user-result-identifier{font-family:Courier New,monospace;margin-bottom:8px}.user-result-bio,.user-result-identifier{color:var(--text-secondary);font-size:14px}.user-result-bio{line-height:1.4;word-break:break-word}@media (max-width:1280px){.search-page{padding:20px 28px}}@media (max-width:900px){.search-page{padding:16px 20px}.search-header{margin-bottom:20px}.search-title{font-size:1.2rem}.search-title-icon{font-size:1.1rem}.search-bar-container{margin-bottom:20px}.search-input-wrapper{padding:10px 14px}.search-icon{font-size:16px;margin-right:10px}.search-input{font-size:15px}.search-tabs{margin-bottom:20px}.search-tab{font-size:13px;padding:8px 16px}.user-result-card{gap:14px;padding:14px}.user-result-avatar-img,.user-result-avatar-ring{height:52px;width:52px}}@media (max-width:768px){.search-tabs{display:none}.search-tabs-select-wrap{display:block;margin-bottom:20px;width:100%}.search-tabs-select{-webkit-appearance:none;appearance:none;background:var(--bg-card);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23666' d='M6 8 1 3h10z'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;display:block;font-size:1rem;font-weight:500;padding:12px 40px 12px 16px;width:100%}.search-tabs-select:focus,.search-tabs-select:hover{border-color:var(--accent-green);outline:none}.dark-mode .search-tabs-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23ccc' d='M6 8 1 3h10z'/%3E%3C/svg%3E")}}@media (max-width:600px){.search-page{padding:12px 16px}.search-header{margin-bottom:16px}.search-title{font-size:1.15rem;gap:10px}.search-bar-container{margin-bottom:16px}.search-input-wrapper{padding:10px 12px}.search-icon{font-size:16px;margin-right:8px}.search-input{font-size:14px}.search-tabs-select-wrap{margin-bottom:16px}.search-empty,.search-loading{padding:40px 16px}.empty-icon{font-size:40px;margin-bottom:12px}.results-title{font-size:.95rem;margin-bottom:12px}.users-list{gap:10px}.user-result-card{flex-wrap:wrap;gap:12px;padding:12px}.user-result-info{flex:1 1;min-width:0;overflow:hidden}.user-result-username{overflow:hidden;text-overflow:ellipsis}.user-result-avatar-img,.user-result-avatar-ring{height:48px;width:48px}.user-result-bio,.user-result-identifier{font-size:13px}}@media (max-width:480px){.search-page{padding:10px 12px}.search-header{margin-bottom:14px}.search-title{font-size:1.1rem}.search-tabs-select-wrap{margin-bottom:14px}.search-tabs-select{font-size:.95rem;padding:10px 12px}.privacy-badge span{display:none}.privacy-badge{justify-content:center;min-width:28px;padding:5px 6px}.privacy-icon{font-size:12px}.user-result-card{padding:10px}.user-result-avatar-img,.user-result-avatar-ring{height:44px;width:44px}}.friends-page{align-items:stretch;background:var(--bg-tertiary);flex-direction:column;min-height:100vh;padding:24px 32px;transition:background-color .3s ease}.friends-header,.friends-page{box-sizing:border-box;display:flex;width:100%}.friends-header{align-items:center;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.friends-header .page-title-container{align-items:center;flex:1 1;margin-bottom:0;min-width:0}.friends-page-title{align-items:center;color:var(--text-primary);display:flex;font-size:1.3rem;font-weight:700;gap:12px;margin:0;padding:0;transition:color .3s ease}.friends-title-icon{color:var(--accent-green);flex-shrink:0;font-size:1.2rem}.friends-container{margin:0 auto;max-width:800px;min-width:0;width:100%}.friends-tabs-select,.friends-tabs-select-wrap{display:none}.friends-tabs{-webkit-overflow-scrolling:touch;border-bottom:2px solid var(--border-color);display:flex;flex-wrap:nowrap;gap:8px;margin-bottom:24px;min-width:0;overflow-x:auto;overflow-y:hidden;padding-bottom:8px;padding-right:4px;scroll-behavior:smooth;scrollbar-width:thin;width:100%}.friends-tabs::-webkit-scrollbar{height:4px}.friends-tabs::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.friends-tab{align-items:center;background:#0000;border:none;border-radius:8px 8px 0 0;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.friends-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.friends-tab.active{background:var(--bg-hover);color:var(--accent-green)}.friends-tab-icon{font-size:16px}.friends-content{min-height:200px}.friends-search-bar{align-items:center;background:var(--bg-card);border-radius:12px;box-shadow:0 2px 12px var(--shadow-md);display:flex;margin-bottom:24px;padding:12px 16px;transition:box-shadow .3s ease,background-color .3s ease}.friends-search-bar:focus-within{box-shadow:0 4px 16px var(--shadow-lg)}.friends-search-icon{color:var(--text-secondary);flex-shrink:0;font-size:18px;margin-right:12px}.friends-search-input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:16px;outline:none}.friends-search-input::placeholder{color:var(--text-secondary)}.friends-empty,.friends-loading{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.friends-empty-icon{color:var(--accent-green);font-size:48px;margin-bottom:16px;opacity:.5}.friends-empty-title{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 8px}.friends-empty-hint{font-size:14px;line-height:1.5;margin:0;max-width:400px}.friends-search-empty .friends-empty-icon{font-size:40px}.friends-empty p,.friends-loading p{font-size:16px;margin:0}.friends-list-title{border-bottom:1px solid var(--border-color);color:var(--text-primary);flex-shrink:0;font-size:18px;font-weight:600;margin-bottom:16px;margin-top:4px;padding-bottom:8px}.friends-list-title-with-count{align-items:center;display:flex;gap:10px}.friends-list-grid{display:flex;flex-direction:column;gap:12px}.friends-user-card{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px var(--shadow-sm);cursor:pointer;display:flex;gap:16px;min-width:0;padding:16px;position:relative;transition:all .2s ease}.friends-user-card-menu{position:absolute;right:8px;top:8px;z-index:2}.friends-user-card:hover{background:var(--bg-hover);box-shadow:0 4px 12px var(--shadow-md);transform:translateY(-2px)}.friends-user-avatar{flex-shrink:0}.friends-avatar-img,.friends-avatar-ring{height:56px;width:56px}.friends-avatar-img{border-radius:50%}.friends-user-info{flex:1 1;min-width:0}.friends-user-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;margin-bottom:4px;min-width:0}.friends-user-username{color:var(--text-primary);flex:1 1;font-size:16px;font-weight:600;min-width:0;word-break:break-word}.friends-privacy-badge{align-items:center;border-radius:12px;display:inline-flex;flex-shrink:0;font-size:11px;font-weight:500;gap:4px;padding:4px 8px;white-space:nowrap}.friends-privacy-badge.public{background:#22c55e1a;color:#22c55e}.friends-privacy-badge.private{background:#ef44441a;color:#ef4444}.friends-privacy-icon{font-size:10px}.friends-user-identifier{color:var(--text-secondary);font-family:Courier New,monospace;font-size:14px;margin-bottom:8px}.friends-user-bio{color:var(--text-secondary);font-size:14px;line-height:1.4;word-break:break-word}.friends-follow-action{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;height:44px;justify-content:center;transition:background-color .2s ease,color .2s ease,transform .2s ease;width:44px}.friends-follow-action:hover{background:var(--bg-hover);color:var(--accent-green);transform:scale(1.05)}.friends-follow-action:focus{box-shadow:0 0 0 2px var(--accent-green);outline:none}.friends-follow-action-disabled{cursor:default;pointer-events:auto}.friends-follow-action-disabled:hover{transform:none}.friends-follow-icon{font-size:20px}.friends-follow-icon-done{color:var(--accent-green)}.friends-follow-icon-add{color:var(--text-secondary)}.friends-follow-action:hover .friends-follow-icon-add{color:var(--accent-green)}.friends-follow-icon-pending{color:var(--text-secondary)}.friends-tab-badge{align-items:center;background:var(--accent-green);border-radius:10px;color:#fff;display:inline-flex;font-size:12px;font-weight:600;height:20px;justify-content:center;margin-left:6px;min-width:20px;padding:0 6px}.friends-request-card{flex-wrap:wrap}.friends-request-actions{align-items:center;display:flex;flex-shrink:0;gap:8px}.friends-request-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:6px;padding:8px 14px;transition:opacity .2s ease,transform .2s ease}.friends-request-btn:disabled{cursor:not-allowed;opacity:.7}.friends-request-accept{background:var(--accent-green);color:#fff;flex-shrink:0;min-width:100px;white-space:nowrap}.friends-request-accept,.friends-request-accept span{color:#fff}.friends-request-accept:hover:not(:disabled){opacity:.9;transform:scale(1.02)}.friends-request-accept:hover:not(:disabled),.friends-request-accept:hover:not(:disabled) span{color:#fff}.friends-request-decline{background:var(--bg-hover);border:1px solid var(--border-color);color:var(--text-secondary)}.friends-request-decline:hover:not(:disabled){background:#ef44441a;border-color:#ef4444;color:#ef4444}.friends-request-cancel{background:var(--bg-hover);border:1px solid var(--border-color);color:var(--text-secondary)}.friends-request-cancel:hover:not(:disabled){background:#ef44441a;border-color:#ef4444;color:#ef4444}.friends-requests-sections{display:flex;flex-direction:column;gap:28px}.friends-requests-section{display:flex;flex-direction:column;gap:12px}.friends-requests-section .friends-list-title{align-items:center;display:flex;gap:10px;margin-bottom:4px}.friends-section-badge{align-items:center;background:var(--accent-green);border-radius:11px;color:#fff;display:inline-flex;font-size:12px;font-weight:600;height:22px;justify-content:center;min-width:22px;padding:0 8px}.friends-section-empty{background:var(--bg-card);border:1px dashed var(--border-color);border-radius:12px;color:var(--text-secondary);font-size:14px;margin:0;padding:16px}.friends-follow-spinner{animation:friends-follow-spin .8s linear infinite;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-green);display:inline-block;height:20px;width:20px}@keyframes friends-follow-spin{to{transform:rotate(1turn)}}@media (max-width:1280px){.friends-page{padding:20px 28px}}@media (max-width:900px){.friends-page{padding:16px 20px}.friends-header{margin-bottom:20px}.friends-page-title{font-size:1.2rem}.friends-title-icon{font-size:1.1rem}.friends-tabs{margin-bottom:20px;padding-bottom:6px}.friends-tab{font-size:13px;padding:8px 16px}.friends-tab-icon{font-size:14px}.friends-search-bar{margin-bottom:20px;padding:10px 14px}.friends-search-icon{font-size:16px;margin-right:10px}.friends-search-input{font-size:15px}.friends-list-title{font-size:1rem;margin-bottom:12px}.friends-user-card{gap:14px;padding:14px}.friends-avatar-img,.friends-avatar-ring{height:52px;width:52px}.friends-user-username{font-size:15px}.friends-request-actions{flex-wrap:wrap}.friends-request-accept{min-width:90px}.friends-request-accept,.friends-request-cancel,.friends-request-decline{font-size:13px;padding:7px 12px}.friends-requests-sections{gap:24px}}@media (max-width:768px){.friends-tabs{display:none}.friends-tabs-select-wrap{display:block;margin-bottom:20px;width:100%}.friends-tabs-select{-webkit-appearance:none;appearance:none;background:var(--bg-card);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23666' d='M6 8 1 3h10z'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;display:block;font-size:1rem;font-weight:500;padding:12px 40px 12px 16px;transition:border-color .2s ease;width:100%}.friends-tabs-select:focus,.friends-tabs-select:hover{border-color:var(--accent-green);outline:none}.dark-mode .friends-tabs-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23ccc' d='M6 8 1 3h10z'/%3E%3C/svg%3E")}}@media (max-width:600px){.friends-page{padding:12px 16px}.friends-header{margin-bottom:16px}.friends-page-title{font-size:1.15rem;gap:10px}.friends-title-icon{font-size:1.1rem}.friends-tabs-select-wrap{margin-bottom:16px}.friends-tabs-select{font-size:.95rem;padding:10px 14px}.friends-tabs{gap:4px;margin-bottom:16px}.friends-tab{font-size:12px;padding:6px 12px}.friends-tab-icon{font-size:13px}.friends-tab-badge{font-size:11px;height:18px;min-width:18px;padding:0 5px}.friends-content{min-height:160px}.friends-search-bar{margin-bottom:16px;padding:10px 12px}.friends-search-icon{font-size:16px;margin-right:8px}.friends-search-input{font-size:14px}.friends-empty,.friends-loading{padding:40px 16px}.friends-empty-icon{font-size:40px;margin-bottom:12px}.friends-empty-title{font-size:16px}.friends-empty-hint{font-size:13px}.friends-search-empty .friends-empty-icon{font-size:36px}.friends-list-title{font-size:.95rem;margin-bottom:10px}.friends-section-badge{font-size:11px;height:20px;min-width:20px;padding:0 6px}.friends-list-grid{gap:10px}.friends-user-card{align-items:center;flex-wrap:wrap;gap:12px;padding:12px}.friends-user-card .friends-user-info{flex:1 1;min-width:0;overflow:hidden}.friends-user-username{overflow:hidden;text-overflow:ellipsis}.friends-avatar-img,.friends-avatar-ring{height:48px;width:48px}.friends-user-username{font-size:14px}.friends-user-bio,.friends-user-identifier{font-size:13px}.friends-follow-action{height:40px;width:40px}.friends-follow-icon{font-size:18px}.friends-request-card{flex-wrap:wrap}.friends-request-card .friends-user-info{flex:1 1;min-width:120px}.friends-request-actions{border-top:1px solid var(--border-color);justify-content:flex-end;margin-top:4px;padding-top:8px;width:100%}.friends-request-accept{min-width:80px}.friends-request-accept,.friends-request-cancel,.friends-request-decline{font-size:12px;padding:6px 10px}.friends-request-btn span{display:inline}.friends-requests-sections{gap:20px}.friends-section-empty{font-size:13px;padding:12px}}@media (max-width:480px){.friends-page{padding:10px 12px}.friends-header{margin-bottom:14px}.friends-page-title{font-size:1.1rem}.friends-tabs-select-wrap{margin-bottom:14px}.friends-tabs-select{font-size:.9rem;padding:10px 12px}.friends-tabs{margin-bottom:14px;padding-right:8px}.friends-tab{font-size:11px;padding:6px 10px}.friends-privacy-badge span{display:none}.friends-privacy-badge{justify-content:center;min-width:28px;padding:5px 6px}.friends-privacy-icon{font-size:12px}.friends-user-card{padding:10px}.friends-avatar-img,.friends-avatar-ring{height:44px;width:44px}.friends-follow-action{flex-shrink:0;height:36px;width:36px}.friends-follow-icon{font-size:16px}.friends-request-accept{min-width:70px}.friends-request-accept,.friends-request-cancel,.friends-request-decline{font-size:11px;padding:5px 8px}}.notifications-page{align-items:stretch;background:var(--bg-tertiary);flex-direction:column;min-height:100vh;padding:24px 32px}.notifications-header,.notifications-page{box-sizing:border-box;display:flex;width:100%}.notifications-header{align-items:center;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.notifications-header .page-title-container{align-items:center;flex:1 1;margin-bottom:0;min-width:0}.notifications-title{align-items:center;color:var(--text-primary);display:flex;font-size:1.3rem;font-weight:700;gap:12px;margin:0;padding:0;transition:color .3s ease}.notifications-title-icon{color:var(--accent-green);flex-shrink:0;font-size:1.2rem}.notifications-container{margin:0 auto;max-width:640px;min-width:0;width:100%}.notifications-mark-all{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:14px;margin-bottom:20px;padding:8px 16px;transition:background-color .2s ease,color .2s ease}.notifications-mark-all:hover{background:var(--bg-hover);color:var(--text-primary)}.notifications-empty,.notifications-loading{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.notifications-empty-icon{color:var(--accent-green);font-size:48px;margin-bottom:16px;opacity:.5}.notifications-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.notifications-item{align-items:flex-start;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;display:flex;gap:14px;padding:16px;transition:background-color .2s ease}.notifications-item:hover{background:var(--bg-hover)}.notifications-item.unread{border-left:3px solid var(--accent-green)}.notifications-item-icon{align-items:center;background:var(--bg-hover);border-radius:50%;color:var(--text-secondary);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.notif-icon{font-size:18px}.notif-icon-friend{color:var(--accent-green)}.notif-icon-challenge{color:#3b82f6}.notif-icon-admin{color:#f59e0b}.notifications-item-body{flex:1 1;min-width:0}.notifications-item-meta{align-items:center;display:flex;gap:10px;margin-bottom:4px}.notifications-item-type{color:var(--accent-green);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.notifications-item-date{color:var(--text-secondary);font-size:12px}.notifications-item-title{color:var(--text-primary);font-size:15px;font-weight:600;margin-bottom:4px}.notifications-item-text{color:var(--text-secondary);font-size:14px;line-height:1.4}.notifications-item-mark{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:color .2s ease,background .2s ease;width:36px}.notifications-item-mark:hover:not(:disabled){background:var(--bg-hover);color:var(--accent-green)}.notifications-item-mark:disabled{cursor:not-allowed;opacity:.7}.notif-spinner{animation:notif-spin .8s linear infinite;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-green);display:inline-block;height:16px;width:16px}@keyframes notif-spin{to{transform:rotate(1turn)}}@media (max-width:1280px){.notifications-page{padding:20px 28px}}@media (max-width:900px){.notifications-page{padding:16px 20px}.notifications-header{margin-bottom:20px}.notifications-title{font-size:1.2rem}.notifications-title-icon{font-size:1.1rem}.notifications-mark-all{font-size:13px;margin-bottom:16px;padding:7px 14px}.notifications-item{gap:12px;padding:14px}.notifications-item-icon{height:36px;width:36px}.notif-icon{font-size:16px}.notifications-item-title{font-size:14px}.notifications-item-text{font-size:13px}.notifications-item-mark{height:32px;width:32px}}@media (max-width:600px){.notifications-page{padding:12px 16px}.notifications-header{margin-bottom:16px}.notifications-title{font-size:1.15rem;gap:10px}.notifications-title-icon{font-size:1.1rem}.notifications-mark-all{font-size:13px;margin-bottom:14px;padding:6px 12px;width:100%}.notifications-empty,.notifications-loading{padding:40px 16px}.notifications-empty-icon{font-size:40px;margin-bottom:12px}.notifications-list{gap:6px}.notifications-item{flex-wrap:wrap;gap:10px;padding:12px}.notifications-item-body{flex:1 1;min-width:0}.notifications-item-title{font-size:14px;overflow:hidden;text-overflow:ellipsis}.notifications-item-text{font-size:13px}.notifications-item-meta{flex-wrap:wrap;gap:6px}.notifications-item-date,.notifications-item-type{font-size:11px}.notifications-item-mark{height:32px;margin-left:auto;width:32px}}@media (max-width:480px){.notifications-page{padding:10px 12px}.notifications-header{margin-bottom:14px}.notifications-title{font-size:1.1rem}.notifications-mark-all{font-size:12px;padding:6px 10px}.notifications-item{padding:10px}.notifications-item-icon{height:32px;width:32px}.notif-icon{font-size:14px}.notifications-item-mark{height:28px;width:28px}}.post-page{background:var(--bg-tertiary);box-sizing:border-box;min-height:100vh;padding:24px 32px}.post-page-header{align-items:center;display:flex;gap:16px;margin-bottom:24px}.post-page-back-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-primary);cursor:pointer;display:flex;font-size:20px;justify-content:center;padding:8px;transition:all .2s ease}.post-page-back-btn:hover{background:var(--bg-hover)}.post-page-title{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin:0}.post-page .home-content-layout{align-items:flex-start;display:flex;gap:24px;margin:0 auto;max-width:1200px}.post-page .home-feed .feed-item-comments{border-top:1px solid var(--border-color);margin-top:16px;padding-top:16px}.post-page .home-feed .feed-comment-form{margin-bottom:16px}.post-page .home-feed .feed-comment-form-wrapper{align-items:center;display:flex;gap:12px;margin-bottom:12px}.post-page .home-feed .feed-comment-user-avatar{flex-shrink:0;height:40px;width:40px}.post-page .home-feed .feed-comment-user-avatar-img{border-radius:50%;height:40px;width:40px}.post-page .home-feed .feed-comment-input{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-sizing:border-box;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:15px;height:44px;padding:12px}.post-page .home-feed .feed-comment-input:focus{border-color:var(--accent-green);outline:none}.post-page .home-feed .feed-comment-form-footer{align-items:center;display:flex;justify-content:space-between}.post-page .home-feed .feed-comment-char-count{color:var(--text-secondary);font-size:.85rem}.post-page .home-feed .feed-comment-submit{background:var(--accent-green);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.post-page .home-feed .feed-comment-submit:hover:not(:disabled){background:var(--accent-green-dark)}.post-page .home-feed .feed-comment-submit:disabled{cursor:not-allowed;opacity:.5}.post-page .home-feed .feed-comments-list{display:flex;flex-direction:column;gap:16px}.post-page .home-feed .feed-comment-item{display:flex;gap:12px}.post-page .home-feed .feed-comment-avatar{flex-shrink:0}.post-page .home-feed .feed-comment-avatar-img{border-radius:50%;height:40px;width:40px}.post-page .home-feed .feed-comment-content{flex:1 1}.post-page .home-feed .feed-comment-header{align-items:flex-start;display:flex;gap:8px;margin-bottom:4px}.post-page .home-feed .feed-comment-username-wrapper{display:flex;flex-direction:column;gap:2px}.post-page .home-feed .feed-comment-display-name{color:var(--text-primary);font-size:14px;font-weight:700;line-height:1.2}.post-page .home-feed .feed-comment-username{color:var(--text-secondary);font-size:13px;font-weight:400;line-height:1.2}.post-page .home-feed .feed-comment-date{color:var(--text-secondary);font-size:12px}.post-page .home-feed .feed-comment-text{color:var(--text-primary);font-size:14px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.post-page .home-feed .feed-comments-empty{color:var(--text-secondary);font-size:.9rem;padding:20px;text-align:center}.post-page-error,.post-page-loading{color:var(--text-secondary);padding:40px 20px;text-align:center}.post-page .home-feed .feed-item-header-right{align-items:center;display:flex;gap:8px;position:relative}.post-page .home-feed .feed-item-menu-wrapper{position:relative}.post-page .home-feed .feed-item-menu-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:16px;justify-content:center;padding:8px;transition:all .2s ease}.post-page .home-feed .feed-item-menu-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.post-page .home-feed .feed-item-menu-dropdown{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-lg);margin-top:8px;min-width:280px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.post-page .home-feed .feed-item-menu-option{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:15px;gap:12px;padding:12px 16px;text-align:left;transition:background .2s ease;width:100%}.post-page .home-feed .feed-item-menu-option:hover{background:var(--bg-hover)}.post-page .home-feed .feed-item-menu-option-danger{color:#e91e63}.post-page .home-feed .feed-item-menu-option-danger:hover{background:#e91e631a}.post-page .home-feed .feed-item-menu-icon{align-items:center;display:flex;flex-shrink:0;font-size:18px;justify-content:center;width:20px}@media (max-width:600px){.post-page{padding:16px}}.sidebar{align-items:flex-start;background:var(--bg-secondary);border-radius:0 12px 12px 0;bottom:0;box-sizing:border-box;display:flex;flex-direction:column;height:100vh;left:0;min-width:300px;overflow-x:hidden;overflow-y:auto;padding:24px 0 0;position:fixed;top:0;transition:background-color .3s ease,box-shadow .3s ease,width .3s ease;width:300px;z-index:1000}.sidebar:after{background:var(--border-light);bottom:0;content:"";opacity:.6;pointer-events:none;position:absolute;right:0;top:0;width:1px}.sidebar-logo{align-items:center;border-radius:8px;cursor:pointer;display:flex;flex-shrink:0;gap:12px;margin-bottom:24px;margin-left:12px;margin-right:12px;min-width:0;padding:8px;transition:background-color .3s ease,gap .3s ease}.sidebar-logo:hover{background-color:var(--bg-hover)}.sidebar-logo-img{border-radius:8px;flex-shrink:0;height:48px;min-height:36px;min-width:36px;object-fit:contain;transition:width .3s ease,height .3s ease;width:48px}.sidebar-logo-icon{align-items:center;color:var(--accent-green);display:flex;flex-shrink:0;font-size:2rem;height:48px;justify-content:center;width:48px}.sidebar-title{color:var(--text-primary);display:block;font-size:1.05rem;font-weight:800;letter-spacing:1px;margin:0;min-width:0;overflow:hidden;text-align:left;text-overflow:ellipsis;transition:color .3s ease,font-size .3s ease,opacity .3s ease;white-space:nowrap}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:14px;margin-left:20px;overflow-x:visible;overflow-y:auto;padding-right:20px;width:calc(100% - 40px)}.sidebar-nav-locked .sidebar-link{cursor:default;opacity:.35;pointer-events:none}.sidebar-link{align-items:center;background:none;border:none;border-radius:8px;cursor:pointer;display:flex;font-family:inherit;font-size:1.15rem;gap:12px;padding:8px 10px;text-decoration:none;transition:color .3s ease,background-color .3s ease;width:calc(100% - 20px)}.sidebar-link,.sidebar-link span,.sidebar-link:hover{color:var(--text-primary)}.sidebar-link:hover{background:var(--bg-hover)}.sidebar-link:hover,.sidebar-link:hover span{color:var(--text-primary)}.sidebar-friends-badge,.sidebar-notif-badge{align-items:center;background:var(--accent-green);border-radius:11px;box-sizing:border-box;color:#fff!important;display:inline-flex;flex-grow:0;flex-shrink:0;font-size:12px;font-weight:700;height:22px;justify-content:center;line-height:1;margin-left:auto;min-width:22px;padding:0 6px}.sidebar-friends-badge *,.sidebar-notif-badge *{color:inherit}.sidebar-link svg,.sidebar-link>svg{align-items:center;display:inline-flex;font-size:1.25rem;justify-content:center}.sidebar-link svg,.sidebar-link-avatar,.sidebar-link>svg{flex-shrink:0;height:24px;width:24px}.sidebar-link-avatar-img{height:100%;transition:box-shadow .3s ease;width:100%}.sidebar-link-icon{align-items:center;color:var(--text-primary);display:inline-flex;flex-shrink:0;font-size:1.25rem;height:24px;justify-content:center;width:24px}.sidebar-link.active .sidebar-link-avatar{border-color:var(--accent-green)}.sidebar-link.active{font-weight:700}.sidebar-link.active,.sidebar-link.active span{color:var(--accent-green)}.sidebar-create-post-btn{align-items:center;background:none;border:none;border-radius:8px;box-sizing:border-box;color:var(--text-primary);cursor:pointer;display:flex;font-family:inherit;font-size:1.15rem;gap:12px;padding:8px 10px;text-align:left;text-decoration:none;transition:all .2s ease;width:calc(100% - 20px)}.sidebar-create-post-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-create-post-btn svg{align-items:center;display:inline-flex;flex-shrink:0;font-size:1.25rem;height:24px;justify-content:center;width:24px}.sidebar-controls{display:flex;flex-direction:row;flex-shrink:0;gap:8px;margin-left:auto}.sidebar-language-selector{position:relative;z-index:100002}.sidebar-language-btn{align-items:center;background:#0000;border:1px solid var(--border-light);border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;flex:1 1;font-size:.9rem;gap:6px;justify-content:center;padding:8px 10px;transition:all .3s ease}.sidebar-language-btn .react-country-flag,.sidebar-language-btn svg{margin-right:4px}.sidebar-flag{height:1.2em;width:1.2em}.sidebar-flag-sm{height:1em;width:1em}.sidebar-language-btn:hover{background:var(--bg-hover);border-color:var(--accent-green)}.sidebar-language-menu{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:8px;bottom:100%;box-shadow:0 4px 12px var(--shadow-md);display:flex;flex-direction:column;gap:4px;left:0;margin-bottom:8px;max-width:140px;min-width:120px;overflow:visible;padding:4px;position:absolute;white-space:nowrap;z-index:100001}@media (max-width:1100px){.sidebar-language-menu{left:auto;max-width:120px;min-width:100px;right:0}.sidebar-language-option span{font-size:.85rem}}.sidebar-language-option{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-size:.9rem;gap:8px;overflow:visible;padding:8px 12px;text-align:left;transition:background-color .2s ease,color .3s ease;white-space:nowrap;width:100%}.sidebar-language-option:hover{background:var(--bg-hover)}.sidebar-language-option.active{background:#43a0471a;color:var(--accent-green);font-weight:600}.dark-mode .sidebar-language-option.active{background:#66bb6a33;color:var(--accent-green-light)}.sidebar-dark-mode-toggle-btn{align-items:center;background:#0000;border:1px solid var(--border-light);border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;flex:0 0 auto;justify-content:center;min-width:44px;padding:8px 10px;transition:all .3s ease}.sidebar-dark-mode-toggle-btn:hover{background:var(--bg-hover);border-color:var(--accent-green)}.sidebar-dark-mode-icon{font-size:1.1rem;height:20px;width:20px}.sidebar-footer{align-items:stretch;bottom:20px;display:flex;flex-direction:column;gap:8px;left:20px;position:absolute;right:20px;z-index:100000!important}.sidebar-footer-row{align-items:center;display:flex;flex-direction:row;gap:8px;width:100%}.sidebar-more-btn{align-items:center;background:#0000;border:none;border-radius:12px;cursor:pointer;display:flex;flex:1 1;font-size:1.05rem;gap:10px;padding:8px 10px;transition:background-color .3s ease,color .3s ease;z-index:100002}.sidebar-more-btn,.sidebar-more-btn span{color:var(--text-primary)}.sidebar-more-btn:hover{background:var(--bg-hover)}.sidebar-more-btn:hover,.sidebar-more-btn:hover span{color:var(--text-primary)}.hamburger{font-size:1.05rem}.more-label{font-weight:600}.dropdown-menu{background:var(--bg-dropdown);border:1px solid var(--border-light);border-radius:12px;box-shadow:0 10px 30px var(--shadow-lg);overflow:hidden;position:fixed;transition:background-color .3s ease,border-color .3s ease;width:240px;z-index:100001}.dropdown-inner{display:flex;flex-direction:column;padding:12px 6px}.dropdown-item{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;font-size:.98rem;gap:10px;padding:10px 12px;text-align:left;transition:background-color .3s ease,color .3s ease}.dropdown-item:hover{background:var(--bg-hover)}.dropdown-item-blocked,.dropdown-item-blocked:hover{background:#0000;cursor:default;opacity:.35}.dropdown-icon,.dropdown-icon svg{display:inline-flex;flex-shrink:0;justify-content:center;width:28px}.dropdown-text{color:var(--text-primary);transition:color .3s ease}.dropdown-separator{background:var(--border-light);height:1px;margin:8px 0;transition:background-color .3s ease}.dropdown-language-section{padding:8px 12px}.dropdown-language-header{color:var(--text-secondary);font-size:.85rem;font-weight:600;letter-spacing:.5px;margin-bottom:8px;padding:4px 0;text-transform:uppercase}.dropdown-language-options{display:flex;flex-direction:column;gap:4px}.dropdown-language-option{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-size:.9rem;gap:8px;padding:8px 12px;text-align:left;transition:background-color .2s ease,color .3s ease;width:100%}.dropdown-language-option:hover{background:var(--bg-hover)}.dropdown-language-option.active{background:#43a0471a;color:var(--accent-green);font-weight:600}.dark-mode .dropdown-language-option.active{background:#66bb6a33;color:var(--accent-green-light)}.sidebar-profile-block-wrap{margin-top:24px;position:relative;width:100%}.sidebar-profile-block{align-items:center;background:#0000;border:none;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:8px 10px;text-align:left;transition:background-color .3s ease;width:100%}.sidebar-profile-avatar,.sidebar-profile-block:hover{background:var(--bg-hover)}.sidebar-profile-avatar{border-radius:50%;flex-shrink:0;height:40px;overflow:hidden;width:40px}.sidebar-profile-avatar img{height:100%;object-fit:cover;width:100%}.sidebar-profile-avatar-placeholder{align-items:center;color:var(--text-secondary);display:flex;font-size:1.1rem;height:100%;justify-content:center;width:100%}.sidebar-profile-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.sidebar-profile-display-name{color:var(--text-primary);font-size:.95rem;font-weight:600}.sidebar-profile-display-name,.sidebar-profile-username{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-profile-username{color:var(--text-secondary);font-size:.85rem}.sidebar-profile-dropdown{min-width:240px;z-index:100010!important}@media (max-width:1280px){.sidebar{min-width:260px;width:260px}.sidebar-logo{gap:10px;margin-left:10px;margin-right:10px}.sidebar-logo-img{height:42px;width:42px}.sidebar-title{font-size:.95rem;letter-spacing:.5px}}@media (max-width:1100px){.sidebar{max-width:72px;min-width:72px;padding:12px 0 80px;width:72px}.sidebar-logo{gap:0;justify-content:center;margin-left:12px;padding:8px 0;width:48px}.sidebar-logo-icon,.sidebar-logo-img{height:40px;width:40px}.sidebar-logo-icon{font-size:1.75rem}.sidebar-title{display:none}.sidebar-nav{gap:10px;margin-left:8px;padding-right:8px;width:calc(100% - 16px)}.sidebar-create-post-btn,.sidebar-link{gap:0;justify-content:center;padding:8px 0;width:100%}.more-label,.sidebar-create-post-btn span,.sidebar-link span:not(.more-label){display:none!important}.sidebar-footer{left:12px;right:12px;width:calc(100% - 24px)}.sidebar-footer-row{gap:6px}.sidebar-controls{display:none}.sidebar-language-selector{width:100%}.sidebar-more-btn{flex:0 0 auto;justify-content:center;padding:8px 0;width:100%}.sidebar-profile-block-wrap{margin-top:16px}.sidebar-profile-block{justify-content:center;padding:8px 0}.sidebar-profile-info{display:none}.sidebar-profile-avatar{height:36px;width:36px}.sidebar-link-avatar{height:20px;width:20px}.dropdown-menu{width:220px!important}}@media (max-height:720px){.sidebar{padding-bottom:64px}.sidebar-footer{bottom:8px}}@media (max-width:600px){.sidebar{max-width:56px;min-width:56px;padding:10px 0 0;width:56px}.sidebar-logo{margin-left:8px;margin-right:8px;padding:6px 0;width:40px}.sidebar-logo-icon,.sidebar-logo-img{height:36px;width:36px}.sidebar-logo-icon{font-size:1.5rem}.sidebar-nav{margin-left:8px;padding-right:8px;width:calc(100% - 16px)}.sidebar-link{padding:6px 0;width:100%}.sidebar-create-post-btn{justify-content:center;padding:6px 0;width:100%}.more-label,.sidebar-create-post-btn span,.sidebar-link span:not(.more-label){display:none!important}.sidebar-footer{left:8px;right:8px;width:calc(100% - 16px)}.sidebar-controls,.sidebar-footer-row{gap:4px}.sidebar-dark-mode-toggle-btn,.sidebar-language-btn{font-size:.85rem;justify-content:center;min-width:36px;padding:6px 8px}.sidebar-language-btn span{display:none}.sidebar-language-menu{left:auto;max-width:110px;min-width:90px;right:0}.sidebar-language-option{font-size:.8rem;padding:6px 8px}.sidebar-language-option span{font-size:.8rem}.sidebar-more-btn{flex:1 1;min-width:0;padding:6px 0;width:100%}.sidebar-profile-block{justify-content:center;padding:6px 0}.sidebar-profile-info{display:none}.sidebar-profile-avatar{height:32px;width:32px}.dropdown-menu{left:8px!important;width:200px!important}.sidebar-link svg,.sidebar-link>svg{font-size:1.1rem;height:20px;width:20px}.sidebar-link-avatar{height:18px;width:18px}}.app-footer{background:var(--bg-primary);border-top:1px solid var(--border-color);flex-shrink:0;margin-top:auto;padding:0;width:100%}.footer-container{margin:0 auto;max-width:1400px;padding:48px 32px 24px}.footer-content{grid-gap:48px;display:grid;gap:48px;grid-template-columns:repeat(4,1fr);margin-bottom:32px}.footer-column{display:flex;flex-direction:column}.footer-title{color:var(--text-primary);font-size:1rem;font-weight:600;letter-spacing:.5px;margin:0 0 20px;text-transform:uppercase}.footer-links{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.footer-links li{margin:0}.footer-links a{color:var(--text-secondary);display:inline-block;font-size:.9rem;text-decoration:none;transition:color .2s ease}.footer-links a:hover{color:var(--accent-green)}.footer-social{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.footer-social li{margin:0}.footer-social-link{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:not-allowed;display:flex;font-family:inherit;font-size:.9rem;gap:10px;opacity:.7;padding:0;text-align:left;text-decoration:none;transition:color .2s ease}.footer-social-link:hover{color:var(--accent-green);opacity:1}.footer-icon{flex-shrink:0;font-size:1.2rem}.footer-social-link span{align-items:center;display:flex;gap:6px}.coming-soon{color:var(--text-tertiary);font-size:.75rem;font-style:italic}.footer-bottom{border-top:1px solid var(--border-color);padding-top:24px;text-align:center}.footer-bottom-text{color:var(--text-tertiary);font-size:.85rem;line-height:1.5;margin:0}@media (max-width:1200px){.footer-content{gap:40px;grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.footer-container{padding:32px 20px 20px}.footer-content{gap:32px;grid-template-columns:1fr}.footer-title{margin-bottom:16px}.footer-bottom-text{font-size:.8rem}}@media (max-width:600px){.footer-container{padding:24px 16px 16px}.footer-content{gap:24px}.footer-links,.footer-social{gap:10px}.footer-links a,.footer-social-link{font-size:.85rem}}.public-layout{background:var(--bg-tertiary);display:flex;flex-direction:column;min-height:100vh;transition:background-color .3s ease}.public-layout-content{box-sizing:border-box;flex:1 1;padding:100px 32px 24px;width:100%}.public-layout-inner{width:100%}@media (max-width:768px){.public-layout-content{padding:100px 20px 20px}}@media (max-width:600px){.public-layout-content{padding:90px 16px 16px}}.settings-layout{background:var(--bg-tertiary);box-sizing:border-box;display:flex;flex-direction:column;margin:0;max-width:none;min-height:calc(100vh - 48px);padding:24px 32px;position:relative;transition:background-color .3s ease;width:100%}.settings-layout>.page-title-container{align-items:center;margin-bottom:24px;width:100%}.settings-layout-content{align-items:flex-start;display:flex;gap:32px;width:100%}@media (max-width:900px){.settings-layout{padding:20px}.settings-layout-content{flex-direction:column;gap:16px}.settings-menu{max-height:none;position:static;width:100%}.settings-page{width:100%}}@media (max-width:600px){.settings-layout{gap:12px;padding:16px}.settings-menu{border-radius:8px;padding:12px 0}.settings-page h1{font-size:1.2rem}.settings-card{border-radius:8px;padding:16px}.settings-avatar-section{align-items:flex-start;flex-direction:column;gap:16px}.settings-avatar-preview,.settings-avatar-preview-wrapper{height:70px;width:70px}.settings-avatar-actions,.settings-avatar-actions .btn-secondary{width:100%}.settings-name-fields{grid-template-columns:1fr}.settings-item-content{flex-direction:column;gap:12px}.privacy-toggle-content{align-items:flex-start;flex-direction:column;gap:8px}}.settings-menu{align-self:flex-start;background:var(--bg-card);border-radius:12px;box-shadow:0 2px 12px var(--shadow-md);flex-shrink:0;height:-webkit-fit-content;height:fit-content;max-height:calc(100vh - 48px);min-width:220px;overflow-x:hidden;overflow-y:auto;padding:14px 0;position:-webkit-sticky;position:sticky;top:24px;transition:background-color .3s ease,box-shadow .3s ease;width:260px;will-change:transform}.settings-menu-title{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:.88rem;font-weight:600;margin-bottom:8px;padding:0 16px 12px;transition:color .3s ease}.settings-menu ul{list-style:none;margin:0;padding:0}.settings-menu-item{border-radius:10px;color:var(--text-primary);display:block;font-weight:500;padding:12px 16px;text-decoration:none;transition:background-color .3s ease,color .3s ease}.settings-menu-item:hover{background:var(--bg-hover)}.settings-menu-item-blocked{color:var(--text-secondary);cursor:not-allowed;opacity:.5}.settings-2fa-required-banner{background:#43a0471f;border:1px solid var(--accent-green);border-radius:10px;color:var(--text-primary);font-size:.95rem;line-height:1.45;margin-bottom:20px;padding:14px 18px}.settings-menu-item.active{background:#43a0471a;color:var(--accent-green)}.dark-mode .settings-menu-item.active{background:#66bb6a33;color:var(--accent-green-light)}.modal-overlay{z-index:10000}.modal-content-small{background:var(--bg-card);border-radius:12px;box-shadow:0 8px 32px var(--shadow-lg);max-width:400px;padding:24px;transition:background-color .3s ease,box-shadow .3s ease;width:90%}.modal-content-small h3{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0 0 12px;transition:color .3s ease}.modal-content-small p{color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin:0 0 20px;transition:color .3s ease}.modal-actions .btn-danger{background:#ff4d4f;border:none;border-radius:var(--btn-radius);color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:10px 20px;transition:background-color .2s ease}.modal-actions .btn-danger:hover{background:#ff7875}.modal-actions .btn-secondary{margin:0}.settings-page{align-items:flex-start;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:16px;margin:0;max-width:none;min-width:0;padding:0;width:auto}.settings-page h1{color:var(--text-primary);font-size:1.35rem;font-weight:700;margin:0 0 12px;transition:color .3s ease}.settings-card{background:var(--bg-card);border-radius:12px;box-shadow:0 2px 12px var(--shadow-md);box-sizing:border-box;display:flex;flex-direction:column;gap:0;margin:0;max-width:520px;padding:28px;transition:background-color .3s ease,box-shadow .3s ease;width:100%}.settings-card .settings-label,.settings-card label{color:var(--text-primary);display:block;font-size:.88rem;font-weight:500;margin-bottom:7px;transition:color .3s ease}.settings-card .settings-input,.settings-card input[type=email],.settings-card input[type=text],.settings-card textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-sizing:border-box;color:var(--text-primary);font-size:.95rem;min-height:40px;padding:9px 12px;transition:border-color .2s ease,background-color .3s ease,color .3s ease,box-shadow .2s ease;width:100%}.settings-card .settings-input:focus,.settings-card input:focus,.settings-card textarea:focus{border-color:var(--accent-green);box-shadow:0 0 0 3px #43a04726;outline:none}.dark-mode .settings-card .settings-input:focus,.dark-mode .settings-card input:focus,.dark-mode .settings-card textarea:focus{box-shadow:0 0 0 3px #66bb6a33}.settings-card .settings-textarea{min-height:72px;resize:vertical}.settings-card .btn-primary{border-radius:var(--btn-radius);font-size:1rem;height:44px;padding:0 24px}.settings-avatar-section{align-items:center;border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding:0 0 20px;transition:border-color .3s ease}.settings-avatar-preview-wrapper{height:80px;position:relative;width:80px}.settings-avatar-preview{align-items:center;background:var(--bg-hover);border-radius:50%;display:flex;height:80px;justify-content:center;overflow:visible;transition:background-color .3s ease;width:80px}.avatar-img,.settings-avatar-ring{height:100%;width:100%}.avatar-img{object-fit:cover}.avatar-delete-btn{align-items:center;background:#ff4d4fe6;border:2px solid var(--bg-card);border-radius:50%;bottom:-8px;color:#fff;cursor:pointer;display:flex;font-size:.75rem;height:24px;justify-content:center;position:absolute;right:-8px;transition:background-color .2s ease,transform .2s ease;width:24px;z-index:1}.avatar-delete-btn:hover{background:#ff4d4f;transform:scale(1.1)}.avatar-delete-btn svg{height:12px;width:12px}.avatar-placeholder{color:var(--text-quaternary);font-size:2rem;font-weight:700;transition:color .3s ease}.settings-avatar-actions{display:flex;gap:10px}.settings-form-section{margin-bottom:32px}.settings-form-section:last-of-type{margin-bottom:0}.settings-section-title{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:.9rem;font-weight:600;margin:0 0 20px;padding-bottom:8px;transition:color .3s ease,border-color .3s ease}.settings-form-group{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.settings-form-group:last-child{margin-bottom:0}.settings-name-fields{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.settings-username-group{margin-bottom:20px}.settings-username-input{align-items:stretch;border:1px solid var(--border-color);border-radius:8px;display:flex;min-height:40px;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.settings-username-input:focus-within{border-color:var(--accent-green);box-shadow:0 0 0 3px #43a04726}.dark-mode .settings-username-input:focus-within{box-shadow:0 0 0 3px #66bb6a33}.settings-username-prefix{align-items:center;background:var(--bg-hover);border-right:1px solid var(--border-color);color:var(--text-secondary);display:flex;font-size:1.1rem;font-weight:600;justify-content:center;min-width:44px;padding:0 14px;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.settings-username-field{border:none!important;border-radius:0!important;box-shadow:none!important;min-height:38px!important;padding:0 12px!important}.settings-username-field::placeholder{color:var(--text-tertiary)}.settings-username-input input:disabled{background:var(--bg-hover);cursor:not-allowed;opacity:.7}.settings-username-input[data-disabled=true]{background:var(--bg-hover);border-color:var(--border-light)}.settings-username-input[data-disabled=true] .settings-username-prefix{color:var(--text-tertiary)}.settings-username-preview{background:var(--bg-hover);border-left:3px solid var(--accent-green);border-radius:8px;color:var(--text-secondary);font-size:.9rem;margin:8px 0 0;padding:8px 12px;transition:color .3s ease,background-color .3s ease}.settings-username-preview strong{color:var(--text-primary);font-weight:600}.dark-mode .settings-username-preview{border-left-color:var(--accent-green-light)}.settings-field-warning{background:#43a04714;border-radius:8px;color:var(--accent-green);font-size:.9rem;font-weight:500;margin:8px 0 0;padding:8px 12px;transition:color .3s ease}.dark-mode .settings-field-warning{background:#66bb6a1f;color:var(--accent-green-light)}.settings-field-info{color:var(--text-secondary);font-size:.9rem;line-height:1.45;margin:8px 0 0;transition:color .3s ease}.bio-counter,.settings-bio-counter{color:var(--text-tertiary);font-size:.85rem;margin-top:4px;text-align:right;transition:color .3s ease}.settings-hidden-input{display:none}.settings-inline-button{align-items:center;display:inline-flex;gap:8px;width:auto}.settings-actions-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.settings-message{border-radius:10px;font-size:.95rem;line-height:1.45;margin-bottom:8px;margin-top:8px;padding:14px 18px}.settings-message.success{background:var(--success-bg);border:1px solid #43a0474d;color:var(--success-text)}.settings-message.error{background:#ffebee;border:1px solid #c628284d;color:#c62828}.dark-mode .settings-message.error{background:#c6282840;color:#ffcdd2}.settings-delete-warning-text{color:var(--text-secondary);margin-bottom:20px}.settings-deletion-warning{background-color:var(--bg-secondary);border:1px solid var(--border-light);border-radius:8px;margin-bottom:20px;padding:16px 20px}.settings-deletion-warning-title{align-items:center;color:var(--text-primary);display:flex;font-size:.95rem;font-weight:600;gap:8px;margin-top:0}.settings-deletion-warning-primary{color:var(--text-primary);margin:8px 0}.settings-deletion-warning-muted,.settings-deletion-warning-small{color:var(--text-secondary);margin:8px 0}.settings-deletion-warning-small{font-size:.9em}.settings-deletion-warning-action{margin-top:12px}.settings-danger-button{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--btn-radius);color:var(--text-primary);cursor:pointer;font-size:16px;font-weight:700;padding:12px 24px}.settings-modal-content{padding:20px}.settings-modal-text-primary{color:var(--text-primary);margin-bottom:16px}.settings-modal-list,.settings-modal-text-secondary{color:var(--text-secondary);margin-bottom:20px}.settings-modal-list{padding-left:20px}.settings-modal-form-group{margin-bottom:20px}.settings-modal-label{color:var(--text-primary);display:block;margin-bottom:8px}.settings-modal-input{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);padding:10px;width:100%}.settings-modal-input.has-error{border-color:var(--border-color)}.settings-modal-error{color:var(--text-secondary);font-size:.9em;margin-top:8px}.settings-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.settings-modal-cancel{background-color:var(--bg-secondary);cursor:pointer}.settings-modal-cancel,.settings-modal-confirm{border:1px solid var(--border-color);border-radius:var(--btn-radius);color:var(--text-primary);padding:10px 20px}.settings-modal-confirm{background-color:var(--bg-primary)}.settings-modal-confirm:disabled{background-color:var(--bg-secondary);border-color:var(--border-color);cursor:not-allowed;opacity:.5}.settings-item{border-bottom:1px solid var(--border-color);margin-bottom:12px;padding:16px 0;transition:border-color .3s ease}.settings-item:last-child{border-bottom:none;margin-bottom:0}.settings-item-content{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.settings-label{color:var(--text-primary);display:block;font-size:.92rem;font-weight:500;margin-bottom:8px;transition:color .3s ease}.settings-description{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0;transition:color .3s ease}.privacy-toggle-section{border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;gap:12px;margin-bottom:12px;padding:16px 0;transition:border-color .3s ease}.privacy-toggle-content{align-items:center;display:flex;gap:12px;justify-content:space-between}.privacy-label{color:var(--text-primary);font-size:1rem;font-weight:500;transition:color .3s ease}.privacy-description{color:var(--text-tertiary);font-size:.9rem;line-height:1.5;margin:0;transition:color .3s ease}.twofactor-coming-soon{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:999px;color:var(--text-tertiary);font-size:.8rem;font-weight:600;padding:4px 10px}.twofactor-toggle-disabled{align-items:center;display:inline-flex;gap:8px}.totp-section{border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:12px;margin-top:12px;padding-top:16px}.totp-title{align-items:center;color:var(--text-primary);display:flex;font-size:1rem;font-weight:600;gap:8px}.totp-status{align-items:center;background:#43a04726;border-radius:50%;color:var(--accent-green);display:inline-flex;height:20px;justify-content:center;width:20px}.totp-description{color:var(--text-secondary);font-size:.9rem}.totp-setup{align-items:center;display:flex;flex-direction:column;gap:10px}.totp-qr{background:#fff;border-radius:8px;height:180px;padding:8px;width:180px}.totp-secret{align-items:center;display:flex;flex-direction:column;gap:4px}.totp-secret-label{color:var(--text-secondary);font-size:.8rem}.totp-secret-value{background:var(--bg-secondary);border-radius:6px;color:var(--text-primary);font-family:inherit;font-size:.95rem;padding:6px 10px}.totp-copy-message{color:var(--text-secondary);font-size:.85rem}.totp-verify{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.totp-verify input{background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);flex:1 1;min-width:180px;padding:8px 10px}.totp-enabled-text{color:var(--text-secondary);font-size:.9rem}.devices-list,.recent-logins-list{display:flex;flex-direction:column;gap:12px}.device-item,.recent-login-item{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:12px}.device-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.device-title{align-items:center;color:var(--text-primary);display:flex;flex-wrap:wrap;font-weight:600;gap:8px}.device-current{background:#43a0471a;border-radius:999px;color:var(--accent-green);font-size:.75rem;padding:2px 6px}.device-meta{color:var(--text-secondary);font-size:.85rem}.device-actions{align-self:flex-start;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-left:auto}.devices-section-title{margin-top:8px}.devices-section-title,.recent-logins-title{color:var(--text-primary);font-size:.92rem;font-weight:500}.recent-logins-title{margin-top:16px}.device-name-edit{display:flex;flex-direction:column;gap:6px;margin-top:8px}.device-name-label{color:var(--text-secondary);font-size:.85rem}.device-name-input{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.device-name-input input{background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);flex:1 1;max-width:240px;min-width:140px;padding:8px 10px}.devices-actions-bar{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-bottom:12px}.all-activities-text{color:var(--text-secondary);font-size:.9rem;margin-top:12px}.toggle-switch{display:inline-block;height:28px;margin:0;position:relative;width:50px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.6}.toggle-switch input:disabled+.toggle-slider:before{background-color:var(--bg-tertiary)}.toggle-slider{background-color:var(--border-color);border-radius:28px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:var(--bg-primary);border-radius:50%;bottom:4px;content:"";height:20px;left:4px;position:absolute;transition:.3s;width:20px}.toggle-switch input:checked+.toggle-slider{background-color:var(--text-primary)}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(22px)}@media (max-width:1200px){.settings-layout{gap:18px;max-width:1200px;padding:18px 16px}.settings-card{max-width:100%}}@media (max-width:900px){.settings-layout{padding:16px 14px}.settings-layout-content{flex-direction:column}.settings-menu{min-width:0;position:static;width:100%}.settings-page{width:100%}.settings-name-fields{grid-template-columns:1fr}}@media (max-width:768px){.settings-layout{padding:12px}.settings-card{box-sizing:border-box;max-width:100%;padding:20px;width:100%}.settings-avatar-section{justify-content:flex-start}.settings-form-section{margin-bottom:24px}.settings-section-title{font-size:.88rem;margin-bottom:14px}.settings-form-group{margin-bottom:18px}.settings-username-input{min-height:48px}.settings-username-prefix{font-size:1.15rem;min-width:48px}.settings-username-field{font-size:16px;min-height:46px!important}.settings-username-preview{font-size:.9rem;padding:10px 12px}.privacy-toggle-content{align-items:flex-start;flex-direction:column}.btn-primary{font-size:1rem;margin-top:8px;min-height:48px}.btn-primary,.btn-secondary{display:inline-flex;text-align:center}.btn-primary,.btn-secondary,.settings-inline-button{justify-content:center;width:100%}}.change-password-modal-content{padding:8px 0}.change-password-description{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin-bottom:20px;transition:color .3s ease}.change-password-form{display:flex;flex-direction:column;gap:16px}.password-field{display:flex;flex-direction:column;gap:6px}.password-field label{color:var(--text-primary);font-size:.9rem;font-weight:500;transition:color .3s ease}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper .form-input{padding-right:40px;width:100%}.password-toggle{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:4px;position:absolute;right:10px;transition:color .3s ease}.password-toggle:hover{color:var(--accent-green)}.password-toggle:disabled{cursor:not-allowed;opacity:.5}.change-password-status{align-items:center;border-radius:8px;display:flex;font-size:.9rem;font-weight:500;gap:8px;padding:12px;transition:all .3s ease}.change-password-status.success{background-color:var(--success-bg);color:var(--success-text)}.change-password-status.error{background-color:var(--error-bg);color:var(--error-text)}.change-password-status svg{flex-shrink:0;font-size:1.1rem}.change-password-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.change-password-actions .btn{min-width:100px}.change-password-icon{margin-right:8px}.change-password-email-sent{align-items:center;display:flex;flex-direction:column;gap:12px;padding:8px 0 4px;text-align:center}.change-password-email-icon{color:var(--accent-green);font-size:2.5rem;margin-bottom:4px}.change-password-email-title{color:var(--text-primary);font-size:1rem;font-weight:700;margin:0}.change-password-email-body{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0}.change-password-email-note{background:#43a04714;border:1px solid #43a04733;border-radius:8px;color:var(--accent-green);font-size:.85rem;font-weight:500;line-height:1.45;margin:0;padding:10px 14px}.dark-mode .change-password-email-note{background:#66bb6a1f;border-color:#66bb6a40;color:var(--accent-green-light)}.change-password-email-sent .change-password-actions{justify-content:center;margin-top:4px;width:100%}.admin-nav{display:flex;flex-direction:column;min-height:calc(100vh - 60px);padding:12px 0}.admin-nav-header{border-bottom:1px solid var(--border-color);flex-shrink:0;margin-bottom:8px;padding:0 16px 12px}.admin-nav-title{color:var(--text-primary);font-size:1rem;font-weight:700;letter-spacing:.02em;overflow:visible;white-space:nowrap}.admin-nav-list{flex:1 1;list-style:none;margin:0;padding:6px 10px}.admin-nav-list li{margin-bottom:2px}.admin-nav-link{align-items:center;border-radius:8px;color:var(--text-secondary);display:flex;font-size:.9rem;font-weight:500;gap:10px;min-width:0;overflow:visible;padding:8px 12px;text-decoration:none;transition:background .2s,color .2s;white-space:nowrap}.admin-nav-link span{overflow:visible;text-overflow:clip}.admin-nav-link:hover{background:var(--bg-hover);color:var(--text-primary)}.admin-nav-link-active{background:#1e3a5f;color:#fff}.admin-nav-link-active:hover{background:#254670;color:#fff}.admin-nav-icon{flex-shrink:0;font-size:1.15rem;text-align:center;width:22px}.admin-nav-footer{border-top:1px solid var(--border-color);flex-shrink:0;margin-top:auto;padding:10px 12px}.admin-nav-link-out{color:var(--text-tertiary);font-size:.9rem}.admin-nav-link-out:hover{color:var(--accent-green)}.admin-layout .admin-layout-body{display:flex;flex:1 1;margin-left:280px;min-height:100vh}.admin-sidebar{background:var(--bg-card);border-right:1px solid var(--border-color);flex-shrink:0;height:100vh;left:0;overflow-y:auto;position:fixed;top:0;width:280px;z-index:100}.admin-main{display:flex;flex:1 1;flex-direction:column;min-width:0}.admin-main-inner{box-sizing:border-box;flex:1 1;margin:0 auto;max-width:1600px;padding:24px;width:100%}.admin-main-inner .admin-page-title{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0 0 .75rem}.admin-layout .app-footer{margin-left:280px}@media (max-width:900px){.admin-layout-body{flex-direction:column;margin-left:0}.admin-layout .app-footer{margin-left:0}.admin-sidebar{border-bottom:1px solid var(--border-color);border-right:none;height:auto;position:relative;width:100%}.admin-main-inner{padding:16px}}.admin-dashboard{margin:0 auto;max-width:1200px}.admin-dashboard-header{margin-bottom:28px}.admin-dashboard-header .admin-users-back{background:none;border:none;color:var(--text-secondary);cursor:pointer;display:inline-block;font-size:.95rem;margin-bottom:4px;padding:0;text-decoration:none}.admin-dashboard-header .admin-users-back:hover{color:var(--accent-green)}.admin-dashboard-header .admin-page-title{margin:0 0 6px}.admin-dashboard-subtitle{color:var(--text-tertiary);font-size:.95rem;margin:0}.admin-dashboard-alert{align-items:center;border-radius:8px;display:flex;gap:10px;margin-bottom:20px;padding:12px 16px}.admin-dashboard-alert-error{background:#ff4d4f1a;border:1px solid #ff4d4f4d;color:#c0392b;color:var(--error-color,#c0392b)}.admin-dashboard-section-title{color:var(--text-secondary);font-size:1rem;font-weight:600;letter-spacing:.04em;margin:0 0 14px;text-transform:uppercase}.admin-dashboard-stats{margin-bottom:32px}.admin-dashboard-stats-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.admin-dashboard-stat-card{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;display:flex;gap:14px;padding:18px;text-align:left;transition:transform .2s,box-shadow .2s,border-color .2s}.admin-dashboard-stat-card:hover{border-color:var(--accent-green);box-shadow:0 4px 12px var(--shadow-md);transform:translateY(-2px)}.admin-dashboard-stat-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;font-size:1.35rem;height:44px;justify-content:center;width:44px}.admin-dashboard-stat-icon-users{background:#667eea33;color:#667eea}.admin-dashboard-stat-icon-active{background:#52c41a33;color:#52c41a}.admin-dashboard-stat-icon-banned{background:#ff4d4f33;color:#ff4d4f}.admin-dashboard-stat-icon-challenges{background:#faad1433;color:#faad14}.admin-dashboard-stat-icon-reviews{background:#722ed133;color:#722ed1}.admin-dashboard-stat-content{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-dashboard-stat-value{color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1.2}.admin-dashboard-stat-label{color:var(--text-tertiary);font-size:.8rem}.admin-dashboard-sections-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.admin-dashboard-section-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;padding:20px;text-align:left;transition:transform .2s,box-shadow .2s,border-color .2s}.admin-dashboard-section-card:hover{border-color:var(--accent-green);box-shadow:0 4px 16px var(--shadow-md);transform:translateY(-2px)}.admin-dashboard-section-card-header{align-items:center;display:flex;gap:12px;margin-bottom:10px}.admin-dashboard-section-card-icon{align-items:center;background:var(--bg-hover);border-radius:10px;color:var(--accent-green);display:flex;font-size:1.1rem;height:40px;justify-content:center;width:40px}.admin-dashboard-section-card-header h3{color:var(--text-primary);flex:1 1;font-size:1.05rem;font-weight:600;margin:0}.admin-dashboard-section-card-arrow,.admin-dashboard-section-card-desc{color:var(--text-tertiary);font-size:.9rem}.admin-dashboard-section-card-desc{line-height:1.4;margin:0 0 14px}.admin-dashboard-section-card-footer{color:var(--text-secondary);font-size:.85rem}.admin-dashboard-section-card-extra{color:var(--text-tertiary);margin-left:8px}@media (max-width:600px){.admin-dashboard-stats-grid{grid-template-columns:repeat(2,1fr)}.admin-dashboard-sections-grid{grid-template-columns:1fr}}.admin-placeholder-page{margin:0 auto;max-width:560px;padding:48px 24px;text-align:center}.admin-placeholder-icon{align-items:center;background:var(--bg-hover);border-radius:16px;color:var(--text-tertiary);display:flex;font-size:2.5rem;height:80px;justify-content:center;margin:0 auto 24px;width:80px}.admin-placeholder-page h1{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 12px}.admin-placeholder-page p{color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin:0 0 8px}.admin-placeholder-coming{color:var(--text-tertiary);font-size:.9rem;font-style:italic;margin-top:16px}.admin-posts-page{box-sizing:border-box;margin:0 auto;max-width:900px;padding:24px}.admin-posts-header{margin-bottom:20px}.admin-posts-back{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.95rem;margin-bottom:8px;padding:0}.admin-posts-back:hover{color:var(--accent-green)}.admin-posts-title{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0}.admin-posts-error{color:#c0392b;color:var(--error-color,#c0392b);font-size:.95rem;margin-bottom:16px}.admin-posts-filters{margin-bottom:16px}.admin-posts-filter-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.admin-posts-filter-label{color:var(--text-secondary);font-size:.9rem;font-weight:500}.admin-posts-select{background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.9rem;min-width:220px;padding:8px 12px}.admin-posts-select:focus{border-color:var(--accent-green);outline:none}.admin-posts-range-row{align-items:flex-end;border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px;padding:12px 0}.admin-posts-date-group{display:flex;flex-direction:column;gap:4px}.admin-posts-date-label{color:var(--text-tertiary);font-size:.8rem}.admin-posts-date-input{background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.9rem;padding:8px 12px}.admin-posts-date-input:focus{border-color:var(--accent-green);outline:none}.admin-posts-apply-range{background:var(--bg-card);border:1px solid var(--accent-green);border-radius:6px;color:var(--accent-green);cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px}.admin-posts-apply-range:hover:not(:disabled){background:var(--accent-green);color:#fff}.admin-posts-apply-range:disabled{cursor:not-allowed;opacity:.5}.admin-posts-toolbar{margin-top:8px}.admin-posts-refresh{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.9rem;gap:8px;padding:8px 16px}.admin-posts-refresh:hover:not(:disabled){border-color:var(--accent-green);color:var(--accent-green)}.admin-posts-refresh:disabled{cursor:not-allowed;opacity:.7}.admin-posts-refresh .spin{animation:adminPostsSpin .8s linear infinite}@keyframes adminPostsSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.admin-posts-count{color:var(--text-tertiary);font-size:.85rem;margin:0 0 16px}.admin-posts-list{display:flex;flex-direction:column;gap:16px}.admin-posts-empty,.admin-posts-loading{color:var(--text-tertiary);font-size:.95rem;padding:32px 16px;text-align:center}.admin-post-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:14px;transition:box-shadow .2s,border-color .2s}.admin-post-card:hover{box-shadow:0 2px 8px #0000001a;box-shadow:0 2px 8px var(--shadow-lg,#0000001a)}.admin-post-card-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.admin-post-card-user{display:flex;flex-direction:column;gap:2px}.admin-post-username{color:var(--text-primary);font-size:.95rem;font-weight:600}.admin-post-date{color:var(--text-tertiary);font-size:.8rem}.admin-post-link{color:var(--accent-green);font-size:.85rem;text-decoration:none;white-space:nowrap}.admin-post-link:hover{text-decoration:underline}.admin-post-content{color:var(--text-secondary);font-size:.9rem;line-height:1.45;margin:0 0 10px;word-break:break-word}.admin-post-image-wrap{margin-bottom:10px}.admin-post-thumb{border:1px solid var(--border-color);border-radius:8px;max-height:120px;max-width:200px;object-fit:cover}.admin-post-stats{color:var(--text-tertiary);display:flex;font-size:.85rem;gap:16px}.admin-post-stat{align-items:center;display:inline-flex;gap:4px}.admin-post-stat svg{font-size:.9rem}.admin-users-page{box-sizing:border-box;margin:0 auto;max-width:1400px;padding:24px}.admin-users-page-header{margin-bottom:20px}.admin-users-back{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.95rem;margin-bottom:8px;padding:0}.admin-users-back:hover{color:var(--accent-green)}.admin-users-page-header .admin-page-title{margin-bottom:16px}.admin-users-filters{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.admin-users-filter-btn{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--btn-radius);color:var(--text-secondary);cursor:pointer;font-size:.82rem;font-weight:500;padding:5px 12px;transition:all .2s}.admin-users-filter-btn:hover{border-color:var(--accent-green);color:var(--accent-green)}.admin-users-filter-btn.active{background:var(--accent-green);border-color:var(--accent-green);color:#fff}.users-count{color:var(--text-tertiary);font-size:.85rem;margin-top:8px}.dark-mode .users-count{color:#ffffff80}.admin-users-icon{margin-right:4px}.users-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:16px}.user-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 1px 4px var(--shadow-md);padding:14px;transition:box-shadow .2s,background-color .2s,border-color .2s}.user-card:hover{box-shadow:0 2px 8px var(--shadow-lg)}.user-card.banned{background:#ff4d4f0f;border-color:#ff4d4f80}.dark-mode .user-card.banned{background:#ff4d4f1a;border-color:#ff787566}.user-card-section{border-top:1px solid var(--border-color);margin-top:10px;padding-top:10px}.user-card-identity,.user-card-section:first-child{border-top:none;margin-top:0;padding-top:0}.user-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.user-header-badges{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.admin-user-badge{border-radius:4px;font-size:.65rem;font-weight:600;padding:2px 6px}.admin-user-badge.new{background:#52c41a33;color:#52c41a}.user-name{color:var(--text-primary);font-size:1.05rem;font-weight:600;line-height:1.3;margin:0 0 2px}.user-name-link{color:var(--text-primary);text-decoration:none}.user-name-link:hover{color:var(--accent-green);text-decoration:underline}.user-username{color:var(--text-secondary);font-size:.85rem;font-weight:500;margin:0 0 6px}.user-meta{margin-top:6px}.user-email{color:var(--text-tertiary);font-size:.78rem;line-height:1.3;margin:0 0 6px;word-break:break-all}.dark-mode .user-email{color:#ffffff80}.verification-status{display:flex;flex-wrap:wrap;gap:6px}.status-badge-inline{border-radius:4px;font-size:.72rem;font-weight:500;padding:2px 6px}.status-badge-inline.verified{background:#52c41a26;color:#52c41a}.status-badge-inline.unverified{background:#ff4d4f1f;color:#ff7875}.status-badge-inline.enabled{background:#1890ff26;color:#69c0ff}.status-badge-inline.disabled{background:var(--bg-hover);color:var(--text-tertiary)}.user-avatar{height:52px;width:52px}.user-avatar-img{height:100%;width:100%}.banned-badge{background:#ff4d4f;border-radius:4px;color:#fff;font-size:.7rem;font-weight:600;padding:2px 8px}.user-card-stats .user-stats{grid-gap:4px;background:#0000;border-radius:0;display:grid;gap:4px;margin:0 0 8px;padding:0}.stat-item{align-items:center;display:flex;font-size:.82rem;justify-content:space-between;padding:3px 0}.stat-label{color:var(--text-tertiary);font-weight:500}.dark-mode .stat-label{color:#ffffff8c}.stat-value{font-feature-settings:"tnum";color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:600}.admin-xp-adjust{gap:2px;margin-left:6px;vertical-align:middle}.admin-xp-adjust,.admin-xp-btn{align-items:center;display:inline-flex}.admin-xp-btn{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--btn-radius);color:var(--text-secondary);cursor:pointer;font-size:.7rem;height:22px;justify-content:center;transition:all .2s;width:22px}.admin-xp-btn:hover:not(:disabled){border-color:var(--accent-green);color:var(--accent-green)}.admin-xp-btn:disabled{cursor:not-allowed;opacity:.5}.admin-link-profile{align-items:center;color:var(--accent-green);display:inline-flex;font-size:.8rem;gap:4px;margin-top:4px;text-decoration:none}.admin-link-profile:hover{text-decoration:underline}.user-card-actions{border-top:1px solid var(--border-color);margin-top:10px;padding-top:10px}.user-actions{flex-direction:column;margin-top:0}.actions-row,.user-actions{display:flex;gap:6px}.actions-row .btn-action{flex:1 1}.btn-send-code{width:100%}.ban-reason{background:#faad141a;border-left:2px solid #faad14;border-radius:4px;color:var(--text-secondary);font-size:.78rem;margin-top:8px;padding:6px 10px}.ban-reason strong{color:#d46b08}.dark-mode .ban-reason{background:#faad141f;color:#fffc}.no-results{color:#999}.modal-content h2{margin:0 0 16px}.modal-user-info{background:var(--bg-hover);border-radius:6px;color:var(--text-tertiary);font-size:.95rem;margin-bottom:20px;padding:12px;transition:background-color .3s ease,color .3s ease}.modal-field textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:inherit;font-size:.95rem;padding:10px;transition:border-color .3s ease,background-color .3s ease,color .3s ease;width:100%}.modal-field textarea:focus{border-color:var(--accent-green);outline:none}.modal-message{background:var(--bg-hover);border-radius:6px;color:var(--text-primary);font-size:1rem;margin-bottom:20px;padding:12px;transition:background-color .3s ease,color .3s ease}@media (max-width:900px){.admin-users-page{padding:20px}.admin-users-page h1{font-size:2rem}.search-input{max-width:100%}.users-table{-webkit-overflow-scrolling:touch;overflow-x:auto}.users-table table{min-width:800px}}@media (max-width:600px){.admin-users-page{padding:16px}.admin-users-page h1{font-size:1.6rem;margin-bottom:16px}.search-section{margin-bottom:16px}.users-table{-webkit-overflow-scrolling:touch;overflow-x:auto}.users-table table{min-width:700px}.user-actions{flex-direction:column;gap:8px}.user-action-btn{font-size:.85rem;padding:6px 12px}}.admin-challenges-page{box-sizing:border-box;margin:0 auto;max-width:1400px;padding:24px}.admin-challenges-page-header{margin-bottom:16px}.admin-challenges-page-header .admin-users-back{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.95rem;margin-bottom:4px;padding:0}.admin-challenges-page-header .admin-users-back:hover{color:var(--accent-green)}.admin-challenges-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.admin-challenges-title-row .admin-page-title{margin-bottom:0}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.search-section{margin-bottom:16px}.search-input{background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.9rem;max-width:560px;outline:none;padding:8px 12px;transition:border-color .2s;width:100%}.search-input:focus{border-color:var(--accent-green)}.challenges-count{color:var(--text-tertiary);font-size:.85rem;margin-top:8px;transition:color .3s ease}.error-message{background:#fff2f0;border-radius:8px;color:#ff4d4f;margin-bottom:16px;padding:12px 16px}.challenges-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:16px}.challenge-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 1px 4px var(--shadow-sm);box-sizing:border-box;padding:14px;position:relative;transition:box-shadow .2s,background-color .3s ease,border-color .3s ease;width:100%}.challenge-card:hover{box-shadow:0 2px 8px var(--shadow-lg)}.challenge-card-section{border-top:1px solid var(--border-color);margin-top:10px;padding-top:10px}.challenge-card-section:first-child{border-top:none;margin-top:0;padding-top:0}.challenge-card-head .challenge-description{margin-bottom:0}.challenge-title{color:var(--text-primary);font-size:1.1rem;font-weight:600;line-height:1.3;margin:0 0 6px;transition:color .3s ease}.challenge-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-tertiary);display:-webkit-box;font-size:.88rem;line-height:1.45;margin:0;overflow:hidden;transition:color .3s ease}.challenge-card-stats{margin-top:10px;padding-top:10px}.challenge-stats{grid-gap:8px 12px;display:grid;gap:8px 12px;grid-template-columns:repeat(2,1fr);transition:background-color .3s ease}.challenge-stat-item{display:flex;flex-direction:column;gap:2px}.challenge-stat-label{color:var(--text-tertiary);font-size:.75rem;font-weight:500;transition:color .3s ease}.challenge-stat-value{font-feature-settings:"tnum";color:var(--text-primary);font-size:.9rem;font-variant-numeric:tabular-nums;font-weight:600;transition:color .3s ease}.challenge-card-actions{display:flex;gap:8px;margin-top:10px;padding-top:10px}.challenge-card-actions button{flex:1 1}.challenge-card-actions .btn-edit:hover{border-color:var(--accent-green);color:var(--accent-green)}.translations-section{border-top:1px solid var(--border-color);margin-top:20px;padding-top:20px}.translations-header{align-items:center;display:flex;font-size:1.1rem;gap:8px;margin-bottom:15px}.translations-note{color:var(--text-secondary);font-size:.85rem;font-weight:400}.translation-block{border-radius:8px;padding:15px}.translation-block-primary{background-color:var(--bg-secondary);margin-bottom:25px}.translation-block-secondary{background-color:var(--bg-secondary);border:1px solid var(--border-light)}.translation-title{align-items:center;color:var(--text-primary);display:flex;font-size:1rem;gap:8px;margin-bottom:15px}.translation-flag{height:1em;margin-right:4px;width:1em}.translation-valid-icon{color:var(--text-tertiary);font-size:.9rem}.translation-label{align-items:center;display:flex;gap:8px;justify-content:space-between}.translate-button{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--btn-radius);color:var(--text-primary);cursor:pointer;font-size:.75rem;padding:4px 12px;transition:opacity .2s ease,background-color .2s ease}.translate-button:disabled{background-color:var(--bg-hover);cursor:not-allowed;opacity:.6}.translation-status{align-items:center;color:var(--text-secondary);display:flex;font-size:.85rem;gap:4px;margin-top:4px}.translation-status-icon{font-size:.9rem}.no-results{color:var(--text-tertiary);padding:60px 20px;text-align:center}.no-results p{font-size:1.2rem}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:var(--bg-card);border-radius:12px;box-shadow:0 8px 32px var(--shadow-lg);max-height:90vh;max-width:500px;overflow-y:auto;padding:32px;transition:background-color .3s ease,box-shadow .3s ease;width:90%}.modal-content.large{max-width:700px}.modal-content h2{color:var(--text-primary);font-size:1.5rem;margin:0 0 24px;transition:color .3s ease}.modal-challenge-info{color:var(--text-tertiary);font-size:.95rem;margin-bottom:16px;transition:color .3s ease}.modal-challenge-info strong{color:var(--text-primary);transition:color .3s ease}.modal-field{margin-bottom:20px}.modal-field label{color:var(--text-primary);display:block;font-size:.95rem;font-weight:500;margin-bottom:8px;transition:color .3s ease}.modal-field input,.modal-field select,.modal-field textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:inherit;font-size:.95rem;padding:10px 12px;transition:border-color .3s ease,background-color .3s ease,color .3s ease;width:100%}.modal-field input:focus,.modal-field select:focus,.modal-field textarea:focus{border-color:var(--accent-green);outline:none}.modal-field textarea{min-height:100px;resize:vertical}.modal-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.modal-warning{background:#fff7e6;border-radius:6px;color:#fa8c16;font-size:.9rem;margin-bottom:20px;padding:12px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}@media (max-width:900px){.admin-challenges-page{padding:20px}.page-header{align-items:flex-start;flex-direction:column;gap:12px}.page-header h1{font-size:2rem}.btn-create{width:100%}.search-input{max-width:100%}}@media (max-width:600px){.admin-challenges-page{padding:16px}.page-header h1{font-size:1.6rem}.challenges-table{-webkit-overflow-scrolling:touch;overflow-x:auto}.challenges-table table{min-width:800px}}.admin-reviews-page{margin:0 auto;max-width:1000px;padding:24px}.admin-reviews-header{margin-bottom:24px}.admin-reviews-back{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.95rem;margin-bottom:8px;padding:0}.admin-reviews-back:hover{color:var(--accent-green)}.admin-reviews-header .admin-page-title{margin-bottom:16px}.admin-reviews-error{color:#c0392b;color:var(--error-color,#c0392b);margin-bottom:16px}.admin-reviews-analytics{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.admin-reviews-stat{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:12px;min-width:160px;padding:16px 20px}.admin-reviews-stat-icon{color:var(--accent-green);font-size:1.5rem}.admin-reviews-stat-content h3{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin:0 0 4px}.admin-reviews-stat-content p{color:var(--text-secondary);font-size:.85rem;margin:0}.admin-reviews-toolbar{margin-bottom:16px}.admin-reviews-refresh{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--btn-radius);color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.9rem;gap:8px;padding:8px 16px}.admin-reviews-refresh:hover:not(:disabled){border-color:var(--accent-green);color:var(--accent-green)}.admin-reviews-refresh:disabled{cursor:not-allowed;opacity:.7}.admin-reviews-refresh .spin{animation:adminReviewsSpin .8s linear infinite}@keyframes adminReviewsSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.admin-reviews-table-wrap{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;overflow-x:auto}.admin-reviews-table{border-collapse:collapse;width:100%}.admin-reviews-table td,.admin-reviews-table th{border-bottom:1px solid var(--border-color);padding:12px 16px;text-align:left}.admin-reviews-table th{color:var(--text-secondary);font-size:.85rem;font-weight:600}.admin-reviews-table td{color:var(--text-primary);font-size:.95rem}.admin-reviews-table tbody tr:last-child td{border-bottom:none}.review-score-badge{background:var(--bg-tertiary);border-radius:8px;display:inline-block;font-weight:600;padding:4px 10px}.review-message-cell{max-width:320px;word-break:break-word}.admin-reviews-actions-th{text-align:center;width:80px}.admin-reviews-actions-cell{text-align:center;vertical-align:middle}.admin-reviews-delete-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--btn-radius);color:var(--text-secondary);cursor:pointer;display:inline-flex;height:36px;justify-content:center;padding:0;transition:color .2s,border-color .2s,background .2s;width:36px}.admin-reviews-delete-btn:hover:not(:disabled){background:#ff4d4f14;border-color:#ff4d4f;color:#ff4d4f}.admin-reviews-delete-btn:disabled{cursor:not-allowed;opacity:.7}.admin-reviews-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.admin-reviews-modal-content{background:var(--bg-card);border-radius:12px;box-shadow:0 8px 32px #0003;box-shadow:0 8px 32px var(--shadow-lg,#0003);max-width:400px;padding:24px;width:90%}.admin-reviews-modal-title{color:var(--text-primary);font-size:1.25rem;margin:0 0 12px}.admin-reviews-modal-text{color:var(--text-secondary);font-size:.95rem;margin:0 0 20px}.admin-reviews-modal-actions{display:flex;gap:12px;justify-content:flex-end}.admin-reviews-modal-cancel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--btn-radius);color:var(--text-primary);cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 20px}.admin-reviews-modal-cancel:hover{background:#f5f5f5;background:var(--bg-hover,#f5f5f5)}.admin-reviews-modal-confirm-delete{background:#ff4d4f;border:none;border-radius:var(--btn-radius);color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 20px}.admin-reviews-modal-confirm-delete:hover:not(:disabled){background:#ff7875}.admin-reviews-modal-confirm-delete:disabled{cursor:not-allowed;opacity:.7}.info-page{min-height:calc(100vh - 200px);padding:32px 0}.info-container{margin:0 auto;max-width:900px;padding:0 32px}.info-title{color:var(--text-primary);font-size:2.5rem;font-weight:700;margin:0 0 32px;text-align:center}.info-section{margin-bottom:48px}.info-section-title{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 16px}.info-text{color:var(--text-secondary);font-size:1rem;line-height:1.7;margin:0 0 16px}.info-list{list-style:none;margin:0;padding:0}.info-list li{align-items:flex-start;color:var(--text-secondary);display:flex;gap:8px;line-height:1.6;padding:12px 0 12px 24px;position:relative}.info-list-icon{color:var(--accent-green);flex-shrink:0;margin-top:2px}.info-values{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr);margin-top:24px}.info-value-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:24px}.info-value-item h3{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0 0 12px}.info-value-item p{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin:0}.contact-content{grid-gap:48px;display:grid;gap:48px;grid-template-columns:1.5fr 1fr;margin-top:32px}.contact-form-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:32px}.contact-form{margin-top:24px}.form-group{margin-bottom:24px}.form-group label{color:var(--text-primary);display:block;font-size:.95rem;font-weight:500;margin-bottom:8px}.form-input,.form-textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:1rem;padding:12px 16px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-input:focus,.form-textarea:focus{border-color:var(--accent-green);box-shadow:0 0 0 3px #22c55e1a;outline:none}.form-textarea{min-height:120px;resize:vertical}.contact-submit{font-size:1rem;font-weight:600;padding:14px 24px;width:100%}.contact-status{border-radius:8px;font-size:.95rem;margin-bottom:24px;padding:16px}.contact-status.success{background:#22c55e1a;border:1px solid #22c55e33;color:var(--accent-green)}.contact-status.error{background:#ef44441a;border:1px solid #ef444433;color:#ef4444}.contact-info{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;height:-webkit-fit-content;height:fit-content;padding:32px}.contact-info-item{margin-bottom:32px}.contact-info-item:last-child{margin-bottom:0}.contact-info-item h3{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0 0 8px}.contact-info-item p{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin:0}.contact-link{color:var(--accent-green);text-decoration:none;transition:color .2s ease}.contact-link:hover{color:var(--accent-green-dark);text-decoration:underline}.info-cta,.info-text-spacer{margin-top:16px}.info-icon-inline{margin-right:8px}.faq-content{margin-top:32px}.faq-category{margin-bottom:48px}.faq-category-title{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 24px;padding-bottom:12px}.faq-questions{display:flex;flex-direction:column;gap:16px}.faq-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;transition:box-shadow .2s ease}.faq-item:hover{box-shadow:0 2px 8px var(--shadow-md)}.faq-question{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:16px;justify-content:space-between;padding:20px 24px;text-align:left;transition:background-color .2s ease;width:100%}.faq-question:hover{background:var(--bg-primary)}.faq-question span{flex:1 1}.faq-icon{color:var(--text-tertiary);flex-shrink:0;font-size:.9rem;transition:transform .2s ease}.faq-answer{animation:fadeIn .3s ease;color:var(--text-secondary);line-height:1.7;padding:0 24px 20px}.faq-answer p{margin:0}.faq-contact{border-top:1px solid var(--border-color);margin-top:64px;padding-top:48px;text-align:center}.faq-contact .btn{margin-top:16px}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.security-features{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr);margin-top:24px}.security-feature-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:24px;transition:transform .2s ease,box-shadow .2s ease}.security-feature-card:hover{box-shadow:0 4px 12px var(--shadow-md);transform:translateY(-4px)}.security-feature-icon{color:var(--accent-green);font-size:2rem;margin-bottom:16px}.security-feature-title{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0 0 12px}.security-feature-description{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin:0}.security-actions{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);margin-top:24px}.security-action-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;color:inherit;display:block;padding:24px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.security-action-card:hover{border-color:var(--accent-green);box-shadow:0 4px 12px var(--shadow-md);transform:translateY(-4px)}.security-action-card h3{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0 0 8px}.security-action-card p{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0}.data-export-action{margin-top:24px}.data-export-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:32px;text-align:center}.data-export-icon{color:var(--accent-green);font-size:3rem;margin-bottom:20px}.data-export-title{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 12px}.data-export-description{color:var(--text-secondary);font-size:1rem;line-height:1.6;margin:0 0 24px}.data-export-button{font-size:1rem;font-weight:600;min-width:200px;padding:14px 32px}.data-export-warning{color:var(--text-tertiary);font-size:.9rem;font-style:italic;margin-top:16px}.info-alert{align-items:flex-start;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:8px;display:flex;gap:12px;margin-bottom:24px;padding:16px}.info-alert.warning{background:var(--bg-secondary);border-color:var(--border-light);color:var(--text-secondary)}.info-alert p{font-size:.95rem;line-height:1.6;margin:0}.info-alert p,.info-alert.warning p{color:var(--text-secondary)}.info-ordered-list{list-style:decimal;margin:0;padding-left:24px}.info-ordered-list li{color:var(--text-secondary);line-height:1.6;padding:12px 0}.rectification-list{display:flex;flex-direction:column;gap:16px;margin-top:24px}.rectification-login-message{color:var(--text-secondary);font-size:.9rem;font-style:italic;margin:0}.rectification-item{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:24px;justify-content:space-between;padding:20px 24px;transition:box-shadow .2s ease}.rectification-item:hover{box-shadow:0 2px 8px var(--shadow-md)}.rectification-item-content{align-items:center;display:flex;flex:1 1;gap:16px}.rectification-item-icon{color:var(--accent-green);flex-shrink:0;font-size:1.5rem}.rectification-item-text{flex:1 1}.rectification-item-title{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0 0 4px}.rectification-item-description{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0}.btn-sm{font-size:.9rem;padding:10px 20px;white-space:nowrap}.btn-secondary{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.btn-secondary:hover{background:var(--bg-primary);border-color:var(--accent-green);color:var(--accent-green)}.cookie-type-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:24px;padding:24px}.cookie-type-name{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0 0 12px}.cookie-type-description{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin:0 0 16px}.cookie-type-examples{color:var(--text-secondary);font-size:.9rem}.cookie-type-examples strong{color:var(--text-primary);display:block;margin-bottom:8px}.cookie-type-examples ul{margin:0;padding-left:20px}.cookie-type-examples li{line-height:1.5;margin-bottom:6px}.legal-info-block{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-top:16px;padding:20px 24px}.legal-info-block p{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin:8px 0}.legal-info-block p:first-child{margin-top:0}.legal-info-block p:last-child{margin-bottom:0}.legal-info-block strong{color:var(--text-primary)}.legal-info-block a{color:var(--accent-green);text-decoration:none;transition:color .2s ease}.legal-info-block a:hover{color:var(--accent-green-dark);text-decoration:underline}@media (max-width:768px){.security-actions,.security-features{grid-template-columns:1fr}.rectification-item{align-items:flex-start;flex-direction:column}.rectification-item-content{width:100%}.cookie-type-card{padding:20px}.legal-info-block{padding:16px 20px}.info-container{padding:0 20px}.info-title{font-size:2rem}.contact-content,.info-values{grid-template-columns:1fr}.contact-content{gap:32px}.contact-form-container,.contact-info{padding:24px}}@media (max-width:600px){.info-page{padding:24px 0}.info-container{padding:0 16px}.info-title{font-size:1.75rem;margin-bottom:24px}.info-section{margin-bottom:32px}.info-section-title{font-size:1.25rem}.contact-form-container,.contact-info{padding:20px}.faq-question{font-size:.95rem;padding:16px 20px}.faq-answer{font-size:.9rem;padding:0 20px 16px}}.pricing-page{background:#0000;color:var(--text-primary);min-height:100vh;padding:80px 20px 40px;transition:background-color .3s ease,color .3s ease}.pricing-container{margin:0 auto;max-width:1200px}.pricing-header{margin-bottom:60px;text-align:center}.pricing-title{color:var(--text-primary);font-size:2.5rem;font-weight:700;margin-bottom:16px;transition:color .3s ease}.pricing-subtitle{color:var(--text-secondary);font-size:1.2rem;transition:color .3s ease}.pricing-plans{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:40px}.pricing-card{--plan-color:var(--accent-green);align-items:center;background:var(--bg-card);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 16px var(--shadow-md);display:flex;flex-direction:column;padding:40px 32px;position:relative;transition:all .3s ease}.pricing-card:hover{transform:translateY(-8px)}.pricing-card.popular,.pricing-card:hover{border-color:var(--accent-green);box-shadow:0 8px 24px var(--shadow-lg)}.pricing-badge{background:var(--accent-green);border-radius:20px;color:#fff;font-size:.85rem;font-weight:600;padding:6px 16px;position:absolute;right:24px;top:-12px}.pricing-icon{color:var(--accent-green);font-size:3rem;margin-bottom:16px}.pricing-card.popular .pricing-icon{color:var(--accent-green-light)}.pricing-plan-name{color:var(--text-primary);font-size:1.8rem;font-weight:700;margin-bottom:16px;transition:color .3s ease}.pricing-price{margin-bottom:32px;text-align:center}.pricing-amount{color:var(--accent-green);font-size:2.5rem;font-weight:700}.pricing-period{color:var(--text-secondary);font-size:1rem;margin-left:4px}.pricing-features{flex:1 1;list-style:none;margin:0 0 32px;padding:0;width:100%}.pricing-feature{align-items:flex-start;color:var(--text-primary);display:flex;gap:12px;margin-bottom:16px;transition:color .3s ease}.pricing-check{color:var(--accent-green);flex-shrink:0;font-size:1rem;margin-top:4px}.pricing-coming-soon{align-items:center;color:var(--text-secondary);display:flex;flex:1 1;font-size:1.2rem;font-weight:600;justify-content:center;margin:32px 0;padding:20px;text-align:center;transition:color .3s ease}.pricing-button{background-color:var(--accent-green);background-color:var(--plan-color,var(--accent-green));border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 24px;transition:all .3s ease;width:100%}.pricing-button:hover{opacity:.9;transform:scale(1.02)}.pricing-footer{margin-top:40px;text-align:center}.pricing-note{color:var(--text-secondary);font-size:.9rem;transition:color .3s ease}.pricing-card.plan-free{--plan-color:var(--accent-green)}.pricing-card.plan-premium{--plan-color:var(--accent-green-light)}.pricing-card.plan-vip{--plan-color:gold}@media (max-width:768px){.pricing-plans{gap:24px;grid-template-columns:1fr}.pricing-title{font-size:2rem}.pricing-subtitle{font-size:1rem}.pricing-card{padding:32px 24px}}
/*# sourceMappingURL=main.c4116d81.css.map*/