/*!*****************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[13].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[13].oneOf[10].use[3]!./src/app/globals.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************/
:root{
  --bg:#f4f5f8; --panel:#fff; --ink:#1b1f2a; --muted:#8a92a6; --line:#e8eaf0;
  --indigo:#5b6cff; --indigo-soft:#eef0ff; --teal:#12b5a5; --teal-soft:#e3f7f4;
  --gold:#f5a623; --green:#22a06b; --green-soft:#e4f5ec; --amber:#e9930b; --amber-soft:#fdf2dd;
  --coral:#f15b5b; --coral-soft:#fde6e6; --grey-soft:#eef0f4;
  --shadow:0 1px 2px rgba(20,25,40,.04),0 8px 24px rgba(20,25,40,.06);
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  background:var(--bg);color:var(--ink);font-size:14px;line-height:1.5}
a{color:inherit;text-decoration:none}

.topbar{height:60px;background:var(--panel);border-bottom:1px solid var(--line);
  display:flex;align-items:center;gap:18px;padding:0 22px;position:-webkit-sticky;position:sticky;top:0;z-index:20}
.logo{display:flex;align-items:center;gap:9px;font-weight:700;font-size:16px}
.logo .mark{width:28px;height:28px;border-radius:9px;background:linear-gradient(135deg,var(--indigo),var(--teal));
  display:grid;place-items:center;color:#fff;font-size:15px}
.pairsel{margin-left:6px;display:flex;align-items:center;gap:10px;background:var(--indigo-soft);
  border:1px solid #dfe3ff;border-radius:10px;padding:6px 12px;font-weight:600;color:var(--indigo)}
.pairsel .av{display:flex}
.pairsel .av span{width:24px;height:24px;border-radius:50%;border:2px solid #fff;margin-left:-8px;
  display:grid;place-items:center;font-size:11px;font-weight:700;color:#fff}
.pairsel .av span:first-child{margin-left:0}
.grow{flex:1 1}

.shell{display:flex;min-height:calc(100vh - 60px)}
.side{width:210px;flex:none;padding:16px 12px;border-right:1px solid var(--line);background:var(--panel)}
.nav-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:10px;color:var(--muted);
  font-weight:600;margin-bottom:2px}
.nav-item .ic{width:18px;text-align:center}
.nav-item:hover{background:var(--grey-soft);color:var(--ink)}
.nav-item.active{background:var(--indigo);color:#fff}
.side .grp{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#b3b9c9;padding:14px 12px 6px;font-weight:700}
.main{flex:1 1;padding:26px 30px;max-width:1240px}
h1{font-size:23px;font-weight:700;margin-bottom:2px}
.sub{color:var(--muted);margin-bottom:22px}

.cards{display:grid;grid-gap:16px;gap:16px}
.grid-4{grid-template-columns:repeat(4,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow)}
.stat .n{font-size:28px;font-weight:700}.stat .l{color:var(--muted);font-size:13px}
.stat .ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-size:18px;margin-bottom:10px}

.chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:20px;font-size:12px;font-weight:600}
.c-green{background:var(--green-soft);color:var(--green)}.c-amber{background:var(--amber-soft);color:var(--amber)}
.c-grey{background:var(--grey-soft);color:var(--muted)}.c-teal{background:var(--teal-soft);color:var(--teal)}
.c-coral{background:var(--coral-soft);color:var(--coral)}.c-indigo{background:var(--indigo-soft);color:var(--indigo)}

.cattabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.cat{padding:8px 14px;border-radius:10px;background:#fff;border:1px solid var(--line);font-weight:600;color:var(--muted)}
.cat.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.cat.add{border-style:dashed;color:var(--indigo)}

.filters{display:flex;align-items:center;gap:10px;margin-bottom:14px;color:var(--muted);font-size:13px}
.movelist{display:flex;flex-direction:column;gap:9px}
.move{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 16px;transition:.12s}
.move:hover{border-color:var(--indigo);box-shadow:var(--shadow)}
.move .thumb{width:50px;height:50px;border-radius:10px;flex:none}
.move .nm{font-weight:700;flex:1 1}
.move .nm small{display:block;color:var(--muted);font-weight:500;font-size:12px}
.move .col{width:120px;flex:none}.move .col.narrow{width:84px}
.sym{background:#fff;border:1px solid var(--line);object-fit:contain;display:block}

.flowcard{overflow:hidden;padding:0}
.flowcard .img{height:120px;background-size:cover;background-position:center;position:relative;display:grid;place-items:center}
.flowcard .img .play{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.85);display:grid;place-items:center;color:var(--ink)}
.flowcard .ctag{position:absolute;top:8px;left:8px;background:rgba(255,255,255,.92);color:var(--ink);padding:2px 8px;border-radius:6px;font-size:11px;font-weight:700}
.flowcard .badge{position:absolute;bottom:8px;right:8px;background:rgba(0,0,0,.55);color:#fff;padding:2px 8px;border-radius:6px;font-size:11px}
.flowcard .body{padding:13px}.flowcard h3{font-size:14px;margin-bottom:6px}

.seq{display:flex;align-items:center;gap:8px;justify-content:center}
.tcard h3{font-size:14px;margin-top:12px}

.btn-primary{border:none;border-radius:9px;background:var(--indigo);color:#fff;font-weight:700;padding:9px 16px;font-size:13px;cursor:pointer}
.btn-primary:disabled{opacity:.6}
.btn-mini{border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:600;padding:5px 11px;font-size:12px;cursor:pointer;vertical-align:middle}
.btn-mini:hover{border-color:var(--indigo);color:var(--indigo)}
.ic-btn{width:30px;height:30px;border-radius:7px;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:12px;flex:none}
.ic-btn:hover{border-color:var(--indigo);color:var(--indigo)}

/* ===== Cloud Sandbox Chat ===== */
.fab{position:fixed;bottom:20px;right:20px;z-index:35;display:flex;align-items:center;gap:8px;
  background:linear-gradient(135deg,var(--indigo),var(--teal));color:#fff;font-weight:700;
  padding:13px 18px;border-radius:30px;cursor:pointer;border:none;font-size:14px;
  box-shadow:0 8px 24px rgba(91,108,255,.4)}
.chat{position:fixed;top:0;right:0;width:400px;max-width:94vw;height:100%;background:#fff;z-index:55;
  transform:translateX(100%);transition:.22s;box-shadow:-12px 0 40px rgba(20,25,40,.18);display:flex;flex-direction:column}
.chat.open{transform:translateX(0)}
.chat-head{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}
.chat-head .mk{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--indigo),var(--teal));display:grid;place-items:center;color:#fff}
.chat-body{flex:1 1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:var(--bg)}
.msg{max-width:88%;padding:10px 13px;border-radius:14px;font-size:13px;line-height:1.5;white-space:pre-wrap}
.msg.user{align-self:flex-end;background:var(--indigo);color:#fff;border-bottom-right-radius:4px}
.msg.ai{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}
.msg.tool{align-self:flex-start;background:var(--teal-soft);color:#0c6b60;font-size:12px;font-weight:600;border-radius:10px;padding:6px 11px}
.chat-input{padding:12px;border-top:1px solid var(--line);display:flex;align-items:center;gap:8px}
.chat-input input{flex:1 1;border:1px solid var(--line);border-radius:22px;padding:10px 14px;font-size:13px;font-family:inherit}
.micbtn{width:42px;height:42px;border-radius:50%;border:none;cursor:pointer;display:grid;place-items:center;font-size:17px;background:var(--grey-soft);flex:none}
.micbtn.on{background:var(--coral);color:#fff}
.sendbtn{width:42px;height:42px;border-radius:50%;border:none;cursor:pointer;background:var(--indigo);color:#fff;flex:none;font-size:16px}

/* ===== iPad (Tablet) ===== */
@media (max-width: 1024px){
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .grid-3{grid-template-columns:repeat(2,1fr)}
  .main{padding:22px}
  .side{width:180px}
}

/* ===== Handy ===== */
@media (max-width: 680px){
  .topbar{height:54px;padding:0 14px;gap:10px}
  .logo{font-size:15px}
  .topbar .sub{display:none}            /* Phasen-Label ausblenden */
  .shell{flex-direction:column}
  .main{padding:16px 14px calc(88px + env(safe-area-inset-bottom))}  /* Platz für Bottom-Nav + iPhone Home-Indikator */
  h1{font-size:20px}

  /* Sidebar → Bottom-Tab-Bar */
  .side{position:fixed;bottom:0;left:0;right:0;width:auto;height:auto;
    display:flex;flex-direction:row;overflow-x:auto;gap:4px;
    padding:6px 8px calc(6px + env(safe-area-inset-bottom));
    border-right:none;border-top:1px solid var(--line);z-index:30;
    box-shadow:0 -2px 12px rgba(20,25,40,.06)}
  .side .grp{display:none}
  .fab{bottom:calc(84px + env(safe-area-inset-bottom))}  /* über der Bottom-Nav */
  .side > div{flex:none}
  .nav-item{flex-direction:column;gap:3px;padding:7px 12px;font-size:11px;min-width:64px;
    text-align:center;border-radius:12px}
  .nav-item .ic{width:auto;font-size:17px}

  /* Grids stapeln */
  .grid-4,.grid-3,.grid-2{grid-template-columns:1fr}

  /* Kategorie-Tabs horizontal scrollbar */
  .cattabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}
  .cat{flex:none}

  /* Move-Zeile: Name oben, Sterne/Status darunter; Touch-Targets größer */
  .move{flex-wrap:wrap;padding:12px 14px}
  .move .nm{flex:1 1 100%;order:1}
  .move .thumb{order:0;width:54px;height:54px}
  .move .col,.move .col.narrow{width:auto;order:2;margin-top:2px}

  /* Detail-Panel vollbild */
  .drawer{width:100% !important;max-width:100% !important}
}

/* login */
.login-wrap{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#eef0ff,#e3f7f4)}
.login-box{background:#fff;border-radius:18px;padding:34px;width:340px;box-shadow:var(--shadow);text-align:center}
.login-box .mark{width:46px;height:46px;border-radius:13px;margin:0 auto 14px;background:linear-gradient(135deg,var(--indigo),var(--teal));display:grid;place-items:center;color:#fff;font-size:22px}
.login-box input{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-size:14px;margin:16px 0 10px;font-family:inherit}
.login-box button{width:100%;border:none;border-radius:10px;padding:12px;background:var(--indigo);color:#fff;font-weight:700;font-size:14px;cursor:pointer}
.login-box .err{color:var(--coral);font-size:13px;font-weight:600;margin-top:8px;min-height:18px}

/* ===== Präzisions-Video-Player ===== */
.pv{display:flex;flex-direction:column;gap:10px}
.pv-stage{background:#000;border-radius:12px;display:grid;place-items:center;overflow:hidden}
.pv-stage video{max-height:62vh;max-width:100%;width:auto;height:auto;display:block;cursor:pointer}
.pv-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.pv-time{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:16px;letter-spacing:.3px}
.pv-time b{font-size:18px}
.pv-speeds{display:flex;gap:4px}
.pv-chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;cursor:pointer;color:var(--ink)}
.pv-chip.on{background:var(--indigo);color:#fff;border-color:var(--indigo)}
/* Coarse-Track */
.pv-track{position:relative;height:18px;border-radius:9px;background:var(--line);cursor:pointer;touch-action:none}
.pv-region{position:absolute;top:0;bottom:0;background:rgba(16,185,129,.30);border-left:2px solid var(--teal);border-right:2px solid var(--teal)}
.pv-fill{position:absolute;top:0;bottom:0;left:0;border-radius:9px 0 0 9px;background:var(--indigo);opacity:.55}
.pv-head{position:absolute;top:50%;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--indigo);transform:translate(-50%,-50%);box-shadow:0 1px 4px rgba(0,0,0,.25);pointer-events:none}
/* Fine-Track */
.pv-finewrap{display:flex;align-items:center;gap:8px}
.pv-finelabel{font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.pv-fine{position:relative;flex:1 1;height:30px;border-radius:8px;cursor:ew-resize;touch-action:none;
  background:repeating-linear-gradient(90deg,var(--line) 0 1px,transparent 1px 14px),#f6f7fb;border:1px solid var(--line)}
.pv-fine-center{position:absolute;left:50%;top:0;bottom:0;width:2px;background:var(--coral);transform:translateX(-50%)}
/* Transport + Trim */
.pv-btn{border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 10px;font-size:13px;font-weight:600;cursor:pointer;color:var(--ink);flex:1 1;min-width:54px;text-align:center}
.pv-btn:disabled{opacity:.4;cursor:default}
.pv-btn.on{background:var(--teal);color:#fff;border-color:var(--teal)}
.pv-play{background:var(--indigo);color:#fff;border-color:var(--indigo);font-size:18px;flex:0 0 64px}
.pv-transport{gap:6px}
.pv-trim .pv-btn{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:12px}

/* ===== Player: Overview + Zoom + Capture ===== */
.pv-stage.flash{outline:4px solid #fff;outline-offset:-4px;transition:none}
.pv-overview{position:relative;height:10px;border-radius:6px;background:var(--grey-soft);cursor:pointer;touch-action:none}
.pv-window{position:absolute;top:-2px;bottom:-2px;background:rgba(91,108,255,.18);border:1px solid var(--indigo);border-radius:5px}
.pv-ovhead{position:absolute;top:50%;width:10px;height:10px;border-radius:50%;background:var(--indigo);transform:translate(-50%,-50%);pointer-events:none}
.pv-zoom{gap:5px}
.pv-cap{background:var(--teal-soft);border-color:var(--teal);color:#0c6b60;font-weight:700;flex:0 0 auto}
/* ===== Screenshot-Galerie ===== */
.shotgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:12px;gap:12px}
.shot{position:relative;border:1px solid var(--line);border-radius:10px;overflow:hidden;cursor:pointer;background:#000}
.shot img{width:100%;display:block;aspect-ratio:1/1;object-fit:contain;background:#000}
.shot figcaption{position:absolute;left:0;right:0;bottom:0;background:rgba(15,18,28,.72);color:#fff;font-size:11px;
  padding:5px 8px;display:flex;justify-content:space-between;gap:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}
.shot figcaption span{opacity:.8}
.shot-del{position:absolute;top:5px;right:5px;width:24px;height:24px;border-radius:50%;border:none;cursor:pointer;
  background:rgba(15,18,28,.6);color:#fff;font-size:12px;line-height:1;display:grid;place-items:center}
.shot-del:hover{background:var(--coral)}
/* ===== Lightbox ===== */
.lightbox{position:fixed;inset:0;z-index:80;background:rgba(8,10,16,.92);display:grid;place-items:center;padding:24px}
.lightbox img{max-width:96vw;max-height:88vh;border-radius:10px}
.lb-cap{position:fixed;bottom:18px;left:0;right:0;text-align:center;color:#fff;font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}
.lb-close{position:fixed;top:16px;right:16px;width:42px;height:42px;border-radius:50%;border:none;cursor:pointer;
  background:rgba(255,255,255,.15);color:#fff;font-size:18px}

