html,body{margin:0;padding:0;background:#e9e9e9;font-family:'Barlow',sans-serif;}
a{color:#e30613;} a:hover{color:#1a1a1a;}

/* ── Login ─────────────────────────────────────────────────── */
#login-sektion{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#1a1a1a;}
.login-card{background:#ffffff;border-radius:16px;padding:40px;width:340px;max-width:90vw;box-shadow:0 20px 60px rgba(0,0,0,0.35);}
.login-card h1{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:26px;letter-spacing:1px;margin:0 0 2px;color:#1a1a1a;}
.login-card h1 .accent{color:#e30613;}
.login-card .sub{color:#777;font-size:13px;margin:0 0 22px;}
.login-card .form-group{display:flex;flex-direction:column;gap:5px;margin-bottom:14px;}
.login-card label{font-size:12px;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:0.4px;}
.login-card input{background:#f4f4f4;border:1px solid #dcdcdc;border-radius:8px;color:#1a1a1a;font-family:'Barlow',sans-serif;font-size:15px;padding:10px 12px;}
.login-card input:focus{outline:none;border-color:#e30613;}
.login-fehler{color:#e30613;font-size:13px;margin-bottom:10px;display:none;}
.login-btn{width:100%;margin-top:6px;background:#e30613;color:#fff;border:none;border-radius:8px;padding:11px 18px;font-family:'Barlow',sans-serif;font-size:15px;font-weight:700;cursor:pointer;}
.login-btn:hover{background:#c00511;}
#app-sektion{display:none;}

/* ── Toolbar / Editor ──────────────────────────────────────── */
.toolbar{position:sticky;top:0;z-index:50;background:#1a1a1a;color:#fff;display:flex;align-items:center;gap:10px;padding:12px 20px;flex-wrap:wrap;}
.toolbar .brand{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:20px;letter-spacing:0.5px;margin-right:8px;}
.tab{background:#333;color:#ddd;border:none;border-radius:8px;padding:9px 16px;font-family:'Barlow',sans-serif;font-size:15px;font-weight:600;cursor:pointer;}
.tab.active{background:#e30613;color:#fff;}
.spacer{flex:1;}
.act{background:#fff;color:#1a1a1a;border:none;border-radius:8px;padding:9px 18px;font-family:'Barlow',sans-serif;font-size:15px;font-weight:700;cursor:pointer;}
.act.secondary{background:#555;color:#fff;font-weight:600;}
.save-status{font-size:13px;color:#aaa;min-width:110px;}
.hint{max-width:1123px;margin:16px auto 0;padding:0 12px;font-size:14px;color:#666;}
.stage{padding:24px 12px 60px;display:flex;justify-content:center;}
.stagein{transform-origin:top center;}
.sign{display:none;}
.sign.active{display:block;}
[contenteditable]{outline:none;cursor:text;}
[contenteditable]:hover{box-shadow:0 0 0 2px rgba(227,6,19,0.35);border-radius:2px;}
[contenteditable]:focus{box-shadow:0 0 0 2px #e30613;border-radius:2px;background:rgba(227,6,19,0.04);}
.opt-row{position:relative;}
.ui.del{position:absolute;left:-40px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;border:none;background:#e30613;color:#fff;font-size:15px;font-weight:700;cursor:pointer;line-height:1;opacity:0;transition:opacity .15s;}
.opt-row:hover .ui.del{opacity:1;}
.ui.add{display:block;margin-top:10px;background:none;border:2px dashed #bbb;color:#888;border-radius:8px;padding:7px 14px;font-family:'Barlow',sans-serif;font-size:14px;font-weight:600;cursor:pointer;}
.ui.add:hover{border-color:#e30613;color:#e30613;}
@media print{
  .toolbar,.hint,.ui{display:none!important;}
  body{background:#fff;}
  .stage{padding:0;display:block;}
  .stagein{transform:none!important;}
  .sheet{box-shadow:none!important;zoom:0.999;}
  body.print-hochkant .sheet{
    zoom:1;
    position:fixed;
    top:50%;
    left:50%;
    width:1123px;
    height:794px;
    transform:translate(-50%,-50%) rotate(90deg);
    transform-origin:center center;
  }
}
@page{size:297mm 210mm;margin:0;}
