/* ── AUTH MODAL ───────────────────────────────────────────────────────── */
#auth-overlay{position:fixed;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(6px);z-index:2000;display:none;align-items:center;justify-content:center;}
#auth-overlay.open{display:flex;}
#auth-box{background:#0c0f22;border:1px solid #1e2340;border-radius:16px;padding:2.2rem 2rem;width:min(420px,92vw);position:relative;}
#auth-box h2{font-size:1.4rem;font-weight:700;color:#fff;margin-bottom:.3rem;}
#auth-box .auth-sub{font-size:.85rem;color:#8892aa;margin-bottom:1.4rem;}
.auth-tabs{display:flex;gap:0;border:1px solid #1e2340;border-radius:8px;overflow:hidden;margin-bottom:1.5rem;}
.auth-tab{flex:1;padding:.55rem;text-align:center;cursor:pointer;font-size:.85rem;font-weight:600;color:#8892aa;background:transparent;border:none;transition:all .2s;}
.auth-tab.on{background:#00d4ff;color:#000;}
.auth-field{margin-bottom:1rem;}
.auth-field label{display:block;font-size:.78rem;color:#8892aa;margin-bottom:.35rem;}
.auth-field input{width:100%;padding:.65rem .9rem;background:#07091a;border:1px solid #1e2340;border-radius:8px;color:#e8ecf4;font-size:.9rem;outline:none;transition:border .2s;}
.auth-field input:focus{border-color:#00d4ff;}
.pass-wrap{position:relative;}
.pass-wrap input{padding-right:2.6rem;}
.pass-eye{position:absolute;right:.7rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#8892aa;padding:0;line-height:1;display:flex;align-items:center;}
.pass-eye:hover{color:#00d4ff;}
.pass-eye svg{width:18px;height:18px;}
.auth-btn{width:100%;padding:.75rem;background:linear-gradient(135deg,#00d4ff,#0099bb);border:none;border-radius:8px;color:#000;font-weight:700;font-size:.95rem;cursor:pointer;margin-top:.5rem;}
.auth-btn:hover{opacity:.9;}
.auth-msg{font-size:.8rem;margin-top:.8rem;text-align:center;min-height:1.2em;}
.auth-msg.err{color:#ff4466;}
.auth-msg.ok{color:#00ff88;}
#auth-close{position:absolute;top:.8rem;right:1rem;background:none;border:none;color:#8892aa;font-size:1.3rem;cursor:pointer;line-height:1;}
#auth-close:hover{color:#fff;}

/* ── NAV AUTH BUTTON ─────────────────────────────────────────────────── */
.nav-auth-btn{padding:.4rem 1rem;border-radius:7px;border:1px solid #00d4ff;color:#00d4ff;font-size:.8rem;font-weight:600;cursor:pointer;background:transparent;transition:all .2s;white-space:nowrap;}
.nav-auth-btn:hover{background:#00d4ff;color:#000;}
.nav-auth-btn.signed-in{border-color:#00ff88;color:#00ff88;}
.nav-auth-btn.signed-in:hover{background:#00ff88;color:#000;}

/* ── COMMUNITY SECTION ───────────────────────────────────────────────── */
#community{padding:5rem 0 4rem;}
.community-inner{max-width:780px;margin:0 auto;padding:0 1.5rem;}
.comments-list{display:flex;flex-direction:column;gap:.9rem;margin:1.8rem 0;}
.comment-card{background:#0c0f22;border:1px solid #1e2340;border-radius:10px;padding:1rem 1.2rem;}
.comment-header{display:flex;align-items:center;gap:.6rem;margin-bottom:.4rem;}
.comment-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#00d4ff,#0055aa);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:#fff;flex-shrink:0;}
.comment-name{font-weight:600;font-size:.88rem;color:#e8ecf4;}
.comment-time{font-size:.72rem;color:#4a5568;margin-left:auto;}
.comment-body{font-size:.88rem;color:#c0c8d8;line-height:1.55;}
.comment-form-wrap{background:#0c0f22;border:1px solid #1e2340;border-radius:12px;padding:1.4rem;}
.comment-form-wrap h4{font-size:.95rem;font-weight:600;color:#e8ecf4;margin-bottom:.9rem;}
.comment-form-wrap textarea{width:100%;padding:.75rem 1rem;background:#07091a;border:1px solid #1e2340;border-radius:8px;color:#e8ecf4;font-size:.88rem;resize:vertical;min-height:90px;outline:none;font-family:inherit;transition:border .2s;}
.comment-form-wrap textarea:focus{border-color:#00d4ff;}
.comment-submit{margin-top:.7rem;padding:.6rem 1.4rem;background:linear-gradient(135deg,#00d4ff,#0099bb);border:none;border-radius:7px;color:#000;font-weight:700;font-size:.88rem;cursor:pointer;}
.comment-submit:hover{opacity:.9;}
.comment-submit:disabled{opacity:.5;cursor:not-allowed;}
.login-prompt{text-align:center;padding:1.5rem;color:#8892aa;font-size:.88rem;}
.login-prompt button{background:none;border:none;color:#00d4ff;cursor:pointer;font-size:.88rem;font-weight:600;text-decoration:underline;}
.comments-empty{text-align:center;color:#4a5568;font-size:.88rem;padding:2rem 0;}
.own-comment .comment-card{border-color:rgba(0,212,255,.25);}
.delete-btn{background:none;border:none;color:#4a5568;cursor:pointer;font-size:.75rem;margin-left:.5rem;}
.delete-btn:hover{color:#ff4466;}

/* ── ADMIN DASHBOARD ─────────────────────────────────────────────── */
#admin-panel{
  display:none;
  position:fixed;bottom:1.5rem;right:1.5rem;z-index:900;
  width:240px;background:#0c0f22;border:1px solid rgba(0,212,255,.3);
  border-radius:14px;box-shadow:0 4px 24px rgba(0,0,0,.6);
  font-size:.8rem;color:#e8ecf4;overflow:hidden;
}
#admin-panel.show{display:block;}
#admin-panel-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:.7rem 1rem;background:rgba(0,212,255,.08);
  border-bottom:1px solid rgba(0,212,255,.15);cursor:pointer;
}
#admin-panel-header span{font-weight:700;font-size:.78rem;color:#00d4ff;letter-spacing:.04em;}
#admin-panel-toggle{background:none;border:none;color:#8892aa;cursor:pointer;font-size:.9rem;line-height:1;padding:0;}
#admin-panel-body{padding:.85rem 1rem;}
.admin-stat{display:flex;align-items:center;justify-content:space-between;margin-bottom:.55rem;}
.admin-stat-label{color:#8892aa;font-size:.75rem;}
.admin-stat-val{font-weight:700;font-size:1rem;color:#fff;}
.admin-stat-val.green{color:#00ff88;}
.admin-divider{border:none;border-top:1px solid #1e2340;margin:.6rem 0;}
.admin-countries{display:flex;flex-direction:column;gap:.35rem;max-height:160px;overflow-y:auto;}
.admin-country-row{display:flex;align-items:center;gap:.5rem;}
.admin-country-flag{font-size:1rem;flex-shrink:0;}
.admin-country-name{flex:1;color:#c0c8d8;font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.admin-country-count{color:#00d4ff;font-weight:600;font-size:.78rem;flex-shrink:0;}
#admin-refresh-btn{
  display:block;width:100%;margin-top:.75rem;padding:.4rem;
  background:rgba(0,212,255,.08);border:1px solid rgba(0,212,255,.2);
  border-radius:7px;color:#00d4ff;font-size:.72rem;cursor:pointer;text-align:center;
}
#admin-refresh-btn:hover{background:rgba(0,212,255,.15);}
