/* Konten, Auth, Profil, Merkliste, Nav-Account. Eigenstaendig, ergaenzt style.css. */

/* Flash-Messages */
.flash{border-radius:12px;padding:12px 16px;margin:0 0 16px;font-size:14px;font-weight:600;border:1px solid}
.flash-ok{background:#ecfdf5;border-color:#a7f3d0;color:#047857}
.flash-warn{background:#fffbeb;border-color:#fde68a;color:#b45309}
.flash-err{background:#fef2f2;border-color:#fecaca;color:#b91c1c}
.flash a{color:inherit;font-weight:800;text-decoration:underline}
.flash-wrap{margin-top:18px}

/* Auth-Karten */
.acc-wrap{max-width:460px}
.acc-card{background:#fff;border:1px solid var(--line,#e2e8f0);border-radius:18px;padding:26px 26px 22px;box-shadow:0 10px 30px rgba(15,23,42,.06)}
.acc-h1{font-size:26px;margin:0 0 4px;letter-spacing:-.02em}
.acc-sub{color:var(--muted,#64748b);margin:0 0 18px;font-size:14px}
.acc-form{display:flex;flex-direction:column;gap:14px}
.acc-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:var(--ink,#0f172a)}
.acc-form input,.acc-form textarea{font:inherit;font-size:15px;font-weight:400;padding:11px 13px;border:1px solid var(--line,#e2e8f0);border-radius:11px;background:#fff;color:var(--ink,#0f172a);width:100%}
.acc-form input:focus,.acc-form textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.15)}
.acc-form textarea{resize:vertical;min-height:90px}
.acc-form small{font-weight:500;color:var(--muted,#94a3b8);font-size:12px}
.button.block{width:100%;justify-content:center;margin-top:4px}
.acc-alt{margin:16px 0 0;text-align:center;font-size:14px;color:var(--muted,#64748b)}
.acc-alt a{color:#2563eb;font-weight:700;text-decoration:none}
.acc-block{margin-bottom:18px}
.acc-block h2{font-size:17px;margin:0 0 14px}
.acc-avatar-row{display:flex;gap:16px;align-items:center;margin-bottom:4px}
.acc-avatar,.acc-avatar img{border-radius:50%;object-fit:cover;flex:0 0 auto}
.acc-file{flex:1;min-width:0}
.acc-file input[type=file]{font-size:13px;font-weight:400}

/* Oeffentliches Profil */
.prof-top{display:flex;gap:18px;align-items:center}
.prof-avatar,.prof-avatar img{border-radius:50%;object-fit:cover;flex:0 0 auto;box-shadow:0 4px 14px rgba(15,23,42,.12)}
.prof-badge{display:inline-block;background:#eef2ff;color:#4338ca;font-size:11px;font-weight:800;padding:2px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}
.prof-bio{font-size:16px;line-height:1.6;color:#334155;white-space:pre-line}
.prof-stats{display:flex;gap:16px;margin-top:20px}
.prof-stat{background:#fff;border:1px solid var(--line,#e2e8f0);border-radius:14px;padding:16px 22px;text-align:center;min-width:140px}
.prof-stat b{display:block;font-size:26px;font-weight:900;color:#0f172a;letter-spacing:-.02em}
.prof-stat span{font-size:12px;color:var(--muted,#64748b);text-transform:uppercase;letter-spacing:.04em}

/* Merkliste */
.wl-group{margin-bottom:30px}
.wl-group h2{font-size:19px;margin:0 0 14px;display:flex;align-items:center;gap:10px}
.wl-count{background:#eef2ff;color:#4338ca;font-size:12px;font-weight:800;padding:2px 9px;border-radius:999px}
.wl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.wl-card{position:relative;background:#fff;border:1px solid var(--line,#e2e8f0);border-radius:14px;padding:14px 16px;display:flex;align-items:center;transition:box-shadow .12s,transform .12s}
.wl-card:hover{box-shadow:0 10px 26px rgba(15,23,42,.09);transform:translateY(-2px)}
.wl-card a{flex:1;min-width:0;text-decoration:none;color:var(--ink,#0f172a)}
.wl-card strong{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wl-card small{color:var(--muted,#64748b);font-size:12px}
.wl-x{flex:0 0 auto;background:#f1f5f9;border:0;color:#64748b;width:28px;height:28px;border-radius:8px;font-size:18px;line-height:1;cursor:pointer;margin-left:10px}
.wl-x:hover{background:#fee2e2;color:#b91c1c}

/* Merken-Button (Detailseiten) */
.wbtn{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--line,#e2e8f0);color:#334155;border-radius:11px;padding:8px 14px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:.12s}
.wbtn svg{fill:none;stroke:currentColor;stroke-width:2}
.wbtn:hover{border-color:#2563eb;color:#2563eb}
.wbtn.on{background:#2563eb;border-color:#2563eb;color:#fff}
.wbtn.on svg{fill:#fff;stroke:#fff}
.head-watch{margin:12px 0 2px}
.hd-hero .wbtn,.bd-hero .wbtn{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.28);color:#fff}
.hd-hero .wbtn:hover,.bd-hero .wbtn:hover{background:rgba(255,255,255,.2);border-color:#fff;color:#fff}
.hd-hero .wbtn.on,.bd-hero .wbtn.on{background:#fff;border-color:#fff;color:#0f172a}
.hd-hero .wbtn.on svg,.bd-hero .wbtn.on svg{fill:#0f172a;stroke:#0f172a}

/* Header: Account-Bereich + Sprachumschalter */
.nav-acc{display:flex;align-items:center;gap:10px}
.nav-lang{display:inline-flex;border:1px solid var(--line,#e2e8f0);border-radius:9px;overflow:hidden}
.nav-lang a{padding:5px 9px;font-size:12px;font-weight:800;color:var(--muted,#64748b);text-decoration:none;line-height:1.4}
.nav-lang a.on{background:#0f172a;color:#fff}
.nav-auth-link{font-size:13px;font-weight:700;color:var(--ink,#0f172a);text-decoration:none;white-space:nowrap}
.nav-auth-link.primary{background:#2563eb;color:#fff;padding:8px 14px;border-radius:10px}
.nav-user{position:relative}
.nav-user-btn{display:inline-flex;align-items:center;gap:8px;background:none;border:1px solid var(--line,#e2e8f0);border-radius:999px;padding:4px 10px 4px 4px;cursor:pointer;font:inherit;font-size:13px;font-weight:700;color:var(--ink,#0f172a)}
.nav-user-btn .ava-img,.nav-user-btn .ava-wrap{border-radius:50%}
.nav-user-menu{position:absolute;right:0;top:calc(100% + 8px);background:#fff;border:1px solid var(--line,#e2e8f0);border-radius:14px;box-shadow:0 16px 40px rgba(15,23,42,.16);min-width:200px;padding:8px;display:none;z-index:500}
.nav-user-menu.open{display:block}
.nav-user-menu a{display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:9px;text-decoration:none;color:var(--ink,#0f172a);font-size:14px;font-weight:600}
.nav-user-menu a:hover{background:#f1f5f9}
.nav-user-menu .sep{height:1px;background:var(--line,#e2e8f0);margin:6px 4px}
.nav-user-name{padding:8px 12px 4px;font-size:12px;color:var(--muted,#94a3b8)}
.nav-user-badge{background:#eef2ff;color:#4338ca;font-size:11px;font-weight:800;padding:1px 7px;border-radius:999px;margin-left:auto}
@media(max-width:900px){.nav-acc{width:100%;justify-content:flex-start;flex-wrap:wrap;margin-top:8px}}

/* Mobile: Login/Registrieren + Account-Links in die Hamburger-Navigation */
.nav-m-only{display:none}
@media(max-width:850px){
  .nav nav .nav-m-only{display:block;width:100%;box-sizing:border-box;padding:6px 0}
  .nav nav a.nav-m-auth{margin-top:8px;font-weight:800;color:#2563eb}
  .nav nav a.nav-m-auth.reg{background:#2563eb;color:#fff;padding:10px 14px;border-radius:10px;text-align:center;margin-top:6px}
  .nav-acc .nav-auth-link,.nav-acc .nav-user{display:none}
  .nav-acc{margin-top:0}
}
