:root{--font-ui:system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;--font-reading:var(--font-ui);--bg:#f3f1eb;--card:#fff;--ink:#24302d;--muted:#6d7773;--accent:#315f53;--line:#d8ddd9;--danger:#9d3838}*{box-sizing:border-box}body{margin:0;font-family:var(--font-ui);background:var(--bg);color:var(--ink)}header{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100vw - 1180px)/2))}.brand{font-size:1.35rem;font-weight:800;color:var(--accent);text-decoration:none}nav{display:flex;gap:18px}nav a,a{color:var(--accent)}main{max-width:1180px;margin:32px auto;padding:0 20px}.narrow{max-width:760px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.toolbar.compact{margin-bottom:12px}.button,button{display:inline-block;background:var(--accent);color:white;border:0;border-radius:9px;padding:11px 16px;text-decoration:none;font-weight:700;cursor:pointer}.secondary{background:#e3eae7;color:var(--accent)}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:22px;box-shadow:0 4px 18px rgba(0,0,0,.035)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px}.vac-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.vac-card img,.placeholder{width:100%;height:190px;object-fit:cover}.placeholder{display:grid;place-items:center;font-size:3rem;background:#dfe8e3;color:var(--accent)}.vac-card>div:last-child{padding:18px}.vac-card h2{margin:0 0 8px}.vac-card h2 a{text-decoration:none}.vac-card p{color:var(--muted)}label{display:block;font-weight:700;margin:14px 0}input,textarea,select{width:100%;margin-top:6px;border:1px solid #cbd2ce;border-radius:9px;padding:10px 11px;font:inherit;background:#fff}textarea{resize:vertical}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check{display:flex;gap:10px;align-items:center}.check input{width:auto;margin:0}.day-list{display:grid;gap:8px}.day-list a{display:grid;grid-template-columns:120px 1fr auto;gap:12px;padding:13px;border-radius:10px;text-decoration:none;background:#f5f7f5}.day-list em{font-style:normal;color:var(--muted)}.facts{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}.bullets{display:grid;gap:14px}.bullet-row{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fafbf9}.bullet-include{display:flex;align-items:center;gap:9px;margin:0;font-weight:700}.bullet-include input{width:auto;margin:0}.bullet-text{width:100%;min-height:64px;margin:0;line-height:1.45}.bullet-options{display:grid;grid-template-columns:minmax(180px,1fr) 130px 100px;gap:10px}.bullet-options label{margin:0;font-size:.9rem}.bullet-options input,.bullet-options select{margin-top:5px}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-top:18px}.gallery figure{margin:0}.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}.gallery figcaption{font-size:.9rem;color:var(--muted);padding-top:4px}.upload{display:grid;grid-template-columns:1.2fr 1fr auto;gap:10px;align-items:end}.text-preview{white-space:normal;line-height:1.7;background:#fafaf8;border-radius:10px;padding:16px}.flash{max-width:1180px;margin:20px auto;padding:12px 20px;border-radius:9px}.success{background:#dcefe4}.error{background:#f4dcdc;color:var(--danger);padding:12px;border-radius:9px}footer{text-align:center;color:var(--muted);padding:30px}.login{text-align:left;margin-top:10vh}.login h1{font-size:2.5rem;margin-bottom:4px}@media(max-width:760px){header{padding:0 16px}nav{gap:10px;font-size:.9rem}.toolbar{align-items:flex-start;flex-direction:column}.two,.facts{grid-template-columns:1fr}.day-list a{grid-template-columns:95px 1fr}.day-list em{grid-column:2}.bullet-options{grid-template-columns:1fr}.bullet-row{padding:12px}.upload{grid-template-columns:1fr}.card{padding:16px}}

/* Version 0.3: einzelne Notizkarten und Tagebuch-Leseansicht */
.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.section-head h2{margin:0 0 5px}.section-head p,.hint{margin:0;color:var(--muted);line-height:1.5}.section-head form{margin:0;flex:0 0 auto}.add-note{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end;padding:16px;margin-bottom:18px;background:#f3f7f5;border:1px dashed #b8c9c1;border-radius:12px}.add-note label{margin:0}.note-list{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:18px}.note-card{display:block;width:100%;padding:16px;border:1px solid var(--line);border-left:5px solid var(--accent);border-radius:12px;background:#fff;transition:.15s ease}.note-card.is-muted{border-left-color:#bbc3bf;background:#f6f6f4}.note-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.note-choice{display:flex;align-items:center;gap:9px;margin:0;font-weight:750}.note-choice input{width:20px;height:20px;margin:0}.category-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e5eee9;color:var(--accent);font-size:.82rem;font-weight:750}.note-text{display:block;width:100%;min-height:72px;margin:0 0 12px;font-size:1.02rem;line-height:1.5;background:#fff}.note-controls{display:grid;grid-template-columns:minmax(210px,1.4fr) minmax(110px,.6fr) minmax(95px,.45fr);gap:12px}.note-controls label{margin:0;font-size:.88rem;color:var(--muted)}.note-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:11px;padding-top:10px;border-top:1px solid #edf0ee;color:var(--muted);font-size:.82rem}.danger-link{background:transparent;color:var(--danger);padding:6px 8px}.draft-editor,.final-editor{font-family:var(--font-reading);font-size:1.05rem;line-height:1.7}.final-editor{background:#fffdf7}.reading{max-width:900px}.reading-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.journal-entry{background:#fff;border:1px solid var(--line);border-radius:18px;padding:clamp(22px,5vw,54px);box-shadow:0 8px 30px rgba(0,0,0,.045)}.entry-header{text-align:center;height:auto;background:transparent;border:0;display:block;padding:0;margin-bottom:28px}.entry-header p{margin:0 0 10px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.78rem}.entry-header h1{margin:0;font-family:var(--font-reading);font-size:clamp(2rem,6vw,3.5rem);font-weight:500}.entry-header h2{margin:8px 0 6px;font-size:1.35rem}.entry-header span{color:var(--muted)}.hero-image{margin:0 0 28px}.hero-image img{display:block;width:100%;max-height:520px;object-fit:cover;border-radius:14px}.hero-image figcaption,.reading-gallery figcaption{color:var(--muted);font-size:.88rem;margin-top:6px}.entry-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:#f5f6f2;border-radius:12px;padding:16px 18px;margin:0 0 28px}.entry-facts p{margin:0;line-height:1.5}.entry-facts strong{display:block;color:var(--accent);font-size:.82rem;text-transform:uppercase;letter-spacing:.07em;margin-bottom:4px}.journal-text{font-family:var(--font-reading);font-size:1.17rem;line-height:1.85}.reading-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:32px}.reading-gallery figure{margin:0}.reading-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.book-cover{min-height:65vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:#fff;border-radius:18px;padding:40px;margin-bottom:30px}.book-cover p{letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.book-cover h1{font-family:var(--font-reading);font-size:clamp(2.5rem,8vw,5rem);font-weight:500;margin:12px 0}.book-cover h2{font-weight:500;color:var(--muted)}.book-entry{margin-bottom:30px}.empty{color:var(--muted);font-style:italic}
@media(max-width:760px){.section-head{flex-direction:column}.add-note{grid-template-columns:1fr}.note-top{align-items:flex-start;flex-direction:column}.note-controls{grid-template-columns:1fr}.note-actions span{display:none}.entry-facts,.reading-gallery{grid-template-columns:1fr}.reading-nav{gap:12px;align-items:flex-start}.reading-nav button{padding:9px 10px}.journal-entry{padding:22px 17px}}
@media print{body{background:#fff}body>header,body>footer,.reading-nav{display:none}.reading{max-width:none;margin:0;padding:0}.book-cover,.journal-entry{box-shadow:none;border:0;border-radius:0;page-break-after:always}.book-entry{page-break-inside:avoid}}

/* Version 0.4: kompakte einzeilige Notizliste */
.compact-add{grid-template-columns:minmax(0,1fr) auto;padding:10px 12px;gap:8px;align-items:center}
.compact-add input{margin:0;min-width:0;padding:9px 10px}
.compact-add button{padding:9px 13px;font-size:1.15rem;line-height:1}
.compact-note-list{gap:6px;margin-bottom:12px}
.compact-note-row{display:grid;grid-template-columns:28px minmax(220px,1fr) minmax(170px,230px) 86px 34px;gap:7px;align-items:center;padding:6px 8px;border:1px solid var(--line);border-radius:9px;background:#fff}
.compact-note-row.is-muted{background:#f5f5f3;opacity:.72}
.compact-note-row input,.compact-note-row select{margin:0;padding:7px 8px;min-width:0;height:36px}
.compact-check{width:18px!important;height:18px!important;padding:0!important;justify-self:center}
.compact-note-text{font-size:.95rem}
.compact-category{font-size:.88rem}
.compact-stars{font-size:.92rem;text-align:center;padding-left:6px!important;padding-right:4px!important}
.compact-delete{background:transparent;color:var(--danger);padding:4px;font-size:1.35rem;line-height:1;height:30px;width:30px}
.compact-save{display:flex;justify-content:flex-end;margin-top:10px}
@media(max-width:760px){
  .compact-note-row{grid-template-columns:24px minmax(145px,1fr) minmax(120px,155px) 72px 30px;gap:5px;padding:5px;overflow-x:auto}
  .compact-note-row input,.compact-note-row select{height:34px;padding:6px;font-size:.83rem}
  .compact-note-list{overflow-x:auto}
}

/* Version 0.5: mehrere Strecken pro Tag */
.route-list{display:grid;gap:8px;margin-bottom:14px}.route-row,.route-new{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}.route-row summary,.route-new>summary{display:grid;grid-template-columns:105px minmax(180px,1fr) 90px 90px 115px 28px;gap:9px;align-items:center;padding:10px 12px;cursor:pointer;list-style:none}.route-row summary::-webkit-details-marker,.route-new>summary::-webkit-details-marker{display:none}.route-row[open] summary{background:#f3f7f5;border-bottom:1px solid var(--line)}.route-type{font-weight:750;color:var(--accent)}.route-diary{font-size:.82rem;color:var(--muted)}.route-edit{text-align:center}.route-new{margin-top:12px}.route-new>summary{display:block;font-weight:750;color:var(--accent)}.route-form{padding:16px;background:#fafbf9}.route-fields{display:grid;grid-template-columns:150px minmax(220px,1fr) 130px 130px;gap:10px}.route-form label{margin:0}.route-actions{display:flex;gap:10px;align-items:center;margin-top:14px}.route-actions .danger{background:#fff;color:var(--danger);border:1px solid #d8b4b4}.route-include{align-self:end;padding-bottom:10px}.route-include input{width:auto}.map-placeholder{margin-top:18px;min-height:150px;border:1px dashed #b9c7c0;border-radius:12px;background:#f5f7f5;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);gap:5px}.day-map{height:380px;margin-top:18px;border-radius:12px;overflow:hidden;border:1px solid var(--line)}.reading-routes,.book-routes ul{margin:6px 0 0;padding-left:18px}.reading-routes li,.book-routes li{margin:3px 0}.book-routes{background:#f5f6f2;border-radius:10px;padding:12px 16px;margin:0 0 22px}
@media(max-width:760px){.route-row summary{grid-template-columns:78px minmax(150px,1fr) 72px 27px}.route-row summary span:nth-of-type(3),.route-diary{display:none}.route-fields{grid-template-columns:1fr 1fr}.route-title-field{grid-column:1/-1}.day-map{height:300px}}

/* Version 0.6: blätterbare Tage und Wetterprüfung */
.day-pager{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin:1rem 0;padding:.7rem 1rem;background:var(--card,#fff);border:1px solid var(--line,#ddd);border-radius:14px}.day-pager>span:last-child{text-align:right}.day-pager a{text-decoration:none;font-weight:700}.pager-center{padding:.35rem .8rem;border-radius:999px;background:#f3f1eb}.weather-state{font-size:.82rem;font-weight:700;padding:.3rem .65rem;border-radius:999px}.weather-state.confirmed{background:#e5f5e8;color:#245b31}.weather-state.pending{background:#fff3d8;color:#72500d}.weather-fetch{display:grid;grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:.8rem}.weather-review{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line,#ddd)}.weather-confirmed{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.8rem}.weather-confirmed strong{font-size:1.08rem}.weather-confirmed small,.weather-review small{display:block;color:#666;margin:.35rem 0 .7rem}.reading-pager{max-width:980px;margin:1rem auto}
@media(max-width:680px){.day-pager{grid-template-columns:1fr auto 1fr;font-size:.9rem;padding:.6rem}.weather-fetch{grid-template-columns:1fr}.pager-center{font-size:.82rem}.day-pager a{white-space:nowrap}}

/* Version 0.7: alternative Notizeingabe und App-Informationen */
.inline-mode-switch{margin:0;min-width:175px}.inline-mode-switch label{margin:0;font-size:.82rem;color:var(--muted)}.inline-mode-switch select{margin-top:3px;padding:7px 30px 7px 9px;height:36px}.bulk-note-add{padding:14px;margin-bottom:14px;background:#f3f7f5;border:1px dashed #b8c9c1;border-radius:12px}.bulk-note-add label{margin:0}.bulk-note-add textarea{min-height:170px;resize:vertical;font-family:inherit;line-height:1.45}.bulk-note-hint{margin:7px 0 12px;color:var(--muted);font-size:.86rem}.mode-settings{display:grid;gap:9px}.mode-option{display:flex;gap:12px;align-items:flex-start;padding:13px;border:1px solid var(--line);border-radius:10px;margin:0;cursor:pointer}.mode-option input{width:18px;height:18px;margin-top:2px}.mode-option span{display:grid;gap:3px}.mode-option small{color:var(--muted);font-weight:400}.app-info{display:grid;grid-template-columns:160px 1fr;gap:7px 14px;margin:0 0 18px}.app-info dt{color:var(--muted)}.app-info dd{margin:0}.feature-list{padding:14px 16px;background:#f5f7f5;border-radius:12px}.feature-list h3{margin-top:0}.feature-list ul{margin-bottom:0;padding-left:20px}.feature-list li{margin:5px 0}
@media(max-width:680px){.inline-mode-switch{width:100%}.inline-mode-switch select{width:100%}.app-info{grid-template-columns:1fr;gap:2px}.app-info dd{margin-bottom:8px}}

/* Version 0.9: verlustfreies Umschalten der Notizeingabe */
.note-entry-mode.is-hidden{display:none}.note-draft-state{min-height:1.2em;margin:7px 0 2px;color:var(--muted);font-size:.82rem}.inline-mode-switch{min-width:175px}.inline-mode-switch label{margin:0;font-size:.82rem;color:var(--muted)}

/* Version 0.9: verlustfreies Umschalten der Notizeingabe */
.note-entry-mode.is-hidden{display:none}.note-draft-state{min-height:1.2em;margin:7px 0 2px;color:var(--muted);font-size:.82rem}.inline-mode-switch{min-width:175px}.inline-mode-switch label{margin:0;font-size:.82rem;color:var(--muted)}

/* Version 0.10: ruhige Reisetagebuch-Optik, Status und Arbeitsbereiche */
:root{--bg:#f4f0e8;--card:#fffdf9;--ink:#26322f;--muted:#707873;--accent:#315f53;--accent-soft:#e8f0ec;--sand:#e8dcc8;--line:#ddd8cf;--warning:#8b681c;--shadow:0 10px 30px rgba(44,55,50,.055)}
body{background:linear-gradient(180deg,#f7f4ee 0,#f2eee6 100%);min-height:100vh}
header{position:sticky;top:0;z-index:50;height:68px;background:rgba(255,253,249,.94);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line)}
.brand{font-family:var(--font-reading);font-size:1.55rem;font-weight:600;letter-spacing:.015em}
main{max-width:1220px}.card{background:rgba(255,253,249,.98);box-shadow:var(--shadow);border-color:var(--line)}
h1,h2,h3{letter-spacing:-.025em}.eyebrow{margin:0 0 5px!important;color:var(--accent)!important;font-size:.74rem!important;font-weight:800;text-transform:uppercase;letter-spacing:.14em}.toolbar-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.count-pill{display:inline-flex;align-items:center;padding:7px 11px;background:var(--accent-soft);border-radius:999px;color:var(--accent);font-size:.83rem;font-weight:750}
.day-workspace{max-width:1100px}.sticky-pager{position:sticky;top:84px;z-index:30;box-shadow:0 8px 24px rgba(44,55,50,.08);background:rgba(255,253,249,.96);backdrop-filter:blur(10px)}.sticky-pager a{display:flex;align-items:center;gap:5px}.sticky-pager .pager-center{display:grid;text-align:center;background:var(--accent-soft);line-height:1.1}.sticky-pager .pager-center small{display:block;margin-top:3px;font-size:.68rem;color:var(--muted);font-weight:600}.day-heading{margin:28px 0 16px}.day-heading h1{margin:.2rem 0;font-family:var(--font-reading);font-size:clamp(2rem,5vw,3.25rem);font-weight:500}.day-heading>div:first-child>p:last-child{color:var(--muted)}
.day-status-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:20px}.day-flag{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--card)}.day-flag>b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#eeeae2;color:var(--muted)}.day-flag>span{font-size:.78rem;font-weight:750}.day-flag small{display:block;color:var(--muted);font-size:.69rem;font-weight:500;margin-top:1px}.day-flag.is-complete{border-color:#c9ddd2;background:#f8fcfa}.day-flag.is-complete>b{background:#dceee4;color:#245b42}.day-flag.is-open{opacity:.82}
.core-card .facts{grid-template-columns:repeat(4,1fr);gap:0}.core-card .facts p{margin:0;padding:4px 18px;border-left:1px solid var(--line);line-height:1.45}.core-card .facts p:first-child{border-left:0;padding-left:0}.core-card .facts strong{display:block;margin-bottom:5px;color:var(--accent);font-size:.74rem;text-transform:uppercase;letter-spacing:.08em}
.collapsible-section{position:relative}.collapse-toggle{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;background:transparent;color:var(--accent);border:1px solid var(--line);font-size:.78rem}.collapse-toggle::before{content:'−';font-size:1rem;line-height:1}.collapsible-section.is-collapsed .collapse-toggle::before{content:'+'}.collapsible-section.is-collapsed>*:not(.section-head):not(h2):not(.collapse-toggle){display:none}.collapsible-section.is-collapsed{padding-bottom:14px}.collapsible-section>h2:first-child{display:inline-block;margin-right:10px}.collapsible-section>.collapse-toggle{float:right;margin-top:-2px}.collapsible-section>.section-head .collapse-toggle{margin-left:auto;flex:0 0 auto}
.day-timeline{position:relative;gap:4px}.day-timeline::before{content:'';position:absolute;left:52px;top:18px;bottom:18px;width:2px;background:#d9ddd7}.day-timeline a{position:relative;grid-template-columns:85px minmax(180px,1.2fr) minmax(180px,1fr) auto;align-items:center;padding:13px 14px;background:transparent;border:1px solid transparent}.day-timeline a:hover{background:#f5f7f3;border-color:var(--line)}.day-timeline time{position:relative;z-index:1;font-weight:800;color:var(--accent)}.day-timeline time::after{content:'';position:absolute;right:14px;top:50%;width:11px;height:11px;border:3px solid var(--card);border-radius:50%;background:var(--accent);transform:translateY(-50%);box-shadow:0 0 0 1px #aebeb5}.day-timeline time small,.day-title small{display:block;color:var(--muted);font-size:.72rem;font-weight:500}.day-title strong{font-size:1rem}.day-icons{color:var(--muted);font-size:.78rem}.status{padding:5px 8px;border-radius:999px;background:#ecebe6;color:var(--muted);font-size:.74rem}.status-fertig{background:#dceee4;color:#245b42}.status-textentwurf{background:#fff1d7;color:#795713}.status-strukturiert{background:#e2ebf4;color:#365d7a}
.timeline-card{padding-top:25px}.vacation-toolbar{margin-bottom:25px}.settings-page .card{scroll-margin-top:85px}
@media(max-width:900px){.day-status-strip{grid-template-columns:repeat(3,1fr)}.core-card .facts{grid-template-columns:1fr 1fr}.core-card .facts p{border-left:0;border-top:1px solid var(--line);padding:14px 8px}.core-card .facts p:nth-child(-n+2){border-top:0}.day-timeline a{grid-template-columns:75px 1fr auto}.day-icons{grid-column:2}.day-timeline::before{left:47px}}
@media(max-width:680px){header{height:60px}.sticky-pager{top:72px}.day-status-strip{grid-template-columns:1fr 1fr;gap:6px}.day-flag{padding:8px}.day-heading{margin-top:18px}.day-heading .toolbar-actions{width:100%;justify-content:flex-start}.core-card .facts{grid-template-columns:1fr}.core-card .facts p,.core-card .facts p:nth-child(-n+2){border-top:1px solid var(--line);padding:12px 0}.core-card .facts p:first-child{border-top:0}.day-timeline a{grid-template-columns:64px minmax(0,1fr) auto;padding:11px 7px}.day-timeline::before{left:37px}.day-timeline time::after{right:8px}.day-icons{font-size:.7rem}.status{font-size:.67rem}.toolbar-actions .button{padding:9px 11px;font-size:.84rem}.collapsible-section>.collapse-toggle{float:none;margin:0 0 10px}.collapsible-section>h2:first-child{display:block}}

/* Version 0.11: kontrollierte Notizaufteilung */
.compact-note-row{grid-template-columns:28px minmax(220px,1fr) minmax(170px,230px) 86px 34px 34px}
.compact-split,.compact-delete{width:34px;height:34px;padding:0;display:grid;place-items:center;border-radius:8px}
.compact-split{background:#eef3ef;color:var(--accent,#315c4b);border:1px solid var(--line)}
.bulk-actions,.dialog-actions,.split-controls{display:flex;gap:10px;align-items:end;flex-wrap:wrap}
.split-dialog{width:min(720px,calc(100vw - 28px));border:0;border-radius:18px;padding:0;box-shadow:0 24px 80px rgba(0,0,0,.28)}
.split-dialog::backdrop{background:rgba(24,31,27,.55);backdrop-filter:blur(3px)}
.split-dialog-shell{padding:22px;margin:0}
.split-dialog textarea{min-height:260px;font-family:inherit;line-height:1.55}
.dialog-close{width:38px;height:38px;padding:0}
.split-controls label{min-width:220px;margin:0}
.dialog-actions{justify-content:flex-end;margin-top:16px}
@media(max-width:760px){
  .compact-note-row{grid-template-columns:24px minmax(145px,1fr) minmax(120px,155px) 72px 30px 30px}
  .compact-split,.compact-delete{width:30px;height:30px}
  .split-dialog-shell{padding:16px}
}

/* Version 0.12: verständliche Notizaufteilung und Titelfotos */
.compact-note-row{grid-template-columns:28px minmax(220px,1fr) minmax(170px,230px) 86px 94px 34px}
.compact-split{padding:7px 9px;height:36px;font-size:.82rem;white-space:nowrap}
.bulk-note-hint{line-height:1.5}
.bulk-note-hint strong{display:block;margin-bottom:3px;color:var(--ink)}
.image-wrap{position:relative}
.cover-gallery figure{padding:8px;border:1px solid transparent;border-radius:12px}
.cover-gallery figure.is-cover{border-color:var(--accent);background:#f0f6f3}
.cover-badge{position:absolute;left:8px;top:8px;background:var(--accent);color:#fff;border-radius:999px;padding:5px 9px;font-size:.78rem;font-weight:800;box-shadow:0 2px 8px rgba(0,0,0,.18)}
.image-actions{margin-top:8px}
.image-actions button{width:100%;padding:8px 10px;font-size:.85rem}
.image-actions button:disabled{opacity:.75;cursor:default}
.book-cover{position:relative;overflow:hidden}
.book-cover.has-cover{color:#fff;background:#1d2925;isolation:isolate}
.book-cover-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.book-cover.has-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(15,25,21,.22),rgba(15,25,21,.68));z-index:-1}
.book-cover-content{position:relative;z-index:1;text-shadow:0 2px 14px rgba(0,0,0,.45)}
.book-cover.has-cover p,.book-cover.has-cover h2{color:#fff}
@media(max-width:760px){
  .compact-note-row{grid-template-columns:28px minmax(0,1fr) 38px;grid-template-areas:"check note delete" ". category ." ". stars split";gap:6px 8px;overflow:visible;padding:8px}
  .compact-check{grid-area:check}
  .compact-note-text{grid-area:note}
  .compact-category{grid-area:category}
  .compact-stars{grid-area:stars}
  .compact-split{grid-area:split;width:100%;height:34px}
  .compact-delete{grid-area:delete}
  .compact-note-row input,.compact-note-row select{font-size:.9rem}
  .bulk-actions{display:grid;grid-template-columns:1fr;gap:8px}
  .cover-gallery{grid-template-columns:1fr 1fr}
}
@media(max-width:470px){.cover-gallery{grid-template-columns:1fr}}

/* Version 0.13: kompaktere mobile Notizen, optimierte Titelfotos und PWA */
.hero-image img,.book-cover-image{aspect-ratio:16/9;max-height:none;object-fit:cover;object-position:center}
.vac-card img{aspect-ratio:16/9;object-fit:cover}
.upload-note{margin:8px 0 0;color:var(--muted);font-size:.82rem;line-height:1.4}
.pwa-logo-preview{display:flex;align-items:center;gap:14px}.pwa-logo-preview img{width:72px;height:72px;border-radius:18px;box-shadow:0 5px 18px rgba(0,0,0,.13)}
@media(max-width:760px){
  .compact-note-list{gap:7px}
  .compact-note-row{grid-template-columns:24px minmax(0,1fr) 30px;grid-template-areas:"check note delete" ". meta split";gap:5px 7px;padding:7px 8px;border-radius:10px}
  .compact-check{grid-area:check;width:20px!important;height:20px!important;align-self:center}
  .compact-note-text{grid-area:note;height:34px!important;padding:5px 8px!important;font-size:.92rem!important}
  .compact-category{grid-area:meta;height:32px!important;padding:4px 7px!important;font-size:.78rem!important;max-width:58%}
  .compact-stars{grid-area:meta;height:32px!important;padding:4px 7px!important;font-size:.83rem!important;width:40%;margin-left:auto!important}
  .compact-split{grid-area:split;width:30px!important;height:30px!important;padding:0!important;font-size:0!important;border-radius:8px}
  .compact-split::before{content:'✂';font-size:1rem}
  .compact-delete{grid-area:delete;width:28px!important;height:28px!important;font-size:1.15rem;color:#9b423f;background:transparent}
}

/* Version 0.14: Bildeditor, bearbeitbarer Titelausschnitt und helles PWA-Logo */
.image-edit-button{width:100%;margin-top:7px;padding:8px 10px;font-size:.85rem}
.image-editor-dialog{width:min(920px,calc(100vw - 20px));max-height:94vh;border:0;border-radius:18px;padding:0;box-shadow:0 28px 90px rgba(0,0,0,.32)}
.image-editor-dialog::backdrop{background:rgba(20,30,27,.68);backdrop-filter:blur(4px)}
.image-editor-shell{padding:18px;background:var(--card,#fffdf9)}
.crop-stage{overflow:hidden;border-radius:14px;background:#162d2a;touch-action:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.crop-stage canvas{display:block;width:100%;height:auto;cursor:grab;touch-action:none}.crop-stage canvas:active{cursor:grabbing}
.image-editor-controls{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-top:14px}.image-editor-controls label{flex:1;min-width:220px;margin:0}.image-editor-controls input{width:100%}
.image-editor-dialog .section-head{margin-bottom:14px}.image-editor-dialog .section-head p{margin:4px 0 0}.image-editor-dialog .dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
@media(max-width:680px){.image-editor-shell{padding:12px}.image-editor-controls{display:grid;grid-template-columns:1fr 1fr}.image-editor-controls label{grid-column:1/-1;min-width:0}.image-editor-dialog .dialog-actions{display:grid;grid-template-columns:1fr 1fr}.image-editor-dialog button{padding:10px 8px}}

/* v0.15: browserübergreifend eindeutige Bildaktionen */
.image-edit-button.full-width { display:block; width:100%; box-sizing:border-box; margin-top:.55rem; }
.image-editor-dialog[open] { display:block; }
.image-editor-dialog::backdrop { background:rgba(20,34,29,.62); }


/* v0.16 – Bildverwaltung */
.image-delete-form { margin: .55rem 0 0; }
button.danger, .button.danger { background: #fff7f5; border: 1px solid #c98d83; color: #8f2f25; }
button.danger:hover, .button.danger:hover { background: #fbe8e4; }
.image-delete-button { min-height: 2.75rem; }

/* v0.17 – kontrollierter Wetterort */
.weather-location-box{display:grid;gap:14px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fafbf9}.weather-location-box p{margin:0}.weather-search{display:block}.weather-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.weather-actions form{margin:0}.weather-results fieldset{border:0;padding:0;margin:0 0 12px}.weather-results legend{font-weight:800;margin-bottom:8px}.weather-result{display:flex;gap:10px;align-items:flex-start;margin:6px 0;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:500}.weather-result input{width:auto;margin:3px 0 0}.weather-result span{display:grid;gap:2px}.weather-result small,.selected-weather-place small{color:var(--muted)}.selected-weather-place{display:grid;gap:4px;padding:12px;border-left:4px solid var(--accent);background:var(--accent-soft,#e8efeb);border-radius:8px}.weather-fetch{margin:0}.weather-review{margin-top:16px}@media(max-width:620px){.weather-actions{display:grid;grid-template-columns:1fr}.weather-actions button,.weather-fetch button,.weather-results button{width:100%}}

/* v0.17 – kontrollierter Wetterort */
.weather-location-box{display:grid;gap:14px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fafbf9}.weather-location-box p{margin:0}.weather-search{display:block}.weather-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.weather-actions form{margin:0}.weather-results fieldset{border:0;padding:0;margin:0 0 12px}.weather-results legend{font-weight:800;margin-bottom:8px}.weather-result{display:flex;gap:10px;align-items:flex-start;margin:6px 0;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:500}.weather-result input{width:auto;margin:3px 0 0}.weather-result span{display:grid;gap:2px}.weather-result small,.selected-weather-place small{color:var(--muted)}.selected-weather-place{display:grid;gap:4px;padding:12px;border-left:4px solid var(--accent);background:var(--accent-soft,#e8efeb);border-radius:8px}.weather-fetch{margin:0}.weather-review{margin-top:16px}@media(max-width:620px){.weather-actions{display:grid;grid-template-columns:1fr}.weather-actions button,.weather-fetch button,.weather-results button{width:100%}}

/* Version 0.21: klare Zustände, moderne Tagesnavigation, kompakter Bildeditor */
.is-hidden{display:none!important}
.view-switch{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:11px;background:#f4f6f3}.view-switch button{padding:8px 11px;background:transparent;color:var(--muted)}.view-switch button.is-active{background:var(--accent);color:#fff}.vacation-overview.view-list{display:grid;grid-template-columns:1fr;gap:10px}.vacation-overview.view-list .vac-card{display:grid;grid-template-columns:150px minmax(0,1fr);min-height:112px}.vacation-overview.view-list .vac-card img,.vacation-overview.view-list .placeholder{height:100%;min-height:112px}.vacation-overview.view-list .vac-card>div:last-child{padding:15px 18px}.vacation-overview.view-list .vac-card p{margin:4px 0 8px}
.day-pager-modern{padding:8px 10px;grid-template-columns:minmax(76px,1fr) auto minmax(76px,1fr);border-radius:18px}.day-pager-modern .pager-side a{display:flex;align-items:center;gap:7px;padding:7px 8px;border-radius:12px}.day-pager-modern .pager-side a:hover{background:var(--accent-soft,#e8efeb)}.day-pager-modern .pager-side b{font-size:1.65rem;line-height:1;font-weight:400}.day-pager-modern .pager-side span span{display:grid;line-height:1.1}.day-pager-modern .pager-side small{text-transform:uppercase;letter-spacing:.05em;font-size:.58rem;color:var(--muted)}.day-pager-modern .pager-next{display:flex;justify-content:flex-end}.day-pager-modern .pager-next a{text-align:right}.day-pager-modern .pager-center{min-width:154px;padding:7px 15px}.day-pager-modern .pager-center strong{font-size:.95rem}.day-pager-modern .pager-center small{font-size:.64rem}.pager-disabled{display:block;min-height:42px}
.image-editor-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.image-editor-head h2{margin:0}.image-editor-head p{margin:2px 0 0;color:var(--muted);font-size:.88rem}.icon-button{width:38px;height:38px;padding:0;border-radius:50%;background:#edf1ee;color:var(--accent);font-size:1.35rem}.image-editor-tools{display:grid;grid-template-columns:42px minmax(120px,1fr) 42px auto auto;gap:7px;align-items:center;margin-top:10px}.image-editor-tools button{height:38px;padding:7px 10px}.compact-zoom{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;margin:0;font-size:.75rem;color:var(--muted)}.compact-zoom input{margin:0;padding:0}.image-editor-message{min-height:1.2em;margin:8px 0 0;color:var(--muted);font-size:.78rem}.image-editor-actions{position:sticky;bottom:0;padding-top:9px;background:var(--card)}
@media(max-width:680px){.overview-toolbar .toolbar-actions{width:100%;display:grid;grid-template-columns:1fr}.view-switch{width:100%}.view-switch button{flex:1}.vacation-overview.view-list .vac-card{grid-template-columns:92px minmax(0,1fr)}.vacation-overview.view-list .vac-card img,.vacation-overview.view-list .placeholder{min-height:105px}.day-pager-modern{top:66px;margin:8px -4px 14px;padding:6px}.day-pager-modern .pager-side span span{display:none}.day-pager-modern .pager-side a{justify-content:center}.day-pager-modern .pager-center{min-width:150px;padding:6px 10px}.image-editor-dialog{width:100vw;max-height:100dvh;height:100dvh;border-radius:0}.image-editor-shell{min-height:100dvh;display:flex;flex-direction:column;padding:10px}.crop-stage{margin:auto 0}.image-editor-tools{grid-template-columns:38px minmax(90px,1fr) 38px 42px 42px}.image-editor-tools button span{display:none}.image-editor-actions{margin-top:auto;grid-template-columns:1fr 1.35fr!important}.image-editor-message{margin-bottom:4px}}

/* v0.22: klarer Urlaubskopf */
.breadcrumbs{display:flex;align-items:center;gap:.55rem;margin:.25rem 0 1rem;color:var(--muted);font-size:.95rem}.breadcrumbs a{color:var(--green);text-decoration:none}.breadcrumbs strong{font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vacation-hero{display:flex;align-items:center;gap:1rem;padding:.3rem 0 1.1rem}.vacation-app-logo{display:block;flex:0 0 64px;width:64px;height:64px;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(31,76,63,.16)}.vacation-app-logo img{width:100%;height:100%;object-fit:cover;display:block}.vacation-hero-copy h1{margin:0 0 .25rem;font-size:clamp(2rem,7vw,3.25rem);line-height:1.05}.vacation-hero-copy p{margin:0 0 .3rem;color:var(--ink);font-size:1.05rem}.vacation-hero-copy small{color:var(--muted);font-size:.95rem}.vacation-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin:0 0 1.25rem;padding:.38rem;background:rgba(222,234,228,.65);border-radius:18px}.vacation-tabs a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem .45rem;border-radius:14px;text-decoration:none;color:var(--green);font-weight:650;text-align:center}.vacation-tabs a.active{background:#fff;box-shadow:0 4px 14px rgba(31,76,63,.1)}.vacation-tabs a.primary-tab{background:var(--green);color:#fff}.compact-section-head{margin-bottom:.7rem}.compact-section-head h2{margin:0}.inline-count{display:inline-flex;align-items:center;justify-content:center;margin-left:.4rem;padding:.18rem .55rem;border-radius:999px;background:var(--pale);font-size:.8rem;color:var(--green);vertical-align:middle}
@media(max-width:600px){.breadcrumbs{margin-top:0}.vacation-hero{gap:.75rem}.vacation-app-logo{flex-basis:50px;width:50px;height:50px;border-radius:14px}.vacation-hero-copy h1{font-size:2rem}.vacation-hero-copy p{font-size:.94rem}.vacation-tabs{gap:.25rem;padding:.28rem}.vacation-tabs a{font-size:.85rem;padding:.58rem .2rem;min-height:40px}}

/* v0.23 – stabiler Urlaubskopf, klare Navigation und konsistente Datumsanzeige */
.vac-card-link{display:block;height:100%;color:inherit;text-decoration:none}
.vac-card-link>div:last-child{padding:18px}
.vac-card-link h2{margin:0 0 8px;color:var(--accent)}
.vac-card-link p{color:var(--muted)}
.vac-card{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.vac-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(31,76,63,.10);border-color:#bdcec5}
.new-vacation-button{white-space:nowrap}
.vacation-page{max-width:1040px}
.vacation-hero{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:1rem;padding:.25rem 0 1.15rem}
.vacation-app-logo{position:relative;display:block;width:64px;height:64px;border-radius:17px;overflow:hidden;background:#dcebe5;box-shadow:0 8px 22px rgba(31,76,63,.14)}
.vacation-app-logo img{width:100%;height:100%;object-fit:cover;display:block}
.vacation-app-logo.logo-fallback::before{content:'✦';position:absolute;inset:0;display:grid;place-items:center;color:var(--accent);font-size:1.7rem}
.vacation-hero-copy{min-width:0}
.vacation-hero-copy h1{margin:0 0 .25rem;font-size:clamp(2rem,6vw,3.15rem);line-height:1.03}
.vacation-hero-copy p{margin:0 0 .25rem;font-size:1.05rem;line-height:1.35}
.vacation-hero-copy small{display:block;color:var(--muted);font-size:.96rem}
.vacation-navigation{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.7rem;align-items:stretch;margin:0 0 1.25rem}
.vacation-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;margin:0;padding:.35rem;background:rgba(222,234,228,.72);border-radius:16px}
.vacation-tabs a{display:flex;align-items:center;justify-content:center;min-height:45px;padding:.65rem .55rem;border-radius:12px;text-decoration:none;color:var(--green);font-weight:700;text-align:center}
.vacation-tabs a.active{background:#fff;box-shadow:0 4px 14px rgba(31,76,63,.11)}
.add-day-button{display:flex;align-items:center;justify-content:center;min-width:150px;border-radius:14px}
.vacation-overview.view-list .vac-card-link{display:grid;grid-template-columns:150px minmax(0,1fr);min-height:112px}
.vacation-overview.view-list .vac-card-link img,.vacation-overview.view-list .vac-card-link .placeholder{height:100%;min-height:112px}
.vacation-overview.view-list .vac-card-link>div:last-child{padding:15px 18px}
@media(max-width:680px){
  .breadcrumbs{margin-bottom:.8rem;font-size:.88rem}
  .vacation-hero{grid-template-columns:48px minmax(0,1fr);gap:.75rem;padding:0 0 .95rem}
  .vacation-app-logo{width:48px;height:48px;border-radius:13px}
  .vacation-hero-copy h1{font-size:clamp(1.75rem,8vw,2.3rem)}
  .vacation-hero-copy p{font-size:.94rem}
  .vacation-hero-copy small{font-size:.84rem;line-height:1.35}
  .vacation-navigation{grid-template-columns:1fr;gap:.55rem}
  .vacation-tabs{gap:.25rem;padding:.28rem}
  .vacation-tabs a{font-size:.9rem;min-height:42px;padding:.55rem .25rem}
  .add-day-button{width:100%;min-height:44px}
  .vacation-overview.view-list .vac-card-link{grid-template-columns:108px minmax(0,1fr)}
  .vacation-overview.view-list .vac-card-link img,.vacation-overview.view-list .vac-card-link .placeholder{min-height:118px}
  .vacation-overview.view-list .vac-card-link>div:last-child{padding:13px 14px}
  .vacation-overview.view-list .vac-card h2{font-size:1.35rem}
}

/* v0.24 – kompakter Kopf, robuste Listenansicht, dezenter Zeitstrahl */
html{font-size:15px}
body{font-size:1rem}
.site-header{position:sticky;top:0;z-index:60;height:auto;min-height:66px;padding:0;background:rgba(255,253,249,.96);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line)}
.site-header-main{width:min(1220px,calc(100% - 36px));min-height:66px;margin:auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}
.site-logo{display:block;width:42px;height:42px;flex:0 0 42px;border-radius:12px;overflow:hidden;box-shadow:0 4px 14px rgba(31,76,63,.14)}
.site-logo img{display:block;width:100%;height:100%;object-fit:cover}
.site-context{display:flex;align-items:center;gap:.45rem;min-width:0;font-size:.93rem;color:var(--muted);white-space:nowrap;overflow:hidden}
.site-context a{color:var(--accent);text-decoration:none}
.site-context strong{min-width:0;color:var(--ink);font-weight:700;overflow:hidden;text-overflow:ellipsis}
.site-actions{display:flex;gap:14px;align-items:center}.site-actions a{font-size:.9rem;color:var(--accent)}
main{padding-top:24px}
h1{font-size:clamp(2rem,5vw,2.8rem)}h2{font-size:clamp(1.55rem,4vw,2rem)}h3{font-size:1.18rem}
.toolbar p,.section-head p{font-size:.95rem}
.card{padding:22px}.button,button{font-size:.93rem}
.overview-toolbar{gap:16px}.overview-toolbar h1{margin-bottom:.45rem}.overview-toolbar .toolbar-actions{gap:8px}
.view-switch{padding:3px}.view-switch button{padding:7px 10px;font-size:.9rem}.new-vacation-button{padding:9px 14px}
.vacation-overview.view-list{gap:12px}
.vacation-overview.view-list .vac-card{min-width:0;overflow:hidden}
.vacation-overview.view-list .vac-card-link{display:grid!important;grid-template-columns:132px minmax(0,1fr)!important;min-height:112px;height:auto}
.vacation-overview.view-list .vac-card-link>img,.vacation-overview.view-list .vac-card-link>.placeholder{display:block;width:132px;height:112px!important;min-height:112px!important;aspect-ratio:auto;object-fit:cover}
.vacation-overview.view-list .vac-card-link>div:last-child{min-width:0;padding:14px 16px!important;display:flex;flex-direction:column;justify-content:center}
.vacation-overview.view-list .vac-card h2{margin:0 0 4px;font-size:1.45rem;line-height:1.12;word-break:normal;overflow-wrap:normal;hyphens:none}
.vacation-overview.view-list .vac-card p{margin:0 0 7px;font-size:.96rem;line-height:1.3;word-break:normal;overflow-wrap:normal;hyphens:none}
.vacation-overview.view-list .vac-card small{font-size:.85rem;white-space:nowrap;color:var(--ink)}
.vacation-page{padding-top:18px}.vacation-hero-simple{display:block;padding:0 0 .85rem}.vacation-hero-simple .vacation-hero-copy h1{font-size:clamp(2rem,5vw,2.7rem)}.vacation-hero-simple .vacation-hero-copy p{font-size:1rem}.vacation-hero-simple .vacation-hero-copy small{font-size:.9rem}
.vacation-navigation{margin-bottom:1rem}.vacation-tabs{border-radius:14px;padding:.28rem}.vacation-tabs a{min-height:40px;font-size:.91rem;padding:.52rem .42rem}.add-day-button{min-height:40px;padding:8px 13px;font-size:.91rem}
.timeline-card{padding:20px 18px}.compact-section-head{margin-bottom:.4rem}.inline-count{font-size:.74rem;padding:.14rem .48rem}
.day-timeline{gap:1px}.day-timeline::before{left:48px;top:17px;bottom:17px;width:1px;background:#d9ddd7}
.day-timeline a{grid-template-columns:74px minmax(165px,1.25fr) minmax(150px,1fr) auto;padding:10px 9px;min-height:66px}
.day-timeline time{font-size:.95rem}.day-timeline time::after{right:12px;width:8px;height:8px;border-width:2px;box-shadow:0 0 0 1px #b6c2bb}.day-timeline time small,.day-title small{font-size:.68rem}.day-title strong{font-size:.95rem}.day-icons{font-size:.73rem}.status{font-size:.68rem;padding:4px 7px}
.form-hint{margin:-4px 0 14px;color:var(--muted);font-size:.84rem;line-height:1.45}
footer{font-size:.88rem}
@media(max-width:680px){
 html{font-size:14px}.site-header-main{width:calc(100% - 24px);min-height:64px;grid-template-columns:40px minmax(0,1fr);gap:10px;padding:7px 0}.site-logo{width:40px;height:40px;border-radius:11px}.site-context{font-size:.88rem}.site-actions{grid-column:2;gap:12px;margin-top:-5px}.site-actions a{font-size:.78rem}.site-header{min-height:64px}
 main{padding-top:18px}.card{padding:18px}.overview-toolbar{margin-bottom:14px}.overview-toolbar h1{font-size:2.25rem}.overview-toolbar p{font-size:.95rem;line-height:1.4}.overview-toolbar .toolbar-actions{display:grid;grid-template-columns:1fr;gap:7px}.view-switch button{font-size:.85rem}.new-vacation-button{width:100%;padding:9px 12px}
 .vacation-overview.view-list .vac-card-link{grid-template-columns:112px minmax(0,1fr)!important;min-height:104px}.vacation-overview.view-list .vac-card-link>img,.vacation-overview.view-list .vac-card-link>.placeholder{width:112px;height:104px!important;min-height:104px!important}.vacation-overview.view-list .vac-card-link>div:last-child{padding:11px 12px!important}.vacation-overview.view-list .vac-card h2{font-size:1.25rem;max-width:100%;white-space:normal}.vacation-overview.view-list .vac-card p{font-size:.86rem;line-height:1.25;margin-bottom:6px}.vacation-overview.view-list .vac-card small{font-size:.76rem;white-space:normal;line-height:1.25}
 .vacation-page{padding-top:14px}.vacation-hero-simple .vacation-hero-copy h1{font-size:2.15rem}.vacation-hero-simple .vacation-hero-copy p{font-size:.92rem}.vacation-hero-simple .vacation-hero-copy small{font-size:.82rem}.vacation-navigation{gap:.45rem}.vacation-tabs a{font-size:.84rem;min-height:38px}.add-day-button{min-height:39px;font-size:.86rem}
 .timeline-card{padding:17px 12px}.day-timeline::before{left:32px}.day-timeline a{grid-template-columns:54px minmax(0,1fr);padding:9px 4px 9px 2px;gap:8px;min-height:61px}.day-timeline time{font-size:.88rem}.day-timeline time::after{right:3px;width:7px;height:7px}.day-title strong{font-size:.93rem}.day-title small{font-size:.68rem}.day-icons{grid-column:2;font-size:.68rem;margin-top:-2px}.day-timeline .status{display:none}
 footer{font-size:.8rem;padding:28px 18px}
}
@media(max-width:390px){.vacation-overview.view-list .vac-card-link{grid-template-columns:96px minmax(0,1fr)!important}.vacation-overview.view-list .vac-card-link>img,.vacation-overview.view-list .vac-card-link>.placeholder{width:96px}.vacation-overview.view-list .vac-card h2{font-size:1.13rem}.vacation-overview.view-list .vac-card p{font-size:.8rem}.vacation-overview.view-list .vac-card small{font-size:.71rem}}

/* v0.25 – kompakte Übersicht, funktionale Zeitleisten-Ampel und ruhige Bildaktionen */
.overview-toolbar{margin-top:0}
.overview-toolbar>div:first-child{max-width:620px}
.vacation-overview.view-list .vac-card-link{display:flex!important;align-items:stretch;min-width:0;min-height:118px}
.vacation-overview.view-list .vac-card-link>img,
.vacation-overview.view-list .vac-card-link>.placeholder{flex:0 0 clamp(128px,30%,190px);width:clamp(128px,30%,190px)!important;height:auto!important;min-height:118px!important;aspect-ratio:16/9;object-fit:cover}
.vacation-overview.view-list .vac-card-link>div:last-child{flex:1 1 auto;min-width:0;padding:14px 16px!important;align-self:center}
.vacation-overview.view-list .vac-card h2{font-size:1.35rem;line-height:1.12;margin:0 0 4px;overflow-wrap:normal;word-break:normal;hyphens:none}
.vacation-overview.view-list .vac-card p{font-size:.9rem;line-height:1.28;margin:0 0 7px;overflow-wrap:normal;word-break:normal;hyphens:none}
.vacation-overview.view-list .vac-card small{display:block;font-size:.8rem;line-height:1.25;white-space:normal}

.vacation-hero-simple{padding-bottom:.65rem}
.vacation-hero-simple .vacation-hero-copy h1{margin-bottom:.16rem}
.vacation-hero-simple .vacation-hero-copy p{margin-bottom:.15rem}
.vacation-navigation{gap:.5rem;margin-bottom:1rem}
.vacation-tabs{padding:0;background:transparent;border-bottom:1px solid var(--line);border-radius:0;gap:0}
.vacation-tabs a{position:relative;min-height:38px;padding:.45rem .5rem;border-radius:0;background:transparent!important;box-shadow:none!important;font-size:.88rem}
.vacation-tabs a.active{color:var(--accent)}
.vacation-tabs a.active::after{content:'';position:absolute;left:18%;right:18%;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--accent)}
.add-day-button{min-height:38px;border-radius:11px;padding:7px 12px}

.timeline-card{padding:18px 16px}
.timeline-card .compact-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.timeline-legend{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.68rem}
.timeline-legend span{display:inline-flex;align-items:center;gap:4px}
.legend-dot{width:10px;height:10px;border:1.5px solid #9ba9a1;border-radius:50%;display:inline-block;background:#fff}
.legend-dot.started{background:linear-gradient(90deg,#e1b96c 50%,#fff 50%)}
.legend-dot.advanced{background:#79a88f;border-color:#79a88f}
.legend-dot.complete{background:var(--accent);border-color:var(--accent)}
.day-timeline{position:relative}
.day-timeline::before{left:83px;top:25px;bottom:25px;width:2px;background:#cbd4ce}
.day-timeline a{grid-template-columns:74px minmax(0,1.2fr) minmax(130px,.8fr) auto;column-gap:18px;min-height:62px;padding:9px 8px}
.day-timeline time{position:relative;text-align:left}
.day-timeline time::after{display:none!important}
.timeline-marker{position:absolute;z-index:2;right:-18px;top:50%;width:13px;height:13px;border:2px solid #9ba9a1;border-radius:50%;background:#fff;transform:translate(50%,-50%);box-shadow:0 0 0 3px var(--card)}
.day-completion-started .timeline-marker{background:linear-gradient(90deg,#e1b96c 50%,#fff 50%);border-color:#c69b4d}
.day-completion-advanced .timeline-marker{background:#79a88f;border-color:#5f9478}
.day-completion-complete .timeline-marker{background:var(--accent);border-color:var(--accent)}
.day-completion-complete .timeline-marker::after{content:'✓';position:absolute;inset:-4px;display:grid;place-items:center;color:#fff;font-size:8px;font-style:normal;font-weight:800}
.completion-text{font-style:normal;font-size:.67rem;color:var(--muted);white-space:nowrap}
.day-completion-complete .completion-text{color:var(--accent);font-weight:700}
.day-title strong{line-height:1.2}.day-title small{margin-top:1px}.day-icons{line-height:1.3}

.cover-gallery figure{padding:10px}
.cover-gallery .image-wrap img{max-height:260px;object-fit:cover}
.image-card-actions{display:grid;gap:7px;margin-top:8px}
.cover-status{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:5px 9px;border-radius:999px;background:#e3efe9;color:var(--accent);font-size:.76rem;font-weight:750}
.image-cover-form,.image-delete-form{margin:0}
.image-cover-form button{width:100%;min-height:36px;padding:7px 10px}
.image-action-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:stretch}
.image-action-grid .image-edit-button,.image-action-grid .image-delete-button{width:100%;min-height:38px;margin:0;padding:7px 10px;font-size:.8rem}
.image-action-grid .image-delete-button{min-width:112px}
footer{opacity:.68;font-size:.76rem;padding-top:24px}

@media(max-width:680px){
  main{padding-top:14px}
  .overview-toolbar{margin-top:0}.overview-toolbar h1{font-size:2rem}.overview-toolbar p{font-size:.88rem}
  .vacation-overview.view-list .vac-card-link{min-height:112px}
  .vacation-overview.view-list .vac-card-link>img,.vacation-overview.view-list .vac-card-link>.placeholder{flex-basis:34%;width:34%!important;min-width:120px;max-width:175px;min-height:112px!important}
  .vacation-overview.view-list .vac-card-link>div:last-child{padding:11px 12px!important}
  .vacation-overview.view-list .vac-card h2{font-size:1.18rem;line-height:1.12}
  .vacation-overview.view-list .vac-card p{font-size:.79rem;line-height:1.22;margin-bottom:5px}
  .vacation-overview.view-list .vac-card small{font-size:.7rem;line-height:1.25}
  .vacation-hero-simple .vacation-hero-copy h1{font-size:1.9rem}
  .vacation-hero-simple .vacation-hero-copy p{font-size:.86rem}
  .vacation-hero-simple .vacation-hero-copy small{font-size:.75rem}
  .vacation-tabs a{min-height:36px;font-size:.8rem;padding:.4rem .2rem}
  .add-day-button{min-height:37px;font-size:.82rem}
  .timeline-card{padding:15px 10px}
  .timeline-card .compact-section-head{align-items:flex-start}
  .timeline-legend{max-width:190px;justify-content:flex-end;font-size:.58rem;gap:5px}
  .legend-dot{width:8px;height:8px}
  .day-timeline::before{left:68px;top:22px;bottom:22px}
  .day-timeline a{grid-template-columns:58px minmax(0,1fr);column-gap:16px;row-gap:1px;padding:8px 3px;min-height:56px}
  .timeline-marker{right:-16px;width:11px;height:11px;border-width:1.5px;box-shadow:0 0 0 2px var(--card)}
  .day-timeline time{font-size:.82rem}.day-timeline time small{font-size:.6rem}
  .day-title strong{font-size:.86rem}.day-title small{font-size:.62rem}
  .day-icons{grid-column:2;font-size:.61rem;margin-top:0}
  .completion-text{display:none}
  .cover-gallery .image-wrap img{max-height:220px}
  .image-action-grid{grid-template-columns:1fr 104px}
  .image-action-grid .image-edit-button,.image-action-grid .image-delete-button{font-size:.75rem;min-height:36px}
  footer{font-size:.7rem;padding:22px 18px}
}
@media(max-width:430px){
  .vacation-overview.view-list .vac-card-link>img,.vacation-overview.view-list .vac-card-link>.placeholder{flex-basis:38%;width:38%!important;min-width:108px}
  .vacation-overview.view-list .vac-card h2{font-size:1.08rem}
  .vacation-overview.view-list .vac-card p{font-size:.75rem}
  .vacation-overview.view-list .vac-card small{font-size:.67rem}
  .timeline-legend{display:none}
  .image-action-grid{grid-template-columns:1fr}
}

/* v0.26 – robuste Listenansicht, persistente Urlaubsnavigation, saubere Zeitleiste und wertiger Urlaubskopf */
.vacation-subnav{position:sticky;top:66px;z-index:55;background:rgba(246,244,238,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.vacation-subnav-inner{width:min(1180px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:center;gap:4px;padding:7px 0}
.vacation-subnav a{position:relative;display:flex;align-items:center;justify-content:center;min-height:38px;padding:7px 11px;border-radius:10px;text-decoration:none;font-size:.86rem;font-weight:700;color:var(--ink)}
.vacation-subnav a.active{color:var(--accent);background:#fff;box-shadow:0 2px 10px rgba(30,70,58,.08)}
.vacation-subnav a.active::after{content:'';position:absolute;left:25%;right:25%;bottom:3px;height:2px;border-radius:2px;background:var(--accent)}
.vacation-subnav .subnav-add{background:var(--accent);color:#fff;padding-inline:15px}

.vacation-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:end;margin:8px 0 18px;padding:22px 24px;border:1px solid rgba(49,95,83,.16);border-radius:18px;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(225,236,230,.72));box-shadow:0 8px 26px rgba(31,76,63,.055)}
.summary-kicker{display:block;margin-bottom:5px;color:var(--accent);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.vacation-summary h1{margin:0 0 5px;font-size:clamp(2rem,5vw,3rem);line-height:1.02;letter-spacing:-.025em}
.vacation-summary p{margin:0;color:var(--muted);font-size:1rem}
.vacation-summary-meta{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.vacation-summary-meta span{display:inline-flex;align-items:center;min-height:32px;padding:6px 10px;border-radius:999px;background:#fff;color:var(--accent);font-size:.8rem;font-weight:700;white-space:nowrap;box-shadow:0 2px 8px rgba(31,76,63,.07)}

/* endgültige, kaskadenfeste Listenansicht */
.vacation-overview.view-list{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
.vacation-overview.view-list .vac-card{display:block!important;width:100%!important;min-width:0!important;overflow:hidden!important}
.vacation-overview.view-list .vac-card-link{display:grid!important;grid-template-columns:132px minmax(0,1fr)!important;align-items:stretch!important;width:100%!important;min-width:0!important;min-height:116px!important;height:auto!important}
.vacation-overview.view-list .vac-card-link>img,.vacation-overview.view-list .vac-card-link>.placeholder{display:block!important;width:132px!important;height:116px!important;min-width:0!important;min-height:116px!important;max-width:none!important;flex:none!important;object-fit:cover!important;aspect-ratio:auto!important}
.vacation-overview.view-list .vac-card-link>div:last-child{display:flex!important;flex-direction:column!important;justify-content:center!important;align-self:stretch!important;min-width:0!important;width:auto!important;padding:13px 16px!important}
.vacation-overview.view-list .vac-card h2{margin:0 0 4px!important;font-size:1.28rem!important;line-height:1.1!important;white-space:normal!important;word-break:keep-all!important;overflow-wrap:normal!important;hyphens:none!important}
.vacation-overview.view-list .vac-card p{margin:0 0 7px!important;font-size:.88rem!important;line-height:1.25!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
.vacation-overview.view-list .vac-card-meta{display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:nowrap!important;white-space:nowrap!important;font-size:.76rem!important;line-height:1.2!important;color:var(--muted)!important}

/* Zeitleiste: Datum | Achse | Inhalt | Status */
.day-timeline::before{display:none!important}
.day-timeline a{display:grid!important;grid-template-columns:70px 22px minmax(0,1fr) auto!important;column-gap:10px!important;row-gap:0!important;align-items:center!important;min-height:66px!important;padding:8px 8px!important}
.day-timeline time{grid-column:1!important;position:static!important;min-width:0!important;text-align:right!important;padding-right:2px!important;line-height:1.05!important}
.timeline-axis{grid-column:2!important;position:relative!important;align-self:stretch!important;display:grid!important;place-items:center!important;min-width:22px!important}
.timeline-axis::before{content:'';position:absolute;z-index:0;left:50%;top:-18px;bottom:-18px;width:2px;transform:translateX(-50%);background:#cbd4ce}
.day-timeline a:first-child .timeline-axis::before{top:50%}
.day-timeline a:last-child .timeline-axis::before{bottom:50%}
.timeline-marker{position:relative!important;inset:auto!important;right:auto!important;top:auto!important;z-index:2!important;display:block!important;width:13px!important;height:13px!important;transform:none!important;box-shadow:0 0 0 3px var(--card)!important}
.day-content{grid-column:3!important;display:grid!important;gap:3px!important;min-width:0!important}
.day-title{display:block!important;min-width:0!important}
.day-title strong{display:block!important;overflow-wrap:anywhere!important}
.day-icons{grid-column:auto!important;margin:0!important;min-width:0!important}
.completion-text{grid-column:4!important;align-self:center!important}

/* kompakte, gleichbleibende Aktionen in Bildkarten */
.image-card-actions{grid-template-columns:1fr!important;gap:7px!important}
.image-action-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(108px,.42fr)!important;gap:7px!important;width:100%!important}
.image-action-grid form{width:100%!important}
.image-action-grid .image-edit-button,.image-action-grid .image-delete-button{width:100%!important;min-height:36px!important;padding:7px 9px!important}

@media(max-width:680px){
  .vacation-subnav{top:64px}
  .vacation-subnav-inner{width:calc(100% - 20px);grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:3px;padding:5px 0}
  .vacation-subnav a{min-height:34px;padding:5px 6px;font-size:.74rem;border-radius:8px}
  .vacation-subnav .subnav-add{padding-inline:9px}
  .vacation-summary{grid-template-columns:1fr;gap:12px;margin-top:8px;padding:17px 18px}
  .vacation-summary h1{font-size:2rem}
  .vacation-summary p{font-size:.88rem}
  .vacation-summary-meta{justify-content:flex-start}
  .vacation-summary-meta span{min-height:28px;padding:5px 8px;font-size:.7rem}

  .vacation-overview.view-list .vac-card-link{grid-template-columns:92px minmax(0,1fr)!important;min-height:104px!important}
  .vacation-overview.view-list .vac-card-link>img,.vacation-overview.view-list .vac-card-link>.placeholder{width:92px!important;height:104px!important;min-height:104px!important}
  .vacation-overview.view-list .vac-card-link>div:last-child{padding:10px 12px!important}
  .vacation-overview.view-list .vac-card h2{font-size:1.08rem!important;line-height:1.08!important;margin-bottom:3px!important}
  .vacation-overview.view-list .vac-card p{font-size:.75rem!important;line-height:1.2!important;margin-bottom:5px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .vacation-overview.view-list .vac-card-meta{font-size:.66rem!important;gap:3px!important}

  .timeline-card{padding-inline:10px!important}
  .day-timeline a{grid-template-columns:54px 18px minmax(0,1fr)!important;column-gap:7px!important;min-height:57px!important;padding:6px 2px!important}
  .day-timeline time{text-align:right!important;font-size:.8rem!important}
  .timeline-axis{min-width:18px!important}
  .timeline-axis::before{top:-15px;bottom:-15px;width:1.5px}
  .timeline-marker{width:11px!important;height:11px!important;box-shadow:0 0 0 2px var(--card)!important}
  .day-content{gap:2px!important}
  .day-title strong{font-size:.83rem!important;line-height:1.15!important}
  .day-title small{font-size:.61rem!important}
  .day-icons{font-size:.61rem!important;line-height:1.18!important}
  .completion-text{display:none!important}
  .image-action-grid{grid-template-columns:1fr 100px!important}
}
@media(max-width:390px){
  .vacation-overview.view-list .vac-card-link{grid-template-columns:82px minmax(0,1fr)!important}
  .vacation-overview.view-list .vac-card-link>img,.vacation-overview.view-list .vac-card-link>.placeholder{width:82px!important;height:100px!important;min-height:100px!important}
  .vacation-overview.view-list .vac-card-link>div:last-child{padding:9px 10px!important}
  .vacation-overview.view-list .vac-card h2{font-size:1rem!important}
  .vacation-overview.view-list .vac-card p{font-size:.71rem!important}
  .vacation-overview.view-list .vac-card-meta{font-size:.61rem!important}
}
@media print{.vacation-subnav{display:none!important}}

/* v0.27 – automatische Höhe des Urlaubskopfs und bildfüllende Listenkarte */
/* Die globale Regel `header{height:...}` darf den semantischen Urlaubskopf nicht begrenzen. */
header.vacation-summary{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  display:grid!important;
  align-items:end!important;
  overflow:visible!important;
  border-bottom:1px solid rgba(49,95,83,.16)!important;
}
.vacation-summary-copy,.vacation-summary-meta{min-width:0}
.timeline-card{clear:both}

/* Das Listenbild streckt sich über die gesamte, durch den Text bestimmte Kartenhöhe. */
.vacation-overview.view-list .vac-card-link{
  grid-auto-rows:1fr!important;
}
.vacation-overview.view-list .vac-card-link>img,
.vacation-overview.view-list .vac-card-link>.placeholder{
  align-self:stretch!important;
  height:100%!important;
  min-height:100%!important;
  max-height:none!important;
}

@media(max-width:680px){
  header.vacation-summary{
    align-items:start!important;
    margin-bottom:20px!important;
  }
  .vacation-summary-copy{display:block!important}
  .vacation-summary-meta{position:static!important;margin-top:0!important}
  .vacation-overview.view-list .vac-card-link>img,
  .vacation-overview.view-list .vac-card-link>.placeholder{
    height:100%!important;
    min-height:100%!important;
  }
}


/* v0.28 – Listenbild ohne Reststreifen: eigener Medienrahmen statt Prozenthöhe am <img> */
.vacation-overview.view-list .vac-card-link{
  display:grid!important;
  grid-template-columns:132px minmax(0,1fr)!important;
  align-items:stretch!important;
  min-height:116px!important;
  overflow:hidden!important;
}
.vacation-overview.view-list .vac-card-media{
  position:relative!important;
  display:block!important;
  align-self:stretch!important;
  min-width:0!important;
  min-height:116px!important;
  overflow:hidden!important;
  background:#dfe8e3!important;
}
.vacation-overview.view-list .vac-card-media>img,
.vacation-overview.view-list .vac-card-media>.placeholder{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border-radius:0!important;
  object-fit:cover!important;
  aspect-ratio:auto!important;
}
.vacation-overview.view-list .vac-card-media>.placeholder{
  display:grid!important;
  place-items:center!important;
}
.vacation-overview.view-list .vac-card-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  padding:13px 16px!important;
}
@media(max-width:680px){
  .vacation-overview.view-list .vac-card-link{grid-template-columns:92px minmax(0,1fr)!important;min-height:104px!important}
  .vacation-overview.view-list .vac-card-media{min-height:104px!important}
  .vacation-overview.view-list .vac-card-copy{padding:10px 12px!important}
}
@media(max-width:390px){
  .vacation-overview.view-list .vac-card-link{grid-template-columns:82px minmax(0,1fr)!important;min-height:100px!important}
  .vacation-overview.view-list .vac-card-media{min-height:100px!important}
  .vacation-overview.view-list .vac-card-copy{padding:9px 10px!important}
}

/* v0.29 – Listenkarte bewusst kompakt und höhenstabil */
.vacation-overview.view-list .vac-card{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
.vacation-overview.view-list .vac-card-link{
  display:grid!important;
  grid-template-columns:132px minmax(0,1fr)!important;
  grid-template-rows:132px!important;
  height:132px!important;
  min-height:132px!important;
  max-height:132px!important;
  align-items:stretch!important;
  overflow:hidden!important;
}
.vacation-overview.view-list .vac-card-media{
  height:132px!important;
  min-height:132px!important;
  max-height:132px!important;
  align-self:auto!important;
}
.vacation-overview.view-list .vac-card-copy{
  height:132px!important;
  min-height:0!important;
  max-height:132px!important;
  justify-content:center!important;
  overflow:hidden!important;
}
@media(max-width:680px){
  .vacation-overview.view-list .vac-card-link{
    grid-template-columns:104px minmax(0,1fr)!important;
    grid-template-rows:112px!important;
    height:112px!important;
    min-height:112px!important;
    max-height:112px!important;
  }
  .vacation-overview.view-list .vac-card-media,
  .vacation-overview.view-list .vac-card-copy{
    height:112px!important;
    min-height:0!important;
    max-height:112px!important;
  }
}
@media(max-width:390px){
  .vacation-overview.view-list .vac-card-link{
    grid-template-columns:92px minmax(0,1fr)!important;
    grid-template-rows:106px!important;
    height:106px!important;
    min-height:106px!important;
    max-height:106px!important;
  }
  .vacation-overview.view-list .vac-card-media,
  .vacation-overview.view-list .vac-card-copy{
    height:106px!important;
    max-height:106px!important;
  }
}

/* v0.30 Reiseimport */
.import-card textarea[name="import_text"]{min-height:24rem;font-family:inherit;line-height:1.5}
.import-preview-list{display:grid;gap:1rem;margin:1rem 0}
.import-day-card{border:1px solid var(--line,#d9ded8);border-radius:14px;padding:1rem;background:#fbfcf9}
.import-day-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem;font-size:.9rem;color:#52645c}
.import-day-head .check{margin:0;font-weight:700;color:#264b3d}
.import-day-card textarea{min-height:7rem}
@media(max-width:640px){
 .import-day-card{padding:.8rem}
 .import-day-head{align-items:flex-start;flex-direction:column;gap:.25rem}
 .overview-toolbar .toolbar-actions{align-items:stretch}
 .overview-toolbar .toolbar-actions>a.button{width:100%;text-align:center}
}

/* v0.31: destructive day action is separated from normal editing */
.delete-day-form{margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(115,85,70,.18)}
.delete-day-form .danger{width:auto;min-width:0}
.import-day-card .form-hint{margin-top:.35rem}

/* v0.32: optional dangerous vacation deletion */
.danger-zone{border:1px solid color-mix(in srgb,#a33131 34%,transparent);background:color-mix(in srgb,#fff7f5 88%,white);}
.danger-zone h2{color:#7b2525;margin-top:.15rem;}
.delete-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;list-style:none;padding:0;margin:1rem 0;}
.delete-summary li{background:rgba(255,255,255,.75);border:1px solid rgba(123,37,37,.14);border-radius:.7rem;padding:.7rem;text-align:center;font-size:.88rem;}
.delete-summary strong{display:block;font-size:1.15rem;color:#6f2020;}
.delete-vacation-form{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(123,37,37,.16);}
@media(max-width:600px){.delete-summary{grid-template-columns:repeat(2,minmax(0,1fr));}}


/* v0.33 – ausschließlich kompakte Listenansicht */
.view-switch{display:none!important}
.vacation-overview{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}

/* v0.33 – nachvollziehbarer Sicherheitsstatus */
.security-summary{display:grid;gap:.2rem;margin:1rem 0;padding:.9rem 1rem;border-radius:12px;border:1px solid var(--line);background:#f7f9f6}
.security-summary strong{font-size:1.05rem}.security-summary span{font-size:.88rem}.security-summary small{color:var(--muted)}
.security-summary.ok{border-color:#8eb9a2;background:#f1f8f4}.security-summary.warning{border-color:#d7b970;background:#fff9e9}.security-summary.critical{border-color:#d69a9a;background:#fff3f3}
.security-audit{display:grid;gap:.65rem;margin:1rem 0 1.25rem}
.security-check{border:1px solid var(--line);border-left-width:5px;border-radius:10px;padding:.75rem .85rem;background:#fff}
.security-check.ok{border-left-color:#3c7b5b}.security-check.warning{border-left-color:#c38b22}.security-check.critical{border-left-color:#a33131}
.security-check-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.security-check-head span{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.security-check.ok .security-check-head span{color:#2e6c4c}.security-check.warning .security-check-head span{color:#9b6810}.security-check.critical .security-check-head span{color:#8b2828}
.security-check p{margin:.35rem 0 0;font-size:.88rem;overflow-wrap:anywhere}.security-check small{display:block;margin-top:.35rem;color:var(--muted);line-height:1.35}
@media(max-width:520px){.security-check-head{align-items:flex-start}.security-check-head span{flex:none}.security-check{padding:.7rem}}

.learning-options{display:grid;gap:.45rem;margin:.75rem 0 1rem}.style-used{padding:.7rem .9rem;background:#f3f7f4;border-radius:.7rem;margin:.7rem 0}.style-used ul{margin:.35rem 0 0;padding-left:1.2rem}.style-example-list{display:grid;gap:.7rem}.style-example-list article{display:flex;gap:1rem;align-items:flex-start;justify-content:space-between;padding:.8rem;border:1px solid #dce5df;border-radius:.75rem}.style-example-list p{margin:.3rem 0 0;color:#516158}.style-example-list form{flex:0 0 auto}@media(max-width:600px){.style-example-list article{display:block}.style-example-list form{margin-top:.6rem}}

/* v0.35 – Filterbare Bild-/Textliste und Übersichtskarte */
.overview-filter{padding:15px 17px;margin-bottom:14px}
.overview-filter-main{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(140px,.65fr) minmax(170px,.8fr);gap:12px;align-items:end}
.overview-filter label{margin:0;font-size:.82rem}
.overview-filter input,.overview-filter select{margin-top:5px}
.overview-filter-footer{display:flex;align-items:center;gap:14px;margin-top:12px;color:var(--muted);font-size:.82rem}
.display-switch{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:10px;background:#f3f5f2}
.display-switch button{background:transparent;color:var(--muted);padding:7px 10px;border-radius:7px;font-size:.78rem}
.display-switch button.is-active{background:var(--accent);color:#fff}
.link-button{margin-left:auto;background:transparent;color:var(--accent);padding:5px 0;font-size:.78rem}
.vacation-overview.text-only .vac-card-media{display:none!important}
.vacation-overview.text-only .vac-card-link{grid-template-columns:1fr!important;height:auto!important;min-height:0!important}
.vacation-overview.text-only .vac-card-copy{min-height:86px!important;padding:12px 16px!important}
.empty-filter-result{text-align:center;color:var(--muted);padding:30px}
.vacation-map-card{overflow:hidden}
.map-place-search{margin-bottom:14px}
.map-results fieldset{border:0;padding:0;margin:14px 0}
.map-result-option{display:flex;gap:10px;align-items:flex-start;padding:10px;border:1px solid var(--line);border-radius:10px;margin:7px 0;font-weight:400}
.map-result-option input{width:auto;margin:3px 0 0}
.map-result-option span{display:grid;gap:3px}.map-result-option small{color:var(--muted)}
.vacation-region-map{height:330px;border:1px solid var(--line);border-radius:13px;overflow:hidden;margin:14px 0;background:#e7ece8}
.save-vacation-map{display:grid;gap:8px}.map-attribution-note{font-size:.72rem;color:var(--muted);margin-bottom:0}
.reading-region-map{margin:22px 0}.reading-region-map h2{text-align:center}.reading-region-map .vacation-region-map{height:360px}
@media(max-width:680px){
  .overview-filter-main{grid-template-columns:1fr 1fr}.overview-filter-main label:first-child{grid-column:1/-1}
  .overview-filter-footer{flex-wrap:wrap;gap:9px}.display-switch{width:100%}.display-switch button{flex:1}.link-button{margin-left:0}
  .vacation-overview.text-only .vac-card-copy{min-height:80px!important}
  .vacation-region-map,.reading-region-map .vacation-region-map{height:280px}
}

/* v0.36 – robuste Filterleiste und verständlicher Kategorien-Leitfaden */
[hidden]{display:none!important}
.overview-filter{overflow:visible!important;height:auto!important;max-height:none!important}
.overview-filter-search,.overview-filter-selects{display:grid;gap:12px}
.overview-filter-selects{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}
.overview-filter label{display:grid;min-width:0}
.overview-filter-footer{justify-content:space-between;align-items:center}
.filter-result-actions{display:flex;align-items:center;gap:14px;margin-left:auto}
.filter-result-actions strong{color:var(--text);white-space:nowrap}
.empty-filter-result{padding:18px;text-align:center;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}
.category-guide{margin:12px 0 14px;border:1px solid var(--line);border-radius:12px;background:#f7f9f6;overflow:hidden}
.category-guide>summary{cursor:pointer;padding:11px 13px;color:var(--accent);font-weight:700;list-style:none}
.category-guide>summary::-webkit-details-marker{display:none}
.category-guide>summary::after{content:'＋';float:right;font-weight:500}
.category-guide[open]>summary::after{content:'−'}
.category-guide-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 12px 12px}
.category-guide-list article{padding:10px 11px;border-radius:10px;background:#fff;border:1px solid #e1e7e2}
.category-guide-list article strong{display:block;color:var(--accent);margin-bottom:3px}
.category-guide-list article p{margin:0 0 5px;font-size:.82rem;line-height:1.35}
.category-guide-list article small{display:block;color:var(--muted);font-size:.74rem;line-height:1.35}
.category-guide>.form-hint{padding:0 13px 12px;margin:0}
@media(max-width:680px){
  .overview-filter-selects{grid-template-columns:1fr}
  .overview-filter-footer{display:grid;grid-template-columns:1fr;gap:10px}
  .filter-result-actions{width:100%;margin-left:0;justify-content:space-between}
  .display-switch{width:100%}
  .category-guide-list{grid-template-columns:1fr}
}

/* v0.37 – serverseitig zuverlässige Urlaubsfilter und immer sichtbarer Ansichtsumschalter */
.server-filter{display:grid!important;gap:12px!important;overflow:visible!important;height:auto!important;max-height:none!important}
.server-filter .overview-filter-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.server-filter .overview-filter-actions button,.server-filter .overview-filter-actions .button{min-height:40px;padding:8px 14px}
.overview-resultbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px}
.overview-resultbar .display-switch{display:inline-flex!important;width:auto!important;min-width:250px;padding:3px;border:1px solid var(--line);border-radius:10px;background:#f3f5f2}
.overview-resultbar .display-switch a{flex:1;display:flex;align-items:center;justify-content:center;min-height:36px;padding:7px 12px;border-radius:7px;text-decoration:none;color:var(--muted);font-size:.8rem;font-weight:700}
.overview-resultbar .display-switch a.is-active{background:var(--accent);color:#fff}
.overview-resultbar>strong{font-size:.82rem;color:var(--muted);white-space:nowrap}
.vacation-overview.text-only .vac-card-media{display:none!important}
.vacation-overview.text-only .vac-card-link{grid-template-columns:minmax(0,1fr)!important;height:auto!important;min-height:0!important;max-height:none!important}
.vacation-overview.text-only .vac-card-copy{height:auto!important;min-height:86px!important;max-height:none!important;padding:12px 16px!important}
@media(max-width:680px){
  .overview-resultbar{align-items:stretch;flex-direction:column;gap:8px}
  .overview-resultbar .display-switch{width:100%!important;min-width:0}
  .overview-resultbar>strong{align-self:flex-end}
  .server-filter .overview-filter-actions{display:grid;grid-template-columns:1fr 1fr}
  .server-filter .overview-filter-actions>*{width:100%;text-align:center}
}


/* v0.38 – vollständig neu aufgebaute, ausfallsichere Urlaubsübersicht */
.overview-controls{display:grid!important;gap:14px!important;padding:16px 18px!important;overflow:visible!important;height:auto!important;max-height:none!important}
.persistent-switch{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;min-width:0!important;margin:0!important;padding:3px!important;border:1px solid var(--line)!important;border-radius:11px!important;background:#f3f5f2!important}
.persistent-switch a{display:flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;padding:8px 12px!important;border-radius:8px!important;text-decoration:none!important;color:var(--muted)!important;font-weight:700!important}
.persistent-switch a.is-active{background:var(--accent)!important;color:#fff!important}
.simple-filter{display:grid!important;gap:12px!important;margin:0!important}
.simple-filter label{display:grid!important;gap:5px!important;margin:0!important;font-size:.82rem!important;min-width:0!important}
.simple-filter input,.simple-filter select{margin:0!important;width:100%!important}
.simple-filter-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important}
.simple-filter-actions{display:flex!important;align-items:center!important;gap:9px!important;flex-wrap:wrap!important}
.simple-filter-actions button,.simple-filter-actions .button{min-height:40px!important;padding:8px 14px!important}
.simple-filter-actions strong{margin-left:auto!important;color:var(--muted)!important;font-size:.82rem!important;white-space:nowrap!important}
.home-page .vacation-overview{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
@media(max-width:680px){
 .simple-filter-grid{grid-template-columns:1fr!important}
 .simple-filter-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
 .simple-filter-actions strong{grid-column:1/-1!important;justify-self:end!important;margin-left:0!important}
 .simple-filter-actions>*{width:100%!important;text-align:center!important}
}

/* v0.40 – kompakte Filterwerkzeuge der Urlaubsübersicht */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.compact-overview-tools{margin:0 0 14px}
.compact-filter{display:grid;gap:8px}
.compact-search-row{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:8px;align-items:center}
.compact-search{margin:0;min-width:0}
.compact-search input{height:42px;margin:0;padding:8px 13px;border-radius:11px}
.compact-search-button{min-height:42px;padding:8px 16px;border-radius:11px}
.compact-view-switch{display:inline-grid;grid-template-columns:1fr 1fr;min-width:190px;padding:3px;border:1px solid var(--line);border-radius:11px;background:#eef2ef}
.compact-view-switch a{display:flex;align-items:center;justify-content:center;min-height:34px;padding:6px 10px;border-radius:8px;text-decoration:none;color:var(--muted);font-size:.76rem;font-weight:700;white-space:nowrap}
.compact-view-switch a.is-active{background:var(--accent);color:#fff}
.compact-filter-details{margin:0;border:0;background:transparent}
.compact-filter-details summary{display:none}
.compact-filter-panel{display:grid;grid-template-columns:minmax(130px,.65fr) minmax(165px,.85fr) auto auto;gap:8px;align-items:end;padding:0}
.compact-filter-panel label{display:grid;gap:4px;margin:0;font-size:.74rem;color:var(--muted)}
.compact-filter-panel select{height:38px;margin:0;padding:6px 31px 6px 10px;font-size:.8rem}
.compact-filter-panel button,.compact-reset{display:flex;align-items:center;justify-content:center;min-height:38px;padding:7px 12px;border-radius:9px;font-size:.78rem}
.compact-reset{color:var(--accent);text-decoration:none;border:1px solid var(--line);background:#fff}
.active-filter-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.active-filter-chips span,.active-filter-chips a{display:inline-flex;align-items:center;min-height:25px;padding:3px 8px;border-radius:999px;background:var(--accent-soft);font-size:.7rem;color:var(--accent);text-decoration:none}
.active-filter-chips a{background:#fff;border:1px solid var(--line)}
.compact-result-count{justify-self:end;color:var(--muted);font-size:.72rem;margin-top:-2px}
@media(min-width:681px){
 .compact-filter-details:not([open])>.compact-filter-panel{display:grid}
}
@media(max-width:680px){
 .compact-overview-tools{margin-top:-2px}
 .compact-search-row{grid-template-columns:minmax(0,1fr) auto}
 .compact-search-button{padding:8px 12px}
 .compact-view-switch{grid-column:1/-1;min-width:0;width:100%}
 .compact-filter-details{border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.65);overflow:hidden}
 .compact-filter-details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;cursor:pointer;color:var(--accent);font-weight:700;font-size:.78rem;list-style:none}
 .compact-filter-details summary::-webkit-details-marker{display:none}
 .compact-filter-details summary::after{content:'＋';order:3;font-weight:500}
 .compact-filter-details[open] summary::after{content:'−'}
 .compact-filter-details summary small{margin-left:auto;color:var(--muted);font-size:.68rem;font-weight:600}
 .compact-filter-panel{grid-template-columns:1fr 1fr;padding:0 10px 10px}
 .compact-filter-panel button,.compact-reset{width:100%}
 .active-filter-chips{padding:0 2px}
}
@media(max-width:420px){
 .compact-filter-panel{grid-template-columns:1fr}
 .compact-search input{font-size:.88rem}
}


/* v0.41 – deutlich kompaktere reine Textansicht */
.vacation-overview.text-only{gap:7px!important}
.vacation-overview.text-only .vac-card{border-radius:12px!important;overflow:hidden!important}
.vacation-overview.text-only .vac-card-link{
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding:0!important;
}
.vacation-overview.text-only .vac-card-copy{
  display:grid!important;
  grid-template-columns:minmax(130px,.55fr) minmax(0,1.15fr) auto!important;
  grid-template-areas:"title region meta"!important;
  align-items:center!important;
  column-gap:14px!important;
  row-gap:2px!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding:9px 13px!important;
}
.vacation-overview.text-only .vac-card-copy h2{
  grid-area:title!important;
  margin:0!important;
  font-size:1rem!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.vacation-overview.text-only .vac-card-copy p{
  grid-area:region!important;
  margin:0!important;
  font-size:.82rem!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.vacation-overview.text-only .vac-card-copy small{
  grid-area:meta!important;
  margin:0!important;
  font-size:.76rem!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  color:var(--muted)!important;
}
@media(max-width:680px){
  .vacation-overview.text-only{gap:6px!important}
  .vacation-overview.text-only .vac-card-copy{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"title meta" "region region"!important;
    column-gap:10px!important;
    padding:8px 11px!important;
  }
  .vacation-overview.text-only .vac-card-copy h2{font-size:.94rem!important}
  .vacation-overview.text-only .vac-card-copy p{font-size:.76rem!important;margin-top:1px!important}
  .vacation-overview.text-only .vac-card-copy small{font-size:.7rem!important}
}
@media(max-width:420px){
  .vacation-overview.text-only .vac-card-copy{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:"title" "region" "meta"!important;
    gap:2px!important;
    padding:8px 10px!important;
  }
  .vacation-overview.text-only .vac-card-copy h2,
  .vacation-overview.text-only .vac-card-copy p,
  .vacation-overview.text-only .vac-card-copy small{white-space:nowrap!important}
}

/* v0.43 – robuste Kartenort-Auswahl */
.map-search-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}.map-search-actions form{margin:0}.map-search-actions button{margin:0}
.confirmed-map-place{padding:9px 11px;border-radius:9px;background:#f1f6f3;border:1px solid var(--line);font-size:.84rem}
.map-results h3{margin-bottom:8px}.map-result-list{display:grid;gap:7px}.map-result-option{margin:0;padding:0;border:0}.map-result-option button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;background:#fff;color:var(--text);border:1px solid var(--line);padding:10px 12px}.map-result-option button:hover{border-color:var(--accent);background:#f4f8f5}.map-result-option span{display:grid;gap:2px}.map-result-option small{color:var(--muted)}.map-result-option em{font-style:normal;color:var(--accent);font-size:.78rem;font-weight:700;white-space:nowrap}
.map-help{font-size:.82rem;color:var(--muted);margin:13px 0 6px}.map-coordinate-status{font-size:.78rem;color:var(--muted);padding:7px 9px;background:#f5f7f5;border-radius:8px}
@media(max-width:560px){.map-search-actions{display:grid;grid-template-columns:1fr}.map-search-actions form,.map-search-actions button{width:100%}.map-result-option button{align-items:flex-start}.map-result-option em{padding-top:2px}}


/* v0.44: Kartenmarker und Ladehinweis ohne externe Markerbilder */
.urlaub-map-marker-wrap{background:transparent!important;border:0!important}
.urlaub-map-marker{display:block;width:26px;height:26px;background:#315c4b;border:4px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 2px 8px rgba(0,0,0,.35)}
.urlaub-map-marker::after{content:'';position:absolute;width:8px;height:8px;background:#f2b544;border-radius:50%;left:9px;top:9px}
.map-load-error{position:absolute;z-index:1000;left:12px;right:12px;bottom:34px;padding:9px 11px;border-radius:9px;background:rgba(255,248,235,.96);color:#6c4425;border:1px solid #d9b27a;font-size:.86rem;line-height:1.3;box-shadow:0 2px 10px rgba(0,0,0,.12)}
/* v0.45 Unterkünfte */
.accommodation-list{display:grid;gap:.65rem;margin:.75rem 0}.accommodation-row,.accommodation-new{border:1px solid var(--line,#d8ddd8);border-radius:16px;padding:.2rem .8rem;background:rgba(255,255,255,.55)}.accommodation-row summary,.accommodation-new summary{cursor:pointer;padding:.75rem 0;display:flex;align-items:center;justify-content:space-between;gap:1rem}.accommodation-row summary span{display:grid;gap:.15rem}.accommodation-row summary small{color:var(--muted,#6f766f)}.accommodation-row summary em{font-style:normal;font-size:.86rem;color:var(--muted,#6f766f);text-align:right}.accommodation-form{padding:.4rem 0 1rem}.accommodation-actions{display:flex;gap:.6rem;flex-wrap:wrap}.accommodation-quick-action{padding:0 0 .8rem}.accommodation-previous{margin:.75rem 0}.accommodation-section .empty{margin:.7rem 0}@media(max-width:640px){.accommodation-row summary{align-items:flex-start;flex-direction:column;gap:.25rem}.accommodation-row summary em{text-align:left}.accommodation-actions button,.accommodation-previous button,.accommodation-quick-action button{width:100%}}

/* v0.46 Unterkunftsfotos und Kosten */
.accommodation-costs{margin:1rem 0;padding:.8rem;border:1px solid var(--line,#d8ded6);border-radius:12px;background:rgba(255,255,255,.45)}
.accommodation-costs legend{padding:0 .35rem;font-weight:700;color:var(--green,#315c4d)}
.accommodation-checks{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:.6rem 0}
.accommodation-cost-summary{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .8rem;padding:.65rem .8rem;margin:.6rem 0;border-radius:10px;background:#eef4ef;font-size:.9rem}
.accommodation-cost-summary strong{font-size:1.05rem;color:#244d3f}
.accommodation-cost-summary small{width:100%;color:#647269}
.accommodation-images{margin-top:1rem;padding-top:.8rem;border-top:1px solid var(--line,#d8ded6)}
.accommodation-images h3{margin:.1rem 0 .6rem;font-size:1rem}
.compact-upload{display:grid;grid-template-columns:minmax(0,1fr);gap:.45rem}
.accommodation-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.65rem;margin-top:.75rem}
.accommodation-gallery figure{margin:0;padding:.45rem;border:1px solid var(--line,#d8ded6);border-radius:10px;background:#fff}
.accommodation-gallery img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:7px}
.accommodation-gallery figcaption{min-height:1.2rem;margin:.35rem 0;font-size:.82rem;color:#536159}
.accommodation-image-actions{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.accommodation-image-actions form{margin:0}
.accommodation-image-actions button,.accommodation-image-actions .cover-status{font-size:.76rem;padding:.38rem .55rem}
.reading-accommodation{display:flex;align-items:center;gap:.7rem}
.reading-accommodation img{width:88px;aspect-ratio:16/9;object-fit:cover;border-radius:8px}
@media(max-width:620px){.accommodation-costs .three,.accommodation-costs .two{grid-template-columns:1fr}.accommodation-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* v0.48 – kompakte Werkzeuge für automatische Notizkategorien */
.note-auto-tools{margin:.75rem 0 1rem;padding:.75rem;border:1px solid var(--line,#d7d7cf);border-radius:14px;background:rgba(239,244,240,.72)}
.note-auto-tools form{display:flex;gap:.5rem;flex-wrap:wrap;margin:0 0 .35rem}
.note-auto-tools .hint{margin:.25rem 0 0;font-size:.88rem}
@media(max-width:640px){.note-auto-tools form button{width:100%}}

/* v0.49 – Testphase: einheitliche Bedienung, Prüfvorschauen, Backup */
:root{--action-h:42px}
button,.button,input[type=submit]{min-height:var(--action-h);display:inline-flex;align-items:center;justify-content:center;gap:.38rem}
.dialog-actions,.section-head,.toolbar-actions,.accommodation-actions,.image-action-grid{align-items:center}
.inline-review,.gpx-review-card,.data-transfer-card{border-color:#b9cbbf;background:linear-gradient(180deg,#f8fbf9,#f2f7f4)}
.review-list{display:grid;gap:.5rem;margin:.75rem 0}.review-row{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(150px,210px);align-items:center;gap:.65rem;padding:.65rem;border:1px solid var(--line);border-radius:11px;background:#fff}.review-copy{display:grid;gap:.2rem}.review-copy small{color:var(--muted);font-size:.78rem}
.gpx-review-form{padding:.8rem 0;border-top:1px solid var(--line)}.gpx-review-form:first-of-type{border-top:0}.gpx-fact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:.7rem 0}.stop-review-list{display:grid;gap:.45rem;margin:.55rem 0 .8rem}.stop-review{display:grid;grid-template-columns:auto minmax(130px,.7fr) minmax(0,1fr);align-items:center;gap:.55rem;padding:.5rem .6rem;border:1px solid var(--line);border-radius:10px;background:#fff}.stop-review input[type=text],.stop-review input:not([type]){margin:0}.notice.warning{padding:.75rem .9rem;border:1px solid #d7b66d;border-radius:11px;background:#fff8e7;margin:.75rem 0}.notice.warning p{margin:.2rem 0 0}
.data-transfer-card .eyebrow{margin-bottom:.2rem}.settings-page #datenuebertragung code{font-size:.85em}
@media(max-width:680px){.review-row{grid-template-columns:auto minmax(0,1fr)}.review-row select{grid-column:2}.gpx-fact-grid{grid-template-columns:1fr}.stop-review{grid-template-columns:auto minmax(0,1fr)}.stop-review input:not([type=checkbox]){grid-column:2}.note-auto-tools form{display:grid}.note-auto-tools button{width:100%}}

/* v0.50 – GPX-Uploadfortschritt und Dublettenschutz */
.gpx-upload-progress{margin:.85rem 0;padding:.75rem .85rem;border:1px solid #b9cbbf;border-radius:12px;background:#f3f8f5;display:grid;gap:.35rem}
.gpx-upload-progress[hidden]{display:none!important}
.gpx-upload-progress strong{font-size:.9rem;color:#244d3f}
.gpx-upload-progress small{color:var(--muted);font-size:.8rem}
.gpx-progress-track{height:8px;background:#dce7e0;border-radius:999px;overflow:hidden}
.gpx-progress-track span{display:block;width:0;height:100%;background:#315c4b;border-radius:inherit;transition:width .45s ease}
.gpx-analysis-summary{margin:.2rem 0 .7rem;color:var(--muted);font-size:.85rem}
.duplicate-route-cleanup{margin:0}
.section-head .duplicate-route-cleanup button{white-space:nowrap}
@media(max-width:720px){.collapsible-section#strecken>.section-head{align-items:stretch}.collapsible-section#strecken>.section-head>button,.collapsible-section#strecken>.section-head>.duplicate-route-cleanup,.collapsible-section#strecken>.section-head>.duplicate-route-cleanup button{width:100%}}

/* Version 0.51: Upload-Manager, Fotoalbum und Höhenprofil */
.upload-manager{position:fixed;inset:0;z-index:10000;background:rgba(20,30,25,.48);display:grid;place-items:center;padding:18px}.upload-manager[hidden]{display:none}.upload-manager-card{width:min(520px,100%);background:#fff;border-radius:18px;padding:22px;box-shadow:0 20px 60px rgba(0,0,0,.28)}.upload-manager-track{height:12px;background:#e5ebe7;border-radius:999px;overflow:hidden;margin:14px 0 8px}.upload-manager-track span{display:block;height:100%;width:0;background:#315c4b;transition:width .12s linear}.upload-manager-card p{margin:6px 0}.upload-manager-card small{display:block;margin-bottom:14px}.album-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.album-item{border:1px solid #dfe6e1;border-radius:14px;overflow:hidden;background:#fff}.album-item>img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.album-item>div{padding:12px;display:grid;gap:7px}.album-item small{color:#68736c}.album-item form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.elevation-profile{margin:0 16px 16px;padding:14px;border:1px solid #dfe6e1;border-radius:14px;background:#fafcfb}.profile-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.profile-head>div{display:flex;gap:6px}.profile-mode{padding:6px 10px}.profile-mode.active{background:#315c4b;color:#fff}.elevation-profile canvas{display:block;width:100%;height:180px}.elevation-profile>small{display:block;margin-top:8px;color:#68736c}

/* Version 0.52: feste Tagesnavigation, Sprungmarken und bearbeitbare Bildunterschriften */
.vacation-subnav-inner{grid-template-columns:repeat(4,minmax(0,1fr)) auto}
.vacation-subnav .subnav-add{min-width:74px;gap:4px}
.day-workspace .sticky-pager{top:120px}
.day-workspace section[id]{scroll-margin-top:205px}
.day-status-strip .day-flag{text-decoration:none;color:inherit;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.day-status-strip .day-flag:hover,.day-status-strip .day-flag:focus-visible{transform:translateY(-1px);box-shadow:0 5px 16px rgba(37,64,53,.09);border-color:#9fbdb0;outline:none}
.day-workspace section.section-jump-highlight{animation:sectionJumpHighlight 1.35s ease}
@keyframes sectionJumpHighlight{0%,100%{box-shadow:0 4px 18px rgba(0,0,0,.035)}20%{box-shadow:0 0 0 4px rgba(49,95,83,.2),0 10px 30px rgba(49,95,83,.13)}}
.caption-edit-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:end;margin:8px 0}
.caption-edit-form input{margin:0;min-width:0}
.caption-edit-form button{min-height:38px;padding:7px 11px}
.caption-edit-form.compact{grid-template-columns:1fr}
.album-edit-form{display:grid!important;gap:9px!important}
.album-edit-form .album-caption{width:100%;margin:0;font-size:.78rem;color:var(--muted)}
.album-edit-form .album-caption input{margin-top:4px}
.album-options{display:flex;gap:12px;flex-wrap:wrap}
.album-options .check{margin:0}
.album-item{scroll-margin-top:155px}
@media(max-width:680px){
  .vacation-subnav-inner{width:calc(100% - 12px);grid-template-columns:repeat(4,minmax(0,1fr)) 44px;gap:2px}
  .vacation-subnav a{padding:5px 3px;font-size:.72rem}
  .vacation-subnav .subnav-add{min-width:44px;padding:5px 4px}
  .vacation-subnav .subnav-add-label{display:none}
  .day-workspace .sticky-pager{top:108px;margin-top:8px}
  .day-workspace section[id]{scroll-margin-top:188px}
  .caption-edit-form{grid-template-columns:minmax(0,1fr) auto}
}

/* Version 0.54: zusätzliche Notizkategorien und Strecken-Skip */
.route-section-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem;align-items:center}
.route-section-actions form{margin:0}
.route-skip-form button{white-space:nowrap}
.route-skip-form button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:720px){
  .route-section-actions{width:100%;display:grid;grid-template-columns:1fr;justify-content:stretch}
  .route-section-actions>button,.route-section-actions form,.route-section-actions form button{width:100%}
}

/* v0.55 – Wetterdiagnose */
.weather-diagnostic{margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fafbf9}.weather-diagnostic.ok{border-left:5px solid #3f7d55}.weather-diagnostic.failed{border-left:5px solid #a44b3f}.weather-diagnostic ul{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:10px}.weather-diagnostic li{display:flex;gap:10px;align-items:flex-start}.weather-diagnostic li>span{display:grid;place-items:center;min-width:24px;height:24px;border-radius:50%;background:var(--accent-soft,#e8efeb);font-weight:800}.weather-diagnostic small{display:block;margin-top:2px;color:var(--muted);overflow-wrap:anywhere}


/* Version 0.56: konsistente Typografie und deutsche Datumsdarstellung */
html{font-family:var(--font-ui);font-synthesis:none}
body,button,input,textarea,select{font-family:var(--font-ui)}
.brand,.day-heading h1,.entry-header h1,.journal-text,.draft-editor,.final-editor,.book-cover h1{font-family:var(--font-reading)}
.brand{font-weight:750;letter-spacing:-.01em}
.day-heading h1{font-weight:720;line-height:1.08;letter-spacing:-.035em}
.entry-header h1{font-weight:700;line-height:1.12;letter-spacing:-.025em}
.book-cover h1{font-weight:720;line-height:1.08;letter-spacing:-.035em}
.journal-text,.draft-editor,.final-editor{font-weight:400;letter-spacing:0}

/* 0.57 – persönlicher Schreibbereich */
.travel-writing-tabs,.book-section-nav{display:flex;gap:.55rem;flex-wrap:wrap;margin:1rem 0}.travel-writing-tabs a,.book-section-nav a{display:inline-flex;padding:.55rem .8rem;border:1px solid var(--line,#d7ddd8);border-radius:999px;text-decoration:none;background:#fff}.travel-text-form{padding:1rem 0;border-top:1px solid var(--line,#d7ddd8);scroll-margin-top:9rem}.travel-text-form textarea,.author-editor{width:100%;line-height:1.65;min-height:18rem}.writing-options{display:flex;gap:1rem;flex-wrap:wrap;margin:.8rem 0}.writing-assistant{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--line,#d7ddd8)}.assistant-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.assistant-mode-grid button{text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:.2rem}.assistant-mode-grid small{font-weight:400;opacity:.78}.writing-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.writing-comparison article{border:1px solid var(--line,#d7ddd8);border-radius:14px;padding:1rem;background:rgba(255,255,255,.55);min-width:0}.writing-comparison article>div:not(.comparison-actions){white-space:normal;line-height:1.6}.comparison-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}.travel-bookend{scroll-margin-top:8rem}.travel-bookend .journal-text{font-size:1.04rem}.book-section-nav{position:sticky;top:7.2rem;z-index:3;background:rgba(247,247,243,.94);padding:.5rem;border-radius:14px;backdrop-filter:blur(8px)}
@media(max-width:720px){.assistant-mode-grid,.writing-comparison{grid-template-columns:1fr}.book-section-nav{top:6.6rem;overflow-x:auto;flex-wrap:nowrap}.book-section-nav a{white-space:nowrap}}

/* Version 0.58: einfache Fahrzeugereignisse pro Reisetag */
.vehicle-identity-form{padding:1rem;border:1px solid var(--line,#d9d9d9);border-radius:14px;background:var(--soft,#f7f7f5);margin-bottom:1rem}.vehicle-grid{display:grid;gap:.8rem;margin-bottom:.8rem}.vehicle-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.vehicle-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.vehicle-event-list{display:grid;gap:.7rem;margin:1rem 0}.vehicle-event{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.85rem 1rem;border:1px solid var(--line,#ddd);border-radius:12px}.vehicle-event strong{display:inline-block;margin-right:.5rem}.vehicle-event span,.vehicle-event time{margin-left:.5rem;color:var(--muted,#666)}.vehicle-event p{margin:.25rem 0 0}.vehicle-event small{display:block;margin-top:.25rem}.vehicle-add{margin-top:1rem;border-top:1px solid var(--line,#ddd);padding-top:1rem}.vehicle-add summary{cursor:pointer;font-weight:700;margin-bottom:1rem}.vehicle-full{align-self:end;padding-bottom:.65rem}@media(max-width:850px){.vehicle-grid.four,.vehicle-grid.three{grid-template-columns:1fr 1fr}}@media(max-width:560px){.vehicle-grid.four,.vehicle-grid.three{grid-template-columns:1fr}.vehicle-event{align-items:flex-start;flex-direction:column}}

/* v0.58.2 – bewusste Übernahme rekonstruierter GPX-Daten */
.gpx-repair-comparison{border-left:4px solid var(--accent,#356859)}
.gpx-compare-item{padding:1rem;border:1px solid rgba(0,0,0,.12);border-radius:14px;margin-top:1rem}
.gpx-compare-title,.gpx-compare-actions{display:flex;gap:.75rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.gpx-compare-title h3{margin:0}
.gpx-status,.route-gpx-status{display:inline-flex;align-items:center;border-radius:999px;padding:.3rem .65rem;font-size:.82rem;background:rgba(180,130,20,.12)}
.gpx-status.active,.route-gpx-status{background:rgba(35,125,80,.14)}
.gpx-compare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.gpx-compare-grid>div{display:flex;flex-direction:column;padding:.8rem;border-radius:12px;background:rgba(0,0,0,.035)}
.gpx-compare-grid strong{font-size:1.2rem;margin:.15rem 0}
.gpx-compare-actions{justify-content:flex-start}
.gpx-compare-actions form{margin:0}
@media(max-width:700px){.gpx-compare-grid{grid-template-columns:1fr}.route-gpx-status{display:none}}

/* v0.58.3 – Notizen als Gedankenstützen */
.note-purpose-guide{display:flex;gap:.55rem;flex-wrap:wrap;align-items:center;margin:.85rem 0;padding:.75rem .85rem;border:1px solid var(--line,#d7ddd8);border-radius:13px;background:rgba(247,249,247,.8)}
.note-purpose-guide>strong{width:100%;font-size:.92rem}.note-purpose-guide span{padding:.35rem .55rem;border-radius:999px;background:#fff;border:1px solid #e1e6e2;font-size:.84rem}
.note-filter-bar{display:flex;gap:.5rem;flex-wrap:wrap;margin:.75rem 0}.note-filter-bar button{display:inline-flex;gap:.4rem;align-items:center}.note-filter-bar button.active{background:var(--accent,#2f6757);color:#fff;border-color:var(--accent,#2f6757)}.note-filter-bar small{font-size:.75rem;opacity:.8}
.compact-note-row{grid-template-columns:34px minmax(220px,1fr) minmax(140px,190px) 38px 94px 34px!important;transition:opacity .15s ease,background .15s ease}
.compact-note-row.is-considered{background:#f3f4f2;opacity:.67}.compact-note-row.is-important{border-color:#b68a22;box-shadow:inset 3px 0 0 #b68a22}
.note-considered,.note-important-toggle{display:flex;align-items:center;justify-content:center;margin:0;cursor:pointer}.note-considered input,.note-important-toggle input{position:absolute;opacity:0;pointer-events:none}
.note-considered span,.note-important-toggle span{display:grid;place-items:center;width:32px;height:32px;border:1px solid #cfd8d2;border-radius:9px;background:#fff;color:#87928b;font-size:1rem;transition:.15s ease}
.note-considered input:checked+span{background:#e3eee8;color:#2f6757;border-color:#7fa895}.note-important-toggle span{font-size:1.25rem;color:#b8b8b0}.note-important-toggle input:checked+span{color:#a97908;background:#fff8df;border-color:#d5b45e}
.compact-save{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.compact-save small{color:#657169}

/* v0.58.3 – ChatGPT-Übergabe ohne API */
.assistant-context-options{display:grid;gap:.75rem;margin:0 0 1rem;padding:.85rem;border:1px solid var(--line,#d7ddd8);border-radius:13px;background:rgba(247,249,247,.78)}
.assistant-context-options>label{max-width:26rem}.assistant-checkbox-list{display:grid;gap:.45rem;margin-top:.55rem}.assistant-checkbox-list label{display:flex;gap:.55rem;align-items:flex-start;padding:.45rem .55rem;border-radius:9px;background:#fff;border:1px solid #e2e7e3}.assistant-checkbox-list input{margin-top:.2rem}
.chatgpt-handoff{margin-top:1rem;padding:1rem;border:1px solid #a6c5b6;border-radius:15px;background:#f1f8f4;scroll-margin-top:8rem}.chatgpt-handoff h4{margin:.1rem 0}.chatgpt-prompt{width:100%;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.88rem;line-height:1.45;background:#fff}.chatgpt-actions{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin:.75rem 0}.chatgpt-actions form{margin:0}.chatgpt-copy-state{color:#2f6757;font-weight:600}.chatgpt-response-form{margin-top:1rem;padding-top:1rem;border-top:1px solid #cdded5}.chatgpt-response-form textarea{width:100%}
.privacy-note,.legacy-key-note{display:flex;flex-direction:column;gap:.25rem;padding:.85rem 1rem;border-radius:13px;margin:.8rem 0}.privacy-note{background:#eef7f2;border:1px solid #c8dfd2}.legacy-key-note{background:#fff7e5;border:1px solid #e3c977}.legacy-key-note form{margin-top:.5rem}

@media(max-width:760px){
  .compact-note-row{grid-template-columns:34px minmax(0,1fr) 34px!important;grid-template-areas:"check note important" ". category ." ". split delete"!important;gap:6px 8px!important}
  .note-considered{grid-area:check}.compact-note-text{grid-area:note}.compact-category{grid-area:category}.note-important-toggle{grid-area:important}.compact-split{grid-area:split}.compact-delete{grid-area:delete}
  .note-purpose-guide span{width:100%;border-radius:9px}.chatgpt-actions>*{width:100%}.chatgpt-actions form button{width:100%}
}

/* v0.58.4 – manueller Textstatus und Unterkunftsbewertung */
.manual-text-status{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1rem;padding:1rem;border:1px solid #d7ded9;border-radius:14px;background:#f7f9f7}
.manual-text-status>div:first-child{display:grid;gap:.2rem}.manual-text-status strong{font-size:1.05rem}.manual-text-status span{color:#66736c;font-size:.92rem}
.manual-status-actions{display:flex;gap:.6rem;flex-wrap:wrap}.manual-status-actions form{margin:0}
.manual-text-status.status-finished{background:#edf7f0;border-color:#bdd8c5}.manual-text-status.status-changed{background:#fff8e8;border-color:#ead49c}.manual-text-status.status-draft{background:#f4f6f7}
.readonly-status{display:flex;align-items:center;min-height:2.75rem;padding:.7rem .8rem;border:1px solid #d8dedb;border-radius:10px;background:#f5f7f6;font-weight:700}
.accommodation-review{margin:1rem 0;padding:.85rem 1rem;border:1px solid #d9dfdc;border-radius:14px;background:#fafbf9}.accommodation-review summary{cursor:pointer;font-weight:750}
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:.8rem}
.accommodation-review-summary{display:grid;gap:.35rem;margin:.8rem 0;padding:.85rem 1rem;border-left:4px solid #c7a54a;border-radius:0 10px 10px 0;background:#fbf8ee}
.accommodation-review-summary .review-stars{color:#8a6816;letter-spacing:.08em;font-size:1.15rem}.accommodation-review-summary>span{font-size:.9rem;color:#5f6c65}.accommodation-review-summary p{margin:.15rem 0}
.accommodation-review-summary.reading-review{margin:.45rem 0 0;padding:.55rem .75rem}.reading-accommodation>div{min-width:0;flex:1}
@media(max-width:760px){.manual-text-status{align-items:flex-start;flex-direction:column}.manual-status-actions{width:100%}.manual-status-actions form,.manual-status-actions button{width:100%}.review-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.review-grid{grid-template-columns:1fr}}

/* v0.58.5 – mobil-first Notizkarten und aussagekräftiger Schreibstatus */
.compact-note-list{overflow:visible!important;gap:.75rem!important}
.compact-note-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:
    "status important"
    "note note"
    "category actions"!important;
  gap:.65rem!important;
  align-items:center!important;
  padding:.8rem!important;
  overflow:hidden!important;
  border-radius:14px!important;
  background:#fff;
  opacity:1!important;
}
.compact-note-row.is-considered{background:#eef6f1!important;border-color:#b8d2c3!important;opacity:1!important}
.compact-note-row.is-important{border-color:#c9a84f!important;box-shadow:inset 4px 0 0 #c9a84f!important}
.note-considered{grid-area:status;justify-self:start;width:auto!important;max-width:100%}
.note-considered input,.note-important-toggle input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.note-status-control{
  display:inline-flex;align-items:center;gap:.5rem;min-height:44px;padding:.45rem .7rem;
  border:1px solid #bdc9c2;border-radius:11px;background:#fff;color:#4e5d55;
  font-size:.88rem;font-weight:780;line-height:1;transition:.15s ease;white-space:nowrap
}
.note-status-icon{display:grid;place-items:center;width:24px;height:24px;border:2px solid #819087;border-radius:50%;flex:0 0 24px}
.note-status-icon::before{content:'○';font-size:.9rem;color:#66756c;line-height:1}
.note-considered input:checked+.note-status-control{background:#315f53;color:#fff;border-color:#315f53;box-shadow:0 3px 10px rgba(49,95,83,.18)}
.note-considered input:checked+.note-status-control .note-status-icon{border-color:#fff;background:#fff;color:#315f53}
.note-considered input:checked+.note-status-control .note-status-icon::before{content:'✓';color:#315f53;font-weight:900}
.note-considered input:focus-visible+.note-status-control,.note-important-toggle input:focus-visible+.note-important-control{outline:3px solid rgba(49,95,83,.25);outline-offset:2px}
.compact-note-text{
  grid-area:note;width:100%!important;min-width:0!important;min-height:46px!important;height:auto!important;
  max-height:12rem;padding:.7rem .75rem!important;margin:0!important;line-height:1.45!important;
  font-size:1rem!important;resize:vertical;overflow-y:auto;white-space:pre-wrap;overflow-wrap:anywhere
}
.compact-category{grid-area:category;min-width:0!important;width:100%!important;height:44px!important;margin:0!important;padding:.55rem .7rem!important;font-size:.92rem!important}
.note-important-toggle{grid-area:important;justify-self:end;width:auto!important}
.note-important-control{
  display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:44px;min-width:44px;
  padding:.4rem .55rem;border:1px solid #d3d8d4;border-radius:11px;background:#fff;color:#9b9d96
}
.note-important-control>span{font-size:1.35rem;line-height:1}.note-important-control small{font-size:.75rem;font-weight:750}
.note-important-toggle input:checked+.note-important-control{color:#8d6705;background:#fff7d8;border-color:#d0ad4c}
.compact-note-actions{grid-area:actions;display:flex;justify-content:flex-end;gap:.45rem;min-width:0}
.compact-split,.compact-delete{min-height:44px!important;height:44px!important;margin:0!important}
.compact-split{display:inline-flex!important;align-items:center;justify-content:center;gap:.35rem;width:auto!important;padding:.55rem .7rem!important;font-size:.82rem!important;white-space:nowrap}
.compact-split::before{content:none!important}.compact-split span:first-child{font-size:1rem}
.compact-delete{display:grid!important;place-items:center;width:44px!important;padding:0!important;border:1px solid #ddb7b0!important;border-radius:11px!important;background:#fff8f6!important;color:#9b342d!important;font-size:1.35rem!important;flex:0 0 44px}
.note-purpose-guide span{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.note-filter-bar button{min-height:44px;padding:.55rem .8rem}
.compact-save{justify-content:flex-start!important}.compact-save button{min-height:44px}

.author-editor-meta{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin:.45rem 0 .8rem;color:#647168;font-size:.86rem}
.author-editor-meta [data-author-character-count]{font-weight:800;color:#315f53}
.manual-text-status.status-draft{background:#f2f6f3;border-color:#cbd9d1}
.manual-text-status.status-draft.is-substantial{background:#315f53;border-color:#315f53;color:#fff;box-shadow:0 5px 16px rgba(49,95,83,.18)}
.manual-text-status.status-draft.is-substantial span{color:#eef7f2}
.manual-text-status.status-draft.is-substantial button{background:#fff;color:#315f53}
.day-flag.is-draft{background:#315f53!important;border-color:#315f53!important;color:#fff!important;opacity:1!important;box-shadow:0 5px 14px rgba(49,95,83,.14)}
.day-flag.is-draft>b{background:#fff!important;color:#315f53!important}
.day-flag.is-draft small{color:#eef7f2!important}
.day-flag.is-changed{background:#fff7e4;border-color:#dec478;opacity:1}.day-flag.is-changed>b{background:#d9a625;color:#fff}

@media(min-width:980px){
  .compact-note-row{
    grid-template-columns:minmax(142px,172px) minmax(240px,1fr) minmax(135px,180px) minmax(72px,86px) auto!important;
    grid-template-areas:"status note category important actions"!important;
    gap:.55rem!important;padding:.65rem .7rem!important;align-items:start!important
  }
  .note-considered,.note-important-toggle,.compact-note-actions{align-self:center}
  .compact-note-text{max-height:9rem!important}
  .note-important-control small{display:none}
  .compact-split{padding:.55rem .62rem!important}
}

@media(max-width:560px){
  .card{padding:14px}
  .compact-note-row{padding:.72rem!important;gap:.55rem!important}
  .note-status-control{padding:.42rem .6rem;font-size:.84rem}
  .note-important-control small{display:none}
  .compact-note-actions{gap:.35rem}
  .compact-split{padding:.5rem .6rem!important}
  .compact-category{font-size:.88rem!important}
  .author-editor-meta{display:grid;gap:.2rem}
}
.day-flag small{overflow-wrap:anywhere;line-height:1.25}
/* Spezifische Rücksetzungen älterer kompakter Statusregeln */
.note-considered .note-status-control{display:inline-flex!important;width:auto!important;height:auto!important;background:#fff;color:#4e5d55;font-size:.88rem!important}
.note-considered .note-status-icon{display:grid!important;width:24px!important;height:24px!important;padding:0!important;background:transparent!important;color:#66756c!important;font-size:.9rem!important}
.note-considered input:checked+.note-status-control{background:#315f53!important;color:#fff!important}
.note-considered input:checked+.note-status-control .note-status-icon{background:#fff!important;color:#315f53!important}
.note-important-toggle .note-important-control{display:inline-flex!important;width:auto!important;height:auto!important;background:#fff;color:#9b9d96;font-size:1rem!important}
.note-important-toggle .note-important-control>span{display:inline!important;width:auto!important;height:auto!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:inherit!important;font-size:1.35rem!important}
.note-important-toggle input:checked+.note-important-control{background:#fff7d8!important;color:#8d6705!important}

/* v0.58.6 – konfigurierbare Tagesbereiche, kompakte Accordions und Schreibarbeitsplatz */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.day-section-stack{display:grid;gap:1rem;margin-top:1rem}
.day-section-stack>.card,.writing-studio>.card{margin:0}
.writing-studio{display:grid;gap:1rem;min-width:0}
.writing-studio>section{min-width:0}
.day-collapse-actions{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}
.day-collapse-actions button,.day-collapse-actions .button{min-height:40px;padding:.52rem .7rem;font-size:.78rem}

.day-configurable-section{transition:border-color .15s ease,box-shadow .15s ease,padding .15s ease}
.day-configurable-section>.section-head{position:relative;align-items:center;margin-bottom:.85rem;min-width:0}
.day-configurable-section>.section-head.is-collapse-clickable{cursor:pointer}
.day-configurable-section>.section-head>div:first-child{min-width:0;flex:1}
.day-configurable-section>.section-head h2{margin-bottom:.15rem}
.section-collapse-summary{display:none;color:#68746e;font-size:.84rem;font-weight:600;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(68vw,52rem)}
.collapse-toggle{display:grid!important;place-items:center!important;min-width:42px!important;width:42px!important;height:42px!important;padding:0!important;margin:0 0 0 auto!important;float:none!important;border:1px solid #cbd4cf!important;border-radius:11px!important;background:#f7f9f8!important;color:#315f53!important;font-size:1.15rem!important;flex:0 0 42px!important}
.collapse-toggle::before{content:none!important}
.day-configurable-section.is-collapsed{padding:.62rem .78rem!important;min-height:58px}
.day-configurable-section.is-collapsed>*:not(.section-head){display:none!important}
.day-configurable-section.is-collapsed>.section-head{margin:0!important;min-height:42px}
.day-configurable-section.is-collapsed>.section-head>div:first-child>p:not(.section-collapse-summary),
.day-configurable-section.is-collapsed>.section-head>div:first-child>.eyebrow{display:none!important}
.day-configurable-section.is-collapsed>.section-head>*:not(:first-child):not(.collapse-toggle){display:none!important}
.day-configurable-section.is-collapsed .section-collapse-summary{display:block}
.section-hidden-by-setting{display:none!important}

/* Die eingeklappte Notizkarte bleibt eine gut lesbare, flache Zeile. */
.compact-note-list{gap:.48rem!important}
.compact-note-row{
  position:relative;
  grid-template-columns:auto minmax(0,1fr) auto auto!important;
  grid-template-areas:"status note important expand"!important;
  gap:.45rem!important;
  padding:.46rem .52rem!important;
  min-height:52px;
  border-radius:11px!important;
  align-items:center!important;
}
.note-expand-toggle{grid-area:expand;display:grid!important;place-items:center!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;padding:0!important;margin:0!important;border-radius:10px!important;font-size:1rem!important}
.note-considered{grid-area:status!important;align-self:center!important}
.note-status-control{min-height:38px!important;padding:.28rem .45rem!important;border-radius:9px!important;gap:.32rem!important;font-size:.78rem!important}
.note-status-icon{width:20px!important;height:20px!important;flex-basis:20px!important;border-width:1.5px!important}
.note-important-toggle{grid-area:important!important;align-self:center!important}
.note-important-control{min-height:38px!important;min-width:38px!important;width:38px!important;height:38px!important;padding:0!important;border-radius:10px!important}
.note-important-control small{display:none!important}
.note-important-control>span{font-size:1.14rem!important}
.compact-note-text{grid-area:note!important;min-height:40px!important;height:40px!important;max-height:40px!important;padding:.42rem .58rem!important;line-height:1.35!important;font-size:.94rem!important;resize:none!important;overflow:hidden!important}
.compact-note-row.is-note-collapsed .compact-category,
.compact-note-row.is-note-collapsed .compact-note-actions{display:none!important}
.compact-note-row.is-note-expanded{
  grid-template-columns:minmax(0,1fr) auto auto!important;
  grid-template-areas:
    "status important expand"
    "note note note"
    "category actions actions"!important;
  gap:.55rem!important;
  padding:.65rem!important;
  align-items:center!important;
}
.compact-note-row.is-note-expanded .compact-note-text{min-height:66px!important;height:auto!important;max-height:13rem!important;padding:.62rem .7rem!important;resize:vertical!important;overflow-y:auto!important}
.compact-note-row.is-note-expanded .compact-category{display:block!important;grid-area:category!important;width:min(13rem,100%)!important;height:40px!important;padding:.42rem .55rem!important}
.compact-note-row.is-note-expanded .compact-note-actions{display:flex!important;grid-area:actions!important;justify-self:end!important;gap:.35rem!important}
.compact-note-row.is-note-expanded .compact-split,.compact-note-row.is-note-expanded .compact-delete{height:40px!important;min-height:40px!important}
.compact-note-row.is-note-expanded .compact-delete{width:40px!important;flex-basis:40px!important}

.note-purpose-guide{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem!important;padding:.65rem!important}
.note-purpose-guide>strong{grid-column:1/-1}
.note-purpose-guide span{width:auto!important;min-width:0;padding:.45rem .55rem!important;border-radius:9px!important;font-size:.82rem!important;line-height:1.3}

/* Einstellungen: ohne Drag-and-drop auch auf dem Smartphone gut bedienbar. */
.layout-setting-list{display:grid;gap:.6rem;margin:1rem 0}
.layout-setting-row{display:grid;grid-template-columns:minmax(210px,1fr) 92px minmax(155px,210px) auto;gap:.65rem;align-items:end;padding:.72rem;border:1px solid var(--line);border-radius:12px;background:#fafbf9}
.layout-setting-title{display:grid;gap:.2rem;align-self:center}.layout-setting-title small{color:#68746e;line-height:1.35}
.layout-setting-row label{margin:0;font-size:.8rem}.layout-setting-row select{margin-top:.25rem;min-width:0}
.layout-visible-check{display:flex!important;align-items:center!important;gap:.4rem!important;min-height:44px;padding:.45rem .6rem;border:1px solid var(--line);border-radius:10px;background:#fff}
.layout-visible-check input{width:20px;height:20px;margin:0}
.writing-layout-choice{display:grid;gap:.55rem;margin:1rem 0;padding:0;border:0}.writing-layout-choice legend{font-weight:800;margin-bottom:.4rem}
.layout-reset-form{margin-top:.65rem}

@media(min-width:1100px){
  .writing-studio-auto{grid-template-columns:minmax(360px,.82fr) minmax(480px,1.18fr);align-items:start}
  .writing-studio-auto>.day-configurable-section{max-height:calc(100vh - 155px);overflow:auto;overscroll-behavior:contain}
  .writing-studio-auto>.day-configurable-section>.section-head{position:sticky;top:0;z-index:4;margin:-.1rem -.1rem .8rem;padding:.1rem .1rem .55rem;background:linear-gradient(#fff 82%,rgba(255,255,255,.92))}
  .writing-studio-auto>.day-configurable-section.is-collapsed{max-height:none;overflow:hidden}
  .writing-studio-stacked{grid-template-columns:1fr}
}

@media(max-width:900px){
  .layout-setting-row{grid-template-columns:1fr 90px minmax(150px,1fr)}
  .layout-visible-check{grid-column:1/-1;justify-content:flex-start}
  .day-collapse-actions{width:100%}
}

@media(max-width:620px){
  .day-section-stack{gap:.7rem;margin-top:.75rem}
  .day-configurable-section.is-collapsed{padding:.5rem .6rem!important;min-height:54px}
  .day-configurable-section.is-collapsed>.section-head{min-height:40px}
  .collapse-toggle{width:40px!important;height:40px!important;min-width:40px!important;flex-basis:40px!important}
  .section-collapse-summary{max-width:68vw;font-size:.79rem}
  .day-collapse-actions{display:grid;grid-template-columns:1fr 1fr}
  .day-collapse-actions .button{grid-column:1/-1;text-align:center}
  .compact-note-row{grid-template-columns:auto minmax(0,1fr) auto auto!important;padding:.4rem .45rem!important;gap:.35rem!important;min-height:50px}
  .note-status-control{min-height:36px!important;padding:.25rem .38rem!important;font-size:.75rem!important}
  .note-status-icon{width:18px!important;height:18px!important;flex-basis:18px!important}
  .note-important-control,.note-expand-toggle{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important}
  .compact-note-text{height:38px!important;min-height:38px!important;max-height:38px!important;padding:.38rem .5rem!important;font-size:.9rem!important}
  .compact-note-row.is-note-expanded{padding:.55rem!important}
  .compact-note-row.is-note-expanded .compact-category{width:100%!important}
  .compact-note-row.is-note-expanded .compact-note-actions{justify-self:stretch!important;justify-content:flex-end!important}
  .note-purpose-guide{padding:.55rem!important;gap:.35rem!important}
  .note-purpose-guide span{font-size:.78rem!important;padding:.4rem .45rem!important}
  .layout-setting-row{grid-template-columns:78px minmax(0,1fr);align-items:end;padding:.65rem}
  .layout-setting-title{grid-column:1/-1}
  .layout-setting-row label:nth-of-type(1){grid-column:1}
  .layout-setting-row label:nth-of-type(2){grid-column:2}
  .layout-visible-check{grid-column:1/-1!important}
}

@media(max-width:410px){
  .note-status-label{display:none}
  .note-status-control{width:36px!important;justify-content:center!important;padding:0!important}
  .note-purpose-guide{grid-template-columns:1fr}
  .note-purpose-guide>strong{grid-column:1}
}
@media(min-width:1100px){.writing-studio.is-single>.day-configurable-section:not([hidden]){grid-column:1/-1}}
.is-parent-collapsed{display:none!important}


/* v0.58.7 – breite Desktop-Arbeitsfläche, sichere Umbrüche und klare Plus/Minus-Schalter */

/* Alle flexiblen Inhalte dürfen innerhalb ihrer Spalte wirklich schrumpfen. */
.day-workspace,
.day-workspace .card,
.day-workspace .section-head,
.day-workspace .section-head > div,
.day-workspace .writing-studio,
.day-workspace .writing-studio > section,
.day-workspace .route-list,
.day-workspace .route-row,
.day-workspace .route-row summary,
.day-workspace .route-section-actions,
.day-workspace .compact-note-row,
.day-workspace .compact-note-text,
.day-workspace .manual-text-status,
.day-workspace .facts,
.day-workspace form,
.day-workspace label {min-width:0}

/* Lange Bezeichnungen, Statuswerte und importierte Texte bleiben in ihren Karten. */
.day-workspace :where(p,small,strong,span,h1,h2,h3,h4,label,legend,summary,.hint,.section-collapse-summary,.route-gpx-status,.weather-state){
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}
.day-workspace :where(input,textarea,select){max-width:100%;min-width:0}
.day-workspace textarea{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.day-workspace button,.day-workspace .button{max-width:100%;white-space:normal;line-height:1.25}

/* Das Plus/Minus ist überall sofort verständlich und auch per Touch gut erreichbar. */
.collapse-toggle,
.note-expand-toggle{
  font-family:var(--font-ui)!important;
  font-weight:650!important;
  line-height:1!important;
}
.collapse-toggle [data-collapse-icon]{font-size:1.65rem;line-height:1;transform:translateY(-1px)}
.note-expand-toggle > span[aria-hidden="true"]{font-size:1.4rem;line-height:1;transform:translateY(-1px)}

/* Der Notizkopf verwendet seine Breite für Erklärung und Eingabewahl, ohne Wortspalten. */
#stichpunkte > .section-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(150px,190px);
  align-items:end;
  gap:.75rem 1rem;
}
#stichpunkte > .section-head > div:first-child{min-width:0}
#stichpunkte > .section-head > div:first-child > p:last-child{max-width:62rem}
#stichpunkte .inline-mode-switch{width:100%;min-width:0}
#stichpunkte .inline-mode-switch select{width:100%}

/* Routenübersicht: Status und Bearbeiten erhalten eigene Spalten. */
.route-row summary{
  grid-template-columns:minmax(82px,112px) minmax(240px,1fr) minmax(75px,100px) minmax(72px,98px) minmax(105px,145px) minmax(115px,155px) 34px;
}
.route-row summary > *{min-width:0}
.route-row summary > strong{overflow-wrap:anywhere}
.route-row summary > .route-diary{grid-column:5}
.route-row summary > .route-gpx-status{grid-column:6;justify-self:start;white-space:normal;text-align:center}
.route-row summary > .route-edit{grid-column:7;justify-self:center}
.route-section-actions > *{min-width:0}

/* Der Lese-/Tagebuchmodus bleibt bewusst schmal; nur die Tagesbearbeitung wird breit. */
@media(min-width:1100px){
  main.day-workspace{
    width:calc(100vw - 40px);
    max-width:1760px;
    padding-left:0;
    padding-right:0;
    margin-left:auto;
    margin-right:auto;
  }
}

/* Unterhalb einer wirklich breiten Desktopfläche bleibt der Schreibplatz einspaltig. */
@media(min-width:1100px) and (max-width:1279px){
  .writing-studio-auto{grid-template-columns:1fr!important}
  .writing-studio-auto > .day-configurable-section{
    max-height:none!important;
    overflow:visible!important;
  }
  .writing-studio-auto > .day-configurable-section > .section-head{
    position:relative!important;
    top:auto!important;
    z-index:auto!important;
    margin-bottom:.85rem!important;
    padding:0!important;
    background:transparent!important;
  }
}

/* Ab 1280 px nutzt der Schreibarbeitsplatz die gewonnene Fläche mit ca. 40/60. */
@media(min-width:1280px){
  .writing-studio-auto{
    grid-template-columns:minmax(460px,.8fr) minmax(620px,1.2fr)!important;
    gap:1.15rem!important;
  }
  .writing-studio-auto > .day-configurable-section{
    max-height:calc(100vh - 150px);
    overflow:auto;
    scrollbar-gutter:stable;
  }
  .writing-studio-auto > .day-configurable-section > .section-head{
    position:sticky;
    top:0;
    z-index:4;
    margin:-.1rem -.1rem .8rem;
    padding:.1rem .1rem .55rem;
    background:linear-gradient(#fff 82%,rgba(255,255,255,.92));
  }
  .writing-studio-auto > .day-configurable-section.is-collapsed{max-height:none;overflow:hidden}
}

/* Bei mittleren Breiten werden Aktionsleisten ruhig unter den Titel gesetzt. */
@media(max-width:1050px){
  #strecken > .section-head{align-items:stretch;flex-direction:column}
  #strecken > .section-head .route-section-actions{width:100%;justify-content:flex-start}
  .route-row summary{
    grid-template-columns:minmax(76px,100px) minmax(0,1fr) minmax(70px,92px) 34px;
  }
  .route-row summary > span:nth-of-type(3),
  .route-row summary > .route-diary,
  .route-row summary > .route-gpx-status{display:none!important}
  .route-row summary > .route-edit{grid-column:4}
}

@media(max-width:760px){
  #stichpunkte > .section-head{grid-template-columns:1fr;align-items:stretch}
  #stichpunkte .inline-mode-switch{max-width:none}
  .collapse-toggle{width:42px!important;height:42px!important;min-width:42px!important;flex-basis:42px!important}
}


/* v0.58.8 – kompakter Notizstatus ohne sichtbare Statuswörter */

.compact-note-row{
  grid-template-columns:38px minmax(0,1fr) 32px 38px!important;
  gap:.34rem!important;
  padding:.36rem .42rem!important;
  min-height:48px!important;
}
.note-considered{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  justify-self:start!important;
}
.note-status-control{
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  padding:0!important;
  gap:0!important;
  border-radius:10px!important;
  background:#fff!important;
  border:1px solid #cfd7d2!important;
  color:#65736b!important;
  box-shadow:none!important;
}
.note-status-icon{
  width:22px!important;
  height:22px!important;
  flex:0 0 22px!important;
  border-width:1.7px!important;
}
.note-status-icon::before{content:''!important}
.note-considered input:checked + .note-status-control{
  background:#315f53!important;
  border-color:#315f53!important;
  color:#fff!important;
  box-shadow:none!important;
}
.note-considered input:checked + .note-status-control .note-status-icon{
  background:#fff!important;
  border-color:#fff!important;
}
.note-considered input:checked + .note-status-control .note-status-icon::before{
  content:'✓'!important;
  color:#315f53!important;
  font-size:.92rem!important;
  font-weight:900!important;
  line-height:1!important;
}
.compact-note-row.is-considered{
  background:#eef6f1!important;
  border-color:#b8d2c3!important;
}

.note-important-toggle{
  width:32px!important;
  height:38px!important;
  min-width:32px!important;
  min-height:38px!important;
  justify-self:center!important;
}
.note-important-control{
  display:grid!important;
  place-items:center!important;
  width:32px!important;
  height:38px!important;
  min-width:32px!important;
  min-height:38px!important;
  padding:0!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#a8ada9!important;
  box-shadow:none!important;
}
.note-important-control:hover{background:#f3f5f3!important}
.note-star-icon::before{
  content:'☆';
  font-size:1.2rem;
  line-height:1;
  font-weight:500;
}
.note-important-toggle input:checked + .note-important-control{
  background:transparent!important;
  border:0!important;
  color:#a97908!important;
}
.note-important-toggle input:checked + .note-important-control .note-star-icon::before{content:'★'}
.compact-note-row.is-important{
  border-color:#d8c486!important;
  box-shadow:inset 3px 0 0 #c5a243!important;
}

.compact-note-text{
  min-width:0!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  padding:.38rem .5rem!important;
  line-height:1.34!important;
  font-size:.92rem!important;
}
.note-expand-toggle{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
}

.compact-note-row.is-note-expanded{
  grid-template-columns:38px minmax(0,1fr) 32px 38px!important;
  grid-template-areas:
    "status . important expand"
    "note note note note"
    "category actions actions actions"!important;
  padding:.55rem!important;
  gap:.45rem!important;
}
.compact-note-row.is-note-expanded .compact-note-text{
  min-height:66px!important;
  height:auto!important;
  max-height:13rem!important;
  padding:.62rem .7rem!important;
  font-size:.96rem!important;
}

@media(min-width:900px){
  .compact-note-row{
    grid-template-columns:36px minmax(0,1fr) 30px 36px!important;
    min-height:46px!important;
    padding:.32rem .4rem!important;
  }
  .note-considered,.note-status-control{
    width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important
  }
  .note-important-toggle,.note-important-control{
    width:30px!important;height:36px!important;min-width:30px!important;min-height:36px!important
  }
  .note-expand-toggle{
    width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important
  }
  .compact-note-text{
    height:36px!important;min-height:36px!important;max-height:36px!important;padding:.34rem .48rem!important
  }
}

@media(max-width:410px){
  .compact-note-row{
    grid-template-columns:36px minmax(0,1fr) 30px 36px!important;
    gap:.28rem!important;
    padding:.34rem .36rem!important;
  }
  .note-considered,.note-status-control,.note-expand-toggle{
    width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important
  }
  .note-important-toggle,.note-important-control{
    width:30px!important;height:36px!important;min-width:30px!important;min-height:36px!important
  }
  .compact-note-text{
    height:36px!important;min-height:36px!important;max-height:36px!important;
    font-size:.88rem!important;padding:.34rem .44rem!important
  }
}


/* v0.58.9 – breite Kategorie und reine Symbolaktionen in geöffneten Notizen */

.compact-note-row.is-note-expanded{
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:
    "status top-actions"
    "note note"
    "category actions"!important;
}

/* Die bestehende Status-/Stern-/Minus-Zeile bleibt funktionsgleich.
   Status steht links, Stern und Minus werden rechts gruppiert. */
.compact-note-row.is-note-expanded .note-considered{
  grid-area:status!important;
  justify-self:start!important;
}
.compact-note-row.is-note-expanded .note-important-toggle{
  position:absolute!important;
  top:.55rem!important;
  right:3.25rem!important;
}
.compact-note-row.is-note-expanded .note-expand-toggle{
  position:absolute!important;
  top:.55rem!important;
  right:.55rem!important;
}
.compact-note-row.is-note-expanded .compact-note-text{
  grid-area:note!important;
  width:100%!important;
  min-width:0!important;
}
.compact-note-row.is-note-expanded .compact-category{
  grid-area:category!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:42px!important;
  padding:.48rem .7rem!important;
  font-size:.94rem!important;
  text-overflow:ellipsis;
}
.compact-note-row.is-note-expanded .compact-note-actions{
  grid-area:actions!important;
  display:grid!important;
  grid-template-columns:42px 42px!important;
  gap:.42rem!important;
  justify-self:end!important;
  align-items:center!important;
  width:auto!important;
  min-width:auto!important;
}
.compact-note-row.is-note-expanded .compact-split,
.compact-note-row.is-note-expanded .compact-delete{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  margin:0!important;
  border-radius:11px!important;
  font-size:1.15rem!important;
  line-height:1!important;
}
.compact-note-row.is-note-expanded .compact-split{
  border:1px solid #cdd9d3!important;
  background:#eef4f1!important;
  color:#315f53!important;
}
.compact-note-row.is-note-expanded .compact-split:hover{
  background:#e2eee8!important;
}
.compact-note-row.is-note-expanded .compact-delete{
  border:1px solid #ddb7b0!important;
  background:#fff8f6!important;
  color:#9b342d!important;
}
.note-trash-icon{
  width:20px;
  height:20px;
  fill:currentColor;
  display:block;
}

/* Die sichtbaren Aktionswörter bleiben konsequent verborgen. */
.icon-only-action > span:not(.sr-only){
  display:block;
}
.icon-only-action .sr-only{
  display:block!important;
}

/* Auf sehr schmalen Geräten bleibt die Kategorie flexibel breit.
   Die beiden Symbolaktionen benötigen zusammen nur 88 px. */
@media(max-width:420px){
  .compact-note-row.is-note-expanded{
    padding:.5rem!important;
    gap:.4rem!important;
  }
  .compact-note-row.is-note-expanded .compact-category{
    height:40px!important;
    font-size:.9rem!important;
    padding:.42rem .58rem!important;
  }
  .compact-note-row.is-note-expanded .compact-note-actions{
    grid-template-columns:40px 40px!important;
    gap:.35rem!important;
  }
  .compact-note-row.is-note-expanded .compact-split,
  .compact-note-row.is-note-expanded .compact-delete{
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    min-height:40px!important;
  }
}

/* Desktop: Kategorie nutzt ebenfalls den gesamten verfügbaren Restplatz. */
@media(min-width:900px){
  .compact-note-row.is-note-expanded{
    grid-template-columns:minmax(220px,1fr) auto!important;
    grid-template-areas:
      "status top-actions"
      "note note"
      "category actions"!important;
  }
  .compact-note-row.is-note-expanded .compact-category{
    min-width:220px!important;
  }
}


/* v0.58.10 – stabile Schere und reservierter Aktionsbereich */

/* Die aufgeklappte Notiz erhält unten immer:
   Kategorie | Schere | Papierkorb */
.compact-note-row.is-note-expanded{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 42px 42px!important;
  grid-template-areas:
    "status important expand"
    "note note note"
    "category split delete"!important;
  column-gap:.42rem!important;
  row-gap:.45rem!important;
}

/* Kopfzeile */
.compact-note-row.is-note-expanded .note-considered{
  grid-area:status!important;
  position:static!important;
  justify-self:start!important;
}
.compact-note-row.is-note-expanded .note-important-toggle{
  grid-area:important!important;
  position:static!important;
  justify-self:end!important;
}
.compact-note-row.is-note-expanded .note-expand-toggle{
  grid-area:expand!important;
  position:static!important;
  justify-self:end!important;
}

/* Text und Kategorie */
.compact-note-row.is-note-expanded .compact-note-text{
  grid-area:note!important;
  width:100%!important;
  min-width:0!important;
}
.compact-note-row.is-note-expanded .compact-category{
  grid-area:category!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:42px!important;
}

/* Aktionscontainer wird für die Grid-Platzierung transparent */
.compact-note-row.is-note-expanded .compact-note-actions{
  display:contents!important;
}

/* Schere */
.compact-note-row.is-note-expanded .compact-split{
  grid-area:split!important;
  display:grid!important;
  place-items:center!important;
  visibility:visible!important;
  opacity:1!important;
  position:static!important;
  width:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid #cdd9d3!important;
  border-radius:11px!important;
  background:#eef4f1!important;
  color:#315f53!important;
  overflow:visible!important;
}
.compact-note-row.is-note-expanded .compact-split:hover{
  background:#e2eee8!important;
}

/* Papierkorb */
.compact-note-row.is-note-expanded .compact-delete{
  grid-area:delete!important;
  display:grid!important;
  place-items:center!important;
  visibility:visible!important;
  opacity:1!important;
  position:static!important;
  width:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid #ddb7b0!important;
  border-radius:11px!important;
  background:#fff8f6!important;
  color:#9b342d!important;
  overflow:visible!important;
}

.note-split-icon,
.note-trash-icon{
  width:20px!important;
  height:20px!important;
  display:block!important;
  fill:currentColor!important;
  flex:none!important;
}

/* Alte Symbol-/Textregeln dürfen die Icons nicht verstecken. */
.compact-note-row.is-note-expanded .icon-only-action > svg{
  display:block!important;
}
.compact-note-row.is-note-expanded .icon-only-action > span.sr-only{
  display:block!important;
}
.compact-note-row.is-note-expanded .icon-only-action > span:not(.sr-only){
  display:none!important;
}

/* Sehr schmale Geräte: Kategorie erhält eine volle eigene Zeile,
   Schere und Papierkorb folgen rechts darunter. */
@media(max-width:380px){
  .compact-note-row.is-note-expanded{
    grid-template-columns:minmax(0,1fr) 40px 40px!important;
    grid-template-areas:
      "status important expand"
      "note note note"
      "category category category"
      ". split delete"!important;
  }
  .compact-note-row.is-note-expanded .compact-category{
    height:40px!important;
  }
  .compact-note-row.is-note-expanded .compact-split,
  .compact-note-row.is-note-expanded .compact-delete{
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    min-height:40px!important;
  }
}

/* Desktop: Kategorie bekommt großzügig den Restplatz,
   beide Icons bleiben dauerhaft sichtbar. */
@media(min-width:900px){
  .compact-note-row.is-note-expanded{
    grid-template-columns:minmax(220px,1fr) 42px 42px!important;
  }
}


/* v0.58.11 – klar erkennbares Scheren-Symbol */
.note-split-icon{
  width:21px!important;
  height:21px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2.1!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  overflow:visible!important;
}
.note-split-icon circle,
.note-split-icon path{
  fill:none!important;
  stroke:currentColor!important;
  vector-effect:non-scaling-stroke;
}


/* v0.58.12 – einfache Notizen, optionale Kategorien */

/* Nicht mehr genutzte Wichtigkeitsdarstellung vollständig ausblenden. */
.note-important-toggle,
.note-important-control,
.note-star-icon{
  display:none!important;
}

/* Eingeklappt: Status · Notiztext · Öffnen */
#stichpunkte .compact-note-row{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) 38px!important;
  grid-template-areas:"status note expand"!important;
  gap:.36rem!important;
}
#stichpunkte .compact-note-row .note-considered{
  grid-area:status!important;
  position:static!important;
}
#stichpunkte .compact-note-row .compact-note-text{
  grid-area:note!important;
}
#stichpunkte .compact-note-row .note-expand-toggle{
  grid-area:expand!important;
  position:static!important;
}

/* Geöffnet ohne Kategorien:
   Status · Minus
   Text über volle Breite
   Schere und Papierkorb rechts */
#stichpunkte[data-note-categories="0"] .compact-note-row.is-note-expanded{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 42px 42px!important;
  grid-template-areas:
    "status . expand"
    "note note note"
    ". split delete"!important;
  gap:.45rem!important;
}
#stichpunkte[data-note-categories="0"] .compact-note-row.is-note-expanded .compact-note-actions{
  display:contents!important;
}
#stichpunkte[data-note-categories="0"] .compact-note-row.is-note-expanded .compact-split{
  grid-area:split!important;
}
#stichpunkte[data-note-categories="0"] .compact-note-row.is-note-expanded .compact-delete{
  grid-area:delete!important;
}

/* Geöffnet mit Kategorien:
   Kategorie erhält den Restplatz, danach Schere und Papierkorb. */
#stichpunkte[data-note-categories="1"] .compact-note-row.is-note-expanded{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 42px 42px!important;
  grid-template-areas:
    "status . expand"
    "note note note"
    "category split delete"!important;
  gap:.45rem!important;
}
#stichpunkte[data-note-categories="1"] .compact-note-row.is-note-expanded .compact-category{
  grid-area:category!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}
#stichpunkte[data-note-categories="1"] .compact-note-row.is-note-expanded .compact-note-actions{
  display:contents!important;
}
#stichpunkte[data-note-categories="1"] .compact-note-row.is-note-expanded .compact-split{
  grid-area:split!important;
}
#stichpunkte[data-note-categories="1"] .compact-note-row.is-note-expanded .compact-delete{
  grid-area:delete!important;
}

/* Falls Kategorien aus sind, dürfen alte CSS-Regeln keinen Leerraum reservieren. */
#stichpunkte[data-note-categories="0"] .compact-category{
  display:none!important;
}

/* Einstellungsoption als normale, gut antippbare Zeile. */
.note-category-setting{
  margin-top:.5rem;
}

/* Sehr schmale Telefone: Aktionen in eigener rechter Zeile. */
@media(max-width:380px){
  #stichpunkte[data-note-categories="0"] .compact-note-row.is-note-expanded{
    grid-template-columns:minmax(0,1fr) 40px 40px!important;
    grid-template-areas:
      "status . expand"
      "note note note"
      ". split delete"!important;
  }
  #stichpunkte[data-note-categories="1"] .compact-note-row.is-note-expanded{
    grid-template-columns:minmax(0,1fr) 40px 40px!important;
    grid-template-areas:
      "status . expand"
      "note note note"
      "category category category"
      ". split delete"!important;
  }
}


/* v0.58.13 – direkte, mitwachsende Notizen */

/* Alte Aufklappzustände haben keine Wirkung mehr. */
#stichpunkte .direct-note-row,
#stichpunkte .direct-note-row.is-note-expanded,
#stichpunkte .direct-note-row.is-note-collapsed{
  position:relative!important;
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr) 40px 40px!important;
  grid-template-areas:
    "status note split delete"
    "category category category category"!important;
  align-items:start!important;
  column-gap:.36rem!important;
  row-gap:.38rem!important;
  min-height:48px!important;
  padding:.4rem!important;
}

/* Der sichtbare Status wird kleiner, die Touchfläche bleibt nutzbar. */
#stichpunkte .direct-note-row .note-considered{
  grid-area:status!important;
  position:static!important;
  display:grid!important;
  place-items:center!important;
  width:30px!important;
  min-width:30px!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
}
#stichpunkte .direct-note-row .note-status-control{
  width:28px!important;
  min-width:28px!important;
  height:36px!important;
  min-height:36px!important;
  padding:0!important;
  border-radius:9px!important;
}
#stichpunkte .direct-note-row .note-status-icon{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
}

/* Das Textfeld ist immer direkt sichtbar und wächst über das vorhandene
   Auto-Grow-JavaScript mit dem Inhalt. */
#stichpunkte .direct-note-row .compact-note-text{
  grid-area:note!important;
  width:100%!important;
  min-width:0!important;
  min-height:40px!important;
  height:auto!important;
  max-height:none!important;
  padding:.48rem .62rem!important;
  line-height:1.38!important;
  font-size:.94rem!important;
  resize:none!important;
  box-sizing:border-box!important;
}

/* Actions werden ohne zusätzlichen Klick angezeigt. */
#stichpunkte .direct-note-row .compact-note-actions{
  display:contents!important;
}
#stichpunkte .direct-note-row .compact-split{
  grid-area:split!important;
}
#stichpunkte .direct-note-row .compact-delete{
  grid-area:delete!important;
}
#stichpunkte .direct-note-row .compact-split,
#stichpunkte .direct-note-row .compact-delete{
  position:static!important;
  display:grid!important;
  place-items:center!important;
  visibility:visible!important;
  opacity:1!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  margin:0!important;
  border-radius:10px!important;
}

/* Einzelne Notizen besitzen kein Plus/Minus mehr. */
#stichpunkte .direct-note-row .note-expand-toggle{
  display:none!important;
}

/* Kategorien bleiben optional und beanspruchen nur bei Aktivierung Platz. */
#stichpunkte[data-note-categories="1"] .direct-note-row .compact-category{
  grid-area:category!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:40px!important;
  padding:.42rem .58rem!important;
}
#stichpunkte[data-note-categories="0"] .direct-note-row .compact-category{
  display:none!important;
}

/* Berücksichtigte Notizen bleiben zusätzlich über die Karte erkennbar. */
#stichpunkte .direct-note-row.is-considered{
  background:#eef6f1!important;
  border-color:#b8d2c3!important;
}

/* Smartphone: kompakt, aber Schere und Papierkorb bleiben gut antippbar. */
@media(max-width:600px){
  #stichpunkte .direct-note-row,
  #stichpunkte .direct-note-row.is-note-expanded,
  #stichpunkte .direct-note-row.is-note-collapsed{
    grid-template-columns:28px minmax(0,1fr) 38px 38px!important;
    column-gap:.3rem!important;
    row-gap:.34rem!important;
    padding:.36rem!important;
  }
  #stichpunkte .direct-note-row .note-considered{
    width:28px!important;
    min-width:28px!important;
    height:38px!important;
    min-height:38px!important;
  }
  #stichpunkte .direct-note-row .note-status-control{
    width:26px!important;
    min-width:26px!important;
    height:34px!important;
    min-height:34px!important;
  }
  #stichpunkte .direct-note-row .note-status-icon{
    width:17px!important;
    height:17px!important;
    flex-basis:17px!important;
  }
  #stichpunkte .direct-note-row .compact-note-text{
    min-height:38px!important;
    padding:.44rem .54rem!important;
    font-size:.92rem!important;
  }
  #stichpunkte .direct-note-row .compact-split,
  #stichpunkte .direct-note-row .compact-delete{
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:38px!important;
    min-height:38px!important;
  }
}

/* Sehr schmale Geräte behalten die vier direkten Funktionen in einer Zeile. */
@media(max-width:360px){
  #stichpunkte .direct-note-row,
  #stichpunkte .direct-note-row.is-note-expanded,
  #stichpunkte .direct-note-row.is-note-collapsed{
    grid-template-columns:26px minmax(0,1fr) 36px 36px!important;
    column-gap:.24rem!important;
    padding:.32rem!important;
  }
  #stichpunkte .direct-note-row .note-considered{
    width:26px!important;
    min-width:26px!important;
  }
  #stichpunkte .direct-note-row .compact-split,
  #stichpunkte .direct-note-row .compact-delete{
    width:36px!important;
    min-width:36px!important;
    max-width:36px!important;
    height:36px!important;
    min-height:36px!important;
  }
}


/* v0.58.14 – exakt zentrierter, reduzierter Notizstatus */

/* Die große Touchfläche bleibt bestehen, ist aber vollständig unsichtbar. */
#stichpunkte .direct-note-row .note-considered{
  display:grid!important;
  place-items:center!important;
  width:30px!important;
  min-width:30px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}

/* Keine sichtbare äußere Box mehr. */
#stichpunkte .direct-note-row .note-status-control{
  display:grid!important;
  place-items:center!important;
  width:30px!important;
  min-width:30px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  margin:0!important;
  gap:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  color:#315f53!important;
  box-shadow:none!important;
  line-height:1!important;
}

/* Offen: nur ein sauberer leerer Kreis. */
#stichpunkte .direct-note-row .note-status-icon{
  display:grid!important;
  place-items:center!important;
  box-sizing:border-box!important;
  width:21px!important;
  min-width:21px!important;
  height:21px!important;
  min-height:21px!important;
  flex:0 0 21px!important;
  padding:0!important;
  margin:0!important;
  border:1.8px solid #93a39a!important;
  border-radius:50%!important;
  background:#fff!important;
  color:transparent!important;
  transform:none!important;
}
#stichpunkte .direct-note-row .note-status-icon::before{
  content:''!important;
  display:block!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
}

/* Berücksichtigt: grüner Kreis mit mittigem weißem Häkchen. */
#stichpunkte .direct-note-row .note-considered input:checked + .note-status-control{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
#stichpunkte .direct-note-row .note-considered input:checked + .note-status-control .note-status-icon{
  border-color:#315f53!important;
  background:#315f53!important;
  color:#fff!important;
}
#stichpunkte .direct-note-row .note-considered input:checked + .note-status-control .note-status-icon::before{
  content:'✓'!important;
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  color:#fff!important;
  font-size:.82rem!important;
  font-weight:900!important;
  line-height:1!important;
  transform:translateY(-.3px)!important;
}

/* Tastaturfokus bleibt sichtbar, ohne die Geometrie zu verschieben. */
#stichpunkte .direct-note-row .note-considered input:focus-visible + .note-status-control .note-status-icon{
  outline:3px solid rgba(49,95,83,.25)!important;
  outline-offset:3px!important;
}

/* Smartphone: gleiche Geometrie, nur etwas schmalere unsichtbare Touchspalte. */
@media(max-width:600px){
  #stichpunkte .direct-note-row .note-considered{
    width:28px!important;
    min-width:28px!important;
    height:38px!important;
    min-height:38px!important;
  }
  #stichpunkte .direct-note-row .note-status-control{
    width:28px!important;
    min-width:28px!important;
    height:38px!important;
    min-height:38px!important;
  }
  #stichpunkte .direct-note-row .note-status-icon{
    width:20px!important;
    min-width:20px!important;
    height:20px!important;
    min-height:20px!important;
    flex-basis:20px!important;
  }
}


/* v0.58.15 – dynamische Notizzähler */
.note-filter-bar [data-note-count]{
  display:inline-block;
  min-width:1.35em;
  text-align:center;
  font-variant-numeric:tabular-nums;
}


/* v0.58.16 – Tagesabschluss statt Textabschluss */

.day-completion-banner{
  width:min(1760px,calc(100% - 2rem));
  margin:.75rem auto 1rem;
  padding:.9rem 1rem;
  border:1px solid #d3d9d4;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  background:#f8faf8;
}
.day-completion-copy{
  min-width:0;
  display:grid;
  gap:.15rem;
}
.day-completion-copy .eyebrow{
  margin:0;
}
.day-completion-copy strong{
  font-size:1.05rem;
}
.day-completion-copy span{
  color:#5b665f;
  overflow-wrap:anywhere;
}
.day-completion-actions{
  display:flex;
  align-items:center;
  gap:.55rem;
  flex:0 0 auto;
}
.day-completion-banner.is-finished{
  background:#edf6f1;
  border-color:#a9c9b7;
}
.day-completion-banner.is-finished .day-completion-copy strong{
  color:#245f4f;
}
.day-completion-banner.is-changed{
  background:#fff7e8;
  border-color:#d9bd7d;
}
.day-completion-banner.is-changed .day-completion-copy strong{
  color:#785414;
}
.day-completion-banner.is-open{
  background:#f7f8f7;
}

.day-finish-dialog{
  border:0;
  padding:0;
  width:min(560px,calc(100% - 1.5rem));
  max-height:calc(100vh - 2rem);
  border-radius:18px;
  box-shadow:0 24px 70px rgba(20,35,29,.25);
}
.day-finish-dialog::backdrop{
  background:rgba(18,31,26,.5);
}
.day-finish-shell{
  padding:1.1rem;
  display:grid;
  gap:1rem;
}
.day-finish-warnings,
.day-finish-ready{
  border-radius:14px;
  padding:.9rem 1rem;
}
.day-finish-warnings{
  background:#fff7e8;
  border:1px solid #dfc58b;
}
.day-finish-warnings ul{
  margin:.55rem 0;
  padding-left:1.25rem;
}
.day-finish-ready{
  background:#edf6f1;
  border:1px solid #b5d0c0;
}
.day-finish-dialog .dialog-close{
  width:40px;
  height:40px;
  padding:0;
}

/* Der Schreibbereich zeigt nur noch den Zustand des Textes. */
.manual-text-status .manual-status-actions{
  display:none!important;
}

@media(max-width:700px){
  .day-completion-banner{
    width:calc(100% - 1rem);
    margin:.55rem auto .75rem;
    align-items:stretch;
    flex-direction:column;
    padding:.8rem;
  }
  .day-completion-actions,
  .day-completion-actions form,
  .day-completion-actions button{
    width:100%;
  }
}


/* v0.58.17 – Spracheingabe im Mehrzeilenfeld */

.bulk-note-title-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  margin-bottom:.45rem;
}
.bulk-note-title-row > label{
  font-weight:700;
  margin:0;
}
.bulk-speech-actions{
  display:flex;
  align-items:center;
  gap:.45rem;
  flex:0 0 auto;
}
.bulk-speech-button,
.bulk-speech-cancel{
  min-height:40px;
}
.bulk-speech-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.42rem;
}
.bulk-speech-button svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.bulk-speech-button.is-listening{
  background:#8a2e2e;
  border-color:#8a2e2e;
  color:#fff;
}
.bulk-speech-button.is-listening svg{
  animation:bulk-speech-pulse 1.15s ease-in-out infinite;
}
.bulk-line-instruction{
  margin:.45rem 0 0;
  color:#315f53;
  font-size:.88rem;
}
.bulk-speech-status{
  min-height:1.35em;
  margin:.3rem 0 .55rem;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.4;
}
.bulk-note-add textarea[name="bulk_notes"]{
  width:100%;
  min-height:190px;
}
@keyframes bulk-speech-pulse{
  0%,100%{transform:scale(1);opacity:1}
  50%{transform:scale(1.12);opacity:.72}
}

@media(max-width:600px){
  .bulk-note-title-row{
    align-items:stretch;
    flex-direction:column;
    gap:.5rem;
  }
  .bulk-speech-actions{
    width:100%;
  }
  .bulk-speech-button{
    flex:1 1 auto;
  }
  .bulk-speech-cancel{
    flex:0 0 auto;
  }
  .bulk-note-add textarea[name="bulk_notes"]{
    min-height:220px;
    font-size:16px;
  }
}

@media(prefers-reduced-motion:reduce){
  .bulk-speech-button.is-listening svg{
    animation:none;
  }
}


/* v0.58.18 – sichtbarer Start- und Berechtigungszustand */
.bulk-speech-button.is-starting{
  background:#f3ead4;
  border-color:#c7a65c;
  color:#654c16;
}
.bulk-speech-button.is-starting svg{
  animation:bulk-speech-starting 1s linear infinite;
}
@keyframes bulk-speech-starting{
  to{transform:rotate(360deg)}
}
@media(prefers-reduced-motion:reduce){
  .bulk-speech-button.is-starting svg{
    animation:none;
  }
}


/* v0.58.19 – sichtbare Sprachdiagnose und lokale Installation */
.bulk-speech-diagnostic{
  margin:.45rem 0 .65rem;
  border:1px solid #d6ddd8;
  border-radius:12px;
  background:#f8faf8;
}
.bulk-speech-diagnostic > summary{
  padding:.7rem .8rem;
  cursor:pointer;
  font-weight:700;
  color:#315f53;
}
.bulk-speech-diagnostic-body{
  padding:0 .8rem .8rem;
}
.bulk-speech-diagnostic-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin-bottom:.7rem;
}
.bulk-speech-diagnostic dl{
  display:grid;
  gap:.42rem;
  margin:0;
}
.bulk-speech-diagnostic dl > div{
  display:grid;
  grid-template-columns:minmax(130px,.7fr) minmax(0,1.3fr);
  gap:.6rem;
  align-items:start;
  padding:.4rem .5rem;
  border-radius:8px;
  background:#fff;
}
.bulk-speech-diagnostic dt{
  font-weight:700;
  color:#4b5750;
}
.bulk-speech-diagnostic dd{
  margin:0;
  overflow-wrap:anywhere;
}
.bulk-speech-diagnostic dd.is-ok{
  color:#28624f;
}
.bulk-speech-diagnostic dd.is-warning{
  color:#80601c;
}
.bulk-speech-diagnostic dd.is-error{
  color:#8b2d2d;
}
.bulk-speech-diagnostic [data-bulk-speech-install]{
  background:#315f53;
  border-color:#315f53;
  color:#fff;
}

@media(max-width:600px){
  .bulk-speech-diagnostic dl > div{
    grid-template-columns:1fr;
    gap:.15rem;
  }
  .bulk-speech-diagnostic-actions,
  .bulk-speech-diagnostic-actions button{
    width:100%;
  }
}


/* v0.58.20 – Hinweis zu gesprochenen Zeilenumbrüchen */
.bulk-line-instruction{display:grid;gap:.12rem}
.bulk-line-instruction span{color:var(--muted);font-size:.8rem;font-weight:400}


/* v0.58.21 – Layoutkorrekturen für Notizkopf und Autorentext */

/*
 * Der Notizkopf besitzt drei eigenständige Elemente:
 * Titel/Erklärung, Eingabeauswahl und Bereichsschalter.
 * Zuvor waren nur zwei Gridspalten definiert; dadurch wanderte der
 * Plus-/Minus-Schalter in eine automatisch erzeugte zweite Zeile.
 */
#stichpunkte > .section-head{
  grid-template-columns:minmax(0,1fr) minmax(150px,190px) 42px!important;
  grid-template-rows:auto!important;
  align-items:end!important;
}
#stichpunkte > .section-head > div:first-child{
  grid-column:1!important;
  grid-row:1!important;
}
#stichpunkte > .section-head > .inline-mode-switch{
  grid-column:2!important;
  grid-row:1!important;
  align-self:end!important;
}
#stichpunkte > .section-head > .collapse-toggle{
  grid-column:3!important;
  grid-row:1!important;
  align-self:end!important;
  justify-self:end!important;
  margin:0!important;
}

/*
 * Im zweispaltigen Desktopmodus scrollt die Schreibkarte unabhängig.
 * Der bisher halbtransparente Sticky-Kopf ließ den Autorentext darunter
 * sichtbar werden. Der Kopf deckt nun die gesamte obere Kartenpolsterung
 * vollständig und undurchsichtig ab.
 */
@media(min-width:1280px){
  .writing-studio-auto > #schreibbereich > .section-head{
    position:sticky!important;
    top:0!important;
    z-index:12!important;
    isolation:isolate!important;
    margin:-22px -22px .9rem!important;
    padding:22px 22px .75rem!important;
    background:var(--card,#fff)!important;
    border-bottom:1px solid var(--line)!important;
    box-shadow:0 9px 14px -14px rgba(31,50,42,.55)!important;
  }

  .writing-studio-auto > #schreibbereich.is-collapsed > .section-head{
    margin:0!important;
    padding:0!important;
    border-bottom:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }
}

/* Bei schmaleren Ansichten stehen Titel und Schalter oben,
   die Eingabeauswahl erhält darunter die volle Breite. */
@media(max-width:760px){
  #stichpunkte > .section-head{
    grid-template-columns:minmax(0,1fr) 42px!important;
    grid-template-areas:
      "note-title note-toggle"
      "note-mode note-mode"!important;
    gap:.65rem!important;
    align-items:start!important;
  }
  #stichpunkte > .section-head > div:first-child{
    grid-area:note-title!important;
  }
  #stichpunkte > .section-head > .inline-mode-switch{
    grid-area:note-mode!important;
    width:100%!important;
  }
  #stichpunkte > .section-head > .collapse-toggle{
    grid-area:note-toggle!important;
    align-self:start!important;
    justify-self:end!important;
  }
}


/* v0.58.22 – Autorentextkopf beginnt direkt am oberen Kartenrand */

/*
 * Die Scrollkarte hatte weiterhin ihre ursprüngliche obere Innenpolsterung.
 * Sticky-Elemente orientieren sich am inneren Scrollbereich, weshalb oberhalb
 * des deckenden Kopfes ein etwa 22 px hoher transparenter Streifen blieb.
 *
 * Im zweispaltigen Desktopmodus wird nur die obere Kartenpolsterung entfernt.
 * Der Kopf übernimmt diese Polsterung vollständig selbst.
 */
@media(min-width:1280px){
  .writing-studio-auto > #schreibbereich{
    padding-top:0!important;
  }

  .writing-studio-auto > #schreibbereich > .section-head{
    top:0!important;
    margin:0 -22px .9rem!important;
    padding:22px 22px .75rem!important;
    background:#fff!important;
    background-image:none!important;
    border-radius:17px 17px 0 0!important;
    clip-path:inset(0 round 17px 17px 0 0)!important;
  }

  .writing-studio-auto > #schreibbereich.is-collapsed{
    padding-top:22px!important;
  }

  .writing-studio-auto > #schreibbereich.is-collapsed > .section-head{
    margin:0!important;
    padding:0!important;
    border-radius:0!important;
    clip-path:none!important;
  }
}


/* v0.58.23 – Gedankenstützenkopf beginnt direkt am oberen Kartenrand */

/*
 * Die linke, separat scrollende Gedankenstützen-Karte hatte denselben Aufbau
 * wie der Autorentext: obere Kartenpolsterung vor dem Sticky-Kopf.
 * Dadurch blieb beim Scrollen ein schmaler transparenter Streifen sichtbar.
 */
@media(min-width:1280px){
  .writing-studio-auto > #stichpunkte{
    padding-top:0!important;
  }

  .writing-studio-auto > #stichpunkte > .section-head{
    position:sticky!important;
    top:0!important;
    z-index:12!important;
    isolation:isolate!important;
    margin:0 -22px .9rem!important;
    padding:22px 22px .75rem!important;
    background:#fff!important;
    background-image:none!important;
    border-bottom:1px solid var(--line)!important;
    border-radius:17px 17px 0 0!important;
    box-shadow:0 9px 14px -14px rgba(31,50,42,.55)!important;
    clip-path:inset(0 round 17px 17px 0 0)!important;
  }

  .writing-studio-auto > #stichpunkte.is-collapsed{
    padding-top:22px!important;
  }

  .writing-studio-auto > #stichpunkte.is-collapsed > .section-head{
    margin:0!important;
    padding:0!important;
    border-bottom:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    clip-path:none!important;
    background:transparent!important;
  }
}
