:root{font:16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#20302d;background:#f3f6f5;--green:#156953;--muted:#5e706a;--border:#dce5e1;--soft:#e6f2ec}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #c46c16;outline-offset:3px}input:focus-visible,textarea:focus-visible{outline:2px solid var(--green);outline-offset:2px}input,textarea,select{width:100%;padding:11px 12px;border:1px solid #bacbc2;border-radius:8px;color:inherit;background:white}textarea{resize:vertical;min-height:95px}label{display:grid;gap:6px;font-size:.875rem;font-weight:600}h1,h2,h3,p{margin:0}h1{font-size:2rem;font-weight:650;letter-spacing:-.04em;line-height:1.2}h2{font-size:1.35rem;letter-spacing:-.025em}h3{font-size:1rem}a{color:var(--green)}[hidden]{display:none!important}.brand{display:flex;align-items:center;gap:9px;font-size:1.35rem;letter-spacing:-.04em;font-weight:700}.brand b{background:var(--green);color:white;border-radius:9px;display:grid;place-items:center;width:33px;height:33px;font-size:1.5rem}.eyebrow{display:block;color:var(--muted);font-size:.75rem;letter-spacing:.12em;font-weight:650}.auth{width:min(480px,calc(100% - 32px));margin:8vh auto;padding:30px;background:white;border:1px solid var(--border);border-radius:18px}.auth h1{margin:12px 0 16px}.auth .brand{margin-bottom:40px}.auth form{display:grid;gap:15px;margin:25px 0 16px}.auth p{margin:14px 0}.auth button{width:100%}.auth #result{overflow-wrap:anywhere;white-space:pre-wrap}.primary,.secondary{border:1px solid transparent;border-radius:8px;padding:10px 16px;font-weight:600;font-size:.875rem;min-height:42px}.primary{background:var(--green);color:white}.primary:hover{background:#104e3e}.secondary{background:white;border-color:var(--border);color:#2c463b}.secondary:hover{background:var(--soft)}.muted{color:var(--muted)}.small{font-size:.8125rem}.error{padding:12px;color:#9c2828;background:#fff0ed;border-radius:8px;overflow-wrap:anywhere}.error:empty{display:none}.app{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:100vh}.sidebar{background:white;border-right:1px solid var(--border);padding:30px 18px;display:flex;flex-direction:column}.sidebar>.eyebrow{margin:38px 12px 10px}.sidebar nav{display:grid;gap:4px}.sidebar nav button{display:flex;gap:12px;align-items:center;width:100%;text-align:left;border:0;background:transparent;padding:10px 12px;border-radius:8px;font-size:.875rem;color:#4a5e55}.sidebar nav button.active{background:var(--soft);color:var(--green);font-weight:650}.nav-icon{width:18px;text-align:center;color:inherit}.sidebar-bottom{margin-top:auto;padding:28px 12px 0;color:var(--muted);font-size:.75rem}.version{font-weight:600}.main{min-width:0;padding:36px clamp(20px,4vw,58px)}header{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-bottom:32px;flex-wrap:wrap}header .eyebrow{margin-bottom:8px}.header-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.pill{display:inline-block;padding:5px 9px;background:var(--soft);color:var(--green);font-size:.75rem;font-weight:600;border-radius:6px}.intro{margin-bottom:22px;color:var(--muted);max-width:75ch}.toolbar{display:flex;gap:14px;align-items:end;justify-content:space-between;flex-wrap:wrap;margin-bottom:18px}.toolbar label{width:min(100%,330px)}.count{font-size:.875rem;color:var(--muted)}.surface{background:white;border:1px solid var(--border);border-radius:12px;overflow:hidden}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.875rem}th{font-size:.75rem;color:var(--muted);font-weight:600;text-align:left;background:#f9fbfa;padding:14px 18px;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:16px 18px;border-bottom:1px solid #edf1ef;max-width:360px;overflow-wrap:anywhere}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f8fbf9}.record-button{border:0;padding:0;background:none;text-align:left;color:#174d3c;font-weight:650;font-size:inherit;text-decoration:underline;text-underline-offset:3px}.record-button:hover{color:#071f17}.number{font-variant-numeric:tabular-nums;white-space:nowrap}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 18px;background:white;border-top:1px solid var(--border)}.empty{padding:50px 25px;text-align:center;color:var(--muted)}.empty h2{color:#20302d;margin-bottom:10px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.stat{background:white;border:1px solid var(--border);border-radius:12px;padding:22px}.stat span{font-size:.8125rem;color:var(--muted)}.stat strong{display:block;font-size:1.9rem;font-weight:650;margin:5px 0}.stat small{font-size:.75rem;color:var(--muted)}.task-form{display:grid;grid-template-columns:minmax(0,1fr) 180px auto;align-items:end;gap:14px;padding:20px;border-bottom:1px solid var(--border)}.task-row{display:flex;align-items:center;gap:14px;padding:17px 20px;border-bottom:1px solid var(--border)}.task-row:last-child{border:0}.task-row input{width:19px;height:19px;accent-color:var(--green);flex-shrink:0}.task-row label{flex:1;min-width:0;overflow-wrap:anywhere}.task-row.done label{text-decoration:line-through;color:var(--muted)}.task-date{font-size:.8125rem;color:var(--muted)}footer{font-size:.75rem;color:var(--muted);margin-top:25px}.notice{padding:16px 18px;background:#fff8e8;color:#755412;border-radius:10px;margin-bottom:22px;font-size:.875rem}.section-title{margin:25px 0 12px}.sync-row{display:flex;gap:14px;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border);font-size:.875rem}.sync-row:last-child{border:0}.sync-row span:last-child{color:var(--muted);text-align:right}dialog{width:min(820px,calc(100% - 28px));max-height:90vh;border:1px solid var(--border);padding:25px;border-radius:15px;color:inherit;background:white}dialog::backdrop{background:#102e2666}.dialog-head{display:flex;justify-content:space-between;align-items:start;gap:15px;margin-bottom:20px}.dialog-head .eyebrow{margin-bottom:7px}.facts{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;padding:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.facts div{overflow-wrap:anywhere}.facts span{display:block;font-size:.75rem;color:var(--muted);margin-bottom:4px}.facts strong{font-weight:500;font-size:.875rem}.note{padding:12px 15px;background:#f3f7f5;border-radius:9px;margin:10px 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.875rem}.note small{display:block;color:var(--muted);margin-bottom:5px}.note-form{display:grid;gap:12px}.note-form button{justify-self:start}.relationship{padding:10px 0;border-bottom:1px solid var(--border);font-size:.875rem;display:flex;justify-content:space-between;gap:12px}.connection-flow{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:24px}.flow-step{border:1px solid var(--border);border-radius:10px;background:white;padding:16px;flex:1;min-width:170px}.flow-step strong{display:block}.flow-step small{color:var(--muted)}
@media(max-width:1000px){.app{grid-template-columns:185px minmax(0,1fr)}.main{padding:25px 20px}.sidebar{padding:25px 10px}.stats{gap:10px}.stat{padding:16px}.task-form{grid-template-columns:1fr 150px}.task-form button{grid-column:1/-1;justify-self:start}}
@media(max-width:720px){.app{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--border);padding:16px}.sidebar>.eyebrow,.sidebar-bottom{display:none}.sidebar nav{display:flex;overflow-x:auto;margin-top:14px;padding-bottom:5px}.sidebar nav button{white-space:nowrap;width:auto;flex-shrink:0}.main{padding:24px 16px}.stats{grid-template-columns:1fr}.stat{display:flex;gap:15px;align-items:center;justify-content:space-between}.stat strong{font-size:1.5rem}.stat small{display:none}.task-form{grid-template-columns:1fr}.facts{grid-template-columns:1fr}h1{font-size:1.75rem}.header-actions{width:100%;justify-content:space-between}.auth{padding:25px}dialog{padding:18px}.sync-row{flex-wrap:wrap}.sync-row span:last-child{text-align:left}.table-scroll table{min-width:720px}}

