@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--red:#c8001e;--red-light:#fff0f1;--red-mid:#ffd6da;--dark:#1a1a1a;--mid:#444;--sub:#6b7280;--border:#dde1e8;--bg:#f4f5f7;--white:#fff;--green:#166534;--green-bg:#dcfce7;--amber:#92400e;--amber-bg:#fef3c7;--blue:#1d4ed8;--blue-bg:#eff6ff;--font:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--r:4px;--r-lg:6px;--shadow:0 1px 2px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 2px 8px #0000001a;--topbar-h:48px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font);background:var(--bg);color:var(--dark);-webkit-font-smoothing:antialiased;letter-spacing:-.01em;font-size:13px;overflow:hidden}button{font-family:var(--font);cursor:pointer;background:0 0;border:none}input,textarea,select{font-family:var(--font)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}#app{flex-direction:column;height:100vh;display:flex}#topbar{height:var(--topbar-h);background:var(--white);border-bottom:1px solid var(--border);z-index:100;flex-shrink:0;align-items:center;gap:0;padding:0 20px;display:flex}.topbar-brand{cursor:pointer;flex-shrink:0;align-items:center;gap:8px;text-decoration:none;display:flex}.brand-logo{color:var(--dark);letter-spacing:-.3px;font-size:14px;font-weight:700}.brand-logo img{object-fit:contain;vertical-align:middle;max-width:110px;max-height:28px}.brand-sep{color:#cbd5e1;margin:0 10px;font-size:16px}.brand-label{color:var(--sub);letter-spacing:0;font-size:12px;font-weight:500}.topbar-breadcrumb{flex:1;align-items:center;gap:4px;margin-left:4px;font-size:12px;display:flex}.topbar-breadcrumb .bc-link{color:var(--sub);cursor:pointer;font-weight:400}.topbar-breadcrumb .bc-link:hover{color:var(--red);text-decoration:underline}.topbar-breadcrumb .bc-sep{color:#cbd5e1;font-size:10px}.topbar-breadcrumb .bc-current{color:var(--dark);font-weight:500}.topbar-right{align-items:center;gap:6px;display:flex}.tb-btn{border-radius:var(--r);color:var(--sub);border:1px solid var(--border);background:var(--white);align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:500;transition:all .1s;display:flex}.tb-btn:hover{color:var(--dark);border-color:#94a3b8}.tb-btn svg{flex-shrink:0}#main{flex:1;position:relative;overflow:hidden}.view{position:absolute;inset:0;overflow-y:auto}.view.hidden{display:none}.view-inner{max-width:1400px;padding:24px 28px}.list-inner{margin:0 auto}.btn-primary{background:var(--red);color:#fff;border-radius:var(--r);white-space:nowrap;letter-spacing:0;border:none;align-items:center;gap:4px;padding:6px 14px;font-size:12px;font-weight:600;transition:opacity .1s;display:inline-flex}.btn-primary:hover{opacity:.9}.btn-secondary{background:var(--white);color:var(--mid);border:1px solid var(--border);border-radius:var(--r);padding:6px 14px;font-size:12px;font-weight:500;transition:all .1s}.btn-secondary:hover{background:var(--bg);border-color:#94a3b8}.btn-danger-sm{color:#dc2626;border-radius:var(--r);background:0 0;border:1px solid #fca5a5;width:100%;padding:5px 10px;font-size:11px;transition:all .1s}.btn-danger-sm:hover{background:#fff1f2}.btn-save-aside{background:var(--red);color:#fff;border-radius:var(--r);border:none;width:100%;margin-top:6px;padding:6px 12px;font-size:11px;font-weight:600;transition:opacity .1s}.btn-save-aside:hover{opacity:.9}.btn-pdf{background:var(--red);color:#fff;border-radius:var(--r);border:none;align-items:center;gap:4px;padding:6px 14px;font-size:12px;font-weight:600;transition:opacity .1s;display:inline-flex}.btn-pdf:hover{opacity:.9}.bmc-btn{color:#000;letter-spacing:-.01em;background:#fd0;border-radius:6px;align-items:center;gap:8px;margin-top:14px;padding:8px 18px;font-size:13px;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 2px 6px #0000001f}.bmc-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000002e}.bmc-icon{font-size:16px}.linkedin-btn{background:var(--white);color:var(--dark);border:1px solid var(--border);letter-spacing:-.01em;border-radius:6px;align-items:center;margin-top:14px;padding:8px 18px;font-size:13px;font-weight:600;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:inline-flex;box-shadow:0 2px 6px #0000000f}.linkedin-btn:hover{color:#0a66c2;border-color:#0a66c2;box-shadow:0 4px 12px #0a66c226}.list-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.list-header-right{align-items:center;gap:8px;display:flex}.page-title{color:var(--dark);letter-spacing:-.3px;margin-bottom:2px;font-size:18px;font-weight:700}.page-sub{color:var(--sub);font-size:12px}.search-input{border:1px solid var(--border);border-radius:var(--r);background:var(--white);color:var(--dark);outline:none;width:200px;padding:6px 10px;font-size:12px;transition:border-color .1s}.search-input:focus{border-color:#94a3b8}.project-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.project-card{background:var(--white);border-radius:var(--r-lg);cursor:pointer;box-shadow:var(--shadow);border:1px solid var(--border);padding:16px;transition:border-color .1s,box-shadow .1s}.project-card:hover{box-shadow:var(--shadow-md);border-color:#94a3b8}.pc-top{justify-content:space-between;align-items:flex-start;margin-bottom:4px;display:flex}.pc-name{color:var(--dark);flex:1;margin-right:8px;font-size:13px;font-weight:600;line-height:1.3}.pc-company{color:var(--sub);margin-bottom:10px;font-size:12px}.pc-pills{flex-wrap:wrap;gap:4px;margin-bottom:10px;display:flex}.pill{letter-spacing:.02em;border-radius:3px;align-items:center;gap:2px;padding:1px 7px;font-size:10px;font-weight:600;display:inline-flex}.pill-active{background:var(--green-bg);color:var(--green)}.pill-inactive{color:#94a3b8;background:#f1f5f9}.pc-foot{color:var(--sub);justify-content:space-between;font-size:10px;display:flex}.empty-state{text-align:center;color:var(--sub);padding:80px 0}.empty-state-icon{opacity:.15;margin-bottom:14px;font-size:32px}.empty-state p{margin-bottom:20px;font-size:14px}.project-inner{min-height:calc(100vh - var(--topbar-h));grid-template-columns:230px 1fr;align-items:start;gap:16px;padding:20px 24px;display:grid}.project-aside{gap:10px;display:grid}.aside-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:12px}.aside-card-hdr{color:#94a3b8;text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:7px;font-size:10px;font-weight:700;display:flex}.project-main{min-width:0}.doc-tabs{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-lg) var(--r-lg) 0 0;border-bottom:none;display:flex;overflow:hidden}.doc-tab{color:var(--sub);border-bottom:2px solid #0000;border-right:1px solid var(--border);background:0 0;flex-direction:column;flex:1;align-items:center;gap:2px;padding:9px 8px;font-size:11px;font-weight:500;transition:all .1s;display:flex}.doc-tab:last-child{border-right:none}.doc-tab:hover{color:var(--mid);background:#eef0f4}.doc-tab.active{color:var(--red);background:var(--white);border-bottom-color:var(--red)}.tab-label{font-size:11px;font-weight:500}.tab-badge{letter-spacing:0;border-radius:2px;min-height:14px;padding:1px 5px;font-size:9px;font-weight:700}.doc-tab.active .tab-badge{background:var(--red-light);color:var(--red)}.doc-tab:not(.active) .tab-badge{background:var(--green-bg);color:var(--green)}.doc-panel{background:var(--white);border:1px solid var(--border);border-radius:0 0 var(--r-lg) var(--r-lg);box-shadow:var(--shadow);border-top:none;padding:18px}.doc-empty{text-align:center;padding:40px 24px}.doc-empty-icon{color:#cbd5e1;margin-bottom:10px;font-size:24px}.doc-empty p{color:var(--sub);margin-bottom:18px;font-size:13px}.version-bar{border-radius:var(--r);background:#fffbeb;border:1px solid #fde68a;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;padding:7px 12px;display:flex}.version-bar-lbl{color:var(--amber);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700}.version-chip{color:var(--amber);background:#fffc;border-radius:3px;padding:2px 7px;font-size:11px}.doc-meta{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.form-group{margin-bottom:8px}.form-group.grid-2{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:0;display:grid}.form-2col{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}.field-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;font-size:10px;font-weight:600;display:block}.field-input{border:1px solid var(--border);border-radius:var(--r);width:100%;color:var(--dark);background:var(--white);outline:none;padding:6px 8px;font-size:12px;transition:border-color .1s}.field-input:focus{border-color:#94a3b8;box-shadow:0 0 0 2px #94a3b826}.field-hint{color:var(--sub);margin-top:3px;font-size:10px}textarea.field-input{resize:vertical;min-height:56px;line-height:1.5}.pos-table-wrap{overflow-x:auto}.pos-table{border-collapse:collapse;width:100%;font-size:12px}.pos-table thead tr{background:#eaeaea;border-bottom:1px solid #000}.pos-table thead th{text-align:left;color:var(--mid);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;padding:6px 8px;font-size:10px;font-weight:600}.pos-table thead th.right{text-align:right}.pos-table tbody tr{border-bottom:1px solid var(--border)}.pos-table tbody td{vertical-align:top;padding:4px 8px}.cell-input{width:100%;color:var(--dark);background:0 0;border:1px solid #0000;border-radius:3px;outline:none;padding:4px 6px;font-size:12px;transition:all .1s}.cell-input:focus{background:var(--white);border-color:#cbd5e1;box-shadow:0 0 0 2px #94a3b81f}.cell-input:hover{background:var(--bg)}.cell-input.right{text-align:right}.cell-total{text-align:right;color:var(--dark);padding:4px 8px;font-size:12px;font-weight:500}.cell-del{text-align:center;width:28px}.cell-einheit{cursor:pointer;padding:3px 2px;width:70px!important}.pos-desc-row td{padding-top:0}.cell-desc{resize:none;width:100%;min-height:22px;max-height:120px;font-family:var(--font);color:var(--sub);box-sizing:border-box;background:0 0;border:none;border-bottom:1px dashed #e2e8f0;outline:none;padding:2px 0;font-size:11px;line-height:1.5;transition:border-color .1s;overflow:hidden}.cell-desc:focus{color:var(--dark);border-bottom-color:#94a3b8}.cell-desc::placeholder{color:#cbd5e1}.btn-del{cursor:pointer;color:#cbd5e1;background:0 0;border:none;border-radius:3px;padding:2px 4px;font-size:15px;line-height:1;transition:color .1s}.btn-del:hover{color:#dc2626}.btn-add-pos{border-radius:var(--r);width:100%;color:var(--sub);cursor:pointer;background:0 0;border:1px dashed #cbd5e1;margin-top:4px;padding:6px;font-size:11px;transition:all .1s}.btn-add-pos:hover{border-color:var(--red);color:var(--red)}.totals-wrap{justify-content:flex-end;margin-top:8px;display:flex}.totals-box{background:#eaeaea;border:none;border-radius:0;min-width:260px;padding:8px 12px}.tot-row{color:var(--sub);justify-content:space-between;margin-bottom:4px;font-size:11px;display:flex}.tot-row .tot-val{color:var(--dark);font-weight:500}.tot-vat{justify-content:space-between;align-items:center;margin-bottom:6px;font-size:11px;display:flex}.vat-label{cursor:pointer;color:var(--sub);align-items:center;gap:5px;display:flex}.vat-label input[type=checkbox]{accent-color:var(--red);width:12px;height:12px}.tot-final{border-top:1px solid #000;justify-content:space-between;margin-top:4px;padding-top:6px;font-size:13px;font-weight:700;display:flex}.tot-final-val{color:var(--dark)}.doc-actions{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px;padding-top:14px;display:flex}.doc-actions-right{gap:6px;margin-left:auto;display:flex}.version-select{border:1px solid var(--border);border-radius:var(--r);color:var(--mid);background:var(--white);cursor:pointer;font-size:11px;font-family:var(--font);outline:none;padding:5px 8px}.settings-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.settings-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:18px}.settings-card-hdr{color:var(--dark);border-bottom:1px solid var(--border);align-items:center;gap:8px;margin-bottom:14px;padding-bottom:9px;font-size:12px;font-weight:700;display:flex}.settings-hint{color:var(--sub);font-size:10px;font-weight:400}.logo-upload-zone{border:1px dashed var(--border);border-radius:var(--r);text-align:center;cursor:pointer;background:var(--bg);justify-content:center;align-items:center;min-height:80px;padding:20px;transition:all .1s;display:flex}.logo-upload-zone:hover{background:#eef0f4;border-color:#94a3b8}#logoPlaceholder{color:var(--sub);flex-direction:column;align-items:center;gap:6px;font-size:11px;display:flex}.test-result{margin-top:8px;font-size:11px}.test-ok{color:var(--green)}.test-err{color:#dc2626}.modal-overlay{z-index:1000;background:#0006;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-overlay.hidden{display:none}.modal{background:var(--white);border-radius:var(--r-lg);width:100%;max-width:460px;box-shadow:var(--shadow-md);flex-direction:column;display:flex}.modal-hdr{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 18px 12px;font-size:14px;font-weight:700;display:flex}.modal-close{color:var(--sub);border-radius:3px;padding:2px 6px;font-size:18px;transition:all .1s}.modal-close:hover{background:var(--bg);color:var(--dark)}.modal-body{padding:14px 18px}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:6px;padding:10px 18px;display:flex}.toast{z-index:2000;background:var(--dark);color:#fff;border-radius:var(--r);max-width:280px;box-shadow:var(--shadow-md);padding:9px 16px;font-size:12px;font-weight:500;transition:opacity .2s,transform .2s;position:fixed;bottom:16px;right:16px}.toast.hidden{opacity:0;pointer-events:none;transform:translateY(6px)}.toast.success{background:#15803d}.toast.error{background:#b91c1c}@media (width<=900px){.project-inner,.settings-grid,.form-2col{grid-template-columns:1fr}.view{padding-bottom:100px}}
