/* DORFER V14.15 – Wochenkalender mit Zeitachse 08:00–16:30 Uhr */
.dorfer-calendar-page{min-width:0}
.dorfer-week-meta{padding:2px 1px 6px}
.dorfer-timeline-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;border:1px solid #e5ddda;border-radius:16px;background:#fff;box-shadow:0 7px 28px rgba(41,25,22,.055);-webkit-overflow-scrolling:touch}
.dorfer-timeline-scroll:focus-visible{outline:3px solid #b85c66;outline-offset:2px}
.dorfer-timeline{--time-row-height:52px;min-width:1320px;display:grid;grid-template-columns:76px repeat(7,minmax(175px,1fr));grid-template-rows:72px auto;position:relative}
.dorfer-time-corner{grid-column:1;grid-row:1;background:#f8f5f3;border-bottom:1px solid #e8e0dd;border-right:1px solid #e8e0dd;display:grid;place-items:center;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#877975;font-weight:800;position:sticky;left:0;z-index:4}
.dorfer-time-head{grid-row:1;border-right:1px solid #eee8e4;border-bottom:1px solid #e8e0dd;background:#fcfaf9;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;color:#847773}
.dorfer-time-head:nth-child(2){grid-column:2}.dorfer-time-head:nth-child(3){grid-column:3}.dorfer-time-head:nth-child(4){grid-column:4}.dorfer-time-head:nth-child(5){grid-column:5}.dorfer-time-head:nth-child(6){grid-column:6}.dorfer-time-head:nth-child(7){grid-column:7}.dorfer-time-head:nth-child(8){grid-column:8}
.dorfer-time-head span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:850}.dorfer-time-head strong{font-size:22px;line-height:1.1;letter-spacing:-.05em;color:#332c29}.dorfer-time-head small{font-size:10px;color:#8c807d}
.dorfer-time-head.is-today{background:#f6e9e9;border-bottom:3px solid #99404a}.dorfer-time-head.is-today strong,.dorfer-time-head.is-today span{color:#853640}
.dorfer-time-head.is-weekend{background:#f7f5f3}
.dorfer-time-labels{grid-column:1;grid-row:2;position:sticky;left:0;z-index:3;background:#fbf9f7;border-right:1px solid #e5deda}
.dorfer-time-labels span{position:absolute;right:10px;transform:translateY(-.52em);font-size:11px;color:#80746f;font-weight:760;font-variant-numeric:tabular-nums}
.dorfer-time-labels span:first-child{transform:translateY(6px)}
.dorfer-time-day{grid-row:2;min-width:0;position:relative;border-right:1px solid #eae3df;background-color:#fff;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--time-row-height) - 1px),#ece8e5 calc(var(--time-row-height) - 1px),#ece8e5 var(--time-row-height))}
.dorfer-time-day:nth-child(10){grid-column:2}.dorfer-time-day:nth-child(11){grid-column:3}.dorfer-time-day:nth-child(12){grid-column:4}.dorfer-time-day:nth-child(13){grid-column:5}.dorfer-time-day:nth-child(14){grid-column:6}.dorfer-time-day:nth-child(15){grid-column:7}.dorfer-time-day:nth-child(16){grid-column:8}
.dorfer-time-day.is-today{background-color:#fffdfc}.dorfer-time-day.is-weekend{background-color:#faf8f6}
.dorfer-time-event{position:absolute;display:flex;flex-direction:column;align-items:flex-start;gap:4px;overflow:hidden;min-width:0;padding:9px 10px;text-align:left;border:1px solid #dec4c7;border-left:4px solid #943f4a;border-radius:10px;background:linear-gradient(155deg,#fff8f8,#f5e9e9);box-shadow:0 2px 5px #44222a0d;color:#45343a;cursor:pointer;z-index:1;transition:box-shadow .15s,filter .15s}
.dorfer-time-event:hover,.dorfer-time-event:focus-visible{filter:saturate(1.13);z-index:2;box-shadow:0 4px 16px #662b3640;outline:2px solid #983e49;outline-offset:0}
.dorfer-time-event-time{font-weight:850;font-size:11px;color:#8c3743;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}
.dorfer-time-event>strong{font-size:12px;font-weight:800;line-height:1.3;overflow-wrap:anywhere;max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dorfer-time-event>span:not(.dorfer-time-event-time){font-size:10px;color:#68575a;line-height:1.3;overflow-wrap:anywhere}
.dorfer-time-event>small{color:#6e5358;font-size:10px;line-height:1.25;overflow-wrap:anywhere}
.dorfer-time-event>em{font-style:normal;font-size:10px;font-weight:800;color:#a0672e}
.dorfer-time-event.is-provisional{background:#fbf5eb;border-color:#edddc1;border-left-color:#b48042}
.dorfer-time-event.has-warning{background:#fff1dd;border-color:#e7c78c;border-left-color:#af711f}
.dorfer-time-event-warning{position:absolute;right:5px;top:5px;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:#aa711f;color:#fff;font-size:11px}
.dorfer-time-day .dorfer-time-event[style*="height:35px"]{padding:5px 8px;gap:0}
.dorfer-time-day .dorfer-time-event[style*="height:35px"]>:not(.dorfer-time-event-time){display:none}
.dorfer-calendar-info{margin-top:14px;line-height:1.6}
/* Terminwahl: 3 Auswahlfelder statt kompliziertem Dropdown */
.dorfer-plan-date-fields input{width:100%;max-width:100%}
.dorfer-plan-end-summary{background:#f8f4f2;border:1px solid #ebe2de;border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;justify-content:center;gap:3px}
.dorfer-plan-end-summary small,.dorfer-plan-end-summary span{font-size:11px;color:#897d78}.dorfer-plan-end-summary strong{font-size:17px;color:#79333c;font-variant-numeric:tabular-nums}
.dorfer-plan-duration{display:grid;gap:9px}.dorfer-plan-duration>strong{font-size:14px}.dorfer-plan-duration>small{font-size:11px;line-height:1.5;color:#827670}
.dorfer-custom-duration{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;color:#534748}.dorfer-custom-duration input{max-width:170px}.dorfer-custom-duration[hidden]{display:none!important}
.dorfer-inline-schedule{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;max-width:100%;border:1px solid #e6d9d5;background:#fdf9f8;color:#713740;border-radius:10px;padding:9px 10px;text-align:left;cursor:pointer;margin-top:7px}
.dorfer-inline-schedule:hover{background:#f5e8e8;border-color:#bd8b92}.dorfer-inline-schedule span{font-size:12px;font-weight:750;line-height:1.35}.dorfer-inline-schedule small{font-size:10px;display:flex;gap:5px;align-items:center;color:#8b4c54}.dorfer-inline-schedule svg{width:13px;height:13px}
/* Rücklauf: eine Hauptaktion und ein kompakter Bericht */
.dorfer-r15-review{gap:12px;max-width:1100px}
.dorfer-r15-acceptance{background:linear-gradient(115deg,#fff,#fbf6f5);border:1px solid #ddcbd0;border-radius:16px;padding:19px 20px;display:flex;align-items:center;gap:15px;box-shadow:0 4px 18px #37202409}
.dorfer-r15-doc-icon{flex:none;width:50px;height:50px;display:grid;place-items:center;border-radius:13px;background:#853741;color:#fff}.dorfer-r15-doc-icon svg{width:24px;height:24px}
.dorfer-r15-doc-text{display:grid;gap:3px;flex:1;min-width:0}.dorfer-r15-doc-text small{font-size:10px;letter-spacing:.08em;color:#8a6870;font-weight:850}.dorfer-r15-doc-text strong{font-size:18px;letter-spacing:-.03em;color:#32282b}.dorfer-r15-doc-text span{font-size:12px;color:#81746f}
.dorfer-r15-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dorfer-r15-actions .btn{min-height:42px}
.dorfer-r15-note{background:#fffaf0;border:1px solid #efdfb8;border-radius:13px;padding:12px 15px;display:flex;align-items:center;gap:12px}.dorfer-r15-note-icon{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:10px;background:#f5e5b7;color:#866022}.dorfer-r15-note-icon svg{width:18px;height:18px}.dorfer-r15-note>div{flex:1;min-width:0;display:grid;gap:4px}.dorfer-r15-note b{font-size:13px;color:#66512c}.dorfer-r15-note small{font-size:11px;color:#89704e;line-height:1.5;overflow-wrap:anywhere}
.dorfer-r15-summary{background:#fff;border:1px solid #e7e0dd;border-radius:17px;padding:20px;box-shadow:0 3px 12px #32242304}
.dorfer-r15-summary-head{margin-bottom:12px}.dorfer-r15-summary-head h3{font-size:16px;margin:0 0 4px;color:#332a2a}.dorfer-r15-summary-head p{font-size:11px;color:#8a807a;margin:0}
.dorfer-r15-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.dorfer-r15-fact{border:1px solid #eee8e5;border-radius:11px;background:#fcfbfa;min-width:0;min-height:63px;padding:10px 11px;display:flex;gap:10px;align-items:center;text-align:left;cursor:pointer;color:#372d2d}
.dorfer-r15-fact:hover{background:#f7f0ee;border-color:#d3b9b7}.dorfer-r15-fact.attention{background:#fff9f0;border-color:#ecd8b3}
.dorfer-r15-fact-icon{flex:none;width:33px;height:33px;display:grid;place-items:center;border-radius:9px;background:#f3e9e8;color:#8c3743}.dorfer-r15-fact.attention .dorfer-r15-fact-icon{background:#fbe8c9;color:#986b28}.dorfer-r15-fact-icon svg{width:17px;height:17px}
.dorfer-r15-fact-description{min-width:0;display:grid;gap:4px;flex:1}.dorfer-r15-fact-description strong{font-size:12px;font-weight:820;line-height:1.25}.dorfer-r15-fact-description small{font-size:11px;color:#827671;line-height:1.4;overflow-wrap:anywhere}.dorfer-r15-next{font-size:21px;color:#a18e87}
.dorfer-r15-issues{margin-top:14px;padding-top:14px;border-top:1px solid #eee8e4;display:grid;gap:5px}.dorfer-r15-issues-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px}.dorfer-r15-issues-heading strong{font-size:13px}.dorfer-r15-issues-heading span{font-size:11px;color:#7f7771}
.dorfer-r15-issue{display:flex;align-items:flex-start;gap:9px;text-align:left;border:0;background:#fbf9f8;border-radius:9px;padding:10px;width:100%;cursor:pointer;color:#423735}.dorfer-r15-issue:hover{background:#f8f1ec}.dorfer-r15-issue-dot{margin-top:4px;flex:none;width:8px;height:8px;border-radius:50%;background:#ad6e30}.dorfer-r15-issue-dot.done{background:#43805c}.dorfer-r15-issue>span:nth-child(2){display:grid;flex:1;gap:3px;min-width:0}.dorfer-r15-issue strong{font-size:11px;font-weight:780;overflow-wrap:anywhere}.dorfer-r15-issue small{font-size:10px;color:#8b7870}.dorfer-r15-issue em{font-size:10px;color:#99703f;white-space:nowrap;font-style:normal}
.dorfer-detail-action-menu{margin-top:9px}.dorfer-detail-action-menu>summary{font-size:12px;color:#83716d;cursor:pointer;padding:8px 0;list-style:none}.dorfer-detail-action-menu>summary svg{width:14px;vertical-align:middle}.dorfer-detail-action-menu>summary::-webkit-details-marker{display:none}.dorfer-detail-action-body{padding:10px 12px;background:#fbf7f6;border:1px solid #efe7e3;border-radius:11px;display:grid;gap:7px;justify-items:start}.dorfer-detail-action-body small{font-size:10px;color:#857975}
@media(max-width:700px){.dorfer-timeline{min-width:1095px;grid-template-columns:66px repeat(7,minmax(147px,1fr))}.dorfer-time-event{padding:7px}.dorfer-r15-facts{grid-template-columns:1fr}.dorfer-r15-acceptance{padding:14px}.dorfer-r15-actions{width:100%;margin-left:0}.dorfer-r15-acceptance{flex-wrap:wrap}.dorfer-r15-doc-text strong{font-size:16px}.dorfer-r15-summary{padding:13px}.dorfer-r15-note{flex-wrap:wrap}.dorfer-r15-note>.btn{margin-left:auto}}
@media(max-width:420px){.dorfer-r15-doc-icon{width:42px;height:42px}.dorfer-r15-actions .btn{flex:1}.dorfer-time-head strong{font-size:18px}.dorfer-r15-issue{flex-wrap:wrap}.dorfer-r15-issue em{margin-left:17px}}
@media(prefers-reduced-motion:reduce){.dorfer-time-event{transition:none}}
