/* Einhorn.live zentrales Auth-System */
.auth-header-wrap{position:relative;display:inline-flex;align-items:center;justify-content:flex-end;}
.auth-pill{
  font-family:'Fredoka',sans-serif;font-weight:600;font-size:.95rem;
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 14px;border-radius:24px;border:3px solid var(--teal-deep,#0E6B66);
  background:var(--teal,#15A39A);color:#fff;cursor:pointer;
  box-shadow:0 5px 0 var(--teal-deep,#0E6B66),0 8px 16px rgba(14,107,102,.18);
  transition:transform .1s ease, box-shadow .1s ease;user-select:none;
}
.auth-pill:hover{transform:translateY(-2px);box-shadow:0 7px 0 var(--teal-deep,#0E6B66),0 12px 20px rgba(14,107,102,.2);}
.auth-pill:active{transform:translateY(3px);box-shadow:0 2px 0 var(--teal-deep,#0E6B66);}
body.dark-mode .auth-pill{background:#2a2a4a;color:#ffd6e7;border-color:#4a3a6a;box-shadow:0 5px 0 #4a3a6a,0 8px 16px rgba(0,0,0,.25);}
body.dark-mode .auth-pill:hover{box-shadow:0 7px 0 #4a3a6a,0 12px 20px rgba(0,0,0,.3);}
body.dark-mode .auth-pill:active{box-shadow:0 2px 0 #4a3a6a;}

.auth-menu{
  position:absolute;top:calc(100% + 8px);right:0;z-index:1000;
  background:#fff;border:3px solid var(--teal-deep,#0E6B66);border-radius:18px;
  padding:8px 0;min-width:180px;box-shadow:0 8px 0 rgba(14,107,102,.15),0 16px 32px rgba(0,0,0,.12);
  display:none;flex-direction:column;overflow:hidden;
}
.auth-menu.open{display:flex;}
body.dark-mode .auth-menu{background:#2a2a4a;border-color:#4a3a6a;color:#fff;}
.auth-menu-item{
  font-family:'Nunito',sans-serif;font-weight:700;font-size:.98rem;
  padding:10px 16px;color:var(--ink,#2B2B2B);background:transparent;border:none;text-align:left;cursor:pointer;
}
.auth-menu-item:hover{background:rgba(21,163,154,.12);}
body.dark-mode .auth-menu-item{color:#fff;}
body.dark-mode .auth-menu-item:hover{background:rgba(255,255,255,.08);}

.auth-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:2000;
  display:none;align-items:center;justify-content:center;padding:16px;
}
.auth-overlay.open{display:flex;}

.auth-modal{
  background:#fff;border-radius:26px;border:4px solid var(--teal-deep,#0E6B66);
  box-shadow:0 10px 0 rgba(14,107,102,.18),0 24px 48px rgba(0,0,0,.2);
  width:100%;max-width:460px;max-height:90vh;overflow-y:auto;position:relative;
}
body.dark-mode .auth-modal{background:#2a2a4a;border-color:#4a3a6a;color:#fff;}
.auth-modal-close{
  position:absolute;top:12px;right:14px;font-size:1.6rem;line-height:1;
  background:transparent;border:none;cursor:pointer;color:var(--teal-deep,#0E6B66);
}
body.dark-mode .auth-modal-close{color:#ffd6e7;}

.auth-modal-header{
  font-family:'Fredoka',sans-serif;font-weight:700;font-size:1.35rem;
  color:var(--teal-deep,#0E6B66);text-align:center;padding:22px 22px 8px;
}
body.dark-mode .auth-modal-header{color:#ffd6e7;}
.auth-modal-body{padding:0 22px 22px;}

.auth-tabs{display:flex;gap:8px;margin-bottom:16px;}
.auth-tab{
  flex:1;font-family:'Fredoka',sans-serif;font-weight:600;font-size:1rem;
  border:3px solid #d9eceb;background:#fff;color:#6b6b6b;border-radius:16px;
  padding:10px 8px;cursor:pointer;box-shadow:0 4px 0 #d9eceb;transition:all .15s ease;
}
.auth-tab.active{background:var(--teal,#15A39A);border-color:var(--teal-deep,#0E6B66);color:#fff;box-shadow:0 4px 0 var(--teal-deep,#0E6B66);}
body.dark-mode .auth-tab{background:#3a3a5a;border-color:#4a3a6a;color:#e0e0e0;box-shadow:0 4px 0 #4a3a6a;}
body.dark-mode .auth-tab.active{background:#6a4a8a;border-color:#4a3a6a;color:#fff;}

.auth-field{margin-bottom:14px;}
.auth-field label{display:block;font-weight:800;color:var(--teal-deep,#0E6B66);font-size:.92rem;margin:0 0 6px;}
body.dark-mode .auth-field label{color:#ffd6e7;}
.auth-field input{
  width:100%;font-family:'Nunito',sans-serif;font-size:1.05rem;padding:12px 16px;
  border:3px solid #d9eceb;border-radius:14px;background:#fff;color:var(--ink,#2B2B2B);
}
body.dark-mode .auth-field input{background:#3a3a5a;border-color:#4a3a6a;color:#fff;}
.auth-field input:focus{outline:none;border-color:var(--teal,#15A39A);}

.auth-hint{
  background:#FFF9E6;border:2px solid #F0D878;border-radius:12px;
  padding:10px 12px;font-size:.92rem;font-weight:700;color:#7a5c00;margin-bottom:14px;
}
body.dark-mode .auth-hint{background:#4a3a20;border-color:#8a7a40;color:#f0e0a0;}

.auth-btn{
  font-family:'Fredoka',sans-serif;font-weight:600;border:none;cursor:pointer;
  border-radius:18px;padding:14px 22px;font-size:1.1rem;color:#fff;
  box-shadow:0 6px 0 rgba(0,0,0,.18);transition:transform .1s ease;
  width:100%;
}
.auth-btn:active{transform:translateY(3px);box-shadow:0 3px 0 rgba(0,0,0,.18);}
.auth-btn.go{background:var(--teal,#15A39A);}
.auth-btn.danger{background:var(--red,#E5564E);margin-top:10px;}
.auth-btn.secondary{background:#8a8a8a;margin-top:10px;}

.auth-msg{
  margin-top:12px;border-radius:14px;padding:12px 14px;
  text-align:center;font-weight:800;font-size:.98rem;display:none;
}
.auth-msg.show{display:block;}
.auth-msg.ok{background:#E6F7EE;color:#1f7a4d;border:3px solid var(--green,#3BB273);}
.auth-msg.bad{background:#FDEBEA;color:#b23830;border:3px solid var(--red,#E5564E);}

.auth-profile{display:none;}
.auth-profile.show{display:block;}
.auth-profile-name{font-size:1.25rem;font-weight:800;color:var(--teal-deep,#0E6B66);margin-bottom:4px;}
body.dark-mode .auth-profile-name{color:#ffd6e7;}
.auth-profile-sub{color:#888;font-size:.92rem;font-weight:700;margin-bottom:16px;}
.auth-profile-row{display:flex;gap:10px;align-items:center;justify-content:center;margin-bottom:16px;}
.auth-badge{
  background:var(--teal,#15A39A);color:#fff;border-radius:14px;padding:8px 12px;
  font-weight:800;font-size:.95rem;box-shadow:0 4px 0 var(--teal-deep,#0E6B66);
}
