@font-face{font-family:Inter;src:url('inter.woff2') format('woff2');font-display:swap}
*{box-sizing:border-box}
body{margin:0;background:#f4f5f7;color:#171c24;font:14px Inter,"Segoe UI",system-ui,sans-serif}
a{color:#1e6ba0}
aside{position:fixed;width:232px;background:#0e1013;color:#fff;inset:0 auto 0 0;padding:30px 20px;overflow:auto}
aside img{width:180px;height:auto}
.workspace{font-size:10px;color:#8d96a4;letter-spacing:2px;margin:36px 12px 10px}
aside a{display:block;color:#aeb8c6;text-decoration:none;padding:12px;margin:4px 0;border-radius:9px;font-size:13px}
aside a:hover{background:#1c2b3a;color:#7fbce8}
.aside-bottom{margin-top:40px;color:#d0d7df;line-height:1.8;font-size:12px;padding:0 12px}
.aside-bottom small{color:#8d96a4}
.aside-bottom a{padding:0;margin:0;display:inline}
main{padding:0 40px 24px;max-width:1600px}
main.with-aside{margin-left:232px}
main.plain{margin:0 auto;max-width:560px}
header{height:64px;border-bottom:1px solid #dfe3e8;display:flex;align-items:center;justify-content:space-between;color:#707b89;font-size:10px;letter-spacing:1.5px}
.badge{padding:7px 12px;border-radius:20px;letter-spacing:0}
.badge.warn{background:#fff3d6;color:#7a5600}
.heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:26px 0 18px;flex-wrap:wrap}
.eyebrow{font-size:10px;letter-spacing:2px;color:#1e6ba0;font-weight:600;margin:0}
.eyebrow a{text-decoration:none}
h1{font-size:32px;line-height:1.15;letter-spacing:-1.2px;margin:10px 0}
h2{font-size:16px;margin:0 0 14px}
.muted,.hint{color:#6b7683;line-height:1.6}
.hint{font-size:11px}
.small{font-size:11px}
.layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,1fr);gap:22px;align-items:start}
section{background:#fff;border:1px solid #e2e6eb;border-radius:16px;padding:22px;margin-bottom:20px}
section.narrow{max-width:520px;margin:40px auto}
section.danger{border-color:#f0c7c2;background:#fffafa}
.login-logo{width:170px;background:#0e1013;padding:14px;border-radius:12px}
.section-title{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.section-title h2{margin:0}
.right-link{margin-left:auto}
.step{font-size:11px;color:#1e6ba0;border:1px solid #cbdde9;border-radius:50%;padding:7px}
.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;font-size:12px;font-weight:600;margin-bottom:14px}
input,select,textarea{font:13px Inter,"Segoe UI",system-ui,sans-serif;width:100%;border:1px solid #d9dfe6;border-radius:8px;padding:11px;background:#fcfcfd;color:#202834;margin-top:7px}
textarea{resize:vertical;line-height:1.6}
input:focus,textarea:focus,select:focus{outline:2px solid #4a95cf;outline-offset:2px}
.upload{border:1px dashed #9ebbd0;background:#f6fafc;border-radius:10px;padding:16px;text-align:center;color:#1e6ba0}
.upload span{display:block;font-weight:400;font-size:11px;color:#738697;margin-top:6px}
.upload input{background:transparent;border:0;font-size:11px}
button,.button{font:600 12px Inter,"Segoe UI",system-ui,sans-serif;border-radius:8px;padding:12px 18px;cursor:pointer;border:0;text-decoration:none;display:inline-block;text-align:center}
.secondary{background:#edf3f7;color:#1e6ba0}
.primary{background:#1e6ba0;color:#fff;width:100%;margin:8px 0 10px}
.primary-inline{background:#1e6ba0;color:#fff}
.block{display:block;width:100%;margin:8px 0}
.tiny{padding:6px 10px;font-size:11px}
.link{background:none;color:#8a95a3;padding:6px 0;font-weight:400;text-decoration:underline}
aside .link{color:#aeb8c6}
.danger-button{background:#b3261e;color:#fff}
button:disabled{opacity:.45;cursor:not-allowed}
.flash{padding:12px 14px;border-radius:10px;font-size:13px;margin:12px 0;line-height:1.5}
.flash.ok{background:#e8f3ec;color:#1f5d36}
.flash.warn{background:#fff3d6;color:#6b4b00}
.flash.info{background:#e9f2f9;color:#164f78}
.filter{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}
.filter select{width:auto;margin:0}.filter input{flex:1;min-width:200px;margin:0}
.table-wrap{overflow-x:auto;padding:8px}
table{width:100%;border-collapse:collapse;font-size:13px}
th{font-size:10px;letter-spacing:1px;color:#707b89;text-align:left;padding:10px;border-bottom:1px solid #e2e6eb;text-transform:uppercase}
td{padding:10px;border-bottom:1px solid #f0f2f5;vertical-align:top}
tr.inactive td{color:#9aa3ad}
td input.price{width:100px;margin:0}
.pill{display:inline-block;font-size:11px;padding:3px 9px;border-radius:12px;background:#eef1f4;color:#4b5563}
.s-offen,.s-entwurf{background:#eef1f4}
.s-freigegeben,.s-angebot{background:#e9f2f9;color:#164f78}
.s-versendet{background:#e8f3ec;color:#1f5d36}
.s-angenommen,.s-erledigt{background:#d7efe0;color:#174d2c}
.s-abgelehnt,.s-ersetzt{background:#f3f4f6;color:#8a95a3}
.s-versand_unklar,.s-versand_laeuft{background:#fde2df;color:#8c1d14}
.facts{display:grid;grid-template-columns:110px 1fr;gap:6px 12px;font-size:13px;margin:0 0 14px}
.facts dt{color:#6b7683}.facts dd{margin:0;word-break:break-word}
pre{white-space:pre-wrap;word-break:break-word;font:13px/1.65 Inter,"Segoe UI",system-ui,sans-serif;background:#f8f9fb;border:1px solid #e8ebef;border-radius:10px;padding:14px;margin:0 0 10px}
pre.draft{border-style:dashed}
.offer-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #f0f2f5;font-size:13px}
.events{list-style:none;padding:0;margin:0;font-size:12px;max-height:420px;overflow:auto}
.events li{padding:8px 0;border-bottom:1px solid #f0f2f5}.events small{color:#8a95a3}
form.inline{display:flex;gap:8px;align-items:center;margin:6px 0}
form.inline select{width:auto;margin:0}
.price-card{background:#101820;color:#fff;border:0}
.price-card .eyebrow{color:#7fbce8}.price-card .hint{color:#a6b4c4}
.total{font-size:46px;letter-spacing:-2px;margin:16px 0 0}
.line{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #ffffff18;color:#c8d4df;font-size:12px}
.internal{padding:15px;background:#1e2b37;border:1px solid #334456;border-radius:10px;margin:18px 0}
.internal>span{color:#7fbce8;font-size:9px;letter-spacing:1px}
.internal p{display:flex;justify-content:space-between;margin:8px 0}
.internal small{color:#a9b8c9;font-size:11px;line-height:1.6}
.preview-error{color:#ffcf7a;font-size:12px;min-height:1em}
.check{display:flex;gap:10px;align-items:center;font-size:12px;font-weight:400}
.check input{width:16px;margin:0}
details{font-size:12px;color:#6b7683;line-height:1.7;margin:0 0 16px}
summary{cursor:pointer}
#gallery{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
#gallery figure{margin:0;width:110px}
#gallery img{width:110px;height:85px;object-fit:cover;border-radius:7px;display:block}
#gallery form{margin:4px 0}
footer{font-size:10px;color:#8b929a;padding:10px 0}
@media(max-width:1100px){aside{width:190px;padding:22px 14px}aside img{width:150px}main.with-aside{margin-left:190px;padding:0 20px}.layout{grid-template-columns:1fr}}
@media(max-width:700px){aside{position:static;width:100%;padding:14px 16px}aside img{width:120px}.workspace{margin:14px 0 4px}aside a{display:inline-block;padding:8px 10px}.aside-bottom{margin-top:10px}main.with-aside{margin:0;padding:0 16px}.row{grid-template-columns:1fr;gap:0}section{padding:16px}h1{font-size:26px}.offer-row{grid-template-columns:1fr 1fr}}
