:root{--red:#b01832;--dark:#0c1116;--muted:#6b7280;--line:#e8e9ec;--bg:#f6f7f9;--card:#fff;--green:#16803a;--orange:#a66a00;--blue:#075caa}
*{box-sizing:border-box} body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:#111} a{text-decoration:none;color:inherit}.app{display:flex;min-height:100vh}.side{width:280px;background:linear-gradient(180deg,#05070a,#111820);color:#fff;position:fixed;top:0;bottom:0;left:0;padding:24px 16px;display:flex;flex-direction:column}.logo{padding:10px 12px 30px}.logo img{max-width:220px}.side nav{display:grid;gap:8px}.side nav a{padding:16px 18px;border-radius:12px;color:#e7e7e7;font-weight:600}.side nav a.active,.side nav a:hover{background:linear-gradient(135deg,var(--red),#c7354d);color:#fff}.userbox{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding:20px 12px;color:#fff}.userbox span{color:#cbd5e1}.userbox a{display:inline-block;margin-top:10px;color:#fff;text-decoration:underline}.main{margin-left:280px;width:calc(100% - 280px);padding:32px}.top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.top h1{margin:0;font-size:34px}.muted{color:var(--muted)}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.grid2{display:grid;grid-template-columns:1.35fr 1fr;gap:20px}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 6px 20px rgba(0,0,0,.035);padding:22px}.stat{display:flex;gap:16px;align-items:center}.icon{width:64px;height:64px;border-radius:14px;display:grid;place-items:center;font-size:28px;background:#f5d5db;color:var(--red)}.stat b{font-size:30px}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-size:13px;color:#374151;padding:12px;border-bottom:1px solid var(--line)}.table td{padding:14px 12px;border-bottom:1px solid var(--line)}.badge{border-radius:999px;padding:6px 11px;font-size:13px;display:inline-block;background:#eef2ff;color:#1d4ed8}.b-entwurf{background:#dbeafe;color:#075985}.b-aufnahme{background:#fff1d6;color:#92400e}.b-rueckfrage{background:#ffe0d2;color:#c2410c}.b-vollstaendig{background:#dff5e5;color:#15803d}.b-buero{background:#eee4ff;color:#6b21a8}.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.action{border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,#fff,#fafafa);padding:22px;text-align:center;font-weight:700}.btn{border:0;border-radius:10px;background:var(--red);color:#fff;padding:12px 16px;font-weight:700;cursor:pointer;display:inline-block}.btn.secondary{background:#111827}.btn.light{background:#fff;color:#111;border:1px solid var(--line)}input,select,textarea{width:100%;padding:13px 14px;border:1px solid #d7dbe2;border-radius:10px;font:inherit;background:#fff}textarea{min-height:92px}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.formgrid3{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px}.section-title{margin-top:28px;border-top:1px solid var(--line);padding-top:22px}.autosave{position:fixed;bottom:14px;left:310px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:10px 16px;color:var(--red);box-shadow:0 8px 20px rgba(0,0,0,.06)}.login{display:grid;place-items:center;min-height:100vh;background:#0b1117}.loginbox{width:420px;background:#fff;border-radius:20px;padding:30px}.loginbox img{width:240px;display:block;margin:0 auto 24px}.upload-public{max-width:760px;margin:30px auto;padding:20px}.drop{border:2px dashed #cbd5e1;border-radius:14px;padding:18px;background:#fff}.note{padding:12px 14px;border-radius:10px;background:#fff7ed;color:#9a3412}.files a{color:var(--blue);text-decoration:underline}.printonly{display:none}@media print{.side,.top .btn,.autosave,.noprint{display:none}.main{margin:0;width:100%;padding:0}.card{box-shadow:none;border:0}.printonly{display:block}}@media(max-width:1000px){.side{position:static;width:100%;height:auto}.app{display:block}.main{margin:0;width:100%;padding:18px}.grid4,.grid2,.formgrid,.formgrid3{grid-template-columns:1fr}.autosave{left:18px}.actions{grid-template-columns:1fr}}
.docgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.docbox{border:1px solid #eee;border-radius:18px;padding:16px;background:#fff}.docbox h3{margin:0 0 12px}.count{background:#7d2635;color:#fff;border-radius:99px;padding:2px 8px;font-size:12px}.fileitem{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-top:1px solid #f0f0f0;padding:12px 0}.fileitem:first-of-type{border-top:0}.btn.small{padding:8px 12px;font-size:13px}.top.mini{align-items:flex-start}.top.mini h2{margin-top:0}@media(max-width:900px){.docgrid{grid-template-columns:1fr}}

/* V4 Feinschliff */
.btn,.btn:visited,.btn:hover,.files a.btn,.fileitem a.btn{color:#fff !important;text-decoration:none !important}
.btn.light,.btn.light:visited,.btn.light:hover{color:#111 !important}
.b-offen{background:#fff7d6;color:#854d0e}.b-wartet{background:#ffedd5;color:#9a3412}.b-bearbeitung{background:#dbeafe;color:#075985}.b-archiv{background:#e5e7eb;color:#374151}
.taskrow{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:10px 0}.taskrow input[type=checkbox]{width:auto}.taskdone{text-decoration:line-through;color:var(--muted)}.inlineform{display:flex;gap:10px;align-items:center}.inlineform input{flex:1}

.taskedit{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;border-bottom:1px solid var(--line);padding:10px 0}.taskedit input[type=checkbox]{width:auto}.taskedit .btn.small{white-space:nowrap}.taskdone-row{background:#fafafa}.table input[type=checkbox]{width:auto;transform:scale(1.15)}
.taskedit4{grid-template-columns:auto 1fr 180px auto}.taskedit4 select{min-width:160px}
@media(max-width:760px){.taskedit4{grid-template-columns:auto 1fr}.taskedit4 select,.taskedit4 button{grid-column:2}}

/* V5 Upload-Link / QR / Mail */
.upload-tools{margin:22px 0}.uploadlinkbox{display:grid;grid-template-columns:1fr 280px;gap:22px;align-items:start}.qrbox{text-align:center;border:1px solid var(--line);border-radius:16px;padding:18px;background:#fafafa}.qrbox img{max-width:240px;width:100%;height:auto;border-radius:12px;background:#fff}.uploadlinkbox input[readonly]{background:#f9fafb;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px}.btn[style*="opacity"]{pointer-events:none}.upload-public .card{border-top:5px solid var(--red)}
@media(max-width:900px){.uploadlinkbox{grid-template-columns:1fr}.qrbox{max-width:320px}}
