:root{
  font-family:var(--app-font,Arial,sans-serif);
  color:var(--text-color,#1f2937);
  background:var(--page-bg,#f3f4f6);
  --navy:#162E4D;
  --orange:#F6A01D;
  --surface-shadow:0 14px 38px rgba(15,23,42,.12),0 3px 10px rgba(15,23,42,.06)
}
*{box-sizing:border-box}
html{background:var(--page-bg);font-size:var(--base-font-size,16px)}
body{margin:0;background:var(--page-bg);color:var(--text-color);min-height:100vh}
.site-header{background:var(--navy);color:white;padding:var(--header-vertical-padding,4px) 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;position:sticky;top:0;z-index:50;box-shadow:0 6px 24px rgba(15,23,42,.16)}
.brand{display:flex;align-items:center;color:white;text-decoration:none;min-width:0;flex:0 1 auto}
.brand img{display:block;object-fit:contain;object-position:left center;flex:0 0 auto}
.brand img.header-logo-icon{width:var(--header-logo-size,54px);height:var(--header-logo-size,54px)}
.brand img.header-logo-wide{width:var(--header-logo-size,180px);height:auto;max-height:92px}
.header-navigation{display:flex;align-items:center;justify-content:flex-end;gap:14px;min-width:0}
.main-nav{display:flex;align-items:center;gap:18px}
.main-nav a{color:white;text-decoration:none;position:relative;padding:10px 0 9px;white-space:nowrap}
.main-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:3px;border-radius:99px;background:var(--orange);transition:right .22s ease}
.main-nav a:hover{color:#fff}
.main-nav a:hover::after,.main-nav a.active::after{right:0}
.main-nav a.active{font-weight:700}
.menu-toggle{display:none;width:44px;height:42px;padding:9px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);border-radius:9px;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.menu-toggle span{display:block;width:23px;height:2px;border-radius:2px;background:#fff;transition:transform .22s ease,opacity .22s ease}
.menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle.open span:nth-child(2){opacity:0}
.menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
main{padding:28px 24px;max-width:1450px;margin:auto}
h1{margin-top:0;color:var(--navy)}
h2{color:var(--navy);margin-bottom:12px}
a{color:var(--navy)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:28px}
.cards>div,.panel,details,.form-card,.toolbar,.dashboard-section,.settings-preview{background:white;padding:20px;border-radius:14px;box-shadow:var(--surface-shadow)}
.cards span{display:block;color:#64748b;margin-bottom:8px}
.cards strong{font-size:21px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.form-card{margin:12px 0 24px}
label{display:grid;gap:6px;font-size:.9rem;color:#475569}
input,select,textarea,button,.button{padding:10px;border:1px solid #cbd5e1;border-radius:8px;font:inherit}
input,select,textarea{background:#fff;color:#1f2937;width:100%}
textarea{min-height:82px}
button,.button{background:var(--navy);color:white;cursor:pointer;text-decoration:none;display:inline-block;width:auto}
button:hover,.button:hover{background:var(--orange);color:#111}
.button.secondary{background:white;color:var(--navy);border-color:rgba(22,46,77,.28)}
.button.secondary:hover{background:#f8fafc;color:var(--navy);border-color:var(--navy)}
.button.small{padding:7px 10px;font-size:.88rem}
button.danger{background:#a61b1b}
table{width:100%;border-collapse:collapse;background:white;margin:16px 0 28px;box-shadow:var(--surface-shadow);border-radius:12px;overflow:hidden}
th,td{padding:11px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:top}
th{background:color-mix(in srgb,var(--navy) 13%,white);color:var(--navy)}
tr:last-child td{border-bottom:0}
.flash{background:#dcfce7;border:1px solid #86efac;padding:12px 14px;margin-bottom:18px;border-radius:9px;box-shadow:0 7px 20px rgba(15,23,42,.07)}
.inline{display:inline-flex;gap:8px;margin:8px 0}
.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.toolbar input{min-width:280px;flex:1}
.page-head,.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.muted{color:#64748b}
.danger-zone{border:1px solid #f2b8b5;background:#fff5f5;padding:18px;border-radius:12px;margin-top:30px}
.table-wrap{overflow-x:auto;border-radius:12px}
.trip-gap-row td{background:#f8fafc;color:#94a3b8;font-style:italic}

.todo-day-head{align-items:baseline}
.todo-day-km{font-weight:800;color:var(--navy);white-space:nowrap;text-align:right}
.todo-job-list{display:grid;gap:8px}
.todo-job-row{display:grid;grid-template-columns:70px 100px minmax(120px,1fr) minmax(150px,1.4fr) minmax(120px,1fr) auto;gap:14px;align-items:center;padding:11px 14px;border:1px solid #dbe3ec;border-radius:12px;background:#fff;box-shadow:var(--surface-shadow)}
.todo-job-time{font-variant-numeric:tabular-nums;font-weight:800;color:var(--navy)}
.todo-job-date{color:#64748b;font-size:.9rem}
.todo-job-name{font-weight:800;color:var(--navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.todo-job-place,.todo-job-phone{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:760px){
  .todo-job-row{grid-template-columns:1fr 1fr;grid-auto-rows:auto;row-gap:4px}
}
.table-wrap table{min-width:700px}
.status-form{display:flex;gap:7px;align-items:center;margin:0}
.status-form select{min-width:125px;padding:7px}
.dashboard-section{margin:0 0 26px}
.dashboard-section>h2,.section-head h2{margin-top:0}
.section-head p{margin:0 0 10px}
.appointment-list{display:grid;gap:12px}
.appointment-card{display:grid;grid-template-columns:105px minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px;border:1px solid #e2e8f0;border-left:5px solid var(--orange);border-radius:12px;background:#fff;box-shadow:0 7px 22px rgba(15,23,42,.07)}
.appointment-card.overdue{border-left-color:#b91c1c;background:#fffafa}
.appointment-date strong{display:block;font-size:1.25rem;color:var(--navy)}
.appointment-date span{color:#64748b}
.appointment-title{font-weight:700;font-size:1.05rem;color:var(--navy)}
.appointment-main p{margin:7px 0 0;white-space:pre-wrap}
.appointment-action{margin:0}
.empty-state{padding:24px;text-align:center;border:1px dashed #cbd5e1;border-radius:12px;color:#64748b;background:#f8fafc}
.settings-form{display:grid;gap:24px}
.settings-group{padding-bottom:22px;border-bottom:1px solid #e2e8f0}
.settings-group:last-of-type{border-bottom:0;padding-bottom:0}
.settings-group h2{margin-top:0}
.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.settings-grid input[type=color]{height:48px;padding:4px;cursor:pointer}
.check-setting{display:flex;align-items:center;grid-template-columns:auto 1fr;gap:10px;padding-top:25px}
.check-setting input{width:20px;height:20px;margin:0}
.settings-actions{display:flex;gap:10px;flex-wrap:wrap}
.settings-preview{margin-top:24px}
.settings-preview h2{margin-top:0}

/* Dezente Einblendbewegungen */
.motion-on main>*,.motion-on .dashboard-section,.motion-on .settings-preview{animation:slide-soft .38s ease both}
.motion-on .cards>div,.motion-on .appointment-card,.motion-on .form-card>*{animation:slide-soft .34s ease both}
.motion-on .cards>div:nth-child(2),.motion-on .appointment-card:nth-child(2),.motion-on .form-card>*:nth-child(2){animation-delay:.035s}
.motion-on .cards>div:nth-child(3),.motion-on .appointment-card:nth-child(3),.motion-on .form-card>*:nth-child(3){animation-delay:.07s}
.motion-on .cards>div:nth-child(4),.motion-on .appointment-card:nth-child(4),.motion-on .form-card>*:nth-child(4){animation-delay:.105s}
.motion-on .cards>div:nth-child(5),.motion-on .appointment-card:nth-child(5),.motion-on .form-card>*:nth-child(5){animation-delay:.14s}
@keyframes slide-soft{from{opacity:0;transform:translateY(11px)}to{opacity:1;transform:translateY(0)}}

/* Rechnung */
.invoice-body{background:#ddd;padding:24px}
.invoice{max-width:850px;margin:auto;background:white;position:relative;min-height:1120px;padding:50px 55px 92px;box-sizing:border-box;box-shadow:var(--surface-shadow)}
.invoice-top{background:transparent;color:#1f2937;padding:0;display:flex;justify-content:space-between;align-items:flex-start;gap:35px}
.invoice-sender{line-height:1.55}
.invoice-logo-corner{width:var(--invoice-logo-size,220px);max-width:48%;height:auto;display:block;margin:0}
.invoice-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;margin:65px 0 38px}
.invoice-recipient,.invoice-details{line-height:1.55}
.invoice-details{text-align:right}
.invoice h1{font-size:2rem;margin-bottom:22px;text-transform:uppercase}
.invoice-table{margin:0 0 28px;box-shadow:none;border-radius:0;font-size:13px}
.invoice-table td:last-child,.invoice-table th:last-child{text-align:right}
.invoice-total th{font-size:14px}
.invoice>p{font-size:12.5px;padding-left:11px;padding-right:11px}
.invoice-thanks{margin-top:34px;font-weight:600;color:var(--navy)}
.invoice-footer{position:absolute;left:55px;right:55px;bottom:28px;padding-top:12px;border-top:1px solid var(--orange);font-size:9.5px;line-height:1.4;text-align:center;color:rgba(31,41,55,.5);white-space:nowrap}
.print-button{margin-top:20px}
.small-action{padding:6px 10px}

@media(max-width:1180px){
  .main-nav{gap:12px}
  .main-nav a{font-size:.92rem}
}
@media screen and (max-width:800px){
  .site-header{padding:var(--header-vertical-padding,4px) 14px}
  .brand img.header-logo-icon{width:min(var(--header-logo-size,54px),56px);height:min(var(--header-logo-size,54px),56px)}
  .brand img.header-logo-wide{width:min(var(--header-logo-size,180px),220px);height:auto;max-height:58px}
  .menu-toggle{display:flex}
  .main-nav{display:none;position:absolute;left:12px;right:12px;top:calc(100% + 8px);background:var(--navy);padding:10px 14px 16px;border-radius:12px;box-shadow:0 18px 45px rgba(15,23,42,.28);flex-direction:column;align-items:stretch;gap:0}
  .main-nav.open{display:flex}
  .main-nav a{padding:12px 5px;border-bottom:1px solid rgba(255,255,255,.12)}
  .main-nav a:last-child{border-bottom:0}
  .main-nav a::after{bottom:5px;right:100%}
  main{padding:22px 14px}
  .page-head,.section-head{display:block}
  .section-head .button{margin-bottom:12px}
  .toolbar{display:grid}
  .toolbar input{min-width:0}
  .appointment-card{grid-template-columns:86px 1fr;gap:12px}
  .appointment-action{grid-column:1/-1;text-align:right}
  .status-form{min-width:230px}
  .invoice{min-height:0;padding:22px 20px 105px}
  .invoice-top,.invoice-meta{display:block}
  .invoice-logo-corner{width:100%;max-width:360px;margin:25px 0 0 auto}
  .invoice-details{text-align:left;margin-top:25px}
  .invoice-footer{left:20px;right:20px;bottom:20px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media print{@page{size:A4;margin:0}.invoice-body{background:white;padding:0}.invoice{width:210mm;min-height:297mm;padding:18mm 18mm 25mm;box-shadow:none}.invoice-top,.invoice-meta{display:flex!important;justify-content:space-between;align-items:flex-start}.invoice-logo-corner{width:var(--invoice-logo-size,220px)!important;max-width:46%;margin:0!important}.invoice-details{text-align:right!important;margin-top:0!important}.invoice-footer{left:18mm;right:18mm;bottom:10mm;color:rgba(31,41,55,.5)}.print-button{display:none}}

/* Aufträge bearbeiten */
.wide-field{grid-column:1/-1}
.form-actions{display:flex;align-items:end}
.notice-info{margin:0 0 18px;padding:13px 15px;border-radius:10px;background:#eff6ff;border:1px solid #93c5fd;color:#1e3a5f;box-shadow:0 7px 20px rgba(15,23,42,.07)}
.appointment-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.change-history{display:grid;gap:10px}
.change-entry{display:grid;grid-template-columns:155px minmax(0,1fr);gap:14px;padding:12px 0;border-bottom:1px solid #e2e8f0}
.change-entry:last-child{border-bottom:0}
.change-entry strong{color:var(--navy);font-size:.92rem}
.change-entry span{overflow-wrap:anywhere}

@media(max-width:800px){
  .appointment-actions{grid-column:1/-1;justify-content:flex-end}
  .change-entry{grid-template-columns:1fr;gap:4px}
}

/* HELFERLINE-Felder */
#helperline-number-field{border:1px solid transparent;border-radius:10px;padding:8px;transition:border-color .2s ease,background .2s ease}
#helperline-number-field.helperline-active{border-color:color-mix(in srgb,var(--orange) 55%,white);background:color-mix(in srgb,var(--orange) 8%,white)}

/* Update v0.2.5 */
.phone-link{font-weight:700;text-decoration:none;white-space:nowrap}
.phone-link::before{content:"☎ ";font-size:.9em}
.row-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.row-actions form{margin:0}
.row-actions button{margin:0}
button.small{padding:7px 10px;font-size:.88rem}
.invoice-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:20px}
.invoice-actions .print-button{margin-top:0}
[hidden]{display:none!important}
@media(max-width:800px){.row-actions{min-width:250px}.invoice-actions{align-items:stretch}.invoice-actions>*{text-align:center}}
@media print{.invoice-actions{display:none}}


/* Update v0.2.6 – Logo-Einstellungen */
.logo-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;margin-top:16px}
.logo-setting-card{display:grid;gap:15px;padding:18px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc}
.logo-setting-card h3{margin:0;color:var(--navy)}
.logo-preview{display:flex;align-items:center;justify-content:center;min-height:150px;padding:18px;border-radius:12px;border:1px dashed #cbd5e1;background:white;overflow:hidden}
.logo-preview-wide img{width:min(var(--invoice-logo-size,340px),100%);max-height:150px;object-fit:contain}
.logo-preview-square img{width:min(var(--header-logo-size,54px),120px);height:min(var(--header-logo-size,54px),120px);min-width:36px;min-height:36px;object-fit:contain}
.range-setting{display:grid;grid-template-columns:minmax(160px,1fr) 72px;align-items:center;gap:12px}
.range-setting input[type=range]{padding:0;border:0;accent-color:var(--orange)}
.range-setting output{font-weight:700;color:var(--navy);text-align:right}
.check-setting.compact{padding-top:0}
.settings-note{margin:16px 0 0;padding:12px 14px;border-radius:10px;background:#eff6ff;border:1px solid #bfdbfe;color:#334155}
@media(max-width:800px){.logo-settings-grid{grid-template-columns:1fr}.range-setting{grid-template-columns:1fr 64px}}

/* Update v0.2.7 – Datensicherung */
.backup-settings{scroll-margin-top:95px}
.backup-health{display:inline-flex;align-items:center;max-width:520px;padding:9px 12px;border-radius:999px;font-size:.88rem;font-weight:700}
.backup-health.ok{background:#dcfce7;color:#166534}
.backup-health.warning{background:#fff7d6;color:#854d0e}
.backup-health.danger{background:#fee2e2;color:#991b1b}
.backup-general-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin:18px 0 22px}
.backup-general-card,.backup-target-card{background:#fff;padding:18px;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 9px 28px rgba(15,23,42,.08)}
.backup-general-card{display:grid;align-content:start;gap:14px}
.backup-general-card h3,.backup-target-card h3,.backup-log h3{margin:0;color:var(--navy)}
.backup-target-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:18px}
.backup-target-card{display:grid;gap:18px}
.backup-target-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid #e2e8f0}
.switch-setting{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:9px;padding:9px 12px;border-radius:999px;background:#f1f5f9;white-space:nowrap}
.switch-setting input{width:20px;height:20px;margin:0}
.backup-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.stored-key{display:grid;gap:5px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:9px;background:#f8fafc;overflow-wrap:anywhere}
.backup-target-status{display:grid;gap:6px;padding:13px 15px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0;font-size:.9rem}
.backup-target-status strong{color:var(--navy)}
.backup-error{color:#991b1b;overflow-wrap:anywhere}
.backup-log{margin-top:24px}
.backup-run-status{display:inline-block;padding:5px 8px;border-radius:999px;font-size:.82rem;font-weight:700}
.backup-run-status.pending{background:#e0f2fe;color:#075985}
.backup-run-status.running{background:#fef3c7;color:#92400e}
.backup-run-status.success{background:#dcfce7;color:#166534}
.backup-run-status.failed{background:#fee2e2;color:#991b1b}
.backup-dashboard-alert{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;margin:0 0 20px;border-radius:12px;box-shadow:0 7px 20px rgba(15,23,42,.07)}
.backup-dashboard-alert>div{display:grid;gap:3px}
.backup-dashboard-alert.warning{background:#fff7d6;border:1px solid #facc15;color:#713f12}
.backup-dashboard-alert.danger{background:#fee2e2;border:1px solid #fca5a5;color:#7f1d1d}
@media(max-width:800px){
  .backup-target-grid{grid-template-columns:1fr}
  .backup-fields{grid-template-columns:1fr}
  .backup-target-head,.backup-dashboard-alert{align-items:stretch;flex-direction:column}
  .backup-health{border-radius:12px}
  .backup-dashboard-alert .button{text-align:center}
}

.backup-ftp-warning {
  margin: 14px 0 4px;
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(246, 160, 29, .12);
  border: 1px solid rgba(246, 160, 29, .35);
  line-height: 1.45;
}


/* Update v0.2.9 – eingeklappte Formulare und eigene Datensicherung */
.create-panel{margin:12px 0 24px;padding:0;overflow:hidden}
.create-panel[open]{padding:0}
.create-summary{display:inline-flex;align-items:center;gap:9px;margin:16px;padding:10px 15px;border-radius:9px;background:var(--navy);color:white;font-weight:700;cursor:pointer;list-style:none;user-select:none}
.create-summary::-webkit-details-marker,.accordion-summary::-webkit-details-marker{display:none}
.create-summary::before{content:"＋";font-size:1.15rem;line-height:1}
.create-panel[open]>.create-summary::before{content:"−"}
.create-summary:hover{background:var(--orange);color:#111}
.create-panel>.form-card,.create-panel>form{margin:0;padding:20px;border-radius:0;box-shadow:none;border-top:1px solid #e2e8f0}

.accordion-card{padding:0;overflow:hidden;background:white;border:1px solid #e2e8f0;border-radius:14px;box-shadow:var(--surface-shadow)}
.accordion-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;cursor:pointer;list-style:none;user-select:none}
.accordion-summary>span:first-child{display:grid;gap:3px}
.accordion-summary strong{color:var(--navy);font-size:1.03rem}
.accordion-summary small{color:#64748b;font-weight:500}
.accordion-chevron{font-size:1.35rem;transition:transform .2s ease}
.accordion-card[open] .accordion-chevron{transform:rotate(180deg)}
.accordion-body{padding:18px 19px;border-top:1px solid #e2e8f0}
.summary-status{display:flex;align-items:center;gap:14px;color:#64748b}
.summary-status b{padding:5px 9px;border-radius:999px;background:#f1f5f9;color:var(--navy);font-size:.8rem}

.backup-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:18px 0}
.backup-overview-card{display:grid;gap:12px;padding:18px;border-radius:14px;background:white;box-shadow:var(--surface-shadow)}
.backup-overview-card>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:center}
.backup-overview-card>div:first-child span{color:#64748b;font-size:.88rem}
.backup-overview-card dl{display:grid;gap:8px;margin:0}
.backup-overview-card dl div{display:flex;justify-content:space-between;gap:12px}
.backup-overview-card dt{color:#64748b}
.backup-overview-card dd{margin:0;font-weight:700;text-align:right}
.backup-state-dot{justify-self:start;padding:5px 9px;border-radius:999px;font-size:.8rem;font-weight:700}
.backup-state-dot.active{background:#dcfce7;color:#166534}
.backup-state-dot.inactive{background:#f1f5f9;color:#475569}
.backup-target-section{margin:24px 0}
.backup-target-list{display:grid;gap:14px;margin-top:14px}
.backup-target-accordion .backup-target-card{border:0;border-radius:0;box-shadow:none;padding:18px 19px}
.backup-log-accordion{margin-top:24px}
.backup-log-accordion .backup-log{margin-top:0}

@media(max-width:800px){
  .create-summary{display:flex;justify-content:center;margin:12px;width:calc(100% - 24px);box-sizing:border-box}
  .accordion-summary{align-items:flex-start}
  .summary-status{align-items:flex-end;flex-direction:column;gap:5px}
  .backup-overview-card dl div{display:grid;gap:2px}
  .backup-overview-card dd{text-align:left}
}


/* Update v0.3.1 – Wiedervorlagen */
.reminder-list{display:grid;gap:12px}
.reminder-card{display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px;border:1px solid #e2e8f0;border-left:5px solid #94a3b8;border-radius:12px;background:#fff;box-shadow:0 8px 25px rgba(15,23,42,.08)}
.reminder-card.today{border-left-color:var(--orange);background:color-mix(in srgb,var(--orange) 5%,white)}
.reminder-card.overdue{border-left-color:#b91c1c;background:#fffafa}
.reminder-when{display:grid;gap:3px}
.reminder-when strong{color:var(--navy);font-size:1.05rem}
.reminder-when span{color:#64748b}
.reminder-main{display:grid;gap:6px;min-width:0}
.reminder-main>div:first-child{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.reminder-main p{margin:0;white-space:pre-wrap}
.reminder-category{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eef2f7;color:var(--navy);font-size:.78rem;font-weight:700}
.reminder-completed{margin-top:24px}
@media(max-width:800px){.reminder-card{grid-template-columns:1fr;gap:10px}.reminder-card .row-actions,.reminder-card .appointment-actions{justify-content:flex-start;min-width:0}.reminder-when{display:flex;gap:8px;align-items:baseline}}

.page-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:800px){.page-actions{justify-content:flex-start;margin-top:12px}}

@media(max-width:1120px){
  .menu-toggle{display:flex}
  .main-nav{display:none;position:absolute;left:12px;right:12px;top:calc(100% + 8px);background:var(--navy);padding:10px 14px 16px;border-radius:12px;box-shadow:0 18px 45px rgba(15,23,42,.28);flex-direction:column;align-items:stretch;gap:0}
  .main-nav.open{display:flex}
  .main-nav a{padding:12px 5px;border-bottom:1px solid rgba(255,255,255,.12);font-size:1rem}
  .main-nav a:last-child{border-bottom:0}
  .main-nav a::after{bottom:5px;right:100%}
}

/* Update v0.3.2 – Einstellungsmenü, Google Fonts und flexibles Kopfzeilenlogo */
.settings-menu{position:relative;background:transparent!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;flex:0 0 auto}
.settings-menu>summary{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.26);border-radius:10px;background:rgba(255,255,255,.08);color:white;cursor:pointer;list-style:none;font-size:1.45rem;line-height:1;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.settings-menu>summary::-webkit-details-marker{display:none}
.settings-menu>summary:hover,.settings-menu[open]>summary,.settings-menu.active>summary{background:rgba(246,160,29,.2);border-color:var(--orange)}
.settings-menu[open]>summary{transform:rotate(18deg)}
.settings-submenu{position:absolute;right:0;top:calc(100% + 10px);display:grid;min-width:190px;padding:8px;border-radius:12px;background:white;box-shadow:0 18px 48px rgba(15,23,42,.24);border:1px solid #e2e8f0;z-index:90}
.settings-submenu a{display:block;padding:11px 13px;border-radius:8px;color:var(--navy);text-decoration:none;font-weight:600;white-space:nowrap}
.settings-submenu a:hover,.settings-submenu a.active{background:color-mix(in srgb,var(--orange) 18%,white);color:var(--navy)}
.settings-submenu a.active{box-shadow:inset 3px 0 0 var(--orange)}
.header-logo-preview img{object-fit:contain}
.header-logo-preview .preview-header-wide{width:min(var(--header-logo-size,180px),100%);max-height:130px}
.header-logo-preview .preview-header-icon{width:min(var(--header-logo-size,54px),180px);height:min(var(--header-logo-size,54px),180px)}
.compact-note,.font-note{margin:0;line-height:1.45}
@media(max-width:800px){
  .header-navigation{gap:8px}
  .settings-menu{order:1}
  .menu-toggle{order:2}
  .main-nav{order:3}
  .settings-menu>summary{width:42px;height:42px}
  .settings-submenu{right:-50px;min-width:185px}
}


/* Update v0.3.3 – einstellbarer kompakter Kopfzeilenabstand */
.brand{line-height:0}


/* Update v0.3.4 – sichtbaren Leerraum im breiten Kopfzeilenlogo beschneiden */
.header-logo-crop-frame{display:block;width:var(--header-logo-size,180px);max-width:42vw;overflow:hidden;line-height:0;flex:0 0 auto}
.header-logo-crop-frame img.header-logo-wide{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:left center;transform-origin:top left}
.preview-logo-crop-frame{width:min(var(--header-logo-size,180px),100%);max-width:100%}
.preview-logo-crop-frame img.preview-header-wide{display:block;width:100%;height:auto;max-height:none;transform-origin:top left}
@media(max-width:800px){
  .header-logo-crop-frame{width:min(var(--header-logo-size,180px),220px);max-width:48vw}
  .preview-logo-crop-frame{width:min(var(--header-logo-size,180px),100%);max-width:100%}
}

/* Update v0.3.5 – optionaler Start-/Stopp-Timer für Direktaufträge */
.checkbox-field{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:12px;padding:14px 16px;border:1px solid #dbe3ec;border-radius:12px;background:#f8fafc;cursor:pointer}
.checkbox-field input[type="checkbox"]{width:20px;height:20px;margin:2px 0 0;flex:0 0 auto;accent-color:var(--orange)}
.checkbox-field span{display:grid;gap:3px}
.checkbox-field strong{color:var(--navy)}
.checkbox-field small{color:#64748b;line-height:1.4}
.timer-inline{display:grid;gap:2px;margin-top:7px;padding:7px 9px;border-radius:9px;background:#f1f5f9;color:#475569;min-width:145px}
.timer-inline.running{background:rgba(246,160,29,.14);box-shadow:inset 3px 0 0 var(--orange)}
.timer-clock{font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:.04em;color:var(--navy)}
.timer-clock.large{font-size:clamp(1.8rem,5vw,3rem);line-height:1}
.timer-actions{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.timer-actions form{margin:0}
.button.timer-start{background:#18794e;color:#fff;border-color:#18794e}
.button.timer-start:hover{background:#11633f}
.button.danger{background:#b42318;color:#fff;border-color:#b42318}
.button.danger:hover{background:#8f1c13}
.timer-panel{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;align-items:center;gap:20px;margin:0 0 18px;padding:18px 20px;border:1px solid #dbe3ec;border-left:6px solid #64748b;border-radius:14px;background:white;box-shadow:var(--surface-shadow)}
.timer-panel.running{border-left-color:var(--orange);background:color-mix(in srgb,var(--orange) 5%,white)}
.timer-panel>div:first-child{display:grid;gap:6px}
.timer-label{font-weight:700;color:#64748b}
.timer-panel-meta{display:grid;gap:5px;color:#64748b;font-size:.9rem}
.timer-panel form{margin:0}
@media(max-width:800px){.timer-panel{grid-template-columns:1fr;gap:14px}.timer-panel form .button{width:100%}.timer-actions{align-items:stretch}.timer-actions form,.timer-actions .button{width:100%}}

/* Update v0.3.6 – HELFERLINE-Bruttoumsatz, Provision und Originalrechnungen */
.helperline-calculation{margin-top:8px;padding:8px 10px;border-radius:9px;background:rgba(246,160,29,.10);line-height:1.35}
.helperline-calculation small{color:#6b7280}
.helperline-summary{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:15px 17px;border:1px solid rgba(246,160,29,.4);border-radius:12px;background:rgba(246,160,29,.08)}
.helperline-summary span{font-size:1.05rem;color:var(--navy)}
.source-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eef2f7;color:var(--navy);font-size:.78rem;font-weight:700;white-space:nowrap}
.source-badge.helperline{background:rgba(246,160,29,.16);color:#8a4b00}
.success-text{color:#18794e;font-size:.82rem;font-weight:700}
.inline-action-details{position:relative}
.inline-action-details>summary{list-style:none;cursor:pointer}
.inline-action-details>summary::-webkit-details-marker{display:none}
.mini-form{position:absolute;right:0;top:calc(100% + 8px);z-index:30;display:grid;gap:8px;min-width:270px;padding:13px;border:1px solid #dbe3ec;border-radius:12px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.18)}
.mini-form label{display:grid;gap:4px;font-size:.82rem;color:#64748b}
.mini-form input{min-width:0}
@media(max-width:800px){.helperline-summary{align-items:flex-start;flex-direction:column}.inline-action-details{width:100%}.mini-form{position:static;margin-top:8px;min-width:0;width:100%;box-sizing:border-box}}

/* Update v0.3.12 – reduzierte, aufklappbare Auftragsübersicht */
.job-list{display:grid;gap:8px;margin-top:18px}
.job-list-head,.job-summary{display:grid;grid-template-columns:130px minmax(150px,1fr) minmax(170px,1.2fr) minmax(90px,auto) minmax(120px,auto) 24px;gap:16px;align-items:center}
.job-list-head{padding:0 16px 3px;color:#64748b;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.job-list-head .job-list-head-right{text-align:right}
.job-accordion{overflow:hidden;border:1px solid #dbe3ec;border-radius:12px;background:#fff;box-shadow:var(--surface-shadow)}
.job-accordion[open]{border-color:color-mix(in srgb,var(--orange) 45%,#dbe3ec)}
.job-accordion.job-running{border-left:5px solid var(--orange)}
.job-summary{min-height:50px;padding:8px 16px;cursor:pointer;list-style:none;transition:background .18s ease}
.job-summary::-webkit-details-marker{display:none}
.job-summary:hover{background:#f8fafc}
.job-accordion[open]>.job-summary{background:color-mix(in srgb,var(--orange) 6%,white);border-bottom:1px solid #e5e7eb}
.job-summary>span{min-width:0}
.job-date{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:800;color:var(--navy)}
.job-first-name,.job-last-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.job-last-name{font-weight:800;color:var(--navy)}
.job-amount{text-align:right;font-variant-numeric:tabular-nums;font-weight:800;color:var(--navy);white-space:nowrap}
.job-status-cell{text-align:right}
.job-chevron{font-size:1.2rem;font-weight:800;color:#64748b;transition:transform .18s ease;text-align:center}
.job-accordion[open] .job-chevron{transform:rotate(180deg)}
.status-badge{display:inline-flex;justify-content:center;padding:5px 8px;border-radius:999px;background:#eef2f7;color:#475569;font-size:.78rem;font-weight:800;white-space:nowrap}
.status-angenommen{background:#eef2f7;color:#475569}
.status-in-arbeit{background:rgba(246,160,29,.18);color:#8a4b00}
.status-bar-bezahlt{background:#dcfce7;color:#166534}
.status-verrechnet{background:#dbeafe;color:#1e40af}
.status-storniert{background:#fee2e2;color:#991b1b}
.job-expanded{display:grid;gap:16px;padding:17px 18px 18px}
.job-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}
.job-detail-grid>div{display:grid;gap:4px;padding:11px 12px;border-radius:10px;background:#f8fafc}
.job-detail-grid>div.wide{grid-column:span 2}
.job-detail-grid span{color:#64748b;font-size:.78rem;font-weight:700}
.job-detail-grid strong{color:var(--navy);line-height:1.35;overflow-wrap:anywhere}
.timer-inline.expanded{max-width:360px;margin:0}
.job-expanded-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-top:3px}
.job-expanded-actions .status-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.empty-state{padding:24px;border:1px dashed #cbd5e1;border-radius:12px;color:#64748b;text-align:center}
@media(max-width:760px){
  .job-list-head{display:none}
  .job-summary{grid-template-columns:100px minmax(0,1fr) minmax(0,1.15fr) 22px;gap:10px;padding:10px 13px}
  .job-summary .job-amount,.job-summary .job-status-cell{display:none}
  .job-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .job-summary{grid-template-columns:88px minmax(0,1fr) 22px;gap:6px 10px}
  .job-date{grid-column:1;grid-row:1/3}
  .job-first-name{grid-column:2;grid-row:1}
  .job-last-name{grid-column:2;grid-row:2}
  .job-chevron{grid-column:3;grid-row:1/3}
  .job-detail-grid{grid-template-columns:1fr}.job-detail-grid>div.wide{grid-column:auto}
  .job-expanded-actions,.job-expanded-actions .status-form{align-items:stretch;flex-direction:column;width:100%}
  .job-expanded-actions select,.job-expanded-actions button,.job-expanded-actions .row-actions{width:100%}
}

/* Update v0.3.9 – HELFERLINE-Verbindlichkeiten und Finanzübersicht */
.finance-cards,.invoice-finance-cards{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.finance-cards>div,.invoice-finance-cards>div{position:relative}
.finance-cards small,.invoice-finance-cards small{display:block;margin-top:5px;line-height:1.25}
.liability-card{border-left:5px solid #b42318!important;background:color-mix(in srgb,#b42318 5%,white)!important}
.liability-card>span,.liability-card small{color:#8f1c13!important}
.net-card{border-left:5px solid #18794e!important;background:color-mix(in srgb,#18794e 5%,white)!important}
.net-card>span,.net-card small{color:#12633f!important}
.danger-text{color:#b42318;font-size:.82rem;font-weight:800}
.finance-explanation{margin:14px 0 24px;line-height:1.55}
@media(max-width:700px){.finance-cards,.invoice-finance-cards{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.finance-cards,.invoice-finance-cards{grid-template-columns:1fr}}


/* Update v0.3.10 – Versionsnummer im Header */
.brand{display:flex;align-items:flex-end;gap:8px}
.app-version{display:inline-flex;align-items:center;padding:3px 7px;margin-bottom:2px;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:rgba(255,255,255,.78);font-size:.70rem;font-weight:700;line-height:1;letter-spacing:.02em;white-space:nowrap}
@media(max-width:720px){.brand{gap:5px}.app-version{padding:2px 5px;font-size:.62rem;margin-bottom:1px}}

/* Update v0.3.11 – klare Dreizeilen-Kennzahlen */
.finance-cards .finance-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0;min-height:142px}
.finance-cards .finance-card-title{display:block;width:100%;margin:0 0 12px;color:var(--navy);font-size:.86rem;font-weight:800;line-height:1.25;letter-spacing:.015em;text-align:right}
.finance-cards .finance-card-value{display:block;width:100%;margin:0 0 10px;color:var(--text-color);font-size:1.65rem;line-height:1.05;font-weight:800;text-align:right}
.finance-cards .finance-card-description{display:block;margin:0!important;color:#64748b;font-size:.78rem;line-height:1.35}
.finance-cards .liability-card .finance-card-title,.finance-cards .liability-card .finance-card-description{color:#8f1c13!important}
.finance-cards .net-card .finance-card-title,.finance-cards .net-card .finance-card-description{color:#12633f!important}
@media(max-width:460px){.finance-cards .finance-card{min-height:128px}.finance-cards .finance-card-value{font-size:1.55rem}}

/* Update v0.3.13 – persönliche Geräteempfehlungen */
.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.page-heading h2{margin-bottom:4px}.page-heading p{margin:0}.filter-bar{display:grid;grid-template-columns:minmax(220px,1fr) 190px auto auto auto;gap:10px;align-items:center;margin-bottom:18px}.recommendation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.recommendation-card{display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid #dbe3ec;border-radius:14px;background:#fff;box-shadow:var(--surface-shadow)}.recommendation-card.archived{opacity:.68}.recommendation-top{display:flex;justify-content:space-between;gap:10px}.recommendation-card h3{margin:0;color:var(--navy)}.recommendation-price{font-size:1.35rem;font-weight:800;color:var(--navy)}.recommendation-notes{padding:10px 12px;border-radius:10px;background:#f8fafc;white-space:pre-line}.recommendation-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:4px}.recommendation-actions form{margin:0}.recommendation-form .wide{grid-column:1/-1}.checkbox-row.compact{white-space:nowrap}.create-panel>summary{list-style:none}.create-panel>summary::-webkit-details-marker{display:none}.create-panel[open] .recommendation-form{margin-top:12px;min-width:min(720px,90vw)}
@media(max-width:850px){.filter-bar{grid-template-columns:1fr 1fr}.filter-bar input{grid-column:1/-1}.page-heading{flex-direction:column}.create-panel{width:100%}.create-panel>summary{width:100%;box-sizing:border-box;text-align:center}.create-panel[open] .recommendation-form{min-width:0}}
@media(max-width:520px){.filter-bar{grid-template-columns:1fr}.filter-bar input{grid-column:auto}.recommendation-grid{grid-template-columns:1fr}.recommendation-actions>*{width:100%}.recommendation-actions .button{width:100%;box-sizing:border-box;text-align:center}}
.document-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.document-card{background:#fff;border:1px solid rgba(22,46,77,.12);border-radius:14px;padding:1rem;box-shadow:var(--surface-shadow);display:grid;gap:.55rem}.document-card>span{font-size:.85rem;color:#667085}.document-card p{margin:0}.receipt-review{margin:1rem 0 1.5rem}
.finance-card-link{display:flex;color:inherit;text-decoration:none;cursor:pointer}.finance-card-link:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(15,23,42,.16)}.finance-card-link:active{transform:scale(.985)}
.amount-col{min-width:145px;width:145px;white-space:nowrap;text-align:right}.compact-record,.knowledge-card,.vault-card{background:#fff;border:1px solid rgba(22,46,77,.12);border-radius:14px;margin:10px 0;box-shadow:var(--surface-shadow)}.compact-record summary,.knowledge-card summary,.vault-card summary{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(160px,1fr);gap:12px;padding:14px 18px;cursor:pointer}.record-body,.knowledge-card>div,.vault-content{padding:0 18px 18px}.secret-row{display:flex;gap:8px;align-items:center}.secret-row input{flex:1}.card-list{margin-top:16px}
@media(max-width:760px){.compact-record summary,.knowledge-card summary,.vault-card summary{grid-template-columns:1fr}.amount-col{min-width:120px;width:120px}}

/* Update v0.5.0 – professionelle Sidebar, Untermenüs, Favoriten, Suche und Schnellaktionen */
:root{--sidebar-width:280px;--sidebar-collapsed-width:76px;--topbar-height:70px}
body{overflow-x:hidden}
.app-shell{min-height:100vh}
.app-sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);display:flex;flex-direction:column;background:#fff;color:var(--navy);z-index:80;border-right:1px solid #e2e8f0;box-shadow:8px 0 24px rgba(15,23,42,.05);transition:width .22s ease,transform .22s ease;overflow:hidden}
.sidebar-brand-area{position:relative;min-height:92px;display:flex;align-items:center;padding:14px 16px;border-bottom:1px solid #e2e8f0}
.sidebar-brand{display:flex;align-items:center;gap:12px;min-width:0;color:var(--navy);text-decoration:none;overflow:hidden}
.sidebar-brand:hover{color:var(--navy)}
.sidebar-main-icon,.sidebar-collapse-icon{width:48px;height:48px;object-fit:contain;flex:0 0 48px}
.sidebar-collapse-icon{display:none}
.sidebar-wide-logo{display:block;width:150px;max-width:160px;overflow:hidden;flex:0 0 auto}
.sidebar-wide-logo img{display:block;width:150px;height:auto;max-height:60px;object-fit:contain;object-position:left center}
.sidebar-brand-copy{display:grid;gap:3px;min-width:0;white-space:nowrap}
.sidebar-brand-copy strong{font-size:1rem;letter-spacing:.01em;color:var(--navy)}
.sidebar-brand-copy small{color:#64748b;font-weight:700}
.sidebar-collapse{position:absolute;right:10px;top:50%;translate:0 -50%;display:grid;place-items:center;width:31px;height:31px;padding:0;border:1px solid rgba(22,46,77,.18);border-radius:9px;background:#f8fafc;color:var(--navy);font-size:1.35rem;line-height:1}
.sidebar-collapse:hover{background:var(--orange);color:#172033}
.sidebar-navigation{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:12px 10px;scrollbar-width:thin;scrollbar-color:rgba(22,46,77,.2) transparent}
.sidebar-bottom{padding:8px 10px 14px;border-top:1px solid #e2e8f0}
.sidebar-nav-row{position:relative;display:flex;align-items:center;min-width:0;border-radius:10px;margin:2px 0}
.sidebar-nav-link{display:flex;align-items:center;gap:11px;min-width:0;flex:1;padding:10px 11px;border-radius:10px;color:#334155;text-decoration:none;font-weight:600;line-height:1.2;transition:background .16s ease,color .16s ease,transform .16s ease}
.sidebar-nav-link:hover{background:#f1f5f9;color:var(--navy);transform:translateX(2px)}
.sidebar-nav-row.active>.sidebar-nav-link{background:rgba(246,160,29,.14);color:var(--navy);box-shadow:inset 3px 0 0 var(--orange)}
.nav-icon{display:grid;place-items:center;width:26px;min-width:26px;height:26px;font-size:1.05rem;line-height:1}
.sidebar-label,.group-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav-favorite-toggle{width:28px;height:32px;padding:0;margin-right:3px;border:0;background:transparent;color:#cbd5e1;font-size:1.05rem;opacity:0;transition:opacity .16s,color .16s ease,transform .16s ease}
.sidebar-nav-row:hover .nav-favorite-toggle,.nav-favorite-toggle.selected{opacity:1}
.nav-favorite-toggle:hover,.nav-favorite-toggle.selected{background:transparent;color:var(--orange);transform:scale(1.13)}
.nav-group{margin:7px 0;padding:0!important;background:transparent!important;border-radius:11px!important;box-shadow:none!important;overflow:visible!important}
.nav-group>summary{display:flex;align-items:center;gap:11px;min-height:45px;padding:10px 11px;border-radius:10px;list-style:none;cursor:pointer;color:var(--navy);font-weight:800;user-select:none;transition:background .16s ease}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-group>summary:hover{background:#f1f5f9}
.nav-group[open]>summary{background:#f1f5f9}
.nav-group .nav-chevron{margin-left:auto;color:#94a3b8;font-size:1rem;transition:transform .18s ease}
.nav-group[open] .nav-chevron{transform:rotate(180deg)}
.nav-group-links{display:grid;gap:1px;margin:3px 0 8px 15px;padding-left:10px;border-left:1px solid #e2e8f0}
.nav-group-links .sidebar-nav-link{padding-block:8px;font-size:.91rem;font-weight:600}
.group-customers>summary .nav-icon{background:rgba(69,185,124,.18);border-radius:7px}
.group-jobs>summary .nav-icon{background:rgba(64,146,223,.2);border-radius:7px}
.group-finance>summary .nav-icon{background:rgba(246,160,29,.2);border-radius:7px}
.group-knowledge>summary .nav-icon{background:rgba(168,111,224,.2);border-radius:7px}
.group-system>summary .nav-icon{background:rgba(148,163,184,.18);border-radius:7px}
.sidebar-favorites{margin:10px 0 13px;padding:10px 0;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}
.sidebar-favorites.empty{display:none}
.sidebar-section-title{display:flex;align-items:baseline;justify-content:space-between;padding:0 10px 5px;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:800}
.sidebar-section-title small{font-size:.58rem;text-transform:none;letter-spacing:0;color:#b0b9c6}
.favorite-links{display:grid;gap:1px}
.favorite-link{display:flex;align-items:center;gap:11px;padding:8px 11px;border-radius:10px;color:#334155;text-decoration:none;font-size:.9rem;font-weight:650}
.favorite-link:hover,.favorite-link.active{background:rgba(246,160,29,.14);color:var(--navy)}

.app-workspace{min-height:100vh;margin-left:var(--sidebar-width);transition:margin-left .22s ease;min-width:0}
.app-topbar{position:sticky;top:0;z-index:60;height:var(--topbar-height);display:grid;grid-template-columns:minmax(170px,.65fr) minmax(320px,1.5fr) minmax(190px,.65fr);align-items:center;gap:22px;padding:10px 24px;background:rgba(255,255,255,.94);backdrop-filter:blur(15px);border-bottom:1px solid rgba(22,46,77,.11);box-shadow:0 5px 18px rgba(15,23,42,.055)}
.topbar-left{display:flex;align-items:center;min-width:0}
.topbar-title{color:var(--navy);font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mobile-sidebar-toggle{display:none;width:43px;height:43px;padding:0;background:var(--navy);color:#fff;font-size:1.35rem}
.global-search{position:relative;display:flex;align-items:center;justify-self:stretch;max-width:760px;width:100%;margin:auto}
.global-search input{height:44px;padding:10px 76px 10px 42px;border-radius:12px;background:#f8fafc;border:1px solid #cbd5e1;box-shadow:inset 0 1px 2px rgba(15,23,42,.03)}
.global-search input:focus{outline:0;border-color:var(--navy);box-shadow:0 0 0 3px rgba(22,46,77,.12);background:#fff}
.global-search-icon{position:absolute;left:14px;z-index:1;color:#64748b;font-size:1.25rem}
.global-search kbd{position:absolute;right:11px;padding:3px 7px;border:1px solid #d8dee8;border-bottom-width:2px;border-radius:6px;background:white;color:#64748b;font:600 .68rem var(--app-font);pointer-events:none}
.global-search-results{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:100;max-height:min(520px,70vh);overflow:auto;padding:8px;background:#fff;border:1px solid #dce3ec;border-radius:13px;box-shadow:0 24px 60px rgba(15,23,42,.22)}
.live-search-row{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center;padding:10px;border-radius:9px;color:var(--text-color);text-decoration:none}
.live-search-row:hover{background:#f1f5f9}
.live-search-row>span:last-child{display:grid;gap:2px;min-width:0}
.live-search-row strong,.live-search-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.live-search-row small{color:#64748b;font-size:.76rem}
.live-search-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#eef2f7}
.live-search-empty{padding:20px;text-align:center;color:#64748b}
.live-search-all{display:block;width:100%;margin-top:5px;padding:10px;border:0;border-top:1px solid #e2e8f0;border-radius:0;background:#fff;color:var(--navy);text-align:center;font-weight:750}
.live-search-all:hover{background:#f8fafc;color:var(--navy)}
.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.topbar-icon-button{position:relative;display:grid;place-items:center;width:43px;height:43px;border:1px solid #d8e0e9;border-radius:11px;background:#fff;color:var(--navy);text-decoration:none}
.topbar-icon-button:hover{background:#f8fafc}
.topbar-icon-button b{position:absolute;right:-5px;top:-5px;display:grid;place-items:center;min-width:20px;height:20px;padding:0 4px;border-radius:99px;background:#b91c1c;color:#fff;font-size:.65rem;border:2px solid #fff}
.quick-actions{position:relative;padding:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
.quick-actions>summary{list-style:none;white-space:nowrap;padding:10px 14px;border-radius:10px;background:var(--navy);color:#fff;font-weight:750;cursor:pointer}
.quick-actions>summary::-webkit-details-marker{display:none}
.quick-actions[open]>summary,.quick-actions>summary:hover{background:var(--orange);color:#172033}
.quick-actions-menu{position:absolute;right:0;top:calc(100% + 9px);z-index:100;width:280px;padding:8px;border:1px solid #dce3ec;border-radius:13px;background:#fff;box-shadow:0 24px 60px rgba(15,23,42,.2)}
.quick-actions-menu a{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;padding:10px;border-radius:9px;color:var(--text-color);text-decoration:none}
.quick-actions-menu a:hover{background:#f1f5f9}
.quick-actions-menu a>span:first-child{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#eef2f7}
.quick-actions-menu a>span:last-child{display:grid;gap:1px}
.quick-actions-menu small{color:#64748b}
.app-content{width:100%;max-width:1700px;margin:0 auto;padding:28px 30px 44px}

.sidebar-collapsed .app-sidebar{width:var(--sidebar-collapsed-width)}
.sidebar-collapsed .app-workspace{margin-left:var(--sidebar-collapsed-width)}
.sidebar-collapsed .sidebar-brand-area{justify-content:center;padding-inline:10px}
.sidebar-collapsed .sidebar-brand{justify-content:center}
.sidebar-collapsed .sidebar-wide-logo,.sidebar-collapsed .sidebar-main-icon,.sidebar-collapsed .sidebar-brand-copy,.sidebar-collapsed .sidebar-label,.sidebar-collapsed .group-label,.sidebar-collapsed .nav-chevron,.sidebar-collapsed .nav-favorite-toggle,.sidebar-collapsed .sidebar-section-title{display:none}
.sidebar-collapsed .sidebar-collapse-icon{display:block}
.sidebar-collapsed .sidebar-collapse{right:-1px;width:21px;height:32px;border-radius:9px 0 0 9px;font-size:1.1rem}
.sidebar-collapsed .sidebar-navigation,.sidebar-collapsed .sidebar-bottom{padding-inline:9px}
.sidebar-collapsed .sidebar-nav-row,.sidebar-collapsed .sidebar-nav-link,.sidebar-collapsed .nav-group>summary,.sidebar-collapsed .favorite-link{justify-content:center}
.sidebar-collapsed .sidebar-nav-link,.sidebar-collapsed .nav-group>summary,.sidebar-collapsed .favorite-link{padding-inline:8px}
.sidebar-collapsed .nav-group-links{display:none}
.sidebar-collapsed .sidebar-favorites{padding-block:8px;margin-block:8px}
.sidebar-collapsed .sidebar-nav-row.active>.sidebar-nav-link{box-shadow:inset 0 -3px 0 var(--orange)}

.module-settings{scroll-margin-top:calc(var(--topbar-height) + 20px)}
.module-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:12px;margin-top:16px}
.module-setting-card{display:grid;grid-template-columns:24px 1fr;align-items:start;gap:11px;padding:15px;border:1px solid #dce3ec;border-radius:12px;background:#f8fafc;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}
.module-setting-card:hover{border-color:var(--navy);background:#fff;transform:translateY(-1px)}
.module-setting-card input{width:21px;height:21px;margin:1px 0 0;accent-color:var(--navy)}
.module-setting-card span{display:grid;gap:4px}
.module-setting-card strong{color:var(--navy)}
.module-setting-card small{color:#64748b;line-height:1.35}
.search-page-form{display:flex;gap:9px;margin:15px 0 22px;max-width:850px}
.search-page-form input{height:48px}
.search-result-list{display:grid;gap:10px;max-width:1100px}
.search-result-card{display:grid;grid-template-columns:48px minmax(0,1fr) 28px;align-items:center;gap:13px;padding:14px 16px;border:1px solid #dce3ec;border-radius:13px;background:#fff;color:var(--text-color);text-decoration:none;box-shadow:0 6px 18px rgba(15,23,42,.055);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.search-result-card:hover{transform:translateY(-2px);border-color:rgba(22,46,77,.35);box-shadow:0 13px 28px rgba(15,23,42,.1)}
.search-result-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:#eef2f7;font-size:1.25rem}
.search-result-main{display:grid;gap:3px;min-width:0}
.search-result-main small{color:var(--orange);font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.search-result-main strong{color:var(--navy);font-size:1.03rem}
.search-result-main span{color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search-result-arrow{font-size:1.8rem;color:#94a3b8}
.search-security-note{margin-top:20px}
.sidebar-overlay{display:none}

@media(max-width:1250px){
  .app-topbar{grid-template-columns:minmax(130px,.45fr) minmax(280px,1.4fr) auto;gap:14px;padding-inline:18px}
  .topbar-title{font-size:.9rem}
}
@media(max-width:1000px){
  .app-sidebar,.sidebar-collapsed .app-sidebar{width:280px;transform:translateX(-105%)}
  .app-workspace,.sidebar-collapsed .app-workspace{margin-left:0}
  .sidebar-mobile-open .app-sidebar{transform:translateX(0)}
  .sidebar-overlay{display:block;position:fixed;inset:0;z-index:70;border:0;border-radius:0;background:rgba(15,23,42,.48);opacity:0;pointer-events:none;transition:opacity .2s ease}
  .sidebar-mobile-open .sidebar-overlay{opacity:1;pointer-events:auto}
  .sidebar-collapse{display:none}
  .mobile-sidebar-toggle{display:grid;place-items:center}
  .app-topbar{grid-template-columns:auto minmax(220px,1fr) auto}
  .topbar-title{display:none}
  .sidebar-collapsed .sidebar-wide-logo{display:block}
  .sidebar-collapsed .sidebar-main-icon{display:block}
  .sidebar-collapsed .sidebar-collapse-icon{display:none}
  .sidebar-collapsed .sidebar-brand-copy{display:grid}
  .sidebar-collapsed .sidebar-label,.sidebar-collapsed .group-label,.sidebar-collapsed .nav-chevron,.sidebar-collapsed .sidebar-section-title{display:initial}
  .sidebar-collapsed .nav-favorite-toggle{display:block}
  .sidebar-collapsed .nav-group-links{display:grid}
  .sidebar-collapsed .sidebar-nav-row,.sidebar-collapsed .sidebar-nav-link,.sidebar-collapsed .nav-group>summary,.sidebar-collapsed .favorite-link{justify-content:initial}
}
@media(max-width:680px){
  :root{--topbar-height:62px}
  .app-topbar{height:auto;min-height:var(--topbar-height);grid-template-columns:auto 1fr auto;padding:9px 12px;gap:9px}
  .global-search{grid-column:1/-1;grid-row:2;max-width:none}
  .global-search input{height:42px}
  .global-search kbd{display:none}
  .topbar-actions{gap:6px}
  .topbar-icon-button{width:41px;height:41px}
  .quick-actions>summary{padding:10px 11px}
  .app-content{padding:20px 13px 38px}
  .search-page-form{display:grid}
  .search-result-card{grid-template-columns:42px minmax(0,1fr) 20px;padding:12px}
  .search-result-icon{width:40px;height:40px}
}
@media print{
  .app-sidebar,.app-topbar,.sidebar-overlay{display:none!important}
  .app-workspace,.sidebar-collapsed .app-workspace{margin-left:0!important}
  .app-content{max-width:none!important;padding:0!important}
}
.sidebar-wide-logo~.sidebar-brand-copy{display:none}
.sidebar-collapsed .sidebar-wide-logo~.sidebar-brand-copy{display:none}
.manual-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;align-items:start}.manual-index{position:sticky;top:82px;display:grid;gap:8px}.manual-index a{padding:8px 10px;border-radius:8px;text-decoration:none}.manual-index a:hover{background:var(--panel-soft,#eef2f7)}.manual-content{display:grid;gap:18px}.manual-content section{scroll-margin-top:90px}.manual-content ol{line-height:1.65}.match-box,.info-box{padding:16px;border:1px solid rgba(22,46,77,.18);border-radius:12px;background:rgba(22,46,77,.04);display:grid;gap:8px}.info-box span{display:block;color:var(--muted,#64748b);margin-top:5px}.customer-new-fields{padding-top:8px}.customer-new-fields h3{margin-top:0}.screenshot-import-card{max-width:760px}.notice{padding:12px 14px;border-left:4px solid var(--accent-color,#F6A01D);background:rgba(246,160,29,.10)}@media(max-width:800px){.manual-layout{grid-template-columns:1fr}.manual-index{position:static}.manual-index{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Berichte und Diagramme */
.report-page-head{align-items:flex-start}.report-actions{display:flex;gap:10px;flex-wrap:wrap}.report-period-form{display:grid;grid-template-columns:minmax(190px,1.3fr) repeat(2,minmax(150px,.8fr)) auto;gap:14px;align-items:end;margin-bottom:16px}.report-period-form label{display:grid;gap:6px}.report-tabs{display:flex;gap:6px;border-bottom:1px solid rgba(100,116,139,.24);margin:0 0 18px;overflow:auto}.report-tabs a{padding:12px 16px;text-decoration:none;color:var(--text-color);font-weight:700;border-bottom:3px solid transparent;white-space:nowrap}.report-tabs a.active{color:var(--navy);border-bottom-color:var(--orange);background:rgba(22,46,77,.035)}.report-summary-cards{grid-template-columns:repeat(5,minmax(150px,1fr));margin-bottom:18px}.report-section{margin-bottom:18px}.report-chart-shell{position:relative;width:100%;height:350px;border:1px solid rgba(100,116,139,.18);border-radius:14px;background:#fff;padding:12px}.report-chart{display:block;width:100%;height:100%}.dashboard-chart-shell{height:330px}.report-mini-summary{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;margin-top:12px}.report-mini-summary span{padding:12px 14px;border-radius:10px;background:rgba(22,46,77,.045);display:grid;gap:4px}.report-mini-summary small{color:#64748b}.report-mini-summary strong{font-size:1.1rem}.report-mini-summary .positive strong{color:#16875f}.report-mini-summary .negative strong{color:#b42318}.report-two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.report-bar-list{display:grid;gap:16px}.report-bar-row{display:grid;gap:7px}.report-bar-row>div:first-child{display:flex;justify-content:space-between;gap:14px}.report-bar-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-bar-track{height:10px;background:rgba(22,46,77,.09);border-radius:999px;overflow:hidden}.report-bar-track i{display:block;height:100%;min-width:3px;border-radius:inherit;background:linear-gradient(90deg,var(--navy),var(--orange))}.report-bar-track.expense i{background:linear-gradient(90deg,#b5483a,var(--orange))}.report-calculation{max-width:720px;margin:20px auto 4px;display:grid;gap:0;border:1px solid rgba(100,116,139,.2);border-radius:14px;overflow:hidden}.report-calculation.compact{margin:0}.report-calculation>div{display:flex;justify-content:space-between;gap:20px;padding:14px 18px;border-bottom:1px solid rgba(100,116,139,.15)}.report-calculation>div:last-child{border-bottom:0}.report-result-line{font-size:1.12rem;background:rgba(22,46,77,.06);color:var(--navy)}.report-helperline-cards{grid-template-columns:repeat(4,minmax(150px,1fr));margin-top:14px}.status-chip{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:.82rem;font-weight:700}.status-chip.paid{background:rgba(22,135,95,.12);color:#126b4d}.status-chip.open{background:rgba(181,72,58,.12);color:#9e362b}.status-chip.draft{background:rgba(100,116,139,.14);color:#475569}
@media(max-width:1200px){.report-summary-cards{grid-template-columns:repeat(3,minmax(150px,1fr))}.report-helperline-cards{grid-template-columns:repeat(2,minmax(150px,1fr))}}
@media(max-width:850px){.report-period-form{grid-template-columns:1fr 1fr}.report-period-form label:first-child,.report-period-form button{grid-column:1/-1}.report-two-columns{grid-template-columns:1fr}.report-summary-cards{grid-template-columns:repeat(2,minmax(135px,1fr))}.report-mini-summary{grid-template-columns:repeat(2,minmax(120px,1fr))}.report-chart-shell{height:300px}}
@media(max-width:520px){.report-summary-cards,.report-helperline-cards{grid-template-columns:1fr}.report-period-form{grid-template-columns:1fr}.report-period-form label{grid-column:1}.report-mini-summary{grid-template-columns:1fr}.report-chart-shell{height:270px;padding:6px}}
@media print{.app-sidebar,.app-topbar,.sidebar-overlay,.no-print,.flash{display:none!important}.app-workspace,.app-content{margin:0!important;padding:0!important;width:100%!important}.report-section,.finance-card{box-shadow:none!important;break-inside:avoid}.report-chart-shell{height:300px;border-color:#bbb}.table-wrap{overflow:visible}.table-wrap table{font-size:10pt}body{background:#fff}.report-summary-cards{grid-template-columns:repeat(5,1fr)}}
