/* BATCH Team – Navigation neu (15.10.2026): Seitenleiste (Desktop) + Tab-Leiste (iPhone). Nutzt die Farb-Tokens aus app.css. */
body.nav2 header.top{display:none!important}
#nav2 svg,#n2top svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
:where(#nav2,#n2top) a{text-decoration:none;color:inherit}
:where(#nav2,#n2top) button{background:none;border:0;cursor:pointer;font:inherit;color:inherit}
.n2-b{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--red);color:#fff;font-size:11px;display:inline-grid;place-items:center;line-height:1}
.n2-d{width:8px;height:8px;border-radius:50%;background:var(--red);margin-left:auto}
.n2-av{width:30px;height:30px;border-radius:50%;background:var(--today,#827462);color:#fff;display:inline-grid;place-items:center;font-size:12px;font-weight:500;letter-spacing:.02em;flex:none}

/* ---------- Desktop: Seitenleiste ---------- */
.n2-side{position:fixed;inset:0 auto 0 0;width:228px;z-index:30;display:flex;flex-direction:column;background:var(--paper);border-right:1px solid var(--line2);padding:20px 12px 12px}
.n2-logo{display:flex;align-items:baseline;gap:8px;padding:2px 10px 14px;color:var(--ink)}
.n2-wm{display:inline-block;height:22px;font-size:22px;line-height:22px}
.n2-wm .txt{font-weight:600;letter-spacing:-.01em;font-size:22px}
.n2-wm .logo-long{height:22px}
.n2-logo>span:last-child{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--soft)}
.n2-nav{flex:1;overflow:auto;display:flex;flex-direction:column;gap:1px;margin:0 -4px;padding:0 4px}
.n2-g{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);padding:14px 10px 6px}
.n2-i{display:flex;align-items:center;gap:11px;padding:8px 10px;border-radius:9px;font-size:14px;color:var(--ink)!important;transition:background .15s}
.n2-i:hover{background:var(--hover)}
.n2-i.on{background:var(--ink);color:var(--on-ink)!important}
.n2-i.on .n2-b{background:var(--on-ink);color:var(--ink)}
.n2-acc{position:relative;border-top:1px solid var(--line2);padding-top:10px;margin-top:8px}
.n2-me{display:flex;align-items:center;gap:10px;width:100%;padding:6px 8px;border-radius:10px;text-align:left;font-size:14px}
.n2-me:hover{background:var(--hover)}
.n2-me .n2-l{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.n2-me svg{color:var(--soft)}
.n2-pop{position:absolute;left:0;right:0;bottom:calc(100% + 6px);background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:6px;box-shadow:0 16px 40px -14px var(--shadow);display:flex;flex-direction:column;gap:1px}
.n2-mi{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;font-size:14px;text-align:left;width:100%}
.n2-mi:hover{background:var(--hover)}
.n2-mi.on{font-weight:500}
.n2-v{margin-left:auto;font-size:12px;color:var(--soft)}
@media (min-width:900px){
  body.nav2{padding-left:228px}
  body.nav2 main{max-width:1180px}
  #n2top,.n2-tabs,.n2-sheet{display:none!important}
}

/* ---------- iPhone: Titel oben, Tab-Leiste unten ---------- */
@media (max-width:899px){
  .n2-side{display:none}
  #n2top{position:sticky;top:0;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(12px + env(safe-area-inset-top)) 16px 10px;background:var(--top);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line2)}
  #n2top b{font-size:19px;font-weight:600;letter-spacing:-.01em}
  body.nav2 #app{padding-top:0}
  body.nav2 main{padding-bottom:calc(96px + env(safe-area-inset-bottom))}
  body.nav2 main.full{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .n2-tabs{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:repeat(5,1fr);padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:var(--top);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-top:1px solid var(--line2)}
  .n2-t{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;font-size:10.5px;color:var(--soft)!important;position:relative;min-width:0}
  .n2-t svg{width:24px;height:24px}
  .n2-t .n2-l{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .n2-t.on{color:var(--ink)!important;font-weight:600}
  .n2-t .n2-b{position:absolute;top:1px;left:calc(50% + 4px);margin:0;min-width:16px;height:16px;font-size:10px;padding:0 4px}
  .n2-t .n2-d{position:absolute;top:5px;left:calc(50% + 8px);margin:0}
  .n2-sheet{position:fixed;inset:0;z-index:35}
  .n2-dim{position:absolute;inset:0;background:var(--overlay)}
  .n2-sh{position:absolute;left:8px;right:8px;bottom:calc(74px + env(safe-area-inset-bottom));background:var(--paper);border-radius:22px;padding:12px;box-shadow:0 18px 40px -12px var(--shadow);animation:n2up .22s var(--ease,ease)}
  @keyframes n2up{from{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}
  .n2-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
  .n2-c{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 2px 10px;border-radius:14px;background:var(--hover);font-size:11px;color:var(--ink)!important;position:relative;min-width:0}
  .n2-c .n2-l{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .n2-c svg{width:22px;height:22px}
  .n2-c.on{background:var(--ink);color:var(--on-ink)!important}
  .n2-c .n2-b,.n2-c .n2-d{position:absolute;top:6px;right:8px;margin:0}
  .n2-c.sel{outline:2px solid var(--ink);outline-offset:-2px;background:var(--paper)}
  .n2-num{position:absolute;top:5px;right:7px;width:18px;height:18px;border-radius:50%;background:var(--ink);color:var(--on-ink);font-size:10px;display:grid;place-items:center}
  .n2-edit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:8px;padding:10px;border-radius:12px;font-size:13px;color:var(--soft)!important}
  .n2-edit svg{width:16px;height:16px}
  .n2-done{background:var(--ink)!important;color:var(--on-ink)!important;font-weight:500}
  .n2-et{display:flex;flex-direction:column;gap:2px;padding:2px 4px 10px}
  .n2-et span{font-size:12px;color:var(--soft)}
  body.n2-open{overflow:hidden}
}

/* Chat: Höhe fest zur neuen Navigation (app.js misst sonst die versteckte alte Kopfzeile) – 15.10.2026 */
@media (min-width:900px){
  body.nav2 main.full{padding-top:20px;padding-bottom:20px}
  body.nav2 .chat{height:calc(100dvh - 40px)}
}
@media (max-width:899px){
  body.nav2 main.full{padding-top:12px}
  body.nav2 .chat{height:calc(100dvh - 53px - 12px - 72px - 8px - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:320px}
}