.export-details{margin:22px 0;padding:16px;background:#f8fbf9;border:1px solid var(--border);border-radius:10px}.export-details summary{cursor:pointer;font-weight:650;margin-bottom:12px}.export-totals{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.export-totals .stat strong{font-size:1.3rem}.export-source{margin-top:20px}.export-details .facts strong{white-space:pre-wrap}.export-details .stats .stat{display:block}@media(max-width:560px){.export-totals{grid-template-columns:1fr}}

#detail{width:min(1180px,calc(100% - 28px));max-width:1180px}.customer-overview{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px;margin:18px 0}.customer-wide{grid-column:1/-1}.customer-panel{min-width:0;border:1px solid var(--border);border-radius:12px;padding:18px;background:#f8fbf9}.customer-panel h3{margin-bottom:16px}.customer-panel .facts{margin:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.customer-panel .facts strong{white-space:pre-wrap;overflow-wrap:anywhere}.customer-stack{display:grid;gap:18px;align-content:start;min-width:0}@media(max-width:760px){.customer-overview{grid-template-columns:minmax(0,1fr)}.customer-wide{grid-column:auto}.customer-panel .facts{grid-template-columns:minmax(0,1fr)}.customer-panel{padding:14px}}

.search-toolbar{justify-content:flex-start;gap:8px 16px}.search-controls{display:flex;align-items:flex-end;gap:8px;flex:0 1 640px;min-width:0}.search-controls label{flex:1;min-width:0;width:auto}.search-controls button{flex-shrink:0}.search-toolbar .count{margin-left:auto;padding-bottom:10px}.search-toolbar #search-help{flex-basis:100%}.search-controls input{min-width:0}#clear-search{padding-inline:12px}@media(max-width:560px){.search-controls{flex-basis:100%}.search-controls button{padding-inline:10px}.search-toolbar .count{margin-left:0;padding-bottom:0}}

#detail-name:focus{outline:none}#detail-close:focus-visible{outline:2px solid var(--green);outline-offset:3px}

.customer-tabs{display:flex;gap:8px;border-bottom:1px solid var(--border);margin-bottom:22px}.customer-tabs button{border:0;background:transparent;padding:13px 18px;color:var(--muted);font-weight:650;border-bottom:3px solid transparent}.customer-tabs [aria-selected="true"]{color:var(--green);border-color:var(--green);background:#edf6f1}.purchase-heading{padding:12px 0 20px}.purchase-heading h3{font-size:1.5rem;margin:5px 0 8px}.purchase-filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;background:#f3f7f5;border:1px solid var(--border);padding:16px;border-radius:12px}.purchase-filters label:first-child{flex:1 1 260px}.purchase-filters label{flex:0 1 160px}.purchase-filters .check-label{display:flex;align-items:center;gap:7px;padding-bottom:12px;flex-basis:190px}.check-label input{width:18px;height:18px}.purchase-summary{display:flex;flex-wrap:wrap;gap:12px;padding:22px 0 14px;align-items:center}.purchase-summary strong{font-size:1.2rem}.purchase-summary span{color:var(--muted);font-size:.85rem}.purchase-summary span:last-child{margin-left:auto}.purchase-table td{vertical-align:top}.purchase-table td:nth-child(2){width:42%}.purchase-table strong{font-weight:600}.purchase-table small{display:block;color:var(--muted);margin-top:5px}.purchase-quantity{font-weight:750;font-size:1.1rem;color:var(--green)}.purchase-browser .pager{margin-bottom:12px}@media(max-width:600px){.purchase-filters label{flex:1 1 120px}.customer-tabs button{padding:12px;font-size:.9rem}.purchase-summary span:last-child{margin-left:0}.purchase-filters button{flex:1}.purchase-table{min-width:780px}}

.purchase-filters label:has(select){flex-basis:250px}select:focus-visible{outline:2px solid var(--green);outline-offset:2px}

.sales-stats{margin:24px 0}.sales-stats .stat{display:block;min-width:0}.sales-stats strong{font-size:1.7rem;overflow-wrap:anywhere}.sales-next{display:flex;align-items:center;justify-content:space-between;padding:24px;gap:20px}.sales-task{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:16px;align-items:center;padding:20px;border-bottom:1px solid var(--border)}.sales-task input{width:20px;height:20px}.sales-task p{margin:5px 0}.overdue{color:#a13d23;font-weight:650}.work-filter{display:block;max-width:300px;margin-bottom:20px}.call-link{display:inline-block;text-decoration:none}.contact-panel{margin:18px 0 24px}.contact-panel form{display:grid;gap:14px;margin:18px 0}.contact-followup{display:grid;grid-template-columns:2fr 1fr;gap:14px}.contact-panel button{justify-self:start}td small{display:block;font-size:.8rem;color:var(--muted);margin-top:5px}#contact-status:empty{display:none}@media(max-width:720px){.sales-next{display:block}.sales-task{grid-template-columns:24px minmax(0,1fr)}.sales-task>div:last-child{grid-column:2}.contact-followup{grid-template-columns:1fr}.sales-stats .stat small{display:block}}
/* Lead- und Chancenübersicht */
.prospect-board{display:grid;grid-template-columns:repeat(5,minmax(210px,1fr));gap:14px;overflow-x:auto;padding:8px 0 24px}.prospect-column{background:#eef2f5;border-radius:14px;padding:14px;min-height:240px}.prospect-column h3{font-size:14px;margin:0 0 18px}.prospect-card{display:flex;flex-direction:column;gap:10px;text-align:left;width:100%;background:white;border:1px solid #dce3e9;border-radius:10px;padding:16px;margin:0 0 12px;box-shadow:0 3px 10px #1231;color:inherit}.prospect-card:hover{border-color:#146b68}.prospect-card small{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:#66737b}.prospect-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}#prospect-edit>label{display:block;margin-bottom:14px}#prospect-edit>.primary{margin-top:16px}#link-results{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}@media(max-width:650px){.prospect-fields{grid-template-columns:1fr}}
/* Einheitliche Formularzeilen, auch bei nativen macOS-Auswahllisten. */
:root{--control-height:46px}
input:not([type=checkbox]):not([type=radio]),select{height:var(--control-height);min-height:var(--control-height);min-width:0;max-width:100%;font-size:1rem;line-height:1.25;padding:10px 12px}
select{appearance:none;-webkit-appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%235e706a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
input[type=date]{appearance:none;-webkit-appearance:none}
input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:1.25em}
.primary,.secondary{min-height:var(--control-height);line-height:1.25;display:inline-flex;align-items:center;justify-content:center;text-align:center}
label{min-width:0;align-content:end}
.purchase-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));align-items:end;gap:16px}
.purchase-filters label,.purchase-filters label:first-child,.purchase-filters label:has(select){width:auto;min-width:0;align-self:stretch;display:grid;grid-template-rows:minmax(2.625em,auto) var(--control-height);align-items:end;gap:6px}
.purchase-filters .check-label{display:flex;align-self:end;align-items:center;min-height:var(--control-height);padding:0;gap:8px}
.filter-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;grid-column:1/-1}
.filter-actions button{flex:0 0 auto}
.purchase-filters>button{align-self:end;justify-self:start}
.search-controls{align-items:end;flex-wrap:wrap}
.search-controls label{flex:1 1 180px;align-self:stretch}
.search-controls>input{flex:1 1 220px;width:auto}
.search-controls button{min-height:var(--control-height)}
.prospect-fields,.contact-followup{align-items:end}
.prospect-fields>label,.contact-followup>label,.task-form>label{align-self:stretch;grid-template-rows:minmax(1.5em,auto) var(--control-height)}
#bulk-form{display:grid;grid-template-columns:minmax(0,2fr) minmax(170px,1fr);gap:14px;align-items:end;margin-top:16px}
#bulk-form>button,#bulk-status{grid-column:1/-1;justify-self:start}
#prospect-edit>label{display:grid;gap:6px}
.work-filter{display:grid;gap:6px}
@media(max-width:600px){.purchase-filters{grid-template-columns:minmax(0,1fr)}.purchase-filters label,.purchase-filters label:first-child,.purchase-filters label:has(select){grid-template-rows:auto var(--control-height)}.filter-actions{width:100%}.filter-actions button{flex:1 1 auto}#bulk-form{grid-template-columns:minmax(0,1fr)}.search-controls label{flex-basis:100%}.search-controls>input{flex-basis:100%}}
/* Kundenfilter: zwei ausgeglichene Reihen statt eines einzelnen Restfelds. */
#customer-filter{grid-template-columns:repeat(3,minmax(0,1fr))}
#customer-filter .filter-actions{grid-column:auto;align-self:end;min-height:var(--control-height)}
@media(min-width:1750px){#customer-filter{grid-template-columns:repeat(5,minmax(0,1fr))}#customer-filter .filter-actions{grid-column:1/-1}}
@media(max-width:1100px){#customer-filter{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#customer-filter{grid-template-columns:minmax(0,1fr)}}
.sort-heading{display:inline-flex;align-items:center;gap:8px;border:0;padding:6px 0;background:transparent;color:inherit;font:inherit;font-weight:650;text-align:left;white-space:nowrap}.sort-heading:hover{color:var(--green)}th[aria-sort=ascending],th[aria-sort=descending]{color:var(--green);background:#edf6f1}.sort-heading span{font-size:1rem}
