/* DORFER V14.42.0 – Reiter „Renovierungen“ (Schritt 1). Nur Klassen mit Präfix reno-, keine bestehenden Regeln überschrieben. */
.reno{--reno-wine:var(--dorfer-wine,#873540);--reno-wine-dark:var(--dorfer-wine-dark,#702d36);--reno-soft:#f8eef0;--reno-line:var(--line,#e4e2df)}
.reno .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.reno .page-heading{margin-bottom:16px}
.reno-head-actions{display:flex;gap:10px;flex-wrap:wrap;margin-left:auto}
.reno-head-actions .btn,.reno-actions .btn,.reno .btn{min-height:48px}
.reno .btn.small{min-height:40px;padding:8px 12px}
.reno .btn.primary{background:var(--reno-wine);border-color:var(--reno-wine)}
.reno-muted{color:var(--muted,#66625f);font-size:12px}
.reno-pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0}

/* Liste */
.reno-toolbar{display:grid;gap:12px;margin-bottom:14px}
.reno-chips{display:flex;flex-wrap:wrap;gap:8px}
.reno-chip{min-height:48px;padding:10px 16px;border-radius:999px;border:2px solid var(--reno-wine);background:#fff;color:var(--reno-wine);font-weight:700;display:inline-flex;align-items:center;gap:8px;touch-action:manipulation}
.reno-chip b{font-size:12px;background:var(--reno-soft);color:var(--reno-wine);border-radius:999px;padding:2px 8px}
.reno-chip.on{background:var(--reno-wine);color:#fff}
.reno-chip.on b{background:#ffffff33;color:#fff}
.reno-search input{width:100%;min-height:48px;border:1px solid #d9d6d2;border-radius:12px;padding:10px 14px;background:#fff}
.reno-list{display:grid;gap:12px}
.reno-card{display:grid;gap:6px;width:100%;text-align:left;background:#fff;border:1px solid var(--reno-line);border-left:5px solid var(--reno-wine);border-radius:14px;padding:16px;color:inherit;min-height:48px;box-shadow:0 2px 6px #00000006}
.reno-card:hover,.reno-card:focus-visible{border-color:var(--reno-wine)}
.reno-card strong{font-size:17px;overflow-wrap:anywhere}
.reno-card-top{display:flex;flex-wrap:wrap;gap:6px}
.reno-card-meta{font-size:13px;color:var(--muted,#66625f);overflow-wrap:anywhere}
.reno-card-trades{display:flex;flex-wrap:wrap;gap:6px}
.reno-trade-tag{display:inline-flex;align-items:center;font-size:12px;font-weight:700;border-radius:999px;padding:4px 10px;border:1px solid var(--reno-wine);color:var(--reno-wine);background:#fff}
.reno-trade-tag.is-termin{background:var(--reno-soft)}
.reno-trade-tag.is-erledigt{background:#e4f3eb;border-color:#9ccdb2;color:#12623e}

/* Formulare */
.reno-form{display:grid;gap:14px}
.reno-form h2{margin:0}
.reno-form label{display:grid;gap:6px;font-weight:650;font-size:14px}
.reno-form input,.reno-form select,.reno-form textarea,.reno-block select,.reno-block input,.reno-block textarea{width:100%;min-height:48px;border:1px solid #d9d6d2;border-radius:10px;padding:10px 12px;background:#fff;color:#252525;font-weight:400}
.reno-form textarea,.reno-block textarea{min-height:90px;resize:vertical}
.reno-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px}
.reno-grid-kw{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr))}
.reno-fieldset{border:1px solid var(--reno-line);border-radius:12px;padding:12px 14px;margin:0;display:grid;gap:10px;min-width:0}
.reno-fieldset legend{font-weight:700;padding:0 6px}
.reno-yesno{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.reno-toggle{min-height:52px;border-radius:12px;border:2px solid var(--reno-wine);background:#fff;color:var(--reno-wine);font-weight:800;font-size:16px;touch-action:manipulation}
.reno-toggle.on{background:var(--reno-wine);color:#fff}
.reno-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.reno-check{margin:0}
.reno-checks{display:flex;flex-wrap:wrap;gap:8px}
.reno-form .reno-check-label{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:6px 12px;border:1px solid var(--reno-line);border-radius:10px;font-weight:600}
.reno-form .reno-check-label input{width:22px;min-height:22px;height:22px;accent-color:var(--reno-wine)}

/* Akte */
.reno-record-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.reno-record-head h2{margin:4px 0 8px;font-size:24px;overflow-wrap:anywhere}
.reno-record-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px}
.reno-block h3{margin:0 0 12px;font-size:18px}
.reno-block-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.reno-block-head h3{margin:0}
.reno-facts{display:grid;grid-template-columns:minmax(120px,auto) 1fr;gap:8px 14px;margin:0}
.reno-facts dt{color:var(--muted,#66625f);font-size:13px}
.reno-facts dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.reno-statusbar{display:grid;gap:10px}
.reno-steps{display:flex;flex-wrap:wrap;gap:8px}
.reno-step{min-height:52px;padding:8px 14px;border-radius:12px;border:2px solid var(--reno-wine);background:#fff;color:var(--reno-wine);font-weight:750;display:inline-flex;align-items:center;gap:8px;touch-action:manipulation}
.reno-step b{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--reno-soft);font-size:13px}
.reno-step.on,.reno-step:disabled{background:var(--reno-wine);color:#fff;opacity:1}
.reno-step.on b{background:#ffffff33}
.reno-step.is-reject{border-style:dashed;color:#5f5a58;border-color:#9c9592}
.reno-step.is-reject.on{background:#5f5a58;border-style:solid;color:#fff}
.reno-items{display:grid;gap:12px}
.reno-item{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:10px;align-items:end;border:1px solid var(--reno-line);border-radius:12px;padding:12px}
.reno-item label{display:grid;gap:4px;font-size:13px;font-weight:650}
.reno-item-name{display:flex;gap:8px;align-items:center;flex-wrap:wrap;grid-column:1/-1}
.reno-item-extra{display:flex;gap:8px;align-items:center;flex-wrap:wrap;grid-column:1/-1}
.reno-item.is-readonly{display:flex;flex-wrap:wrap;align-items:center}
.reno-add-trade{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-top:12px}
.reno-add-trade label{display:grid;gap:4px;flex:1 1 220px;font-size:13px;font-weight:650}
.reno-note-form{display:grid;gap:8px;margin-bottom:12px}
.reno-note-actions{display:flex;gap:10px;align-items:end;flex-wrap:wrap;justify-content:flex-end}
.reno-note-actions label{display:grid;gap:4px;flex:1 1 200px;font-size:13px;font-weight:650}
.reno-correct{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0}
.reno-notes,.reno-history{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.reno-note{border:1px solid var(--reno-line);border-radius:12px;padding:12px;background:#fff}
.reno-note.is-seller{border-left:5px solid var(--reno-wine)}
.reno-note-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.reno-note-head time{margin-left:auto;font-size:12px;color:var(--muted,#66625f)}
.reno-history li{display:grid;grid-template-columns:minmax(130px,auto) 1fr;gap:2px 12px;border-bottom:1px solid var(--reno-line);padding-bottom:8px}
.reno-history time{font-size:12px;color:var(--muted,#66625f)}
.reno-history small{grid-column:2;color:var(--muted,#66625f)}
.reno-block details summary{cursor:pointer;min-height:44px;display:flex;align-items:center}
.reno-block details summary h3{margin:0}

/* Listen (Admin) */
.reno-admin-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.reno-admin-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--reno-line);border-radius:10px;padding:8px 10px}
.reno-admin-list li.is-hidden,.reno-craftsman.is-hidden{opacity:.65}
.reno-admin-actions{display:flex;gap:6px;flex-wrap:wrap}
.reno-inline-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap}
.reno-inline-form label{display:grid;gap:4px;flex:1 1 200px;font-size:13px;font-weight:650}
.reno-inline-form input{width:100%;min-height:48px;border:1px solid #d9d6d2;border-radius:10px;padding:10px 12px}
.reno-craftsmen{display:grid;gap:10px;margin-top:12px}
.reno-craftsman{display:grid;gap:6px;border:1px solid var(--reno-line);border-radius:12px;padding:12px}
.reno-craftsman small{color:var(--muted,#66625f);overflow-wrap:anywhere}

/* Hinweise und Verweis in der Montageakte (außerhalb von .reno) */
.reno-alerts{display:grid;gap:8px;border-left:5px solid var(--dorfer-wine,#873540)}
.reno-alerts-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.reno-alerts .btn{min-height:44px}
.reno-alert{display:grid;gap:2px;text-align:left;width:100%;min-height:48px;padding:10px 12px;border:1px solid #eadfe1;border-radius:10px;background:#fff;color:inherit}
.reno-alert small{color:#66625f}
.reno-order-banner{display:grid;gap:8px;margin:12px 0}
.reno-order-banner>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#f8eef0;border:1px solid #e6c9cf;border-left:5px solid var(--dorfer-wine,#873540);border-radius:12px;padding:12px 14px}
.reno-order-banner strong{display:block}
.reno-order-banner small{color:#6f5a5e}
.reno-order-banner .btn{margin-left:auto;min-height:44px}
.reno-order-banner-icon{font-size:22px;color:var(--dorfer-wine,#873540)}

@media(max-width:600px){
 .reno-head-actions{width:100%}
 .reno-head-actions .btn{flex:1 1 auto}
 .reno-facts{grid-template-columns:1fr}
 .reno-history li{grid-template-columns:1fr}
 .reno-history small{grid-column:1}
 .reno-actions .btn{flex:1 1 100%}
}

/* ---------- V14.42.1 – Schritt 2 ---------- */
.reno-hidden-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}
.reno-link-btn{background:none;border:0;color:var(--reno-wine);font-weight:700;padding:8px 2px;min-height:40px;text-align:left}
.reno-subhead{margin:14px 0 6px;font-size:15px}
.reno-save-state{font-size:13px;font-weight:700;color:#12623e;min-height:20px}
.reno-save-state.is-error{color:#8c1d26}
.reno-order-banner-icon .dorfer-icon{width:26px;height:26px}
.reno-head-actions label.btn{display:inline-flex;align-items:center;gap:6px;cursor:pointer;position:relative}
.reno .btn .dorfer-icon{width:20px;height:20px;vertical-align:middle}

/* Küchenanlieferung: nur KW + Jahr, schmale Felder */
.reno-kw{display:flex;gap:12px;flex-wrap:wrap}
.reno-kw label{flex:0 0 auto;width:150px;display:grid;gap:6px;font-weight:650;font-size:14px}
.reno-kw input,.reno-kw select{width:100%;min-height:48px;border:1px solid #d9d6d2;border-radius:10px;padding:10px 12px;background:#fff}

/* Gewerke: feste, passende Spaltenbreiten (iPad-Datumsfelder sprengen sonst die Spalten) */
.reno-item,.reno-item.is-readonly{display:block}
.reno-item-fields{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.3fr) minmax(0,.9fr) minmax(0,1.4fr);gap:10px;align-items:start;margin-top:10px}
.reno-item-fields label{display:grid;gap:4px;font-size:13px;font-weight:650;min-width:0}
.reno-item-fields input,.reno-item-fields select{width:100%;min-width:0;max-width:100%;min-height:48px;box-sizing:border-box;-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #d9d6d2;border-radius:10px;padding:10px 12px;font-size:16px;line-height:1.2}
.reno-item-fields select{background-image:linear-gradient(45deg,transparent 50%,#6f6866 50%),linear-gradient(135deg,#6f6866 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:32px}
.reno-item-fields input::-webkit-date-and-time-value{text-align:left}
.reno-item-extra{margin-top:10px}
@media(max-width:760px){.reno-item-fields{grid-template-columns:1fr 1fr}.reno-f-craftsman{grid-column:1/-1}}
.reno-trade-notes{margin-top:10px;border-top:1px dashed var(--reno-line);padding-top:8px}
.reno-trade-notes summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;font-weight:700;color:var(--reno-wine)}
.reno-trade-notes summary .dorfer-icon{width:18px;height:18px}
.reno-trade-notes .reno-notes{margin:6px 0 10px}
.reno-trade-note-form{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}
.reno-trade-note-form textarea{flex:1 1 260px;min-height:60px;border:1px solid #d9d6d2;border-radius:10px;padding:10px 12px}

/* Checkliste */
.reno-progress{display:flex;align-items:center;gap:12px;margin:4px 0 12px}
.reno-progress-bar{flex:1;height:12px;border-radius:999px;background:#efe7e8;overflow:hidden}
.reno-progress-bar span{display:block;height:100%;background:var(--reno-wine);border-radius:999px;transition:width .25s}
.reno-clarify-list{display:flex;flex-wrap:wrap;gap:6px;align-items:center;background:#fff7e8;border:1px solid #f0dcbd;border-radius:10px;padding:8px 10px;margin-bottom:12px}
.reno-chip-mini{border:1px solid #d9b77c;background:#fff;color:#7a4f12;border-radius:999px;padding:6px 10px;font-weight:700;min-height:36px}
.reno-cl-sections{display:grid;gap:10px;margin-bottom:12px}
.reno-cl-section{border:1px solid var(--reno-line);border-radius:14px;background:#fff;overflow:hidden}
.reno-cl-section.is-open{border-color:#d9c3c7;box-shadow:0 2px 8px #87354012}
.reno-cl-head{display:flex;align-items:center;gap:8px;padding:6px 8px 6px 6px;flex-wrap:wrap}
.reno-cl-head.is-done{background:#fbf6f7}
.reno-cl-title{flex:1 1 240px;display:flex;align-items:center;gap:12px;background:none;border:0;text-align:left;min-height:52px;padding:6px;color:inherit}
.reno-cl-title b{display:block;font-size:16px}
.reno-cl-title small{display:block;color:var(--muted,#66625f);font-size:13px;overflow-wrap:anywhere}
.reno-cl-index{flex:0 0 34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--reno-soft);color:var(--reno-wine);font-weight:800}
.reno-cl-head.is-done .reno-cl-index{background:var(--reno-wine);color:#fff}
.reno-cl-tools{display:flex;gap:6px;margin-left:auto}
.reno-icon-btn{position:relative;display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--reno-line);background:#fff;color:#5f5a58;cursor:pointer;font-size:18px}
.reno-icon-btn .dorfer-icon{width:22px;height:22px}
.reno-icon-btn.has-note{background:var(--reno-wine);border-color:var(--reno-wine);color:#fff}
.reno-icon-btn.is-flag{background:#f2b33d;border-color:#d9962a;color:#3d2a06}
.reno-icon-btn b{position:absolute;top:-6px;right:-6px;background:var(--reno-wine);color:#fff;font-size:11px;border-radius:999px;min-width:18px;height:18px;display:grid;place-items:center;padding:0 4px}
.reno-cl-body{padding:4px 14px 14px;display:grid;gap:10px}
.reno-cl-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:10px}
.reno-opt{min-height:56px;border-radius:12px;padding:10px 14px;font-weight:750;font-size:15px;text-align:left;border:2px solid var(--reno-wine);touch-action:manipulation;line-height:1.3}
/* „Wir …“ = rot gefüllt, weiße Schrift · „Kunde …“ = rot umrandet, hell · „Bleibt“ = grau. Gewählt = Ring + Haken. */
.reno-opt.who-wir{background:var(--reno-wine);border-color:var(--reno-wine);color:#fff}
.reno-opt.who-kunde{background:#fbf1f2;color:var(--reno-wine);border-color:var(--reno-wine)}
.reno-opt.who-bleibt{background:#efedeb;color:#4f4a48;border-color:#bdb7b4}
.reno-opt.on{box-shadow:0 0 0 3px #fff,0 0 0 6px #2b2626}
.reno-cl-options.has-choice .reno-opt:not(.on){opacity:.5}
.reno-opt:disabled{opacity:1;cursor:default}
.reno-opt:disabled:not(.on){opacity:.55}
.reno-cl-question{display:grid;gap:8px;background:#faf8f7;border-radius:12px;padding:10px}
.reno-cl-question span{font-weight:700}
.reno-cl-textfield,.reno-cl-note,.reno-cl-info label{display:grid;gap:4px;font-size:13px;font-weight:650}
.reno-cl-textfield input,.reno-cl-info input,.reno-cl-note textarea{width:100%;min-height:48px;border:1px solid #d9d6d2;border-radius:10px;padding:10px 12px;font-size:16px;background:#fff}
.reno-cl-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:10px}
.reno-cl-hint{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fff2e5;border:1px solid #f0cfa8;color:#7a4515;border-radius:10px;padding:8px 12px;margin:0 8px 8px;font-weight:650}
.reno-cl-body .reno-cl-hint{margin:0}
.reno-tasks{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.reno-tasks li{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--reno-line);border-left:4px solid var(--reno-wine);border-radius:10px;padding:8px 12px}
.reno-tasks label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:650}
.reno-tasks input{min-height:44px;border:1px solid #d9d6d2;border-radius:10px;padding:6px 10px;font-size:16px;background:#fff;width:170px;max-width:100%}
.reno-who{display:inline-block;font-size:11px;font-weight:800;border-radius:999px;padding:2px 8px;border:1px solid var(--reno-wine)}
.reno-who.who-wir{background:var(--reno-wine);color:#fff}.reno-who.who-kunde{color:var(--reno-wine);background:#fff}
.reno-who.who-bleibt{background:#ecebe8;color:#5f5a58;border-color:#bdb7b4}.reno-who.who-info{background:#eef3f8;color:#2f4b66;border-color:#b8c9da}

/* Dateien, Fotos, Küchenpläne */
.reno-file-list{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:8px}
.reno-file-list li{display:flex;align-items:center;gap:8px}
.reno-file{flex:1;display:flex;align-items:center;gap:10px;text-align:left;background:#fff;border:1px solid var(--reno-line);border-radius:10px;padding:8px 12px;min-height:52px;color:inherit;min-width:0}
.reno-file b{display:block;overflow-wrap:anywhere}.reno-file small{color:var(--muted,#66625f)}
.reno-file .dorfer-icon{flex:0 0 22px;color:var(--reno-wine)}
.reno-thumbs{display:flex;gap:8px;flex-wrap:wrap}
.reno-thumb{width:84px;height:84px;border-radius:10px;border:1px solid var(--reno-line);background:#f6f3f2;padding:0;overflow:hidden;display:grid;place-items:center;color:#8c8582}
.reno-thumb img{width:100%;height:100%;object-fit:cover}
.reno-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}
.reno-photo-grid figure{margin:0;display:grid;gap:4px}
.reno-photo-grid .reno-thumb{width:100%;height:auto;aspect-ratio:1}
.reno-photo-grid figcaption{font-size:12px;color:var(--muted,#66625f)}

/* Vorlage */
.reno-tpl-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.reno-tpl-list>li{border:1px solid var(--reno-line);border-radius:12px;padding:6px 10px}
.reno-tpl-list>li.is-hidden{opacity:.65}
.reno-tpl-list summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.reno-tpl-list .reno-admin-actions{margin:6px 0 10px}

/* ---------- V14.42.2 – Reiter, Vor-Ort-Termin-Planung, vereinfachte Gewerke ---------- */
.reno-actions-left{display:flex;gap:8px;flex-wrap:wrap}
.reno-compact .reno-block{padding:16px 18px}
.reno-compact .reno-facts{gap:4px 14px}
.reno-card-visit{display:inline-flex;align-items:center;gap:6px;font-weight:750;color:var(--reno-wine);font-size:14px}
.reno-card-visit .dorfer-icon{width:18px;height:18px}

.reno-visit{border-left:5px solid var(--reno-wine)}
.reno-visit-fixed{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#eef7f1;border:1px solid #a9d6bb;border-radius:14px;padding:12px 14px;margin-bottom:10px}
.reno-visit-fixed>div{flex:1 1 220px;display:grid;gap:2px}
.reno-visit-fixed small{font-weight:750;color:#12623e;text-transform:uppercase;letter-spacing:.04em;font-size:11px}
.reno-visit-fixed strong{font-size:20px}
.reno-visit-check{width:40px;height:40px;border-radius:50%;background:#16784c;color:#fff;display:grid;place-items:center;font-weight:900;font-size:20px}
.reno-visit-missing{margin:0 0 10px}
.reno-slot-new{display:grid;gap:10px;margin-top:12px}
.reno-slot-new-row{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.reno-slot-new-row label{display:grid;gap:4px;font-size:13px;font-weight:650;width:170px}
.reno-slot-new-row label:nth-of-type(2){width:120px}
.reno-slot-new-row input{width:100%;min-height:48px;box-sizing:border-box;-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #d9d6d2;border-radius:10px;padding:10px 12px;font-size:16px}
.reno-slot-no{font-weight:800;min-width:76px;padding-bottom:14px}
.reno-slot-day{font-weight:750;color:var(--reno-wine);padding-bottom:14px;min-width:40px}
.reno-slot-new>.btn{justify-self:start}
/* Übersicht Gewerke × Termine */
.reno-matrix{display:grid;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:6px}
.reno-mx-row{display:grid;grid-template-columns:minmax(150px,1.4fr) repeat(var(--reno-slots,2),minmax(120px,1fr));gap:8px;align-items:center;min-width:min-content}
.reno-mx-row>span{min-width:0}
.reno-mx-head>span{display:grid;gap:2px;font-size:13px;color:var(--muted,#66625f)}
.reno-mx-head b{color:var(--ink,#292929);font-size:14px}
.reno-mx-head small{font-weight:750;color:var(--reno-wine);font-size:14px}
.reno-mx-head .is-fixed small{color:#12623e}
.reno-mx-head em{font-style:normal;font-weight:800;color:#12623e;font-size:12px}
.reno-mx-tools{display:flex;gap:8px}
.reno-mx-tools .reno-link-btn{min-height:32px;padding:4px 0;font-size:12px}
.reno-mx-row [role=rowheader]{display:grid}
.reno-mx-row [role=rowheader] small{color:var(--muted,#66625f);overflow-wrap:anywhere}
.reno-ans{display:grid;place-items:center;width:100%;min-height:52px;border-radius:12px;border:2px solid #cfc9c6;background:#fff;color:#5f5a58;font-weight:800;font-size:15px;touch-action:manipulation}
.reno-ans.is-yes{background:#16784c;border-color:#16784c;color:#fff}
.reno-ans.is-no{background:#fff2f2;border-color:#dcaaaa;color:#861d24}
.reno-ans.is-fix{background:#eef7f1;border-color:#a9d6bb;color:#12623e}
.reno-mx-foot .btn{width:100%;min-height:48px;padding:8px 10px}
/* Gewerke: Handwerker kommt aus dem Gewerk */
.reno-item-who{font-weight:650;color:#4f4a48}
.reno-item-line{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-top:10px}
.reno-item-visit{display:flex;align-items:center;gap:8px;flex:1 1 220px;min-height:48px}
.reno-item-visit .dorfer-icon{width:22px;height:22px;color:var(--reno-wine)}
.reno-item-visit small{display:block;font-size:12px;color:var(--muted,#66625f)}
.reno-item-line .reno-f-status{display:grid;gap:4px;font-size:13px;font-weight:650;flex:0 1 300px;min-width:220px}
.reno-item-line select{width:100%;min-height:48px;border:1px solid #d9d6d2;border-radius:10px;padding:10px 12px;background:#fff;font-size:16px}
.reno-item-more{margin-top:10px}
.reno-item-more summary{cursor:pointer;min-height:40px;display:flex;align-items:center;font-size:13px;font-weight:700;color:#6f6866}
/* V14.42.3: „Änderungen“ mit kleiner Erklärung, was darin steckt */
.reno-item-more summary{flex-wrap:wrap;column-gap:8px}
.reno-item-more summary small{font-weight:400;color:#8a8380}
.reno-item-more .reno-item-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));margin-bottom:10px}
@media(max-width:600px){.reno-slot-new-row label{width:calc(50% - 8px)}.reno-slot-no{width:100%;padding:0}}

/* V14.43.0: Nächster Schritt, Büro-Hinweise, Vor-Ort-Termin abschließen, Zusammenfassung, Renovierungs-Kaufvertrag */
.reno-next{border:2px solid var(--reno-wine);border-radius:16px;background:linear-gradient(180deg,var(--reno-soft),#fff 70%);padding:16px 18px;margin-bottom:14px;display:grid;gap:6px}
.reno-next>small{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--reno-wine)}
.reno-next h3{margin:0;font-size:20px;overflow-wrap:anywhere}
.reno-next p{margin:0;color:#4f4a48;overflow-wrap:anywhere}
.reno-next .reno-actions-left{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.reno-next-hint{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;background:#e8f5ee;border:1px solid #a9d6bb;color:#12623e;border-radius:12px;padding:10px 12px;margin-bottom:6px}
.reno-next-hint .reno-actions-left{margin:0}
.reno-alert.is-contract,.reno-alert.is-visit{border-left:5px solid var(--dorfer-wine,#873540)}
.reno-visit-done{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;border:2px dashed var(--reno-wine);border-radius:14px;padding:12px 14px;margin:0 0 14px;background:#fff}
.reno-visit-done.is-bottom{margin-top:14px}
.reno-visit-done.is-done{border-style:solid;border-color:#a9d6bb;background:#e8f5ee;color:#12623e}
.reno-visit-done span{flex:1 1 260px;overflow-wrap:anywhere}
.reno-visit-done .big-touch{min-height:56px;font-size:17px}
.reno-summary .reno-sum-part{border-top:1px solid var(--reno-line);padding-top:10px;margin-top:12px}
.reno-summary h4{margin:0 0 6px;font-size:16px;color:var(--reno-wine)}
.reno-summary h5{margin:10px 0 4px;font-size:15px}
.reno-summary ul{margin:0;padding-left:20px;display:grid;gap:6px}
.reno-summary li{overflow-wrap:anywhere}
.reno-summary .is-warn h4{color:#8a5a00}
.reno-sum-note{font-size:14px;color:#4f4a48;margin:2px 0 0}
@media print{
 body.reno-print-summary *{visibility:hidden!important}
 body.reno-print-summary .reno-summary,body.reno-print-summary .reno-summary *{visibility:visible!important}
 body.reno-print-summary .reno-summary{position:absolute;left:0;top:0;width:100%;border:0;box-shadow:none}
 body.reno-print-summary .reno-no-print{display:none!important}
}
/* Renovierungs-Kaufvertrag im Kaufvertragsassistenten */
.v14430-kv-reno{background:#f8eef0;color:var(--dorfer-wine,#873540);border-color:var(--dorfer-wine,#873540)}
.v14430-reno-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:4px 0 10px}
.v14430-reno-head p{margin:0;overflow-wrap:anywhere}
.v14430-reno-lines{width:100%;border-collapse:collapse;font-size:14px;margin:6px 0 12px}
.v14430-reno-lines th{background:var(--dorfer-wine,#873540);color:#fff;font-weight:600;text-align:left;padding:6px 8px}
.v14430-reno-lines td{border:1px solid #d9d6d2;padding:6px 8px;height:30px;overflow-wrap:anywhere}
.v14430-reno-lines tr:nth-child(even) td{background:#f1f0ee}
.v14430-reno-lines td:nth-child(-n+2),.v14430-reno-lines th:nth-child(-n+2){width:64px;text-align:center}
/* V14.44.0: Renovierung offline (Schritt 3) */
.reno-offline{display:grid;gap:10px;padding:12px 14px;margin:0 0 14px;border:1px solid var(--reno-line);border-left:5px solid #9aa3a0;border-radius:14px;background:#fff}
.reno-offline.is-offline{border-left-color:#b7791f;background:#fff9ec}
.reno-off-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px}
.reno-off-row>span:nth-child(2){flex:1 1 240px;min-width:0;display:grid;gap:2px}
.reno-off-row b,.reno-off-row small{overflow-wrap:anywhere}
.reno-off-row small{color:var(--muted,#66625f);font-size:13px}
.reno-off-row .btn{min-height:44px}
.reno-off-icon{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--reno-soft);color:var(--reno-wine);font-weight:800;flex:none}
.reno-off-row.is-saved .reno-off-icon{background:#e8f5ee;color:#12623e}
.reno-off-row.is-offline .reno-off-icon{background:#fdecc8;color:#8a5a00}
.reno-off-warn{margin:0}
.reno-off-jobs summary{cursor:pointer;min-height:44px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;overflow-wrap:anywhere}
.reno-off-jobs ul{list-style:none;margin:6px 0;padding:0;display:grid;gap:6px}
.reno-off-jobs li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--reno-line);border-radius:10px;padding:8px 10px}
.reno-off-jobs li>span{display:grid;gap:2px;min-width:0;flex:1 1 220px;overflow-wrap:anywhere}
.reno-off-jobs li small{color:var(--muted,#66625f)}
.reno-off-jobs li.is-fehlgeschlagen,.reno-off-jobs li.is-konflikt{border-color:#e0b4ba;background:#fdf3f4}
.reno-off-jobs li.is-running small{color:#12623e}
.reno-off-done{margin:0;color:#12623e}
.reno-off-note{margin:0 0 12px}
.reno-pending-pill{font-size:11px}
.reno-conflict{margin:8px 12px;padding:10px 12px;border:2px solid #d99b2b;border-radius:12px;background:#fff8e6;display:grid;gap:6px}
.reno-conflict p{margin:0;overflow-wrap:anywhere}
.reno-conflict p span{color:#5f574f}
.reno-conflict .btn{min-height:44px}
.reno-thumb{position:relative}
.reno-thumb.is-pending img{opacity:.85}
.reno-thumb-state{position:absolute;right:4px;bottom:4px;background:#fff;border-radius:999px;padding:1px 6px;font-size:12px;box-shadow:0 1px 3px #0003}
.reno-viewer{display:grid;gap:10px}
.reno-viewer img{max-width:100%;max-height:70vh;object-fit:contain;justify-self:center;border-radius:8px}
.reno-viewer iframe{width:100%;height:70vh;border:1px solid var(--reno-line);border-radius:8px;background:#fff}
/* Offline-Seite nach Neustart ohne Netz: Renovierungen mit der Gestaltung der App */
body.reno-offline-mode{padding-bottom:0;background:var(--bg,#f6f4f2)}
body.reno-offline-mode>.top,body.reno-offline-mode>.notice,body.reno-offline-mode>#offlineApp,body.reno-offline-mode>.footer{display:none!important}
.reno-offline-top{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px max(14px,env(safe-area-inset-left));background:#352b30;color:#fff}
.reno-offline-top>span{flex:1 1 180px;display:grid;min-width:0}
.reno-offline-top small{opacity:.8}
.reno-offline-top .btn{min-height:44px}
.reno-offline-main{max-width:1100px;margin:0 auto;padding:14px max(14px,env(safe-area-inset-right)) 40px}
.reno-offline-toast{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:50;max-width:min(560px,calc(100vw - 28px));background:#1f2328;color:#fff;border-radius:12px;padding:12px 16px;box-shadow:0 6px 20px #0004;overflow-wrap:anywhere}
.reno-offline-toast.is-error{background:#8b1c26}
body.reno-offline-mode .reno-offline-box{max-width:none;padding:0}
/* V14.45.0: Handwerker-Planung (Ausführung) */
.reno-exec-kitchen{margin:4px 0 10px;padding:10px 12px;border-radius:10px;background:var(--reno-soft);overflow-wrap:anywhere}
.reno-exec-alert{margin:0 0 10px}
.reno-exec-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.reno-exec-row{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(140px,1fr) minmax(140px,1.2fr) auto;gap:6px 14px;align-items:start;border:1px solid var(--reno-line);border-left:5px solid #c9c4bf;border-radius:12px;padding:10px 12px;background:#fff}
.reno-exec-row.is-fix{border-left-color:#1f8a52}
.reno-exec-row.is-erledigt{border-left-color:#9aa3a0;background:#f7f7f6}
.reno-exec-row.is-kitchen{border-left-color:var(--reno-wine);background:var(--reno-soft)}
.reno-exec-row.has-warn{border-color:#e0b55a}
.reno-exec-row>span{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere}
.reno-exec-row small{color:var(--muted,#66625f);font-size:12.5px}
.reno-exec-state{justify-items:end;text-align:right}
.reno-exec-tools{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.reno-exec-warn{grid-column:1/-1;display:grid;gap:2px}
.reno-exec-warn .is-warn,.reno-work-warn.is-warn{color:#8a5a00!important;font-weight:600}
.reno-work-warn{margin:4px 0;font-size:14px}
.reno-work-warn.is-info{color:#5f574f}
.reno-work-status{min-height:40px;border-radius:999px;padding:6px 14px;border:2px solid #c9c4bf;background:#fff;font-weight:700;color:#5f574f;white-space:nowrap}
.reno-work-status.is-fix{border-color:#1f8a52;color:#12623e;background:#e8f5ee}
.reno-work-status.is-erledigt{border-color:#9aa3a0;color:#4d5250;background:#eef0ef}
.reno-exec-preview{margin-top:12px;border-top:1px solid var(--reno-line);padding-top:10px}
.reno-exec-preview summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center}
.reno-exec-for{display:block;margin:6px 0 12px;max-width:520px}
@media(max-width:760px){.reno-exec-row{grid-template-columns:1fr 1fr}.reno-exec-state{grid-column:1/-1;justify-items:start;text-align:left;grid-auto-flow:column;justify-content:space-between;align-items:center}}
@media(max-width:430px){.reno-exec-row{grid-template-columns:1fr}}
/* Terminübersicht: A4 wie die bisherige PDF (Maße in Prozent der Seitenbreite 595 pt) */
.reno-tp-sheet{display:grid;gap:14px;max-width:794px}
.reno-tp-page{position:relative;width:100%;aspect-ratio:1652/2337;container-type:inline-size;overflow:hidden;background:#fff;box-shadow:0 2px 10px #0002;font-family:Arial,Helvetica,sans-serif;color:#000}
.reno-tp-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:0}
.reno-tp-title{position:absolute;z-index:1;left:6.88cqw;top:30.4cqw;margin:0;font-family:Calibri,Carlito,'Segoe UI',Arial,sans-serif;font-weight:400;font-size:3.03cqw;line-height:1.21;color:#1a1a1a;max-width:72cqw}
.reno-tp-table{position:absolute;z-index:1;left:5.43cqw;top:43.7cqw;width:89.7cqw;border-collapse:collapse;table-layout:fixed;font-size:1.6cqw;line-height:1.25}
.reno-tp-page.is-next .reno-tp-table{top:37.6cqw}
.reno-tp-table col.c1{width:40.6%}.reno-tp-table col.c2{width:28.1%}.reno-tp-table col.c3{width:31.3%}
.reno-tp-table th{background:#7f7f7f;color:#fff;font-weight:700;text-align:left;font-size:1.85cqw;height:4.03cqw;padding:0 .7cqw;border:1px solid #a6a6a6}
.reno-tp-table td{height:8.24cqw;padding:.6cqw .7cqw;border:1px solid #a6a6a6;vertical-align:middle;overflow-wrap:anywhere;background:#f2f2f2}
.reno-tp-table tr.is-tall td{height:16.48cqw}
.reno-tp-table td.firm{background:#d9d9d9}
.reno-tp-table td.firm b{display:block;font-weight:700}
.reno-tp-table td.date .dt{display:flex;justify-content:space-between;align-items:baseline;gap:1cqw}
.reno-tp-table td.date .d,.reno-tp-table td.date .n{white-space:nowrap}
.reno-tp-table td.date .t{display:block}
.reno-tp-table th:first-child{font-size:2.05cqw}
.reno-tp-footer{position:absolute;z-index:1;left:6.88cqw;right:6.88cqw;bottom:24cqw;margin:0;font-size:1.6cqw;color:#1a1a1a;font-weight:700}
.reno-tp-pageno{position:absolute;z-index:1;right:6cqw;bottom:22.4cqw;font-size:1.3cqw;color:#555}
#reno-tp-print{display:none}
@media print{
 @page{size:A4;margin:0}
 body.reno-print-schedule>*:not(#reno-tp-print){display:none!important}
 body.reno-print-schedule{margin:0!important;padding:0!important;background:#fff!important}
 body.reno-print-schedule #reno-tp-print{display:block}
 body.reno-print-schedule .reno-tp-sheet{display:block;max-width:none;gap:0}
 body.reno-print-schedule .reno-tp-page{width:210mm;height:297mm;aspect-ratio:auto;box-shadow:none;break-after:page;page-break-after:always;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 body.reno-print-schedule .reno-tp-page:last-child{break-after:auto;page-break-after:auto}
 /* V14.47.1: im Druck feste Millimeter statt cqw (Firefox hat Texte abgeschnitten und das Bild weggelassen); 1 cqw = 2,1 mm */
 body.reno-print-schedule .reno-tp-page{container-type:normal;overflow:visible}
 body.reno-print-schedule .reno-tp-bg{top:0;left:0;width:210mm;height:297mm;display:block}
 body.reno-print-schedule .reno-tp-title{left:14.45mm;top:63.84mm;font-size:6.36mm;max-width:151.2mm}
 body.reno-print-schedule .reno-tp-table{left:11.4mm;top:91.77mm;width:188.37mm;font-size:3.36mm}
 body.reno-print-schedule .reno-tp-page.is-next .reno-tp-table{top:78.96mm}
 body.reno-print-schedule .reno-tp-table th{font-size:3.885mm;height:8.46mm;padding:0 1.47mm}
 body.reno-print-schedule .reno-tp-table th:first-child{font-size:4.3mm}
 body.reno-print-schedule .reno-tp-table td{height:17.3mm;padding:1.26mm 1.47mm}
 body.reno-print-schedule .reno-tp-table tr.is-tall td{height:34.6mm}
 body.reno-print-schedule .reno-tp-table td.date .dt{gap:2.1mm}
 body.reno-print-schedule .reno-tp-footer{left:14.45mm;right:14.45mm;bottom:50.4mm;font-size:3.36mm}
 body.reno-print-schedule .reno-tp-pageno{right:12.6mm;bottom:47.04mm;font-size:2.73mm}
}
/* Gesamtplan */
.reno-plan-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:6px 0 10px}
.reno-plan-filter{min-width:220px}
.reno-plan-scroll{overflow:auto;max-height:76vh;border:1px solid var(--reno-line);border-radius:12px;-webkit-overflow-scrolling:touch}
.reno-plan-table{border-collapse:separate;border-spacing:0;font-size:13px;min-width:100%}
.reno-plan-table th,.reno-plan-table td{border-bottom:1px solid var(--reno-line);border-right:1px solid var(--reno-line);padding:4px 6px;vertical-align:top;min-width:120px;background:#fff}
.reno-plan-table thead th{position:sticky;top:0;z-index:2;background:#f4f2f0}
.reno-plan-table .reno-plan-day{position:sticky;left:0;z-index:1;min-width:86px;background:#faf9f8;text-align:left;white-space:nowrap}
.reno-plan-table thead .reno-plan-day{z-index:3}
.reno-plan-day em{display:block;font-style:normal;font-size:11px;color:var(--reno-wine);font-weight:800}
.reno-plan-day small{display:block;font-size:11px;color:#6d6560;white-space:normal;max-width:110px}
.reno-plan-table tr.is-off td,.reno-plan-table tr.is-off th{background:#e9e7e5}
.reno-plan-table tr.is-today th.reno-plan-day{box-shadow:inset 4px 0 0 var(--reno-wine)}
.reno-plan-table tr.is-monday td,.reno-plan-table tr.is-monday th{border-top:2px solid #b9b2ad}
.reno-plan-col{display:grid;gap:2px;width:100%;text-align:left;background:none;border:0;padding:2px;color:inherit;min-height:44px;cursor:pointer}
.reno-plan-col b{color:var(--reno-wine);overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto}
.reno-plan-col small{font-weight:400;color:#6d6560;font-size:11px}
.reno-plan-item{display:block;margin:1px 0;padding:2px 6px;border-radius:6px;background:#eef0ef;border:1px solid #d6d9d8;font-size:12.5px;overflow-wrap:anywhere}
.reno-plan-item.is-fix{background:#e8f5ee;border-color:#9bd0b3}
.reno-plan-item.is-erledigt{opacity:.65;text-decoration:line-through}
.reno-plan-item.is-kitchen{background:var(--reno-soft);border-color:#d8b5bb;color:var(--reno-wine);font-weight:700}
.reno-plan-item.is-absence{background:#fff3d6;border-color:#e6c77a}
.reno-plan-item.is-conflict{font-weight:700}
.reno-plan-abs{min-width:110px}
.reno-plan-list{display:none}
.reno-plan-listday{border-bottom:1px solid var(--reno-line);padding:8px 0}
.reno-plan-listday h4{margin:0 0 4px;font-size:15px}
.reno-plan-listday ul{margin:0;padding-left:16px;display:grid;gap:4px}
.reno-plan-listday.is-today h4{color:var(--reno-wine)}
@media(max-width:700px){.reno-plan-scroll{display:none}.reno-plan-list{display:block}}
/* Urlaub je Handwerker */
.reno-absences{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin-top:6px;font-size:13px}
.reno-absence{display:inline-flex;align-items:center;gap:4px;background:#fff3d6;border:1px solid #e6c77a;border-radius:999px;padding:2px 4px 2px 10px}
/* V14.45.0: Schreiner und Montagekalender am Dorfer-Termin */
.reno-cal-note{font-weight:600}
.reno-cal-note.is-on{color:#12623e!important}
.reno-cal-note.is-missing{color:#8a5a00!important}
.reno-work-workers .reno-checks{display:flex;flex-wrap:wrap;gap:6px 14px}
.reno-work-workers .reno-check-label{min-height:44px;display:inline-flex;align-items:center;gap:6px}
.reno-plan-item.is-staff{background:#eef3fb;border-color:#b8c8e6}

/* V14.45.1: Farbe je Handwerker im Terminplan (anpassbar), Status über Rahmen: gestrichelt = geplant, ✓ = fix.
   Kein Umbruch mitten im Wort („Küchenmontag/e“), sondern Silbentrennung (lang="de"). */
.reno-plan-item{--c:#94a3b8;color:#1f2937;background:#f4f4f5;background:color-mix(in srgb,var(--c) 15%,#fff);border:1px solid #d4d4d8;border-color:color-mix(in srgb,var(--c) 55%,#fff);border-left:5px solid var(--c);overflow-wrap:break-word;word-break:normal;hyphens:auto;-webkit-hyphens:auto}
.reno-plan-item.is-geplant{border-style:dashed;border-left-style:dashed;background:#fafafa;background:color-mix(in srgb,var(--c) 6%,#fff)}
.reno-plan-item.is-fix{background:color-mix(in srgb,var(--c) 18%,#fff);border-color:color-mix(in srgb,var(--c) 60%,#fff);border-left-color:var(--c)}
.reno-plan-item.is-kitchen{color:#1f2937;font-weight:700;background:color-mix(in srgb,var(--c) 18%,#fff);border-color:color-mix(in srgb,var(--c) 60%,#fff);border-left-color:var(--c)}
.reno-plan-item.is-absence{background:repeating-linear-gradient(135deg,#fff 0 6px,#f1f1f1 6px 12px);background:repeating-linear-gradient(135deg,#fff 0 6px,color-mix(in srgb,var(--c) 14%,#fff) 6px 12px)}
.reno-plan-item.is-staff{--c:#64748b}
.reno-plan-item.is-conflict{box-shadow:0 0 0 2px #c2410c;font-weight:700}
.reno-plan-later{margin:0 0 10px;padding:8px 12px;border-radius:12px;background:#fff8e6;border:1px solid #f0d58a;line-height:1.7}
.reno-plan-later .reno-link-btn{font-weight:600}
.reno-plan-legend{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;margin:0 0 10px}
.reno-plan-chip{--c:#94a3b8;display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;font-size:12.5px;background:#f4f4f5;background:color-mix(in srgb,var(--c) 15%,#fff);border:1px solid color-mix(in srgb,var(--c) 55%,#fff)}
.reno-plan-chip::before{content:"";width:11px;height:11px;border-radius:50%;background:var(--c)}
.reno-color-dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:6px;vertical-align:-1px;border:1px solid rgba(0,0,0,.15)}
/* V14.45.1: von/bis bzw. Datum/Uhrzeit nebeneinander ohne Überlappen (iPad-Datumsfeld ist breiter als 150 px) */
.reno-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.reno-dates label{display:grid;gap:6px;min-width:0;font-weight:650;font-size:14px}
.reno-dates input{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:48px;border:1px solid #d9d6d2;border-radius:10px;padding:10px 12px;background:#fff;color:inherit;font:inherit;text-align:left;-webkit-appearance:none;appearance:none}
.reno-dates input::-webkit-date-and-time-value{text-align:left}
@media(max-width:340px){.reno-dates{grid-template-columns:1fr}}
/* V14.45.1: eigene PDF-Vorlage, Farben, Terminvorschlag (V14.45.3: Schritte als reno-psteps/reno-pstep, damit die Status-Knöpfe unberührt bleiben) */
.reno-pdf-active{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--reno-line);border-radius:12px;background:#faf9f8;margin:8px 0}
.reno-pdf-layout{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.reno-pdf-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}
.reno-pdf-list li{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--reno-line);padding:6px 0}
.reno-colors{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.reno-colors input[type=color],.reno-form input[type=color]{width:100%;min-height:44px;padding:4px;border:1px solid #d9d6d2;border-radius:10px;background:#fff}
.reno-psteps{list-style:none;margin:8px 0;padding:0;display:grid;gap:8px}
.reno-pstep{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px;border:1px solid var(--reno-line);border-radius:12px;background:#fff}
.reno-pstep.is-off{opacity:.55}
.reno-step-main{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.4fr) 76px 76px;gap:8px;align-items:end}
.reno-step-main label{display:grid;gap:4px;font-size:12.5px;font-weight:650;min-width:0}
.reno-step-main input,.reno-step-main select{width:100%;min-width:0;box-sizing:border-box;min-height:42px;border:1px solid #d9d6d2;border-radius:9px;padding:6px 8px;background:#fff;font:inherit}
.reno-step-tools{display:flex;gap:4px;flex-wrap:wrap}
.reno-step-tools .btn{min-width:40px;padding:6px 8px}
.reno-step-result{grid-column:1/-1;font-size:13px}
.reno-step-result.is-warn{color:#9a3412}
.reno-pstep .reno-step-result{display:block;text-align:left}
.reno-pstep .reno-step-result b.reno-step-when{display:inline;white-space:nowrap}
.reno-form.reno-propose label.reno-mode{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;min-height:48px;margin:0 0 8px;padding:6px 12px;border:1px solid var(--reno-line);border-radius:10px;font-weight:600;text-align:left}
.reno-form.reno-propose label.reno-mode input{flex:0 0 auto;width:22px;height:22px;min-height:22px;margin:0;accent-color:var(--reno-wine)}
.reno-step-has{grid-column:1/-1;font-size:12.5px;color:#6d6560}
@media(max-width:700px){.reno-step-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.reno-pstep{grid-template-columns:auto minmax(0,1fr)}.reno-step-tools{grid-column:1/-1}}
/* V14.45.2: Anfrage der Handwerker (angefragt → Zusage/Absage), „spätestens anfragen bis“, Vorschlag ab KW */
.reno-work-status.is-angefragt{background:#fff7e6;border-color:#e0b25a;color:#7a4b00}
.reno-ask{display:block;margin-top:2px;color:#5b5550}
.reno-ask.is-soon{color:#9a5b00;font-weight:650}
.reno-ask.is-late{color:#b42318;font-weight:700}
.reno-exec-answer{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0}
.reno-exec-answer .btn{min-height:40px}
.reno-plan-item.is-angefragt{border-style:dotted;border-left-style:solid;background:#fff;background:color-mix(in srgb,var(--c) 9%,#fff)}
.reno-pstep.is-fixed{background:#faf9f8}
.reno-step-fixed{display:grid;gap:2px;min-width:0}
.reno-step-fixed small{color:#6d6560}
.reno-step-who{grid-column:1/-1;font-size:13px}
.reno-step-who summary{cursor:pointer;color:var(--reno-wine);font-weight:650}
.reno-step-who .reno-checks{margin-top:6px}
.reno-start-kw{margin:0 0 4px 34px}
.reno-alert.is-ask,.reno-alert.is-answer{border-left:4px solid #e0b25a}
@media(max-width:700px){.reno-start-kw{margin-left:0}}
/* V14.45.3: Telefonat mit dem Kunden (Vor-Ort-Termin + Checkliste + Notiz) */
.reno-phone-head{border-left:6px solid var(--reno-wine)}
.reno-phone-head h3{margin:2px 0 8px;font-size:22px}
.reno-phone-head>small{color:var(--reno-wine);font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.reno-phone-guide{margin:0 0 8px;padding-left:20px;display:grid;gap:6px;font-size:15px}
.reno-phone-step{display:flex;align-items:center;gap:10px;margin:22px 0 8px;font-size:18px}
.reno-phone-step span{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--reno-wine);color:#fff;font-size:15px}
.reno-pill-phone{background:#eaf2ff;color:#1e3a8a;border:1px solid #bcd0f5}
.reno-cl-confirm{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;padding:8px 10px;margin:0 0 8px;border-radius:10px;background:#eaf2ff;color:#1e3a8a;font-weight:650}

/* V14.46.0: neuer Aufbau (Entwurf vom 23.10.2026) – Kacheln, „Jetzt zu tun“, Fortschritt, Akte als Weg in 5 Schritten */
.reno-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:0 0 16px}
.reno-tile{display:flex;align-items:center;gap:14px;min-height:76px;padding:14px 16px;border:1px solid var(--reno-line);border-radius:16px;background:#fff;color:inherit;text-align:left;font-weight:800;font-size:16px;box-shadow:0 2px 6px #00000008;touch-action:manipulation}
.reno-tile>i{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:14px;background:var(--reno-soft);color:var(--reno-wine);font-style:normal;font-size:22px}
.reno-tile>span{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere}
.reno-tile small{font-weight:500;font-size:13px;color:var(--muted,#66625f)}
.reno-tile.is-main{background:var(--reno-wine);border-color:var(--reno-wine);color:#fff}
.reno-tile.is-main>i{background:#ffffff26;color:#fff}.reno-tile.is-main small{color:#ffffffd9}
.reno-tile.on{border:2px solid var(--reno-wine);background:var(--reno-soft)}
.reno-tile:hover,.reno-tile:focus-visible{border-color:var(--reno-wine)}
.reno-todo{border:2px solid var(--reno-wine);margin-bottom:18px}
.reno-todo-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.reno-todo-head h2{margin:0;font-size:20px}
.reno-todo-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--reno-line)}
.reno-todo-row:first-of-type{border-top:0}
.reno-todo-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--reno-soft);font-size:18px}
.reno-todo-row.is-late .reno-todo-icon,.reno-todo-row.is-answer .reno-todo-icon{background:#fde3e3}
.reno-todo-row.is-today .reno-todo-icon,.reno-todo-row.is-visit .reno-todo-icon{background:#e4f3eb}
.reno-todo-text{display:grid;gap:2px;min-width:0}
.reno-todo-text b,.reno-todo-text small{overflow-wrap:anywhere}
.reno-todo-text small{color:var(--muted,#66625f)}
.reno-todo-row.is-late .reno-todo-text small{color:#a12a2a;font-weight:700}
.reno-all-head{font-size:18px;margin:0 0 10px}
.reno-prog{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:4px 0}
.reno-prog-seg{display:grid;gap:3px;min-width:0}
.reno-prog-seg i{display:block;height:7px;border-radius:99px;background:#e9e5e2}
.reno-prog-seg.is-done i{background:var(--reno-wine)}
.reno-prog-seg.is-current i{background:repeating-linear-gradient(90deg,var(--reno-wine) 0 6px,#e7c4ca 6px 10px)}
.reno-prog-seg small{font-size:11px;color:var(--muted,#66625f);overflow-wrap:anywhere;line-height:1.2}
.reno-prog-seg.is-current small{color:var(--reno-wine);font-weight:800}
.reno-prog.is-rejected .reno-prog-seg i{background:#d9d6d2}
.reno-record-menu{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start;justify-content:flex-end}
.reno-path{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 16px}
.reno-path-step{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;min-height:64px;padding:10px;border:1px solid var(--reno-line);border-radius:14px;background:#fff;color:inherit;text-align:left;touch-action:manipulation}
.reno-path-n{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#efebe8;color:#5f5a58;font-weight:800}
.reno-path-text{display:grid;gap:2px;min-width:0}
.reno-path-text b{font-size:14px;line-height:1.2;overflow-wrap:anywhere}
.reno-path-text small{font-size:12px;color:var(--muted,#66625f);line-height:1.25;overflow-wrap:anywhere}
.reno-path-step.is-done .reno-path-n{background:#16784c;color:#fff}
.reno-path-step.is-current .reno-path-n{background:var(--reno-wine);color:#fff}
.reno-path-step.on{border:2px solid var(--reno-wine);background:var(--reno-soft)}
.reno-path-step:disabled{opacity:.55}
.reno-seg{display:inline-flex;border:2px solid var(--reno-wine);border-radius:12px;overflow:hidden;margin:0 0 12px}
.reno-seg-btn{min-height:44px;padding:8px 16px;border:0;background:#fff;color:var(--reno-wine);font-weight:750;touch-action:manipulation}
.reno-seg-btn.on{background:var(--reno-wine);color:#fff}
.reno-visit-more,.reno-status-more{margin:0 0 14px;border:1px solid var(--reno-line);border-radius:14px;background:#fff}
.reno-visit-more>summary,.reno-status-more>summary{min-height:48px;padding:12px 14px;cursor:pointer;font-weight:700;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.reno-visit-more>summary small{font-weight:500;color:var(--muted,#66625f)}
.reno-visit-more[open]>summary,.reno-status-more[open]>summary{border-bottom:1px solid var(--reno-line)}
.reno-visit-more>.reno-visit,.reno-status-more>.reno-statusbar{margin:0;border:0;box-shadow:none}
.reno-status-more{margin-top:18px}
.reno-offers{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.reno-offers li{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 0;border-top:1px solid var(--reno-line)}
.reno-offers li:first-child{border-top:0}
.reno-offers li>span:first-child{display:grid;flex:1 1 160px;min-width:0}
.reno-offers small{color:var(--muted,#66625f)}
.reno-set-title{margin:6px 0 2px}
.reno-set-tiles{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
@media(max-width:820px){.reno-path{gap:6px}.reno-path-step{grid-template-columns:1fr;padding:8px}.reno-path-text b{font-size:13px}}
@media(max-width:600px){.reno-path{grid-template-columns:1fr;gap:4px}.reno-path-step{grid-template-columns:auto minmax(0,1fr);min-height:48px;align-items:center}.reno-path-step:not(.on):not(.is-current) .reno-path-text small{display:none}}
@media(max-width:600px){.reno-todo-row{grid-template-columns:auto minmax(0,1fr)}.reno-todo-row>.btn{grid-column:1/-1;width:100%}.reno-record-menu{justify-content:flex-start}.reno-tile{min-height:64px}}
/* V14.46.0 (SQL 78): Terminplan an alle (📨), Kassier-Auftrag, Verkäufer- und Schreiner-Ansicht */
.reno-sent{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:800;white-space:nowrap}
.reno-sent.is-ok{background:#e4f3eb;color:#12623e}
.reno-sent.is-changed{background:#fde8d4;color:#8a4b0b}
.reno-send-ok{margin:4px 0 10px;color:#12623e;font-weight:700}
.reno-send-alert{border-left:4px solid #e08a2b}
.reno-legend{margin-top:8px}
.reno-montage{border:2px solid var(--reno-wine)}
.reno-contact{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:6px 0}
.reno-path.is-readonly .reno-path-step{cursor:default}
.reno-order-banner>.reno-kassier,.reno-kassier{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;padding:12px;margin-top:8px;border:2px solid #c2410c;background:#fff4ec;border-radius:14px}
.reno-order-banner>.reno-kassier .reno-actions-left{margin-left:auto}
.reno-order-banner>.reno-kassier .btn{margin-left:0}
.reno-kassier>span:nth-child(2){flex:1 1 220px;min-width:0;display:grid;gap:2px}
.reno-kassier strong{color:#9a3412;font-size:16px;overflow-wrap:anywhere}
.reno-kassier small{overflow-wrap:anywhere}
.reno-order-banner>.reno-kassier.is-reno{border-color:var(--reno-wine);background:var(--reno-soft)}
.reno-kassier.is-reno strong{color:var(--reno-wine)}
.reno-order-banner>.reno-kassier.is-info{border-width:1px;border-color:var(--reno-line);background:#fff}
.reno-kassier.is-info strong{color:inherit;font-size:15px}
.reno-kassier-alert{border-left:4px solid #c2410c;background:#fff4ec}
.reno-worker{display:grid;gap:12px}
.reno-worker .reno-block{margin:0}
.reno-w-dates{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.reno-w-dates li{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;padding:8px 10px;border-radius:10px;background:#faf8f6}
.reno-w-dates li>span:first-of-type{flex:1 1 200px;min-width:0;overflow-wrap:anywhere}
.reno-w-dates li.is-mine{background:#e4f3eb}
.reno-thumb.is-loading{display:grid;place-items:center;min-height:80px;background:#f1eeeb;border-radius:10px;color:var(--muted,#66625f);font-size:12px}
[data-reno-w-modal] .reno-worker{max-height:70vh;overflow:auto}
.reno-worker label.btn,.reno-block-head label.btn{position:relative;overflow:hidden}

/* V14.46.1: Strich-Symbole der App (ico) statt Emojis */
.reno-tile>i .dorfer-icon{width:26px;height:26px}
.reno-todo-icon{color:var(--reno-wine)}
.reno-todo-icon .dorfer-icon{width:21px;height:21px}
.reno-todo-row.is-late .reno-todo-icon,.reno-todo-row.is-answer .reno-todo-icon,.reno-todo-row.is-resend .reno-todo-icon{color:#a32121}
.reno-todo-row.is-today .reno-todo-icon,.reno-todo-row.is-visit .reno-todo-icon{color:#16784c}
.btn[data-reno-tab]>.dorfer-icon,.btn[data-reno-order]>.dorfer-icon,.btn[data-reno-montage]>.dorfer-icon,a.btn[href^="tel:"]>.dorfer-icon,.btn[data-tab="renovierung"]>.dorfer-icon,.reno-seg-btn>.dorfer-icon{width:18px;height:18px;vertical-align:-4px;margin-right:6px;flex:none}
.reno-seg-btn{display:inline-flex;align-items:center}
.reno-ico-head{display:flex;align-items:center;gap:8px}
.reno-ico-head>.dorfer-icon{width:24px;height:24px;color:var(--reno-wine);flex:none}
.reno-ico-alert{display:flex;gap:8px;align-items:flex-start}
.reno-ico-alert>.dorfer-icon{width:20px;height:20px;flex:none;margin-top:1px}
.reno-pstep.is-kitchen{grid-template-columns:auto minmax(0,1fr);border-style:dashed;border-color:#c9a3a8;background:#fbf5f5}
.reno-pstep.is-kitchen>.dorfer-icon{width:24px;height:24px;color:var(--reno-wine)}
.reno-kitchen-steps{margin-top:0}
.reno-kitchen-why{color:#8a5a00}
.reno-step-fixed .reno-work-status{justify-self:start}
.reno-worker .reno-photo-grid+h4,.reno-worker .small-note+h4{margin:16px 0 8px}
.reno-w-pending figcaption .btn{width:100%}
.reno-file .reno-off-badge{display:block;color:#16784c;font-size:12px;font-weight:700}

/* V14.47.0: Gesamt-Terminplan (durchgehend), eigene Spalte hervorgehoben, Ziehen, Vollbild */
.reno-plan-table th.is-current,.reno-plan-table td.is-current{background:#fbf3f4}
.reno-plan-table thead th.is-current{background:#f3e3e5;box-shadow:inset 0 -3px 0 var(--reno-wine)}
.reno-plan-table thead th.is-current .reno-plan-col b{color:var(--reno-wine)}
.reno-plan-table tr.is-off td.is-current{background:#eee3e4}
.reno-plan-table thead .reno-plan-day .reno-link-btn{font-size:12px;font-weight:700}
.reno-plan-more th{text-align:left;padding:10px;background:#faf9f8}
.reno-plan-akte{margin:14px 0 6px;padding-top:12px;border-top:1px solid var(--reno-line)}
.reno-plan-akte h4{margin:0;font-size:17px}
/* V14.47.1: größer – fast die ganze Bildschirmhöhe, mindestens 560 px */
.reno-plan-akte .reno-plan-scroll{height:max(560px,calc(100dvh - 190px));max-height:none}
.reno-plan-item.is-draggable{cursor:grab;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
.reno-plan-item.is-lifted{opacity:.35;outline:2px dashed var(--reno-wine)}
.reno-plan-ghost{position:fixed;z-index:1000;pointer-events:none;transform:translate(-50%,-120%) scale(1.06);box-shadow:0 8px 22px #0004;opacity:.95;max-width:220px}
.reno-plan-table td.is-drop{background:#e4f3eb!important;outline:2px solid #16784c;outline-offset:-2px}
.reno-plan-table td.is-nodrop{background:#fde3e3!important}
.reno-plan-hint{margin-top:6px}
.reno-gplan-full{display:grid;gap:8px}
.reno-gplan-full .dorfer20-dialog-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px}
.reno-gplan-full .reno-plan-scroll{max-height:calc(100dvh - 210px)}
dialog.dorfer20-modal:has(.reno-gplan-full){width:100vw!important;inline-size:100vw!important;max-width:100vw!important;max-inline-size:100vw!important;height:100dvh!important;block-size:100dvh!important;max-height:100dvh!important;max-block-size:100dvh!important;margin:0!important;border-radius:0!important}
dialog.dorfer20-modal:has(.reno-gplan-full) .dorfer20-dialog{max-width:none;width:100%}
.reno-move-list{list-style:none;margin:8px 0;padding:0;display:grid;gap:8px}
.reno-move-list li{padding:8px 10px;border:1px solid var(--reno-line);border-radius:10px;background:#fff;line-height:1.45}
.reno-move-list li small{display:block}
.reno-move-list.is-off{opacity:.45}
.reno-move-follow{margin-top:6px;font-weight:700}
.reno-move .reno-check-label{display:flex!important;gap:10px;align-items:flex-start;justify-content:flex-start;text-align:left;font-weight:600}
.reno-move .reno-check-label input{flex:none;margin-top:3px;width:20px;height:20px}
/* V14.47.0: Beginn nur an (Wochentage je Schritt) */
.reno-step-days{grid-column:2/-1;display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:2px 0}
.reno-work-form .reno-step-days{grid-column:auto}
.reno-step-days>small:first-child{font-weight:700;color:#5f5a58}
.reno-day-chip{position:relative;display:inline-flex}
.reno-day-chip input{position:absolute;opacity:0;width:1px;height:1px}
.reno-day-chip span{display:inline-grid;place-items:center;min-width:42px;min-height:36px;padding:0 8px;border:1px solid var(--reno-line);border-radius:999px;background:#fff;font-weight:700;color:#5f5a58;touch-action:manipulation}
.reno-day-chip input:checked+span{background:var(--reno-wine);border-color:var(--reno-wine);color:#fff}
.reno-day-chip input:focus-visible+span{outline:2px solid var(--reno-wine);outline-offset:2px}
/* V14.47.1: Termin antippen → verschieben */
.reno-plan-item.is-draggable{cursor:pointer}
.reno-move-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.reno-move-buttons .btn{min-height:48px}
.reno-move-list.is-main li{border-color:var(--reno-wine);background:#fbf3f4}

/* V14.48.0: kompakter Kopf der Akte, Symbolknöpfe, schmaler „Nächster Schritt“ */
.reno-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.reno-record-head.is-compact{display:flex;justify-content:space-between;align-items:center;gap:10px 14px;flex-wrap:wrap;background:#fff;border:1px solid var(--reno-line);border-radius:16px;padding:12px 14px;margin:6px 0 10px}
.reno-record-head.is-compact h2{margin:0;font-size:21px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.reno-kv-pill{font-size:12px}
.reno-head-facts{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;font-size:13px;color:var(--muted,#6d6560);margin-top:3px}
.reno-head-facts b{color:#262322}
.reno-head-tel{display:inline-flex;align-items:center;gap:4px;color:var(--reno-wine);font-weight:700}
.reno-head-tel .dorfer-icon{width:16px;height:16px}
.reno-record-menu{display:flex;gap:6px;flex-wrap:wrap}
.reno-ibtn{position:relative;display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--reno-line);background:#fff;color:#3d3432;cursor:pointer;touch-action:manipulation}
.reno-ibtn .dorfer-icon{width:21px;height:21px}
.reno-ibtn.on{border-color:var(--reno-wine);background:var(--reno-soft);color:var(--reno-wine)}
.reno-ibtn-n{position:absolute;top:-6px;right:-6px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--reno-wine);color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center}
.reno-ibtn-n.is-new{background:#c2410c}
.reno-off-ibtn.is-saved{color:#16784c;border-color:#bfe3cf;background:#e4f3eb}
.reno-off-ibtn.is-bad{border-color:#e5a3a3;background:#fde3e3;color:#a32121}
.reno-next.is-compact{padding:8px 10px 8px 14px;border:2px solid var(--reno-wine);background:var(--reno-soft)}
.reno-next-line{display:flex;justify-content:space-between;align-items:center;gap:8px 12px;flex-wrap:wrap}
.reno-next-line>span{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;min-width:0}
.reno-next-line>span>small{color:var(--reno-wine);font-weight:800;letter-spacing:.06em;font-size:11px;text-transform:uppercase}
.reno-next-line h3{margin:0;font-size:16px}
.reno-next.is-compact .btn:not(.primary){min-height:38px;font-size:13px}
.reno-next-more{font-size:13px;color:var(--muted,#6d6560)}
.reno-next-more summary{cursor:pointer;width:max-content;font-weight:650}
.reno-next-more p{margin:4px 0 2px}
/* V14.48.0: ④ aufgeräumt, Fenster „Terminplan an Kunde & Handwerker“ */
.reno-exec>.reno-block-head{flex-wrap:wrap;gap:8px}
.reno-exec>.reno-block-head .btn .dorfer-icon{width:18px;height:18px;margin-right:4px;vertical-align:-4px}
.reno-sendbox{display:grid;gap:10px}
.reno-sendbox-btns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.reno-sendbox-btns .btn{min-height:48px}
.reno-sendbox-btns .btn .dorfer-icon{width:18px;height:18px;margin-right:4px;vertical-align:-4px}
.reno-sendbox h4{margin:6px 0 0}
@media(max-width:600px){.reno-sendbox-btns{grid-template-columns:1fr}}
/* V14.48.0: Status im Fenster „Termin“ (Plan antippen) */
.reno-move-h{margin:4px 0 0;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#6d6560)}
.reno-move-status{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}
.reno-move-status .btn{min-height:48px}
.reno-move-status .btn .dorfer-icon,.reno-move-menu .reno-actions .dorfer-icon{width:18px;height:18px;margin-right:4px;vertical-align:-4px}
/* V14.48.0: ① Gewerke-Fahrplan, ② Abschließen als feste Leiste, ③ Angebote mit Fortschritt */
.reno-trades-plan .reno-item-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,2fr) auto;gap:8px 12px;align-items:center}
.reno-trades-plan .reno-item-name{display:grid;gap:2px;min-width:0}
.reno-trades-plan .reno-item-who{font-size:12.5px;color:var(--muted,#6d6560)}
.reno-stages{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:12px}
.reno-stage{padding:4px 9px;border-radius:999px;background:#efedeb;color:#6b6460;font-weight:700;white-space:nowrap}
.reno-stage.is-done{background:#e4f3eb;color:#12623e}.reno-stage.is-current{background:var(--reno-wine);color:#fff}
.reno-stage-sep{color:#b5aca8}
.reno-item-action .btn .dorfer-icon{width:16px;height:16px;margin-right:3px;vertical-align:-3px}
@media(max-width:700px){.reno-trades-plan .reno-item-row{grid-template-columns:minmax(0,1fr) auto}.reno-trades-plan .reno-stages{grid-column:1/-1;order:3}}
.reno-visit-done.is-bottom{position:sticky;bottom:10px;z-index:4;border-style:solid;border-color:#16784c;box-shadow:0 6px 20px #0002}
.reno-meter{height:10px;border-radius:99px;background:#efedeb;overflow:hidden;margin:4px 0 10px}
.reno-meter span{display:block;height:100%;background:#16784c}
.reno-kv-card .btn.primary{min-height:52px;font-size:16px}
.reno-kv-hint{background:#fff6e0;color:#8a5a00;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:650;margin:8px 0 0}
/* V14.48.0: Anrufliste je Handwerker */
.reno-tile-n{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--reno-wine);color:#fff;font-size:12px;margin-left:4px}
.reno-tile.is-main .reno-tile-n{background:#fff;color:var(--reno-wine)}
.reno-calls{display:grid;gap:12px}
.reno-call{border:1px solid var(--reno-line);border-radius:14px;overflow:hidden;background:#fff}
.reno-call.is-late{border-color:#e5a3a3}
.reno-call header{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;background:#faf9f8;border-bottom:1px solid var(--reno-line)}
.reno-call header b{font-size:17px;display:block}.reno-call header small{color:var(--muted,#6d6560)}
.reno-call header .btn .dorfer-icon{width:18px;height:18px;margin-right:4px;vertical-align:-4px}
.reno-call ul{list-style:none;margin:0;padding:0}
.reno-call-item{display:flex;justify-content:space-between;align-items:center;gap:8px 12px;flex-wrap:wrap;padding:10px 12px;border-top:1px solid var(--reno-line)}
.reno-call-item:first-child{border-top:0}
.reno-call-item small{color:var(--muted,#6d6560)}
.reno-call-why{display:block;font-weight:650;color:#8a5a00!important}
.reno-call-item.is-late .reno-call-why{color:#a32121!important}
.reno-call-item .btn .dorfer-icon{width:16px;height:16px;margin-right:3px;vertical-align:-3px}
/* V14.48.0: Vorlagen */
.reno-tpl-bar{display:flex;flex-wrap:wrap;align-items:end;gap:8px 12px;margin:4px 0}
.reno-tpl-bar label{min-width:240px}
.reno-tpl-pick{display:block;margin:6px 0 4px;max-width:420px}
.reno-tpl-apply{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 8px}
.reno-tpl-apply small{color:var(--muted,#6d6560);font-weight:650}
/* V14.48.0: Korrekturen nach Bildschirmprüfung */
.reno-offline.is-hidden{display:none!important}
.reno-trades-plan .reno-item{display:block}
.reno-trades-plan .reno-item-row{margin-bottom:4px}
.reno-trades-plan .reno-item-more,.reno-trades-plan .reno-trade-notes{margin-top:6px}
.reno-trades-plan .reno-item-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:10px;align-items:end}
.reno-path-text b,.reno-path-text small{overflow-wrap:break-word;word-break:normal;-webkit-hyphens:auto;hyphens:auto}
/* Schrittleiste: ist sie schmal (iPad mit Menü), steht das Zeichen über dem Text – der Text bekommt die volle Breite */
.reno-path{container-type:inline-size;container-name:renopath}
@container renopath (min-width:601px) and (max-width:820px){.reno-path-step{grid-template-columns:1fr;padding:8px 9px}.reno-path-text b{font-size:13px}}
/* Gewerke-Fahrplan: Name oben, darunter Stufen und der eine nächste Knopf */
.reno-trades-plan .reno-item-row{grid-template-columns:minmax(0,1fr) auto}
.reno-trades-plan .reno-item-name{grid-column:1/-1}
.reno-trades-plan .reno-stages{grid-column:auto;order:0}
@media(max-width:700px){.reno-trades-plan .reno-stages{grid-column:1/-1;order:3}}
/* V14.49.6: Excel-Übernahme (Einstellungen der Renovierungen, nur Admin) */
.reno-xl h4{margin:18px 0 6px;font-size:15px}
.reno-xl-file{display:grid;gap:6px;max-width:520px;margin:10px 0}
.reno-xl-file input[type=file]{min-height:44px;padding:8px;border:1px dashed var(--reno-line,#d8d3cf);border-radius:12px;background:#fff}
.reno-xl-sum{margin:12px 0;padding:10px 12px;border-radius:12px;background:var(--reno-soft,#f6f1ee);overflow-wrap:anywhere}
.reno-xl-map{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:10px}
.reno-xl-map label,.reno-xl-fields label{display:grid;gap:4px;font-weight:700;font-size:13px;min-width:0}
.reno-xl-map select,.reno-xl-fields input{min-height:44px;width:100%;box-sizing:border-box}
.reno-xl-cards{display:grid;gap:12px}
.reno-xl-card{border:1px solid var(--reno-line,#e4dfdb);border-radius:14px;padding:12px;background:#fff;min-width:0}
.reno-xl-card.is-off{opacity:.55}
.reno-xl-card header{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px}
.reno-xl-inc{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:700}
.reno-xl-inc input{width:22px;height:22px}
.reno-xl-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:10px}
.reno-xl-fields small{font-weight:400;color:var(--muted,#66625f)}
.reno-xl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:6px}
.reno-xl-table{width:100%;border-collapse:collapse;font-size:13px;min-width:460px}
.reno-xl-table th,.reno-xl-table td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--reno-line,#eee8e4);vertical-align:top}
.reno-xl-table td:first-child{white-space:nowrap}
.reno-xl-table tr.is-past td{color:var(--muted,#66625f)}
.reno-xl-ignored{margin-top:8px;font-size:13px}
.reno-xl-ignored summary{min-height:36px;display:flex;align-items:center;cursor:pointer}
.reno-xl-abs{margin:6px 0;padding-left:20px}
.reno-xl-warn{color:#8a5a00;font-weight:600}
.reno-xl-progress{min-height:1.4em;font-weight:700}
@media(max-width:600px){
 .reno-xl-table{min-width:0}.reno-xl-table thead{display:none}
 .reno-xl-table tr{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:8px 0;border-bottom:1px solid var(--reno-line,#eee8e4)}
 .reno-xl-table td{border:0;padding:0}
 .reno-xl-table td:nth-child(1){font-weight:700}
 .reno-xl-table td:nth-child(2),.reno-xl-table td:nth-child(3){grid-column:1/-1}
 .reno-xl-table td:nth-child(4){grid-row:1;grid-column:2}
}
.reno-xl-warn p{margin:6px 0}
.reno-xl-absend{display:grid;gap:4px;max-width:260px;font-weight:700;font-size:13px}
.reno-xl-absend input{min-height:44px}
