/* Mañana – Grundstile (ersetzen Obsidians App-CSS) + Oberfläche */
body.theme-dark, body.ep-retro {
  --background-primary: #1e1e1e; --background-primary-alt: #242424; --background-secondary: #262626; --background-secondary-alt: #2c2c2c;
  --background-modifier-border: #363636; --background-modifier-border-hover: #4a4a4a; --background-modifier-border-focus: #6fb3a8;
  --background-modifier-hover: rgba(255,255,255,.06); --background-modifier-active-hover: rgba(111,179,168,.18); --background-modifier-form-field: #262626;
  --background-modifier-error: #b94a4a; --background-modifier-success: #4c8a57;
  --text-normal: #dcddde; --text-muted: #a3a3a3; --text-faint: #6e6e6e; --text-accent: #8fd3c7; --text-on-accent: #10302b; --text-error: #e07070;
  --interactive-accent: #6fb3a8; --interactive-accent-hover: #82c4b9; --interactive-normal: #2d2d2d; --interactive-hover: #363636;
  --font-interface: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif; --font-text: var(--font-interface);
  --radius-s: 4px; --radius-m: 7px; --radius-l: 10px; --font-ui-small: 12px; --font-ui-medium: 13px;
}
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body { background: var(--background-primary); color: var(--text-normal); font-family: var(--font-interface); font-size: 14px; line-height: 1.45; -webkit-font-smoothing: antialiased; }
a { color: var(--text-accent); }
button { font: inherit; font-size: 12.5px; color: var(--text-normal); background: var(--interactive-normal); border: 1px solid var(--background-modifier-border); border-radius: var(--radius-m); padding: 3px 10px; min-height: 28px; cursor: pointer; display: inline-flex; align-items: center; gap: 5px; }
button:hover { background: var(--interactive-hover); }
button.mod-cta { background: var(--interactive-accent); color: var(--text-on-accent); border-color: transparent; font-weight: 600; }
button.mod-cta:hover { background: var(--interactive-accent-hover); }
button.mod-warning { background: var(--background-modifier-error); color: #fff; border-color: transparent; }
button:disabled { opacity: .5; cursor: default; }
input[type=text], input[type=email], input[type=password], input[type=search], input[type=number], input[type=date], input[type=time], textarea, select {
  font: inherit; font-size: 13px; color: var(--text-normal); background: var(--background-modifier-form-field); border: 1px solid var(--background-modifier-border); border-radius: var(--radius-m); padding: 4px 8px; }
input:focus, textarea:focus, select:focus { outline: none; border-color: var(--background-modifier-border-focus); box-shadow: 0 0 0 2px rgba(111,179,168,.2); }
select.dropdown, select { appearance: none; -webkit-appearance: none; padding-right: 24px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23a3a3a3' fill='none' stroke-width='1.5'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 8px center; }
input[type=checkbox] { accent-color: var(--interactive-accent); width: 15px; height: 15px; margin: 0; }
.svg-icon { width: 15px; height: 15px; stroke-width: 2; flex: none; }
.mk-muted, .ep-muted { color: var(--text-muted); }
h1, h2, h3 { font-weight: 650; letter-spacing: -0.01em; }

/* Modals, Menüs, Hinweise (wie in Obsidian) */
.modal-container { position: fixed; inset: 0; z-index: 100; display: flex; align-items: center; justify-content: center; padding: 16px; }
.modal-bg { position: absolute; inset: 0; background: rgba(0,0,0,.55); }
.modal { position: relative; background: var(--background-primary); border: 1px solid var(--background-modifier-border); border-radius: 12px; padding: 20px 22px; width: min(760px, 100%); max-height: calc(100vh - 32px); overflow: auto; box-shadow: 0 20px 60px rgba(0,0,0,.5); }
.modal-title { font-size: 17px; font-weight: 700; margin: 0 28px 12px 0; }
.modal-close-button { position: absolute; top: 12px; right: 14px; font-size: 22px; line-height: 1; color: var(--text-muted); cursor: pointer; padding: 2px 6px; border-radius: 5px; }
.modal-close-button:hover { background: var(--background-modifier-hover); color: var(--text-normal); }
.modal-content label { display: block; font-size: 12px; color: var(--text-muted); margin: 10px 0 3px; }
.modal-content > input, .modal-content > select, .modal-content > textarea { width: 100%; }
.mk-foot, .ep-foot { display: flex; justify-content: flex-end; gap: 8px; margin-top: 18px; padding-top: 12px; border-top: 1px solid var(--background-modifier-border); }
.menu.ep-menu { position: fixed; z-index: 200; min-width: 200px; max-width: 360px; background: var(--background-secondary); border: 1px solid var(--background-modifier-border-hover); border-radius: 9px; padding: 4px; box-shadow: 0 10px 30px rgba(0,0,0,.45); }
.menu-item { display: flex; align-items: center; gap: 8px; padding: 6px 10px; border-radius: 6px; font-size: 13px; cursor: pointer; }
.menu-item:hover { background: var(--background-modifier-hover); } .menu-item.is-disabled { opacity: .55; cursor: default; font-size: 12px; } .menu-item.is-disabled:hover { background: none; }
.menu-item-icon { width: 16px; display: inline-flex; color: var(--text-muted); } .menu-separator { height: 1px; background: var(--background-modifier-border); margin: 4px 2px; }
.ep-notices { position: fixed; z-index: 300; right: 16px; bottom: 16px; display: flex; flex-direction: column; gap: 8px; max-width: 360px; }
.ep-notice { background: var(--background-secondary-alt); border: 1px solid var(--background-modifier-border-hover); border-radius: 9px; padding: 9px 14px; font-size: 13px; box-shadow: 0 8px 24px rgba(0,0,0,.4); transition: opacity .3s, transform .3s; }
.ep-notice.is-out { opacity: 0; transform: translateY(8px); }
.markdown-preview-view p { margin: 0 0 6px; } .markdown-preview-view ul { margin: 0 0 6px; padding-left: 18px; }

/* Rahmen */
.ep-top { position: sticky; top: 0; z-index: 50; display: flex; align-items: center; gap: 18px; padding: 8px 20px; background: rgba(30,30,30,.92); backdrop-filter: blur(8px); border-bottom: 1px solid var(--background-modifier-border); }
.ep-brand { display: flex; align-items: center; gap: 9px; font-weight: 700; font-size: 14.5px; cursor: pointer; white-space: nowrap; }
.ep-logo { width: 22px; height: 22px; border-radius: 6px; background: linear-gradient(90deg, #F6C1C1 0 20%, #F8D5AE 20% 40%, #F8EBA6 40% 60%, #C9E6B8 60% 80%, #BCD6F0 80%); }
.ep-nav { display: flex; gap: 2px; flex: 1; }
.ep-navlink { display: inline-flex; align-items: center; gap: 6px; padding: 5px 11px; border-radius: 7px; color: var(--text-muted); text-decoration: none; font-size: 13px; }
.ep-navlink:hover { background: var(--background-modifier-hover); color: var(--text-normal); } .ep-navlink.is-active { background: var(--background-modifier-active-hover); color: var(--text-normal); font-weight: 600; }
.ep-ic { display: inline-flex; } .ep-btn.ep-ghost { background: transparent; border-color: transparent; color: var(--text-muted); } .ep-btn.ep-ghost:hover { background: var(--background-modifier-hover); color: var(--text-normal); }
.ep-main { padding: 22px 28px 60px; max-width: 1800px; margin: 0 auto; }
.ep-pagehead { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 18px; } .ep-pagehead h1 { margin: 0; font-size: 24px; flex: 1; }
.ep-tools { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.ep-search { width: 260px; }
.ep-err { background: #4a2323; border: 1px solid #8a3d3d; color: #f1c4c4; padding: 9px 12px; border-radius: 8px; font-size: 13px; margin: 8px 0; }
.ep-empty { padding: 40px; text-align: center; color: var(--text-muted); border: 1px dashed var(--background-modifier-border-hover); border-radius: 12px; display: flex; flex-direction: column; gap: 12px; align-items: center; grid-column: 1 / -1; }
.ep-hint { font-size: 12.5px; margin: -6px 0 14px; max-width: 900px; }

/* Anmeldung */
.ep-login { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 16px; }
.ep-loginbox { width: min(400px, 100%); background: var(--background-secondary); border: 1px solid var(--background-modifier-border); border-radius: 14px; padding: 30px; overflow: hidden; }
.ep-loginbox h1 { margin: 0 0 2px; font-size: 22px; } .ep-loginbox form { margin-top: 18px; } .ep-loginbox label { display: block; font-size: 12px; color: var(--text-muted); margin: 12px 0 4px; } .ep-loginbox input { width: 100%; padding: 9px 10px; font-size: 14px; }
.ep-wide { width: 100%; justify-content: center; margin-top: 20px; min-height: 38px; font-size: 14px; }
.ep-stripes { display: flex; height: 4px; margin: -30px -30px 24px; } .ep-stripes i { flex: 1; } .ep-stripes i:nth-child(1) { background: #F6C1C1; } .ep-stripes i:nth-child(2) { background: #F8D5AE; } .ep-stripes i:nth-child(3) { background: #F8EBA6; } .ep-stripes i:nth-child(4) { background: #C9E6B8; } .ep-stripes i:nth-child(5) { background: #BCD6F0; }
.ep-loading { padding: 40px; color: var(--text-muted); }

/* Übersicht */
.ep-cards, .ep-mgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 14px; }
.ep-card, .ep-mcard { position: relative; background: var(--background-secondary); border: 1px solid var(--background-modifier-border); border-radius: 12px; padding: 14px 16px; cursor: pointer; transition: border-color .12s, transform .12s; display: flex; flex-direction: column; gap: 6px; }
.ep-card:hover, .ep-mcard:hover { border-color: var(--background-modifier-border-focus); transform: translateY(-1px); }
.ep-card.is-archived { opacity: .55; }
.ep-cardart { font-size: 10.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--text-accent); }
.ep-cardtitle { font-size: 16px; font-weight: 650; line-height: 1.3; padding-right: 28px; }
.ep-cardmeta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; font-size: 12.5px; color: var(--text-muted); } .ep-cardmeta .ep-ic { margin-left: 4px; } .ep-cardmeta .ep-ic:first-child { margin-left: 0; }
.ep-cardfoot { font-size: 11px; color: var(--text-faint); margin-top: auto; padding-top: 6px; }
.ep-cardmenu { position: absolute; top: 8px; right: 8px; }
.ep-mdesc { font-size: 12.5px; color: var(--text-muted); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

/* Veranstaltung */
.ep-evbar { position: sticky; top: 45px; z-index: 40; display: flex; align-items: center; gap: 10px; padding: 6px 0 8px; background: var(--background-primary); }
.ep-savestate { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; color: var(--text-muted); }
.ep-savestate.is-saved { color: #8fd3a0; } .ep-savestate.is-saving { color: var(--text-muted); } .ep-savestate.is-error, .ep-savestate.is-conflict { color: #e07070; }
.ep-savestate .ep-muted { color: var(--text-faint); }
.ep-evtools { margin-left: auto; display: flex; gap: 4px; }
.ep-host { padding: 0; }
.ep-host.is-readonly input, .ep-host.is-readonly textarea, .ep-host.is-readonly select { pointer-events: none; }
.ep-host.is-readonly .mk-ag-addrow, .ep-host.is-readonly .mk-ag-actions, .ep-host.is-readonly .mk-ag-addday, .ep-host.is-readonly .mk-ag-grip { display: none !important; }
.ep-histlist { margin-top: 12px; display: flex; flex-direction: column; } .ep-histrow { display: flex; align-items: center; gap: 12px; padding: 7px 4px; border-bottom: 1px solid var(--background-modifier-border); font-size: 13px; } .ep-histrow button { margin-left: auto; }

/* Nutzer */
.ep-table { display: grid; grid-template-columns: 1.2fr 1.5fr 140px 160px 90px; background: var(--background-secondary); border: 1px solid var(--background-modifier-border); border-radius: 12px; overflow: hidden; }
.ep-table > div { padding: 9px 12px; border-bottom: 1px solid var(--background-modifier-border); font-size: 13px; display: flex; align-items: center; min-width: 0; }
.ep-th { font-size: 11px !important; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--text-muted); background: var(--background-secondary-alt); }
.ep-role { padding: 2px 9px; border-radius: 10px; font-size: 11.5px; font-weight: 600; background: #3a3a3a; } .ep-role.is-admin { background: #9DB8E8; color: #12223f; } .ep-role.is-editor { background: #C9E6B8; color: #1d3a12; } .ep-role.is-viewer { background: #E6E8EB; color: #333; }
.ep-rowtools { justify-content: flex-end; gap: 2px; }
.ep-prow { display: flex; gap: 6px; } .ep-prow input { flex: 1; }
.ep-modal { width: min(520px, 100%); }

@media (max-width: 760px) {
  .ep-top { padding: 8px 12px; gap: 8px; } .ep-brand span { display: none; } .ep-navlink span:not(.ep-ic) { display: none; } .ep-navlink { padding: 6px 8px; }
  .ep-main { padding: 14px 12px 50px; } .ep-table { grid-template-columns: 1fr 1fr 90px; } .ep-table > div:nth-child(5n+4), .ep-table > div:nth-child(5n+5) { display: none; }
  .ep-evbar { top: 41px; } .ep-evtools .ep-btn span:not(.ep-ic) { display: none; }
}
.ep-host .mk-preview-postit, .modal .mk-preview-postit { display: none !important; }
.ep-panel { background: var(--background-secondary); border: 1px solid var(--background-modifier-border); border-radius: 12px; padding: 16px 18px; margin-bottom: 22px; }
.ep-panelhead { display: flex; align-items: center; gap: 8px; } .ep-panelhead h2 { margin: 0; font-size: 16px; }
.ep-panel > .ep-muted { font-size: 12.5px; margin: 6px 0 12px; max-width: 900px; }
.ep-tokrow { display: flex; gap: 8px; flex-wrap: wrap; } .ep-tokrow input { flex: 1; min-width: 220px; }
.ep-toktable { margin-top: 14px; grid-template-columns: 1.5fr 140px 140px 140px 110px; }
.ep-tokurl { width: 100%; font-family: ui-monospace, Menlo, monospace; font-size: 12px; resize: none; }
.ep-h2 { font-size: 16px; margin: 0 0 10px; }
/* Methodenkoffer wie in Obsidian */
.ep-mbar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 8px; }
.ep-seg { display: inline-flex; border: 1px solid var(--background-modifier-border); border-radius: 8px; overflow: hidden; }
.ep-seg .ep-segbtn { border: 0; border-radius: 0; background: transparent; min-height: 28px; color: var(--text-muted); } .ep-seg .ep-segbtn.is-active { background: var(--interactive-accent); color: var(--text-on-accent); }
.ep-katchips { display: flex; flex-wrap: wrap; gap: 5px; }
.ep-kchip { min-height: 24px; padding: 1px 10px; border-radius: 12px; font-size: 12px; background: transparent; }
.ep-kchip.mk-choice-label { background: color-mix(in srgb, var(--mk-choice-color) 18%, transparent); border: 1px solid color-mix(in srgb, var(--mk-choice-color) 45%, transparent); }
.ep-kchip.is-on { background: var(--interactive-accent) !important; color: var(--text-on-accent) !important; border-color: transparent !important; }
.ep-mcount { font-size: 12px; margin: 4px 0 8px; }
.ep-mtable { display: grid; grid-template-columns: minmax(150px,1.2fr) minmax(130px,1fr) minmax(220px,2.2fr) minmax(180px,1.6fr) 80px minmax(120px,1fr) 70px 70px minmax(140px,1.1fr) minmax(140px,1.1fr); background: var(--background-secondary); border: 1px solid var(--background-modifier-border); border-radius: 10px; overflow: auto; margin-bottom: 18px; font-size: 13px; }
.ep-mth { position: sticky; top: 0; padding: 8px 10px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--text-muted); background: var(--background-secondary-alt); border-bottom: 1px solid var(--background-modifier-border); cursor: pointer; white-space: nowrap; user-select: none; }
.ep-mth:hover, .ep-mth.is-sorted { color: var(--text-normal); }
.ep-mtd { padding: 8px 10px; border-bottom: 1px solid var(--background-modifier-border); cursor: pointer; min-width: 0; align-content: flex-start; }
.ep-mtd.is-hover { background: var(--background-modifier-hover); }
.ep-mname { font-weight: 650; } .ep-mlong { color: var(--text-muted); font-size: 12.5px; line-height: 1.4; } .ep-mnum { white-space: nowrap; font-variant-numeric: tabular-nums; }
.ep-mtd.mk-grow-pills { display: flex; flex-wrap: wrap; gap: 3px; }
.mk-sb-skala { letter-spacing: 1px; color: var(--text-accent); font-size: 12px; } .mk-fav { color: #E4B33C; }
.ep-mgroup { display: flex; align-items: center; gap: 6px; margin: 14px 0 6px; font-weight: 700; }
.ep-mpostit { aspect-ratio: 1 / 1; max-height: 150px; border-radius: 4px; background: color-mix(in srgb, var(--mk-choice-color) 70%, #fff8d0); color: #2a2a2a; display: flex; align-items: center; justify-content: center; text-align: center; padding: 14px; font-family: "Marker Felt", "Comic Sans MS", cursive; font-size: 17px; font-weight: 600; box-shadow: 0 3px 8px rgba(0,0,0,.35); transform: rotate(-1.2deg); margin-bottom: 4px; }
.ep-mcard:nth-child(2n) .ep-mpostit { transform: rotate(1deg); }
.ep-mdel { position: absolute; bottom: 14px; left: 18px; }
/* v1.3: Post-its, Spalten, Import, Check-ins */
.ep-mthumb { padding: 6px !important; }
.ep-pthumb { width: 50px; height: 50px; object-fit: cover; border-radius: 3px; display: block; box-shadow: 0 1px 3px rgba(0,0,0,.4); }
.ep-mpostit.is-small { width: 50px; height: 50px; max-height: none; padding: 0; transform: none; margin: 0; }
.ep-pimg { width: 100%; aspect-ratio: 1 / 1; max-height: 150px; object-fit: cover; border-radius: 4px; box-shadow: 0 3px 8px rgba(0,0,0,.35); margin-bottom: 4px; }
.ep-colmodal { width: min(820px, 100%); }
.ep-colbox { border: 1px solid var(--background-modifier-border); border-radius: 8px; padding: 8px; margin-top: 8px; background: var(--background-secondary); }
.ep-colrow { display: flex; align-items: center; gap: 6px; } .ep-colrow input[type=text] { flex: 1; } .ep-colrow select { width: 170px; }
.ep-colhid { display: inline-flex !important; align-items: center; gap: 5px; font-size: 12px; color: var(--text-muted); white-space: nowrap; margin: 0 !important; }
.ep-colopts { display: flex; flex-wrap: wrap; gap: 5px; margin: 8px 0 2px 36px; }
.ep-colopt { display: inline-flex; align-items: center; gap: 3px; background: var(--background-primary); border: 1px solid var(--background-modifier-border); border-radius: 14px; padding: 2px 6px 2px 3px; }
.ep-colopt input[type=color] { width: 18px; height: 18px; border: 0; padding: 0; background: none; border-radius: 50%; } .ep-colopt input[type=text] { width: 120px; border: 0; background: transparent; font-size: 12px; padding: 2px; }
.ep-colx { cursor: pointer; color: var(--text-faint); padding: 0 3px; } .ep-colx:hover { color: var(--text-error); }
.ep-coladd { width: 120px; font-size: 12px !important; border-radius: 12px !important; border-style: dashed !important; }
.ep-colnew { margin-top: 12px; padding-top: 10px; border-top: 1px dashed var(--background-modifier-border); }
.ep-importta { width: 100%; font-family: ui-monospace, Menlo, monospace; font-size: 12px; margin-top: 10px; }
.ep-importprev { margin-top: 8px; font-size: 13px; }
.ep-gen { background: linear-gradient(135deg, color-mix(in srgb, #E4B33C 18%, var(--background-secondary)), var(--background-secondary)); border: 1px solid var(--background-modifier-border); border-radius: 14px; padding: 22px 24px; margin-bottom: 16px; text-align: center; }
.ep-genq { font-size: 22px; font-weight: 650; line-height: 1.35; max-width: 900px; margin: 0 auto 6px; } .ep-genq.is-in { animation: epIn .35s ease; }
@keyframes epIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.ep-genmeta { font-size: 12.5px; color: var(--text-muted); min-height: 18px; } .ep-genbtns { display: flex; gap: 8px; justify-content: center; margin-top: 12px; }
.ep-cfilters { display: flex; flex-direction: column; gap: 6px; margin-bottom: 6px; } .ep-cfrow { display: flex; flex-wrap: wrap; gap: 5px; align-items: center; } .ep-cfrow > .ep-muted { width: 60px; font-size: 12px; }
.ep-ctable { display: grid; grid-template-columns: minmax(300px, 3fr) minmax(120px, 1fr) minmax(140px, 1.2fr) 90px minmax(120px, 1fr); background: var(--background-secondary); border: 1px solid var(--background-modifier-border); border-radius: 10px; overflow: auto; font-size: 13px; }
.ep-cfrage { font-weight: 550; } .ep-cpills { gap: 5px; } .ep-ctiefe { display: flex; gap: 5px; }

/* ---------- Unterreiter Methoden / Check-ins ---------- */
.ep-subtabs { display: flex; gap: 4px; margin: -6px 0 14px; border-bottom: 1px solid var(--background-modifier-border); }
.ep-subtab { display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; color: var(--text-muted); text-decoration: none; font-size: 13px; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.ep-subtab:hover { color: var(--text-normal); } .ep-subtab.is-active { color: var(--text-normal); border-bottom-color: var(--interactive-accent); font-weight: 600; }

/* ---------- Tools & Material ---------- */
.ep-main.ep-dragover { outline: 3px dashed var(--interactive-accent); outline-offset: -10px; border-radius: 14px; background: color-mix(in srgb, var(--interactive-accent) 6%, transparent); }
.ep-matic { --c: #878580; display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 9px; flex: none; background: color-mix(in srgb, var(--c) 16%, transparent); color: var(--c); }
.ep-matic.is-big { width: auto; height: 30px; padding: 0 10px; gap: 6px; font-size: 12px; font-weight: 600; }
.ep-matgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 14px; }
.ep-matcard { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 14px; border-radius: 12px; background: var(--background-secondary); border: 1px solid var(--background-modifier-border); cursor: pointer; transition: box-shadow .15s, transform .15s; }
.ep-matcard:hover { box-shadow: 0 6px 18px rgba(0,0,0,.08); transform: translateY(-1px); }
.ep-matcardtop { display: flex; align-items: center; gap: 8px; margin-bottom: 4px; }
.ep-matkat { font-size: 11.5px; color: var(--text-muted); margin-left: auto; padding-right: 2px; }
.ep-mattitle { font-weight: 600; line-height: 1.3; word-break: break-word; }
.ep-matmeta { font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ep-matdesc { font-size: 12.5px; color: var(--text-muted); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ep-mattags, .ep-matmeths { display: flex; flex-wrap: wrap; gap: 4px; } .ep-mattags:empty, .ep-matmeths:empty { display: none; }
.ep-mattag { font-size: 11.5px; color: var(--text-accent); margin-right: 4px; }
.ep-matmeth { display: inline-block; font-size: 11.5px; padding: 1px 8px; border-radius: 10px; background: var(--background-modifier-hover); border: 1px solid var(--background-modifier-border); cursor: pointer; margin: 1px 2px 1px 0; }
.ep-matmeth:hover, .ep-matmeth.is-on { background: color-mix(in srgb, var(--interactive-accent) 15%, transparent); border-color: color-mix(in srgb, var(--interactive-accent) 40%, transparent); }
.ep-matacts { position: absolute; top: 10px; right: 8px; display: flex; gap: 0; opacity: 0; transition: opacity .15s; background: var(--background-secondary); border-radius: 8px; }
.ep-matcard:hover .ep-matacts { opacity: 1; } .ep-matcard:hover .ep-matkat { visibility: hidden; }
.ep-matacts .ep-btn { padding: 4px 6px; min-height: 0; }
.ep-mattable { display: grid; grid-template-columns: 50px minmax(200px, 2fr) minmax(110px, .8fr) minmax(110px, .8fr) minmax(140px, 1.2fr) minmax(110px, 1fr) 120px; background: var(--background-secondary); border: 1px solid var(--background-modifier-border); border-radius: 12px; overflow: hidden; }
.ep-mattable > div { padding: 9px 10px; border-bottom: 1px solid var(--background-modifier-border); font-size: 13px; min-width: 0; display: flex; flex-wrap: wrap; align-items: center; align-content: center; gap: 2px; }
.ep-mattable > .ep-th { font-size: 11.5px; text-transform: uppercase; letter-spacing: .04em; color: var(--text-muted); font-weight: 600; background: var(--background-primary); }
.ep-mattable .ep-mattitle { display: block; } .ep-matrow { cursor: pointer; } .ep-mattable .ep-rowtools { justify-content: flex-end; flex-wrap: nowrap; }
.ep-matfile { display: flex; align-items: center; gap: 10px; padding: 8px; border-radius: 10px; background: var(--background-secondary); margin-bottom: 6px; } .ep-matfile > span:nth-child(2) { flex: 1; font-size: 13px; word-break: break-all; }
.ep-mpick input { width: 100%; } .ep-mpicksel { display: flex; flex-wrap: wrap; gap: 4px; margin: 6px 0; } .ep-mpicksel:empty { display: none; }
.ep-mpicklist { max-height: 180px; overflow: auto; border: 1px solid var(--background-modifier-border); border-radius: 8px; margin-top: 6px; }
.ep-mpickrow { padding: 6px 10px; font-size: 13px; cursor: pointer; } .ep-mpickrow:hover { background: var(--background-modifier-hover); }
.ep-matpick { max-height: 50vh; } .ep-matpick .ep-mmatrow { border-radius: 0; }
.ep-foot .ep-spacer { flex: 1; } .ep-btn.ep-danger { color: var(--text-error); }
.ep-mmat { margin-top: 22px; padding: 14px 0 34px; border-top: 1px solid var(--background-modifier-border); }
.ep-mmathead { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; } .ep-mmathead h3 { margin: 0; font-size: 15px; flex: 1; }
.ep-mmatlist { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 8px; }
.ep-mmatrow { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 10px; background: var(--background-secondary); cursor: pointer; }
.ep-mmatrow:hover { background: var(--background-modifier-hover); } .ep-mmattx { flex: 1; min-width: 0; font-size: 13px; } .ep-mmattx > div { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .ep-mmattx .ep-muted { font-size: 11.5px; }
@media (max-width: 760px) { .ep-mattable { grid-template-columns: 44px 1fr 70px; } .ep-mattable > div:nth-child(7n+3), .ep-mattable > div:nth-child(7n+4), .ep-mattable > div:nth-child(7n+5), .ep-mattable > div:nth-child(7n+6) { display: none; } .ep-matacts { opacity: 1; } }
.ep-dragcol { cursor: grab; } .ep-dragcol.is-dragging { opacity: .4; }
.ep-dragcol.is-dropbefore { box-shadow: inset 3px 0 0 var(--interactive-accent); } .ep-dragcol.is-dropafter { box-shadow: inset -3px 0 0 var(--interactive-accent); }
.ep-rzcol { position: relative; } .ep-colgrip { position: absolute; top: 0; right: -3px; width: 7px; height: 100%; cursor: col-resize; z-index: 2; }
.ep-colgrip:hover, body.ep-resizing .ep-colgrip:active { background: color-mix(in srgb, var(--interactive-accent) 50%, transparent); }
body.ep-resizing, body.ep-resizing * { cursor: col-resize !important; user-select: none !important; }
.ep-tip { position: fixed; z-index: 10000; max-width: 280px; padding: 5px 9px; border-radius: 6px; background: #111; color: #f2f2f2; font-size: 12px; line-height: 1.35; pointer-events: none; box-shadow: 0 4px 14px rgba(0,0,0,.25); animation: ep-tipin .12s ease-out; }
@keyframes ep-tipin { from { opacity: 0; transform: translateY(2px); } }
.ep-actsave { width: min(760px, 96vw); } .ep-actsave .modal-content { max-height: 78vh; overflow: auto; }
.ep-secthead { margin: 18px 0 4px; font-size: 11.5px; text-transform: uppercase; letter-spacing: .05em; font-weight: 700; color: var(--text-muted); border-top: 1px solid var(--background-modifier-border); padding-top: 12px; }
.ep-row3 { display: grid; grid-template-columns: 1fr 1fr 2fr; gap: 10px; } .ep-row3 input { width: 100%; }
.ep-actmats { display: flex; flex-direction: column; gap: 6px; margin-top: 8px; } .ep-actmats .ep-mmatrow { cursor: default; }
.ep-actmatadd { margin-top: 4px; } .ep-actmatadd input[type=text] { flex: 1; min-width: 200px; }
.ep-inlinenew { height: 24px; font-size: 12px; padding: 0 8px; width: 160px; }

/* ---------- 2.0: Barrierefreiheit ---------- */
:focus-visible { outline: 3px solid var(--interactive-accent); outline-offset: 2px; border-radius: 6px; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }
/* Anwesenheit & Sperre */
.ep-presence { display: flex; align-items: center; gap: 4px; margin-left: 8px; font-size: 12px; }
.ep-avatar { --c: #3F73B5; width: 26px; height: 26px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 700; color: #fff; background: var(--c); box-shadow: 0 0 0 2px var(--background-primary); margin-right: -6px; }
.ep-avatar + .ep-muted { margin-left: 12px; }
.ep-locked { position: relative; } .ep-locked > * { pointer-events: none; opacity: .55; }
.ep-locked::after { content: attr(data-lockby); position: absolute; right: 8px; top: 6px; z-index: 3; font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 10px; background: #E8843A; color: #fff; pointer-events: none; }
.ep-locked { outline: 2px dashed #E8843A; outline-offset: -2px; }
/* Seitenleiste */
body.ep-has-sidebar .ep-main { margin-right: 300px; }
.ep-sidebar { position: fixed; right: 0; top: 52px; bottom: 0; width: 290px; z-index: 40; display: flex; flex-direction: column; gap: 8px; padding: 12px; background: var(--background-secondary-alt, var(--background-secondary)); backdrop-filter: blur(10px); border-left: 1px solid var(--background-modifier-border); box-shadow: -10px 0 30px -18px rgba(0,0,0,.3); }
.ep-sbhead { display: flex; align-items: center; gap: 8px; font-weight: 700; } .ep-sbhead span:not(.ep-ic) { flex: 1; } .ep-sbhint { font-size: 12px; }
.ep-sidebar input { width: 100%; } .ep-sblist { overflow: auto; display: flex; flex-direction: column; gap: 6px; padding-bottom: 20px; }
.ep-sbitem { --k: #C9B98F; padding: 8px 10px 8px 12px; border-radius: 10px; background: var(--background-primary); border-left: 4px solid var(--k); cursor: grab; font-size: 13px; transition: transform .12s, box-shadow .12s; }
.ep-sbitem:hover { transform: translateX(-2px); box-shadow: 0 4px 12px -6px rgba(0,0,0,.25); } .ep-sbname { font-weight: 600; } .ep-sbitem .ep-muted { font-size: 11.5px; }
.ep-dropbefore { box-shadow: inset 0 3px 0 #E8843A !important; } .ep-dropafter { box-shadow: inset 0 -3px 0 #E8843A !important; }
body.ep-dragging-method .ep-host .mk-ag-slot { transition: box-shadow .1s; }
@media (max-width: 900px) { body.ep-has-sidebar .ep-main { margin-right: 0; } .ep-sidebar { width: 100%; top: auto; height: 45vh; border-left: none; border-top: 1px solid var(--background-modifier-border); } }
/* Suche */
.ep-search-modal { width: min(640px, 94vw); } .ep-bigsearch { width: 100%; font-size: 16px; padding: 10px 12px; }
.ep-searchres { max-height: 55vh; overflow: auto; margin-top: 8px; } .ep-searchgrp { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--text-muted); margin: 10px 4px 4px; font-weight: 700; }
.ep-searchhit { display: flex; gap: 10px; align-items: flex-start; padding: 8px 10px; border-radius: 8px; cursor: pointer; } .ep-searchhit.is-sel { background: var(--background-modifier-active-hover); } .ep-searchhit .ep-muted { font-size: 12px; } .ep-searchhint { font-size: 11.5px; margin-top: 8px; }
/* Neue Agenda */
.ep-newchoice { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 10px; }
.ep-newopt { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 14px; height: auto; text-align: left; border-radius: 12px; white-space: normal; } .ep-newopt-t { font-weight: 700; } .ep-newopt .ep-muted { font-size: 12px; }
/* Nachbereitung */
.ep-review { padding: 10px 0; border-bottom: 1px solid var(--background-modifier-border); } .ep-reviewhead { display: flex; gap: 8px; align-items: baseline; flex-wrap: wrap; } .ep-reviewt { font-weight: 700; } .ep-review textarea { width: 100%; margin-top: 4px; }
.ep-stars { display: flex; gap: 2px; margin: 4px 0; } .ep-star { background: none !important; border: none !important; box-shadow: none !important; font-size: 20px; padding: 0 2px; color: #CFC4AB; cursor: pointer; height: auto; } .ep-star.is-on { color: #E9B940; } .ep-star:hover { transform: scale(1.2); }
/* Einstellungen */
.ep-qr { display: flex; justify-content: center; padding: 10px; background: #fff; border-radius: 10px; width: max-content; margin: 6px auto; }
.ep-stbar { display: flex; height: 14px; border-radius: 7px; overflow: hidden; background: var(--background-modifier-hover); margin: 8px 0; } .ep-stlegend { display: flex; flex-wrap: wrap; gap: 14px; font-size: 12.5px; margin-bottom: 10px; } .ep-stdot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: 6px; }
.ep-peopletable, .ep-bktable { margin: 10px 0; } .ep-bktable { grid-template-columns: 1fr 120px 160px; }
/* Vorschaubilder */
.ep-matthumb { margin: -2px 0 4px; border-radius: 8px; overflow: hidden; background: #fff; max-height: 150px; display: flex; align-items: flex-start; justify-content: center; border: 1px solid var(--background-modifier-border); }
.ep-matthumb img, .ep-matthumb canvas { width: 100%; height: auto; display: block; object-fit: cover; } .ep-matthumb.is-loading { height: 110px; background: linear-gradient(90deg, rgba(0,0,0,.03), rgba(0,0,0,.07), rgba(0,0,0,.03)); background-size: 200% 100%; animation: ep-shimmer 1.2s infinite; }
@keyframes ep-shimmer { to { background-position: -200% 0; } }
/* Teilen */
.ep-shareframe { width: 100%; min-height: 80vh; border: none; border-radius: 12px; background: #fff; box-shadow: 0 10px 30px -15px rgba(0,0,0,.3); } .ep-shareprint { justify-content: flex-end; margin: 12px 0; }
.ep-evtools { flex-wrap: wrap; }

/* ---------- Spaß ---------- */
.ep-confetti { position: fixed; inset: 0; pointer-events: none; z-index: 20000; }
.mk-ag-fit { font-size: 12px; font-weight: 700; padding: 2px 9px; border-radius: 12px; white-space: nowrap; }
.mk-ag-fit.is-fit { background: #5E9E5A; color: #fff; } .mk-ag-fit.is-over { background: rgba(214, 69, 61, .14); color: #B8332B; } .mk-ag-fit.is-under { background: rgba(63, 115, 181, .12); color: #2F5F9E; }
.mk-ag-fit.is-pop { animation: ep-stamp .6s cubic-bezier(.2, 1.6, .4, 1); }
@keyframes ep-stamp { 0% { transform: scale(2.2) rotate(-12deg); opacity: 0; } 60% { transform: scale(.9) rotate(3deg); opacity: 1; } 100% { transform: scale(1) rotate(0); } }
.mk-ag-sollende { width: 58px; }
.mk-ag-pausewatch { background: rgba(232, 132, 58, .14) !important; border: 1px dashed #E8843A !important; border-radius: 14px !important; height: 26px; padding: 0 8px !important; font-size: 15px; cursor: pointer; animation: ep-wiggle 2.4s ease-in-out infinite; }
.mk-ag-pausewatch:hover { background: rgba(232, 132, 58, .28) !important; animation: none; transform: scale(1.1); }
@keyframes ep-wiggle { 0%, 88%, 100% { transform: rotate(0); } 91% { transform: rotate(-12deg); } 94% { transform: rotate(10deg); } 97% { transform: rotate(-5deg); } }
body.ep-party .ep-logo { animation: ep-spin .7s linear infinite; }
body.ep-party .ep-top::after { animation: ep-hue 1s linear infinite; height: 6px !important; }
body.ep-party .ep-pagehead h1::after { animation: ep-hue 1s linear infinite; width: 100% !important; transition: width .4s; }
body.ep-party .ep-card, body.ep-party .ep-matcard { animation: ep-bounce .5s ease-in-out infinite alternate; }
body.ep-party .ep-card:nth-child(2n), body.ep-party .ep-matcard:nth-child(2n) { animation-delay: .25s; }
@keyframes ep-spin { to { transform: rotate(360deg); } } @keyframes ep-hue { to { filter: hue-rotate(360deg); } } @keyframes ep-bounce { to { transform: translateY(-6px) rotate(.6deg); } }
.ep-rain { position: fixed; inset: 0; pointer-events: none; z-index: 20000; overflow: hidden; }
.ep-rain > span, .ep-postit { position: absolute; top: -60px; animation: ep-fall 2.6s ease-in forwards; transform: rotate(var(--rot)); }
.ep-postit { width: 54px; height: 54px; box-shadow: 0 6px 12px -4px rgba(0,0,0,.25); border-radius: 2px; }
@keyframes ep-fall { to { top: 105vh; transform: rotate(calc(var(--rot) * -2)); } }
.ep-egg-coffee { position: fixed; left: 50%; top: 40%; transform: translate(-50%, -50%); font-size: 90px; z-index: 20000; pointer-events: none; text-align: center; animation: ep-pop 3.1s ease forwards; }
.ep-steam { position: absolute; top: -10px; width: 8px; height: 40px; border-radius: 8px; background: rgba(120, 100, 80, .35); filter: blur(3px); animation: ep-steam 1.4s ease-out infinite; } .ep-steam:nth-child(1) { left: 30px; } .ep-steam:nth-child(2) { left: 48px; } .ep-steam:nth-child(3) { left: 66px; }
@keyframes ep-steam { from { transform: translateY(0) scaleY(.6); opacity: 0; } 40% { opacity: 1; } to { transform: translateY(-50px) scaleY(1.2); opacity: 0; } }
.ep-egg-label { font-size: 18px; font-weight: 800; color: var(--text-normal); margin-top: -8px; }
@keyframes ep-pop { 0% { opacity: 0; transform: translate(-50%, -40%) scale(.6); } 15% { opacity: 1; transform: translate(-50%, -50%) scale(1); } 80% { opacity: 1; } 100% { opacity: 0; transform: translate(-50%, -60%); } }
.ep-scribble { position: fixed; left: 5vw; top: 40vh; width: 90vw; height: 20vh; z-index: 20000; pointer-events: none; }
.ep-scribble path { fill: none; stroke: #3F73B5; stroke-width: 10; stroke-linecap: round; stroke-dasharray: 2000; stroke-dashoffset: 2000; animation: ep-draw 1.6s ease-in-out forwards, ep-fade 2.6s ease forwards; }
@keyframes ep-draw { to { stroke-dashoffset: 0; } } @keyframes ep-fade { 0%, 75% { opacity: 1; } 100% { opacity: 0; } }
.ep-pen { position: fixed; top: 40vh; left: 3vw; font-size: 44px; z-index: 20001; pointer-events: none; animation: ep-penmove 1.6s ease-in-out forwards, ep-fade 2.6s ease forwards; }
@keyframes ep-penmove { 0% { left: 3vw; top: 46vh; } 25% { top: 36vh; } 50% { top: 50vh; } 75% { top: 40vh; } 100% { left: 92vw; top: 45vh; } }
.ep-egg-flip { position: fixed; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 20000; pointer-events: none; perspective: 900px; animation: ep-pop 3.1s ease forwards; }
.ep-flippage { width: 240px; padding: 22px 20px 30px; background: #fff; border: 2px solid #ddd; border-top: 14px solid #555; border-radius: 4px; font: 600 16px/1.6 "Comic Sans MS", "Chalkboard SE", "Marker Felt", cursive; color: #2F5F9E; box-shadow: 0 20px 40px -15px rgba(0,0,0,.35); transform-origin: top; animation: ep-flip .8s ease-out; }
.ep-fliptitle { color: #D6453D; font-size: 22px; margin-bottom: 6px; }
@keyframes ep-flip { from { transform: rotateX(-100deg); } to { transform: rotateX(0); } }
.mk-ag-teamph[data-px] { position: relative; background: transparent !important; overflow: hidden; } .ep-pixel { width: 100%; height: 100%; display: block; }
.ep-pixel-k { position: absolute; right: 6px; bottom: 6px; font-size: 11px; font-weight: 800; background: rgba(255,255,255,.85); color: #2E2618; border-radius: 6px; padding: 1px 5px; }
.ep-check { display: flex; align-items: center; gap: 6px; margin-top: 12px; font-size: 13px; cursor: pointer; }
.ep-pixel-k { right: auto; left: 50%; bottom: 12%; transform: translateX(-50%); }

/* =================== Projekte & Aufgaben =================== */
.ep-navbadge { margin-left: 4px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: #D6453D; color: #fff; font-size: 11px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }
.ep-pmmain { max-width: none; }
.ep-pmquick { width: min(420px, 60vw); }
.pm-tabs { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; border-bottom: 1px solid var(--background-modifier-border); margin: -4px 0 14px; padding-bottom: 6px; }
.pm-tab { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 8px; color: var(--text-muted); text-decoration: none; font-size: 13px; background: transparent; border: none; height: auto; cursor: pointer; }
.pm-tab:hover { background: var(--background-modifier-hover); color: var(--text-normal); }
.pm-tab.is-active { background: var(--background-secondary-alt, var(--background-secondary)); color: var(--text-normal); font-weight: 650; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
.pm-tabn { font-size: 11px; color: var(--text-faint); } .pm-tabsep { width: 1px; height: 20px; background: var(--background-modifier-border); margin: 0 6px; }
.pm-dot { width: 10px; height: 10px; border-radius: 50%; flex: none; box-shadow: inset 0 0 0 1px rgba(0,0,0,.12); }
.pm-tabadd { color: var(--text-accent); } .pm-tabarch { margin-left: auto; }
.pm-boardbar { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; flex-wrap: wrap; }
.pm-evlink { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--text-accent); text-decoration: none; padding: 4px 10px; border-radius: 8px; background: var(--background-modifier-active-hover); }
.pm-filter { width: 220px; } .pm-hint { font-size: 12px; margin-left: auto; }
/* Board im Miro-Stil: ruhig, viel Weißraum */
.pm-board { display: flex; gap: 18px; align-items: flex-start; overflow-x: auto; padding: 18px 18px 24px; border-radius: 16px; background: rgba(255, 255, 255, .55); border: 1px solid var(--background-modifier-border); min-height: 60vh; }
body.ep-dark .pm-board { background: rgba(20, 17, 13, .45); }
.pm-col { --c: #878580; flex: 0 0 272px; display: flex; flex-direction: column; max-height: calc(100vh - 250px); border-radius: 12px; transition: background .15s; }
.pm-col.is-over { background: color-mix(in srgb, var(--c) 8%, transparent); }
.pm-colhead { display: flex; align-items: center; gap: 8px; padding: 2px 4px 10px; }
.pm-colpill { font-size: 12.5px; padding: 3px 9px; border-radius: 6px; background: color-mix(in srgb, var(--c) 22%, transparent); color: color-mix(in srgb, var(--c) 80%, #000); font-weight: 550; cursor: default; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 190px; }
body.ep-dark .pm-colpill { color: color-mix(in srgb, var(--c) 55%, #fff); }
.pm-colpill.is-dark { background: #2E2618; color: #fff; } body.ep-dark .pm-colpill.is-dark { background: #EFE6D2; color: #1E1A15; }
.pm-colcount { font-size: 12px; color: var(--text-muted); }
.pm-colmenu { margin-left: auto; background: none !important; border: none !important; box-shadow: none !important; padding: 2px 4px; height: auto; opacity: 0; color: var(--text-muted); }
.pm-col:hover .pm-colmenu, .pm-colmenu:focus-visible { opacity: 1; }
.pm-colbody { overflow-y: auto; display: flex; flex-direction: column; gap: 10px; padding: 2px 4px 6px; min-height: 40px; overscroll-behavior: contain; }
.pm-colempty { font-size: 12px; color: var(--text-faint); text-align: center; padding: 12px 6px; border: 1.5px dashed var(--background-modifier-border); border-radius: 12px; }
.pm-card { background: var(--background-primary); border: 1.5px solid color-mix(in srgb, var(--c) 55%, transparent); border-radius: 14px; padding: 11px 14px; font-size: 13px; line-height: 1.38; cursor: pointer; transition: box-shadow .15s, transform .15s, border-color .15s; position: relative; }
body.ep-retro .pm-card { background: #FFFDF8; } body.ep-dark .pm-card { background: #2A241C; }
.pm-card:hover { box-shadow: 0 6px 16px -8px rgba(46,38,24,.35); border-color: var(--c); }
.pm-card.is-dragging { opacity: .35; transform: rotate(2deg); } .pm-card.is-star::after { content: '★'; position: absolute; right: 9px; top: 7px; color: #E9B940; font-size: 13px; }
.pm-card.is-justdone { animation: pm-done .7s ease; } @keyframes pm-done { 30% { transform: scale(1.04); box-shadow: 0 0 0 6px rgba(94,158,90,.25); } }
.pm-ctitle { white-space: pre-wrap; word-break: break-word; } .pm-ctitle b { font-weight: 700; }
.pm-cmore { white-space: pre-wrap; color: var(--text-muted); font-size: 12.5px; margin-top: 3px; max-height: 5.5em; overflow: hidden; }
.pm-cmeta, .pm-ctags, .pm-cpeople { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 8px; align-items: center; }
.pm-chip { display: inline-flex; align-items: center; gap: 4px; font-size: 11.5px; padding: 2px 7px; border-radius: 6px; background: var(--background-modifier-hover); color: var(--text-muted); white-space: nowrap; }
.pm-chip .svg-icon { width: 12px; height: 12px; } .pm-chip.is-ok { color: #3E7A3A; }
.pm-date.is-over { background: rgba(214,69,61,.15); color: #B8332B; font-weight: 650; } .pm-date.is-today { background: rgba(232,132,58,.18); color: #A0521A; font-weight: 650; }
.pm-tag { font-size: 11.5px; padding: 2px 8px; border-radius: 6px; color: #3A3020; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pm-ptag::before { content: '◆ '; opacity: .5; }
.pm-av { position: relative; width: 22px; height: 22px; border-radius: 50%; overflow: hidden; display: inline-flex; flex: none; box-shadow: 0 0 0 2px var(--background-primary); }
.pm-av .ep-pixel { width: 100%; height: 100%; } .pm-avn { display: none; }
.pm-cpeople .pm-av { margin-right: -4px; } .pm-avs { width: 18px; height: 18px; }
.pm-more { background: none !important; border: 1px dashed var(--background-modifier-border) !important; box-shadow: none !important; color: var(--text-muted); font-size: 12px; border-radius: 10px; height: auto; padding: 7px; }
.pm-addcard { padding: 6px 4px 0; } .pm-addbtn { background: none !important; border: none !important; box-shadow: none !important; color: var(--text-muted); font-size: 12.5px; padding: 4px 6px; height: auto; } .pm-addbtn:hover { color: var(--text-normal); }
.pm-newta { width: 100%; border-radius: 12px; padding: 9px 12px; font-size: 13px; resize: vertical; }
.pm-addcol { flex: 0 0 160px; height: 40px; background: none !important; border: 1.5px dashed var(--background-modifier-border) !important; box-shadow: none !important; color: var(--text-muted); border-radius: 12px; }
.pm-dropline { height: 3px; border-radius: 2px; background: var(--c, #3F73B5); margin: -6px 2px; flex: none; }
/* Seitenleiste */
.pm-panel { position: fixed; right: 14px; top: 64px; bottom: 14px; width: min(470px, calc(100vw - 28px)); z-index: 80; display: flex; flex-direction: column; background: var(--background-primary); border: 1px solid var(--background-modifier-border); border-radius: 18px; box-shadow: 0 24px 60px -20px rgba(46,38,24,.45); animation: pm-in .18s ease-out; }
body.ep-retro .pm-panel { background: rgba(255, 253, 248, .98); } body.ep-dark .pm-panel { background: rgba(38, 33, 26, .98); }
@keyframes pm-in { from { transform: translateX(24px); opacity: 0; } }
.pm-phead { display: flex; align-items: flex-start; gap: 10px; padding: 18px 18px 6px; } .pm-phead > .ep-ic { margin-top: 6px; }
.pm-ptitle { flex: 1; font-size: 18px; font-weight: 700; border: 1px solid transparent !important; background: transparent !important; resize: none; padding: 2px 6px; line-height: 1.3; box-shadow: none !important; }
.pm-ptitle:hover { border-color: var(--background-modifier-border) !important; } .pm-ptitle:focus { border-color: var(--interactive-accent) !important; background: var(--background-modifier-form-field) !important; }
.pm-ptabs { display: flex; gap: 4px; padding: 4px 18px 8px; } .pm-ptab { background: none !important; border: none !important; box-shadow: none !important; height: auto; padding: 6px 12px; border-radius: 8px; color: var(--text-muted); font-weight: 600; }
.pm-ptab.is-active { background: var(--background-modifier-hover) !important; color: var(--text-normal); }
.pm-pbody { overflow-y: auto; padding: 6px 18px 18px; flex: 1; }
.pm-prow { display: grid; grid-template-columns: 128px 1fr; gap: 10px; align-items: start; padding: 9px 0; border-bottom: 1px solid color-mix(in srgb, var(--background-modifier-border) 60%, transparent); }
.pm-plabel { display: flex; align-items: center; gap: 8px; color: var(--text-muted); font-size: 13px; padding-top: 4px; }
.pm-pval { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; min-width: 0; font-size: 13px; }
.pm-pval select, .pm-pval input[type=date] { height: 30px; font-size: 13px; }
.pm-status { --c: #878580; background: color-mix(in srgb, var(--c) 18%, transparent) !important; border-color: color-mix(in srgb, var(--c) 45%, transparent) !important; font-weight: 600; }
.pm-desc { width: 100%; resize: vertical; font-size: 13px; }
.pm-prio { height: 26px; padding: 0 10px; border-radius: 7px; font-size: 12px; border: 1px solid var(--background-modifier-border) !important; box-shadow: none !important; opacity: .55; }
.pm-prio.is-on { opacity: 1; outline: 2px solid currentColor; outline-offset: 1px; }
.pm-tagx { display: inline-flex; align-items: center; gap: 4px; } .pm-x { cursor: pointer; opacity: .55; font-weight: 700; } .pm-x:hover { opacity: 1; }
.pm-chipin { flex: 1; min-width: 110px; height: 28px; font-size: 12.5px; background: transparent !important; border: 1px dashed var(--background-modifier-border) !important; border-radius: 7px; }
.pm-qdates { display: flex; gap: 4px; width: 100%; } .pm-qdate { height: 22px; font-size: 11.5px; padding: 0 8px; border-radius: 6px; background: var(--background-modifier-hover) !important; border: none !important; box-shadow: none !important; color: var(--text-muted); }
.pm-cl { display: flex; align-items: center; gap: 6px; width: 100%; } .pm-clt { flex: 1; height: 26px; font-size: 13px; background: transparent !important; border-color: transparent !important; } .pm-clt.is-done { text-decoration: line-through; color: var(--text-faint); }
.pm-cdel { background: none !important; border: none !important; box-shadow: none !important; color: var(--text-faint); padding: 0 6px; height: 22px; cursor: pointer; } .pm-cdel:hover { color: var(--text-error); }
.pm-hl { height: 28px; font-size: 12.5px; padding: 0 10px; border-radius: 7px; } .pm-hl.is-on { background: #F8EBA6 !important; color: #7A5B00; border-color: #E9B940 !important; }
.pm-pinfo { font-size: 11.5px; margin-top: 14px; }
.pm-comments { display: flex; flex-direction: column; gap: 10px; margin-bottom: 12px; } .pm-comment { position: relative; padding: 10px 12px; border-radius: 10px; background: var(--background-modifier-hover); white-space: pre-wrap; font-size: 13px; } .pm-comment .ep-muted { font-size: 11px; margin-bottom: 3px; } .pm-comment .pm-cdel { position: absolute; right: 4px; top: 4px; }
.pm-colors { display: flex; gap: 6px; flex-wrap: wrap; } .pm-swatch { width: 28px; height: 28px; border-radius: 50%; padding: 0; border: 2px solid transparent !important; box-shadow: inset 0 0 0 1px rgba(0,0,0,.12) !important; } .pm-swatch.is-on { border-color: var(--text-normal) !important; transform: scale(1.1); }
/* Dashboard */
.pm-greet h2 { margin: 6px 0 2px; font-size: 22px; } .pm-greet { margin-bottom: 16px; }
.pm-dash { display: grid; grid-template-columns: repeat(auto-fill, minmax(330px, 1fr)); gap: 16px; }
.pm-dbox { --a: #878580; background: var(--background-secondary); backdrop-filter: blur(6px); border: 1px solid var(--background-modifier-border); border-top: 4px solid var(--a); border-radius: 14px; padding: 12px 14px; }
.pm-dbox.is-red { --a: #D6453D; } .pm-dbox.is-violet { --a: #8B7EC8; } .pm-dbox.is-blue { --a: #3F73B5; } .pm-dbox.is-orange { --a: #E8843A; } .pm-dbox.is-gray { --a: #9A8C73; } .pm-dbox.is-yellow { --a: #E9B940; }
.pm-dhead { display: flex; align-items: center; gap: 8px; font-weight: 700; margin-bottom: 8px; } .pm-dhead .pm-colcount { margin-left: auto; }
.pm-dlist { display: flex; flex-direction: column; gap: 2px; } .pm-dempty { font-size: 12.5px; padding: 6px 0; }
.pm-item { display: flex; align-items: center; gap: 9px; padding: 7px 8px; border-radius: 9px; cursor: pointer; text-decoration: none; color: inherit; } .pm-item:hover { background: var(--background-modifier-hover); }
.pm-itemtx { flex: 1; min-width: 0; } .pm-itemt { font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .pm-itemtx .ep-muted { font-size: 11.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pm-item .pm-colcount { margin-left: auto; }
.pm-welcome { padding: 50px 20px; } .pm-welcome h2 { margin: 0 0 8px; } .pm-welcome .ep-tools { justify-content: center; margin-top: 16px; }
/* Standup */
.pm-sthead h2 { margin: 4px 0 10px; font-size: 21px; } .pm-sthead { margin-bottom: 14px; }
.pm-standup { display: grid; grid-template-columns: repeat(3, minmax(260px, 1fr)); gap: 16px; }
.pm-stcol { background: var(--background-secondary); backdrop-filter: blur(6px); border: 1px solid var(--background-modifier-border); border-radius: 16px; padding: 14px; border-top: 5px solid var(--a); }
.pm-stcol.is-green { --a: #5E9E5A; } .pm-stcol.is-violet { --a: #8B7EC8; } .pm-stcol.is-blue { --a: #3F73B5; }
.pm-sth { display: flex; gap: 10px; align-items: flex-start; margin-bottom: 10px; } .pm-stic { font-size: 22px; } .pm-stt { font-weight: 750; font-size: 15px; } .pm-sth .ep-muted { font-size: 12px; }
.pm-stlist { display: flex; flex-direction: column; gap: 2px; }
.pm-starbtn { background: none !important; border: none !important; box-shadow: none !important; font-size: 17px; color: #CFC4AB; padding: 0 4px; height: auto; } .pm-starbtn.is-on { color: #E9B940; }
.pm-person { display: flex; gap: 10px; align-items: center; padding: 8px; border-radius: 10px; } .pm-person .pm-av { width: 30px; height: 30px; } .pm-person > div { min-width: 0; } .pm-person .ep-muted { font-size: 12px; white-space: normal; }
.pm-nobody { padding: 18px 8px; font-size: 14px; color: var(--text-muted); text-align: center; }
.pm-sttools { margin-top: 14px; justify-content: flex-end; }
/* Schnell notieren */
.ep-quickta { width: 100%; font-size: 15px; } .ep-quickrow { display: flex; gap: 10px; align-items: center; margin-top: 8px; flex-wrap: wrap; } .ep-quickrow .ep-muted { font-size: 12px; }
@media (max-width: 900px) { .pm-standup { grid-template-columns: 1fr; } .pm-col { flex-basis: 240px; } .pm-hint { display: none; } }
.pm-src { background: rgba(63,115,181,.12); color: var(--text-accent); }
/* Board nutzt die volle Breite – horizontal scrollen nur bei sehr vielen Spalten */
.pm-board { gap: 12px; padding: 14px 12px 20px; }
.pm-col { flex: 1 1 0; min-width: 158px; max-width: 340px; }
.pm-colpill { max-width: calc(100% - 50px); }
.pm-card { padding: 10px 11px; font-size: 12.8px; }
.pm-addcol { flex: 0 0 44px; width: 44px; padding: 0; } .pm-addcol span:not(.ep-ic) { display: none; }
.ep-main.ep-pmmain { padding-left: 18px; padding-right: 18px; }
.pm-colempty { cursor: pointer; padding: 16px 8px; transition: background .15s, border-color .15s; }
.pm-colempty:hover, .pm-colempty:focus-visible { background: color-mix(in srgb, var(--c) 8%, transparent); border-color: color-mix(in srgb, var(--c) 60%, transparent); }
.pm-colempty-plus { font-size: 13px; font-weight: 600; color: var(--text-muted); } .pm-colempty:hover .pm-colempty-plus { color: var(--text-normal); }
.pm-colempty-hint { font-size: 11.5px; margin-top: 3px; color: var(--text-faint); }
.pm-addcard.is-hidden { display: none; } .pm-colbody > .pm-addcard { padding: 0; }
.pm-wide { grid-column: 1 / -1; } .pm-sheethint { font-size: 12px; margin: -4px 0 10px; }
.pm-people { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }
.pm-pcard { background: var(--background-primary); border: 1px solid var(--background-modifier-border); border-radius: 14px; padding: 10px 12px; }
body.ep-retro .pm-pcard { background: #FFFDF8; } body.ep-dark .pm-pcard { background: #2A241C; }
.pm-pcardh { display: flex; align-items: center; gap: 8px; margin-bottom: 6px; } .pm-pcardh .pm-av { width: 30px; height: 30px; align-items: center; justify-content: center; font-weight: 700; color: var(--text-muted); background: var(--background-modifier-hover); } .pm-pname { font-weight: 750; font-size: 14px; } .pm-pcardh .pm-colcount { margin-left: auto; }
.pm-psec { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; font-weight: 700; color: var(--text-muted); margin: 8px 0 3px; } .pm-psec.is-q { color: #B8332B; } .pm-psec.is-w { color: #2F5F9E; }
body.ep-dark .pm-psec.is-q { color: #F08A80; } body.ep-dark .pm-psec.is-w { color: #8FB4E8; }
.pm-pitem { display: flex; gap: 8px; align-items: baseline; font-size: 13px; padding: 4px 6px; border-radius: 7px; cursor: pointer; line-height: 1.35; } .pm-pitem:hover { background: var(--background-modifier-hover); } .pm-pitem .pm-dot { width: 8px; height: 8px; flex: none; transform: translateY(-1px); }
.pm-demolink { font-size: 12.5px; margin: 10px 0 2px; padding: 8px 10px; border-radius: 8px; background: var(--background-modifier-hover); }
.pm-dash { grid-auto-flow: row dense; }
html, body { min-height: 100vh; } body.ep-retro { min-height: 100vh; }
html:has(body.ep-retro) { background: #E9E1CE; } html:has(body.ep-dark) { background: #15120E; }
.pm-people { align-items: start; } .pm-dash { align-items: start; }
/* Formatierter Text in Karten */
.pm-mdhost { flex-direction: column; align-items: stretch !important; gap: 0 !important; }
.pm-mdbar { display: flex; flex-wrap: wrap; align-items: center; gap: 1px; padding: 3px; border: 1px solid var(--background-modifier-border); border-bottom: none; border-radius: 8px 8px 0 0; background: var(--background-modifier-hover); }
.pm-mdbtn { background: none !important; border: none !important; box-shadow: none !important; height: 26px; width: 28px; padding: 0; border-radius: 6px; color: var(--text-muted); display: inline-flex; align-items: center; justify-content: center; }
.pm-mdbtn:hover { background: var(--background-modifier-active-hover) !important; color: var(--text-normal); } .pm-mdbtn .svg-icon { width: 15px; height: 15px; }
.pm-mdsep { width: 1px; height: 16px; background: var(--background-modifier-border); margin: 0 4px; }
.pm-mddone { margin-left: auto; height: 24px; font-size: 12px; padding: 0 10px; border-radius: 6px; }
.pm-mdhost .pm-desc { border-radius: 0 0 8px 8px; font-family: inherit; line-height: 1.45; }
.pm-md { font-size: 13.5px; line-height: 1.5; word-break: break-word; } .pm-md p { margin: 0 0 6px; } .pm-md ul, .pm-md ol { margin: 2px 0 6px; padding-left: 20px; } .pm-md li { margin: 1px 0; }
.pm-md h3, .pm-md h4, .pm-md h5 { margin: 8px 0 4px; font-size: 14.5px; } .pm-md code { background: var(--background-modifier-hover); padding: 1px 5px; border-radius: 4px; font-size: 12.5px; }
.pm-md blockquote { margin: 4px 0; padding: 2px 10px; border-left: 3px solid var(--background-modifier-border-hover); color: var(--text-muted); } .pm-md a { color: var(--text-accent); }
.pm-md .contains-task-list { list-style: none; padding-left: 2px; } .pm-md .task-list-item input { margin-right: 6px; cursor: pointer; transform: translateY(1px); }
.pm-mdview { min-height: 40px; padding: 6px 8px; border-radius: 8px; cursor: text; border: 1px solid transparent; } .pm-mdview:hover { border-color: var(--background-modifier-border); background: var(--background-modifier-hover); }
/* Projekt-Tabs: Reihenfolge per Ziehen, Alle-Karten-Board */
.pm-tab[draggable="true"] { cursor: grab; }
.pm-tab.is-dragging { opacity: .4; }
.pm-tab.is-dropl { box-shadow: inset 3px 0 0 var(--interactive-accent, #e0742a); }
.pm-tab.is-dropr { box-shadow: inset -3px 0 0 var(--interactive-accent, #e0742a); }
.pm-boardall .pm-ptag { font-weight: 600; }
.pm-boardall .pm-ctags { order: -1; margin-bottom: 4px; }
.pm-boardall .pm-ptag { max-width: none; white-space: normal; }
.pm-boardall .pm-ptag { max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: inline-block; }
/* Board bildfüllend: nur die Spalten scrollen */
.ep-main.pm-fit { display: flex; flex-direction: column; overflow: hidden; padding-bottom: 14px; box-sizing: border-box; }
.pm-fit > * { flex-shrink: 0; }
.pm-fit > .pm-body { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; }
.pm-fit .pm-boardbar { flex-shrink: 0; }
.pm-fit .pm-board { flex: 1 1 auto; min-height: 0; align-items: stretch; }
.pm-fit .pm-col { max-height: none; min-height: 0; }
.pm-fit .pm-colbody { flex: 0 1 auto; min-height: 0; }
.pm-colhead[draggable="true"] { cursor: grab; }
.pm-col.is-dragging { opacity: .45; }
.pm-col.is-dropl { box-shadow: -4px 0 0 var(--interactive-accent, #e0742a); }
.pm-col.is-dropr { box-shadow: 4px 0 0 var(--interactive-accent, #e0742a); }
.ep-undo { position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%); z-index: 10000; display: flex; align-items: center; gap: 14px; padding: 10px 16px; border-radius: 10px; background: #2b2722; color: #fff; font-size: 13px; box-shadow: 0 6px 24px rgba(0,0,0,.25); }
.ep-undo button { background: none; border: none; color: #F8D5AE; font-weight: 650; cursor: pointer; padding: 0; height: auto; }
.ep-keyrow { display: flex; align-items: center; gap: 12px; padding: 6px 0; } .ep-keyrow kbd { min-width: 34px; text-align: center; padding: 2px 8px; border-radius: 6px; border: 1px solid var(--background-modifier-border); background: var(--background-secondary); font-family: inherit; font-size: 12px; }
@media (max-width: 760px) { .pm-board { scroll-snap-type: x mandatory; } .pm-board .pm-col { flex: 0 0 86%; max-width: none; scroll-snap-align: start; } .pm-addcol { display: none; } }
.mk-ag-daytabs { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 12px; }
.mk-ag-daytab { height: auto; padding: 5px 14px; border-radius: 999px; font-size: 13px; background: transparent; border: 1px solid var(--background-modifier-border); color: var(--text-muted); box-shadow: none; cursor: pointer; }
.mk-ag-daytab:hover { color: var(--text-normal); background: var(--background-modifier-hover); }
.mk-ag-daytab.is-active { background: var(--text-normal); color: var(--background-primary); border-color: var(--text-normal); font-weight: 600; }
.pm-card { position: relative; }
.pm-ctrash { position: absolute; top: 6px; right: 6px; width: 24px; height: 24px; padding: 0; display: flex; align-items: center; justify-content: center; border-radius: 6px; border: none; background: transparent; color: var(--text-faint); opacity: 0; cursor: pointer; box-shadow: none; }
.pm-card:hover .pm-ctrash, .pm-card:focus-within .pm-ctrash { opacity: 1; }
.pm-ctrash:hover { background: rgba(214,69,61,.14); color: #D6453D; }
@media (hover: none) { .pm-ctrash { opacity: .5; } }
.ep-trashlist { display: flex; flex-direction: column; gap: 6px; margin: 12px 0; max-height: 50vh; overflow: auto; }
.ep-trashrow { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border: 1px solid var(--background-modifier-border); border-radius: 8px; }
.ep-trashtxt { flex: 1; min-width: 0; } .ep-trashtxt > div:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pm-mailhost:not(:empty) { margin-bottom: 16px; }
.pm-mailbox { border-top: 3px solid #BCD6F0; }
.pm-mailbox .pm-dhead { align-items: center; } .pm-mailsel { margin-left: auto; font-size: 12px; height: auto; padding: 2px 22px 2px 8px; border-radius: 999px; max-width: 220px; }
.pm-mailrow { display: flex; flex-direction: column; gap: 6px; padding: 8px 0; border-top: 1px solid var(--background-modifier-border); } .pm-mailrow:first-of-type { border-top: none; }
.pm-mailtx { flex: 1; min-width: 0; } .pm-mailsubj { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pm-mailsn { font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pm-mailac { display: flex; gap: 6px; flex-shrink: 0; }
.ep-mailform { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px 14px; margin: 10px 0; }
.ep-mailfolders { margin: 10px 0; }
.ep-mailfolders .ep-fl { display: flex; flex-wrap: wrap; gap: 4px 16px; margin-top: 4px; }

.ep-pmsearch { width: min(220px, 40vw); }
.ep-pmmain .ep-pagehead .ep-tools { position: relative; }
.pm-sres { position: absolute; top: 100%; right: 0; z-index: 50; width: min(520px, 94vw); max-height: 60vh; overflow: auto; background: var(--background-primary); border: 1px solid var(--background-modifier-border); border-radius: 8px; box-shadow: 0 8px 24px rgba(0,0,0,.15); margin-top: 4px; }
.pm-srow { display: flex; flex-direction: column; gap: 2px; padding: 8px 12px; cursor: pointer; border-bottom: 1px solid var(--background-modifier-border); }
.pm-srow:hover, .pm-srow:focus { background: var(--background-modifier-hover); outline: none; }
.pm-srow.is-done .pm-st { text-decoration: line-through; opacity: .6; }
.pm-sw { font-size: .85em; }
.pm-sempty { padding: 10px 12px; }

.pm-qwrap { position: relative; display: inline-flex; align-items: center; }
.pm-qwrap .ep-ic { position: absolute; left: 10px; opacity: .55; pointer-events: none; display: inline-flex; }
.pm-qwrap .ep-ic svg { width: 15px; height: 15px; }
.pm-qwrap .ep-pmquick { padding-left: 32px; }

.pm-mailhint { font-size: .9em; margin: 4px 0 10px; display: flex; align-items: center; gap: 4px; }
.pm-mailhint .ep-ic svg { width: 14px; height: 14px; }

.pm-mailref { display: inline-flex; align-items: center; gap: 4px; background: none; border: 1px solid var(--background-modifier-border); border-radius: 6px; padding: 2px 8px; cursor: pointer; font-size: .9em; color: inherit; }
.pm-mailref:hover { background: var(--background-modifier-hover); }
.pm-mailref .ep-ic svg { width: 14px; height: 14px; }

.pm-mailtop { display: flex; align-items: center; gap: 12px; }
.pm-mailtip { font-size: 12px; color: var(--text-muted); }
.pm-mailpv { font-size: 13px; white-space: pre-wrap; max-height: 220px; overflow: auto; padding: 8px 10px; border-radius: 6px; background: var(--background-secondary); color: var(--text-muted); }
.pm-mailref.is-on { background: var(--background-modifier-hover); }
.pm-mailunl { margin-top: 8px; border-top: 1px solid var(--background-modifier-border); padding-top: 8px; }

.ep-mailread { max-width: 760px; width: 94vw; }
.ep-mr-head h2 { margin: 0 0 8px; font-size: 1.25em; line-height: 1.3; }
.ep-mr-meta { font-size: 13px; color: var(--text-muted); display: grid; gap: 2px; padding-bottom: 10px; border-bottom: 1px solid var(--background-modifier-border); }
.ep-mr-k { display: inline-block; width: 70px; opacity: .7; }
.ep-mr-body { margin: 14px 0; max-height: 52vh; overflow: auto; line-height: 1.55; font-size: 14.5px; word-break: break-word; }
.ep-mr-line { min-height: 1.2em; white-space: pre-wrap; }
.ep-mr-quote { margin: 8px 0; padding-left: 12px; border-left: 3px solid var(--background-modifier-border); color: var(--text-muted); }
.ep-mr-body a { text-decoration: underline; }

.ep-mailread { max-width: 860px; }
.ep-mr-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 10px; font-size: 13px; }
.ep-mr-warn { color: var(--text-muted); }
.ep-mr-frame { margin: 10px 0; border: 1px solid var(--background-modifier-border); border-radius: 6px; overflow: hidden; background: #fff; }
.ep-mr-frame iframe { width: 100%; height: 52vh; border: 0; display: block; background: #fff; }

.ep-mr-bar { min-height: 32px; margin: 8px 0 0; }
.ep-mr-body { height: 52vh; max-height: none; margin: 10px 0; padding: 12px 14px; border: 1px solid var(--background-modifier-border); border-radius: 6px; box-sizing: border-box; }
.ep-mr-frame { height: 52vh; }
.ep-mr-frame iframe { height: 100%; }

.ep-mr-bar { height: 34px; min-height: 34px; flex-wrap: nowrap; overflow: hidden; white-space: nowrap; }
.ep-mr-bar .pm-mailref { flex: none; }

.ep-ftree ul { list-style: none; margin: 0; padding-left: 18px; }
.ep-ftree > ul { padding-left: 0; }
.ep-fnode { display: flex; align-items: center; gap: 4px; min-height: 28px; }
.ep-ftg { width: 22px; height: 22px; padding: 0; background: none; border: none; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; color: var(--text-muted); }
.ep-ftg.is-empty { visibility: hidden; cursor: default; }
.ep-ftg .ep-ic svg { width: 14px; height: 14px; }
.ep-mailfolders .ep-fl { display: block; }
.ep-ftree li { margin: 0; padding: 0; }
.ep-ftree .ep-ftg { background: none !important; border: none !important; box-shadow: none !important; min-height: 0; height: 22px; width: 22px; padding: 0; margin: 0; }
.ep-ftree .ep-fnode .ep-check { margin: 0; }
.ep-ftree ul { margin: 0; }

.pm-mailac { flex-wrap: wrap; justify-content: flex-end; }
.pm-mailac .pm-mailsel, .ep-mailread .ep-foot .pm-mailsel { max-width: 180px; }
.pm-mailac button.is-disabled, .ep-mailread .ep-foot button.is-disabled { opacity: .45; cursor: not-allowed; }
.ep-mailread .ep-foot { flex-wrap: wrap; align-items: center; }

.pm-mailnote { width: 100%; box-sizing: border-box; font-size: 13px; padding: 5px 9px; }
.ep-mailread .pm-mailnote { margin: 6px 0 4px; }

/* Mail-Vorschläge kompakt */
.pm-mailbox .pm-maillist { max-height: 46vh; overflow-y: auto; }
.pm-mailrow { gap: 0; padding: 0; }
.pm-mailtop { padding: 6px 0; gap: 10px; }
.pm-mailtx { flex: 1; min-width: 0; display: flex; align-items: baseline; gap: 8px; cursor: pointer; overflow: hidden; }
.pm-mailfrom { flex: none; max-width: 24ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pm-mailtx .pm-mailsubj { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--text-muted); }
.pm-mailtx:hover .pm-mailsubj { color: var(--text-normal); }
.pm-mailtip { color: #c9962b; flex: none; }
.pm-maildate { flex: none; font-size: 12px; }
.pm-mailac { flex-wrap: nowrap; align-items: center; justify-content: flex-end; }
.pm-mailic { background: none; border: none; box-shadow: none; padding: 4px 6px; cursor: pointer; color: var(--text-muted); border-radius: 6px; display: inline-flex; align-items: center; }
.pm-mailic:hover { background: var(--background-modifier-hover); color: var(--text-normal); }
.pm-mailic .ep-ic svg { width: 16px; height: 16px; }
.pm-mailform { padding: 4px 0 10px; display: grid; gap: 8px; }
.pm-mailfr { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.pm-mailfr .pm-mailsel { max-width: 260px; flex: 1 1 180px; }
.pm-mailnote2 { font-size: 12px; margin: 0 0 6px; }
.pm-mailnote { margin: 0; }
@media (max-width: 700px) { .pm-maildate { display: none; } .pm-mailfrom { max-width: 14ch; } }
.pm-mailbox .pm-maillist { padding-right: 18px; scrollbar-gutter: stable; box-sizing: border-box; }
.ep-rpgpick { display: flex; flex-wrap: wrap; gap: 6px; } .ep-rpgbtn { width: 44px; height: 44px; padding: 2px; border: 2px solid transparent; border-radius: 8px; background: none; cursor: pointer; font-size: 11px; } .ep-rpgbtn .ep-pixel { width: 100%; height: 100%; border-radius: 5px; } .ep-rpgbtn.is-on { border-color: #3F73B5; } .ep-rpgbtn:hover { border-color: #9bb8dd; }
.ep-hdav { display: inline-block; width: 22px; height: 22px; vertical-align: middle; } .ep-hdav .ep-pixel { border-radius: 5px; }
.ep-avatar.ep-avpx { background: none; padding: 0; overflow: hidden; border-radius: 6px; width: 28px; height: 28px; } .ep-avpx .ep-pixel { width: 100%; height: 100%; }
.pm-avedit { cursor: pointer; } .pm-avedit:hover { box-shadow: 0 0 0 2px #3F73B5; } .pm-tagx .pm-av { margin-right: 4px; vertical-align: middle; border-radius: 4px; box-shadow: none; }
/* Pixelfiguren: Bewegungen – 0 = Mix, 1–13 einzelne Gesichts-Animationen (data-an) */
.ep-pixel .eyl, .ep-pixel .eyr { transform-box: fill-box; transform-origin: center; }
.ep-pixel .sm, .ep-pixel .brw, .ep-pixel .tg, .ep-pixel .ht, .ep-pixel .sw, .ep-pixel .sp, .ep-pixel .oh, .ep-pixel .fl, .ep-pixel .vn { opacity: 0; }
.ep-pixel[data-an="0"] .eyl { animation: epeyl 10s steps(1, end) infinite var(--d, 0s); } .ep-pixel[data-an="0"] .eyr { animation: epeyr 10s steps(1, end) infinite var(--d, 0s); } .ep-pixel[data-an="0"] .sm { animation: epsmile 10s steps(1, end) infinite var(--d, 0s); } .ep-pixel[data-an="0"] .brw { animation: epbrow 10s steps(1, end) infinite var(--d, 0s); } .ep-pixel[data-an="0"] .tg { animation: eptongue 10s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="1"] .eyl { animation: k1l 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="1"] .eyr { animation: k1r 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="1"] .sm { animation: k1s 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="2"] .eyl, .ep-pixel[data-an="2"] .eyr { animation: k2 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="3"] .eyl, .ep-pixel[data-an="3"] .eyr { animation: k3 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="3"] .brw { animation: k3b 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="4"] .eyl { animation: k4l 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="4"] .eyr { animation: k4r 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="4"] .tg { animation: k4t 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="5"] .eyl { animation: k5l 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="5"] .eyr { animation: k5r 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="5"] .sm { animation: k5s 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="5"] .ht { animation: k5h 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="6"] .eyl, .ep-pixel[data-an="6"] .eyr { animation: k6 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="6"] .brw { animation: k6b 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="6"] .oh { animation: k6o 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="7"] .eyl, .ep-pixel[data-an="7"] .eyr { animation: k7 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="7"] .sm { animation: k7s 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="7"] .hd { animation: k7h 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="8"] .oh { animation: k8o 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="8"] .eyl, .ep-pixel[data-an="8"] .eyr { animation: k8 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="8"] .brw { animation: k8b 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="9"] .fl { animation: k9f 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="9"] .brw { animation: k9b 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="9"] .vn { animation: k9v 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="9"] .hd { animation: k9h 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="9"] .eyl, .ep-pixel[data-an="9"] .eyr { animation: k9e 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="10"] .eyl, .ep-pixel[data-an="10"] .eyr { animation: k10 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="10"] .sm { animation: k10s 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="11"] .eyl, .ep-pixel[data-an="11"] .eyr { animation: k11 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="11"] .sw { animation: k11w 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="12"] .sp { animation: k12p 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="12"] .sm { animation: k12s 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="12"] .eyl, .ep-pixel[data-an="12"] .eyr { animation: k12 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="13"] .hd { animation: k13h 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="13"] .brw { animation: k13b 8s steps(1, end) infinite var(--d, 0s); }
.ep-pixel[data-an="13"] .eyl, .ep-pixel[data-an="13"] .eyr { animation: k13e 8s steps(1, end) infinite var(--d, 0s); }
@keyframes k1l { 0% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k1r { 0% { transform: none; } 20% { transform: scaleY(.1); } 32% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k1s { 0% { opacity: 0; } 18% { opacity: 1; } 40% { opacity: 0; } }
@keyframes k2 { 0% { transform: none; } 10% { transform: translateX(-1px); } 20% { transform: none; } 25% { transform: translateX(1px); } 35% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k3 { 0% { transform: none; } 15% { transform: translate(0,-1px); } 22% { transform: translate(1px,0); } 29% { transform: translate(0,1px); } 36% { transform: translate(-1px,0); } 43% { transform: translate(0,-1px); } 50% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k3b { 0% { opacity: 0; } 12% { opacity: 1; } 50% { opacity: 0; } }
@keyframes k4l { 0% { transform: none; } 20% { transform: translateX(1px); } 55% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k4r { 0% { transform: none; } 20% { transform: translateX(-1px); } 55% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k4t { 0% { opacity: 0; } 20% { opacity: 1; } 55% { opacity: 0; } }
@keyframes k6 { 0% { transform: none; } 20% { transform: scale(1.5); } 50% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k6b { 0% { opacity: 0; } 20% { opacity: 1; } 50% { opacity: 0; } }
@keyframes k6o { 0% { opacity: 0; } 20% { opacity: 1; } 50% { opacity: 0; } }
@keyframes k7 { 0% { transform: none; } 15% { transform: scaleY(.25); } 55% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k7s { 0% { opacity: 0; } 15% { opacity: 1; } 55% { opacity: 0; } }
@keyframes k7h { 0% { transform: none; } 15% { transform: translateX(1px); } 19% { transform: translateX(-1px); } 23% { transform: translateX(1px); } 27% { transform: translateX(-1px); } 31% { transform: translateX(1px); } 35% { transform: translateX(-1px); } 39% { transform: translateX(1px); } 43% { transform: translateX(-1px); } 47% { transform: translateX(1px); } 51% { transform: none; } }
@keyframes k8o { 0% { opacity: 0; } 20% { opacity: 1; } 48% { opacity: 0; } }
@keyframes k8 { 0% { transform: none; } 26% { transform: scaleY(.15); } 48% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k8b { 0% { opacity: 0; } 22% { opacity: 1; } 46% { opacity: 0; } }
@keyframes k9f { 0% { opacity: 0; } 20% { opacity: 1; } 52% { opacity: 0; } }
@keyframes k9b { 0% { opacity: 0; } 20% { opacity: 1; } 52% { opacity: 0; } }
@keyframes k9v { 0% { opacity: 0; } 20% { opacity: 1; } 26% { opacity: 0; } 30% { opacity: 1; } 36% { opacity: 0; } 40% { opacity: 1; } 46% { opacity: 0; } }
@keyframes k9h { 0% { transform: none; } 30% { transform: translateX(1px); } 34% { transform: translateX(-1px); } 38% { transform: none; } 42% { transform: translateX(1px); } 46% { transform: translateX(-1px); } 50% { transform: none; } }
@keyframes k9e { 0% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k10 { 0% { transform: none; } 20% { transform: translate(-1px,1px); } 55% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k10s { 0% { opacity: 0; } 20% { opacity: 1; } 55% { opacity: 0; } }
@keyframes k11 { 0% { transform: none; } 15% { transform: translate(0,-1px); } 19% { transform: translate(1px,0); } 23% { transform: translate(0,1px); } 27% { transform: translate(-1px,0); } 31% { transform: translate(0,-1px); } 35% { transform: translate(1px,0); } 39% { transform: translate(0,1px); } 43% { transform: translate(-1px,0); } 47% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k11w { 0% { opacity: 0; transform: none; } 15% { opacity: 1; } 30% { transform: translateY(1px); } 45% { opacity: 0; transform: translateY(2px); } 100% { opacity: 0; } }
@keyframes k12p { 0% { opacity: 0; } 20% { opacity: 1; } 24% { opacity: 0; } 28% { opacity: 1; } 32% { opacity: 0; } 36% { opacity: 1; } 40% { opacity: 0; } }
@keyframes k12s { 0% { opacity: 0; } 20% { opacity: 1; } 42% { opacity: 0; } }
@keyframes k12 { 0% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k13h { 0% { transform: none; } 20% { transform: translateX(-1px); } 24% { transform: translateX(1px); } 28% { transform: translateX(-1px); } 32% { transform: translateX(1px); } 36% { transform: translateX(-1px); } 40% { transform: none; } }
@keyframes k13b { 0% { opacity: 0; } 18% { opacity: 1; } 42% { opacity: 0; } }
@keyframes k13e { 0% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k5l { 0% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k5r { 0% { transform: none; } 20% { transform: scaleY(.1); } 42% { transform: none; } 88% { transform: scaleY(.1); } 90% { transform: none; } }
@keyframes k5s { 0% { opacity: 0; } 20% { opacity: 1; } 44% { opacity: 0; } }
@keyframes k5h { 0% { opacity: 0; transform: translate(0,1px); } 22% { opacity: 1; transform: translate(0,0); } 34% { transform: translate(1px,-1px); } 46% { opacity: 0; transform: translate(1px,-2px); } 100% { opacity: 0; } }
/* Rest: Dampf, Zzz, Konfetti, alte Mix-Keyframes */
.ep-pixel .st { animation: epsteam 2s steps(2, end) infinite; } .ep-pixel .zz { animation: epzz 2.4s steps(3, end) infinite; } .ep-pixel .cf { animation: epcf 1.2s steps(2, end) infinite; }
@keyframes epeyl { 0%, 11% { transform: none; } 12%, 17% { transform: translateX(-1px); } 18%, 25% { transform: translateX(1px); } 26%, 91.9% { transform: none; } 92%, 93.5% { transform: scaleY(.1); } 94%, 100% { transform: none; } }
@keyframes epeyr { 0%, 11% { transform: none; } 12%, 17% { transform: translateX(-1px); } 18%, 25% { transform: translateX(1px); } 26%, 43% { transform: none; } 44%, 54% { transform: scaleY(.1); } 55%, 81% { transform: none; } 82%, 90% { transform: translateX(-1px); } 91%, 91.9% { transform: none; } 92%, 93.5% { transform: scaleY(.1); } 94%, 100% { transform: none; } }
@keyframes epsmile { 0%, 41% { opacity: 0; } 42%, 58% { opacity: 1; } 59%, 100% { opacity: 0; } }
@keyframes epbrow { 0%, 65% { opacity: 0; } 66%, 74% { opacity: 1; } 75%, 100% { opacity: 0; } }
@keyframes eptongue { 0%, 81% { opacity: 0; } 82%, 90% { opacity: 1; } 91%, 100% { opacity: 0; } }
@keyframes epsteam { 0% { opacity: 0; transform: translateY(1px); } 50% { opacity: 1; transform: translateY(0); } 100% { opacity: 0; transform: translateY(-1px); } }
@keyframes epzz { 0% { opacity: 0; transform: translate(0, 1px); } 60% { opacity: 1; } 100% { opacity: 0; transform: translate(0, -2px); } }
@keyframes epcf { 0%, 49% { opacity: 1; transform: translateY(0); } 50%, 100% { opacity: .4; transform: translateY(1px); } }
@media (prefers-reduced-motion: reduce) { .ep-pixel * { animation: none !important; } }
.ep-rpgprev { width: 96px; height: 96px; border-radius: 12px; overflow: hidden; margin: 4px 0 8px; } .ep-rpgprev .ep-pixel { width: 100%; height: 100%; } .ep-rpgmv { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; } .ep-mvb { border: 1px solid rgba(128,128,128,.35); border-radius: 999px; background: none; padding: 3px 10px; font-size: 12px; cursor: pointer; color: inherit; } .ep-mvb.is-on { background: #3F73B5; color: #fff; border-color: #3F73B5; }
/* Meeting-Ansicht */
.pm-meetdoc { max-width: 820px; margin: 14px 0; padding: 22px 26px; background: var(--background-primary, #FFFDF7); border-radius: 14px; box-shadow: 0 1px 0 rgba(0,0,0,.05), 0 8px 24px -14px rgba(0,0,0,.25); }
.pm-meettitle { width: 100%; font-size: 24px; font-weight: 800; border: 0; background: transparent; padding: 2px 0; outline: none; } .pm-meettitle:focus { box-shadow: 0 2px 0 #3F73B5; }
.pm-meetmeta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 6px 0 14px; } .pm-meetppl { display: flex; flex-wrap: wrap; gap: 10px; } .pm-meetp { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; }
.pm-meetitem { padding: 10px 0; border-top: 1px solid rgba(0,0,0,.08); } .pm-meetitem.is-done .pm-meetct, .pm-meetitem.is-done .pm-meetfree { text-decoration: line-through; opacity: .55; }
.pm-meettop { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; } .pm-meetnr { color: #8a8272; font-weight: 700; } .pm-meetct { font-weight: 700; } .pm-meetfree { flex: 1; font-weight: 700; border: 0; background: transparent; min-width: 160px; }
.pm-meetacts { margin-left: auto; display: flex; gap: 2px; opacity: .5; } .pm-meetitem:hover .pm-meetacts { opacity: 1; }
.pm-meetnote { width: 100%; margin-top: 6px; resize: none; overflow: hidden; line-height: 1.45; min-height: 34px; }
.pm-meetfoot { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 4px; opacity: .6; } .pm-meetitem:hover .pm-meetfoot, .pm-meetitem:focus-within .pm-meetfoot { opacity: 1; }
.pm-meetadd input { width: 100%; margin-top: 10px; } .pm-meetempty { padding: 14px 0; } .pm-meetsel { max-width: 260px; }
@media print { .ep-top, .pm-boardbar, .pm-tabs, .pm-meetfoot, .pm-meetacts, .pm-meetadd { display: none !important; } .pm-meetdoc { box-shadow: none; max-width: none; } }
.pm-meetfoot { visibility: hidden; opacity: 1; margin-top: 0; } .pm-meetitem:hover .pm-meetfoot, .pm-meetitem:focus-within .pm-meetfoot { visibility: visible; }
.pm-meetnote { border: 0 !important; border-bottom: 1px dashed rgba(0,0,0,.15) !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; padding: 4px 0 !important; } .pm-meetnote:focus { border-bottom-color: #3F73B5 !important; }
.pm-meetppl { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 4px 0 12px; } .pm-meetp .pm-av { margin-right: 4px; vertical-align: middle; } .pm-meetdoc input[type=time], .pm-meetdoc input[type=date] { width: auto; }
.pm-archnote { font-size: 12px; color: #8A4A10; background: #F8EBA6; border-radius: 8px; padding: 4px 10px; margin-bottom: 10px; display: inline-block; } .pm-changed { flex-basis: 100%; font-size: 12px; font-style: italic; color: #8A4A10; }
.pm-meetdoc.is-arch input:disabled, .pm-meetdoc.is-arch textarea:read-only { opacity: 1; color: inherit; -webkit-text-fill-color: currentColor; }
.pm-meetgrip { cursor: grab; color: #a39a88; display: inline-flex; margin-left: -6px; } .pm-meetgrip svg { width: 16px; height: 16px; } .pm-meetitem.is-dragging { opacity: .4; } .pm-meetitem.is-dropt { box-shadow: 0 -2px 0 #3F73B5; } .pm-meetitem.is-dropb { box-shadow: 0 2px 0 #3F73B5; }
.pm-meetdoc .pm-tag { background: rgba(128,128,128,.22); color: inherit; } .pm-meetdoc .pm-x { cursor: pointer; margin-left: 4px; }
.pm-meetarch h2 { margin: 0 0 8px; } .pm-archh { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: #8a8272; margin: 14px 0 4px; }
.pm-archrow { display: flex; align-items: center; gap: 12px; padding: 10px 8px; border-top: 1px solid rgba(128,128,128,.2); border-radius: 8px; cursor: pointer; flex-wrap: wrap; } .pm-archrow:hover, .pm-archrow:focus { background: rgba(128,128,128,.12); outline: none; }
.pm-archd { font-variant-numeric: tabular-nums; min-width: 190px; color: #8a8272; } .pm-archt { font-weight: 700; flex: 1; min-width: 140px; } .pm-archp { display: inline-flex; gap: 2px; } .pm-archp .pm-av { margin-right: -2px; }
.ep-btn.is-on { background: rgba(63,115,181,.18); }
/* Figuren: Farbwahl */
.ep-rpgsw { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; margin-top: 8px; } .ep-rpgsw > span { width: 70px; font-size: 12px; }
.ep-sw { width: 24px; height: 24px; border-radius: 50%; border: 2px solid transparent; box-shadow: inset 0 0 0 1px rgba(0,0,0,.25); cursor: pointer; padding: 0; line-height: 1; } .ep-sw.is-on { border-color: #3F73B5; box-shadow: 0 0 0 2px #fff, inset 0 0 0 1px rgba(0,0,0,.25); }
/* Smartphone-Feinschliff */
@media (max-width: 760px) {
  .ep-user > .ep-btn span:not(.ep-hdav) { display: none; } .ep-user { gap: 4px; }
  .pm-boardbar { flex-wrap: wrap; gap: 6px; } .pm-boardbar .ep-search, .pm-filter { flex: 1 1 100%; max-width: none; width: 100%; }
  .ep-pagehead + * .ep-search, .pm-head .ep-search, .pm-quick, .pm-search { max-width: none; width: 100%; }
  .ep-btn, .pm-tab, .pm-addbtn { min-height: 40px; } .pm-card { padding: 12px; }
  .pm-meetdoc { padding: 14px; border-radius: 12px; margin: 10px 0; } .pm-meettitle { font-size: 20px; } .pm-meetdoc input[type=time], .pm-meetdoc input[type=date] { flex: 1 1 40%; min-width: 120px; }
  .pm-archd { min-width: 0; flex-basis: 100%; } .pm-meettop { gap: 6px; } .pm-meetct { flex-basis: calc(100% - 90px); }
  .ep-rpgbtn { width: 48px; height: 48px; } .ep-modal { max-width: 96vw !important; }
}
@media (hover: none) { .pm-meetfoot { visibility: visible !important; } .pm-meetacts { opacity: 1; } .pm-meetfoot .ep-btn { min-height: 38px; } }
@media (max-width: 760px) { .ep-pmmain .ep-pagehead .ep-tools { flex: 1 1 100%; display: flex; flex-wrap: wrap; gap: 8px; } .pm-qwrap { flex: 1 1 100%; display: flex; } .pm-qwrap input, .ep-pmmain .ep-pagehead .ep-tools > .ep-search, .ep-pmmain .ep-pagehead .ep-tools > div:last-child { width: 100%; max-width: none; } .ep-pmmain .ep-pagehead .ep-tools > * { flex: 1 1 100%; } }
/* Hochformat-Smartphone */
.pm-dash { grid-template-columns: repeat(auto-fill, minmax(min(330px, 100%), 1fr)); }
@media (max-width: 900px) { .pm-standup { grid-template-columns: minmax(0, 1fr); } .pm-stcol, .pm-dbox { min-width: 0; } }
.ep-ucards { display: flex; flex-direction: column; gap: 10px; } .ep-ucard { background: var(--background-primary, #FFFDF7); border-radius: 12px; padding: 12px 14px; box-shadow: 0 1px 0 rgba(0,0,0,.06); } .ep-ucardt { display: flex; align-items: center; justify-content: space-between; gap: 8px; } .ep-ucname { font-weight: 700; font-size: 16px; } .ep-ucmail { word-break: break-all; margin: 2px 0; font-size: 14px; } .ep-ucacts { display: flex; gap: 6px; margin-top: 8px; }
@media (max-width: 480px) { .pm-qwrap input::placeholder, .ep-search::placeholder { text-overflow: ellipsis; } .ep-pagehead h1 { font-size: 22px; } .ep-top { padding-left: 8px; padding-right: 8px; } }
/* Tablet / Smartphone quer: kompakte Navigation */
@media (max-width: 1000px) {
  .ep-top { padding: 8px 12px; gap: 8px; flex-wrap: wrap; } .ep-brand span { display: none; } .ep-navlink span:not(.ep-ic) { display: none; } .ep-navlink { padding: 6px 10px; }
  .ep-main { padding-left: 14px; padding-right: 14px; } .ep-user .ep-btn span:not(.ep-hdav) { display: none; }
}
/* Dialoge auf dem Handy: Felder und Knopfreihen umbrechen */
.ep-modal input, .ep-modal select, .ep-modal textarea { max-width: 100%; box-sizing: border-box; }
.ep-modal .ep-passrow, .ep-modal .ep-row { flex-wrap: wrap; }
@media (max-width: 600px) { .modal-container .ep-modal, .ep-modal { width: 94vw !important; max-width: 94vw !important; } .ep-modal [class*="row"] { flex-wrap: wrap; } .ep-modal input[type=text], .ep-modal input[type=email], .ep-modal input[type=password], .ep-modal select { width: 100%; } .ep-foot { flex-wrap: wrap; } }
.ep-prow { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; } .ep-prow input { flex: 1 1 160px; min-width: 0; }

.pm-asana-row { display: flex; justify-content: space-between; gap: 10px; padding: 5px 2px; text-decoration: none; color: inherit; border-top: 1px solid rgba(128,128,128,.18); }
.pm-asana-row:first-child { border-top: 0; }
.pm-asana-t { min-width: 0; overflow-wrap: anywhere; }
.pm-asana-m { flex: none; font-size: .85em; text-align: right; max-width: 45%; }
.pm-asana-m .is-late { color: #d6453d; font-weight: 600; }
@media (max-width: 480px) { .pm-asana-row { flex-direction: column; gap: 0; } .pm-asana-m { text-align: left; max-width: none; } }

/* Maskottchen */
.ep-coon { display: flex; flex-direction: row; align-items: center; justify-content: center; gap: 12px; margin: 2px 0 12px; text-align: left; }
.ep-coon-fig { background: none; border: 0; padding: 0; cursor: pointer; line-height: 0; flex: none; }
.ep-coon-wrap, .ep-coon-sleep { position: relative; display: inline-block; }
.ep-coon-blink { position: absolute; left: 0; top: 0; opacity: 0; animation: ep-coon-blink 4.5s steps(1) infinite; }
.ep-coon-z { position: absolute; left: 63px; top: 2px; animation: ep-coon-z 3s steps(4) infinite; }
.ep-coon-fig.is-hop svg { animation: ep-coon-hop .35s steps(3) 1; }
.ep-coon-bubble { position: relative; font-size: .92em; line-height: 1.4; padding: 8px 14px; border-radius: 14px; border: 1px solid rgba(128,128,128,.4); background: var(--background-secondary, rgba(128,128,128,.1)); max-width: 26em; }
.ep-coon-bubble::before { content: ''; position: absolute; left: -7px; top: 50%; width: 12px; height: 12px; margin-top: -6px; background: inherit; border-left: 1px solid rgba(128,128,128,.4); border-bottom: 1px solid rgba(128,128,128,.4); transform: rotate(45deg); }
@keyframes ep-coon-blink { 0%, 92%, 100% { opacity: 0; } 93%, 97% { opacity: 1; } }
@keyframes ep-coon-z { 0% { opacity: 0; transform: translateY(8px); } 40%, 70% { opacity: 1; } 100% { opacity: 0; transform: translateY(-6px); } }
@keyframes ep-coon-hop { 0% { transform: translateY(0); } 50% { transform: translateY(-8px); } 100% { transform: translateY(0); } }

.ep-foldhead { cursor: pointer; user-select: none; }
.ep-fold { display: inline-flex; align-items: center; margin-right: 2px; opacity: .8; line-height: 0; }
.ep-fold .ep-ic svg { width: 20px; height: 20px; stroke-width: 2.4; }
.is-folded > :not(.pm-dhead) { display: none; }

.pm-asana-chip { text-decoration: none; color: inherit; display: inline-flex; align-items: center; gap: 3px; }
.pm-asana-chip .ep-ic svg { width: 12px; height: 12px; }

.ep-ttwin { position: fixed; right: 12px; bottom: 52px; z-index: 2000; background: var(--background-primary, #262626); color: inherit; border: 1px solid rgba(128,128,128,.4); border-radius: 10px; padding: 6px 8px 8px; box-shadow: 0 6px 24px rgba(0,0,0,.35); max-width: calc(100vw - 24px); }
.ep-ttwin-h { cursor: move; touch-action: none; user-select: none; display: flex; align-items: center; gap: 10px; font-size: .75em; font-variant-numeric: tabular-nums; margin-bottom: 4px; }
.ep-ttwin-h span:first-child { font-weight: 700; }
.ep-ttwin-h button { margin-left: auto; background: none; border: 0; padding: 0 2px; cursor: pointer; color: inherit; opacity: .6; }
.ep-tt-wrap { display: flex; gap: 8px; align-items: flex-start; }
.ep-tt-wrap canvas { border: 1px solid rgba(128,128,128,.35); border-radius: 3px; display: block; }
.ep-tt-side { display: flex; flex-direction: column; gap: 4px; align-items: flex-start; font-size: var(--tt-fs, 11px); }
.ep-tt-msg { line-height: 1.3; max-width: 7em; font-size: .85em; }
.ep-tt-rs { position: absolute; right: 0; bottom: 0; width: 16px; height: 16px; cursor: nwse-resize; touch-action: none; background: linear-gradient(135deg, transparent 55%, rgba(128,128,128,.6) 55%, rgba(128,128,128,.6) 65%, transparent 65%, transparent 78%, rgba(128,128,128,.6) 78%, rgba(128,128,128,.6) 88%, transparent 88%); }
.ep-tt-pad { display: flex; gap: 4px; justify-content: center; margin-top: 6px; }
.ep-tt-pad button { min-width: 36px; min-height: 34px; padding: 0 6px; }
#ep-coonmini { position: fixed; right: 8px; bottom: 6px; z-index: 900; background: none; border: 0; padding: 0; line-height: 0; opacity: .55; cursor: default; -webkit-tap-highlight-color: transparent; }
#ep-coonmini:hover { opacity: .9; }
#ep-coonmini .ep-coon-sleep > svg { width: 56px; height: 28px; }
#ep-coonmini .ep-coon-z { left: 42px; top: 1px; }
#ep-coonmini .ep-coon-z svg { width: 6px; height: 8px; }

/* schlanke, einklappbare Dashboard-Leisten (Mail, Asana) */
.pm-dbox.pm-slim { border-top-width: 2px; border-radius: 10px; padding: 6px 12px; }
.pm-slim > .pm-dhead { margin-bottom: 4px; font-weight: 600; font-size: .95em; gap: 6px; min-height: 26px; }
.pm-slim.is-folded > .pm-dhead { margin-bottom: 0; }
.pm-slim .pm-mailref { padding: 0 6px; font-size: .8em; border-color: transparent; opacity: .75; }
.pm-slim .pm-mailref:hover { opacity: 1; border-color: var(--background-modifier-border); }
.pm-slim .pm-colcount { font-weight: 500; opacity: .7; }
.pm-mailhost { margin-bottom: 6px; }

@media (max-width: 480px) { .ep-coon { flex-direction: column; } .ep-coon-bubble::before { left: 50%; top: -7px; margin: 0 0 0 -6px; transform: rotate(135deg); } }

.pm-kalinfo { font-size: .85em; margin-top: 4px; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }

/* Live-Modus */
.ep-livebar { display: flex; align-items: center; gap: 10px; padding: 5px 14px; margin: 0 0 6px; background: rgba(214,69,61,.12); border-bottom: 1px solid rgba(214,69,61,.35); text-decoration: none; color: inherit; font-size: .9em; flex-wrap: wrap; }
.ep-livedot { width: 9px; height: 9px; border-radius: 50%; background: #d6453d; flex: none; animation: ep-livepulse 2s ease-in-out infinite; }
.ep-livetitle { font-weight: 700; }
.ep-livetxt { opacity: .85; flex: 1; min-width: 0; }
.ep-livego { opacity: .7; margin-left: auto; }
@keyframes ep-livepulse { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
.ep-live { max-width: 760px; margin-left: auto; margin-right: auto; }
.ep-lv-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin: 6px 0 10px; }
.ep-lv-head h1 { font-size: 1.25em; margin: 0; }
.ep-lv-clock { text-align: right; flex: none; }
.ep-lv-time { font-size: 1.6em; font-weight: 700; font-variant-numeric: tabular-nums; line-height: 1.1; }
.ep-lv-list { display: flex; flex-direction: column; gap: 6px; }
.ep-lv-sec { font-size: .72em; letter-spacing: .1em; font-weight: 700; opacity: .6; text-transform: uppercase; margin: 12px 0 0; }
.ep-lv-item { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 12px; align-items: start; padding: 8px 12px; border: 1px solid var(--background-modifier-border); border-left: 4px solid transparent; border-radius: 8px; background: var(--background-secondary); }
.ep-lv-item.is-past { opacity: .5; }
.ep-lv-item.is-now { border-color: rgba(214,69,61,.55); border-left-color: #d6453d; background: rgba(214,69,61,.07); }
.ep-lv-item.is-pause { padding-top: 5px; padding-bottom: 5px; }
.ep-lv-t { font-size: .8em; font-variant-numeric: tabular-nums; opacity: .65; }
.ep-lv-ti { display: flex; justify-content: space-between; gap: 10px; align-items: baseline; font-weight: 600; }
.ep-lv-left { font-size: .8em; font-weight: 600; white-space: nowrap; }
.ep-lv-left.is-soon { color: #d6453d; }
.ep-lv-meta { display: flex; gap: 10px; flex-wrap: wrap; font-size: .8em; }
.ep-lv-prog { height: 0; overflow: hidden; border-radius: 3px; background: rgba(128,128,128,.25); }
.ep-lv-item.is-now .ep-lv-prog { height: 5px; margin-top: 6px; }
.ep-lv-progf { height: 100%; width: 0; background: #5E9E5A; transition: width 1s linear; }
.ep-lv-progf.is-soon { background: #d6453d; }
.ep-lv-r textarea { width: 100%; resize: none; min-height: 34px; font-size: .9em; background: transparent; border: 1px dashed rgba(128,128,128,.4); border-radius: 6px; padding: 5px 8px; box-sizing: border-box; overflow: hidden; }
.ep-lv-r textarea:focus { border-style: solid; background: var(--background-primary, transparent); }
@media (max-width: 480px) { .ep-lv-item { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 480px) { .ep-lv-head { flex-direction: column; } .ep-lv-clock { text-align: left; } }

.ep-livenw { background: none; border: 1px solid rgba(214,69,61,.45); border-radius: 6px; padding: 1px 8px; font-size: .85em; cursor: pointer; color: inherit; }
.ep-livenw:hover { background: rgba(214,69,61,.12); }
.ep-evbar .is-live { color: #d6453d; }
.ep-livewin .ep-top, .ep-livewin #ep-livebar, .ep-livewin .ep-lv-bar { display: none !important; }
.ep-livewin .ep-live { padding-top: 8px; }

.ep-onair { display: inline-flex; align-items: center; gap: 7px; padding: 3px 12px 3px 10px; border-radius: 6px; border: 2px solid rgba(128,128,128,.5); color: rgba(128,128,128,.9); font-weight: 800; letter-spacing: .14em; font-size: .78em; margin-bottom: 6px; }
.ep-onair-dot { width: 10px; height: 10px; border-radius: 50%; background: currentColor; }
.ep-onair.is-on { background: #d6453d; border-color: #d6453d; color: #fff; box-shadow: 0 0 0 0 rgba(214,69,61,.6); animation: ep-onair-glow 2s ease-in-out infinite; }
.ep-onair.is-on .ep-onair-dot { background: #fff; animation: ep-livepulse 1.2s ease-in-out infinite; }
@keyframes ep-onair-glow { 0%, 100% { box-shadow: 0 0 0 0 rgba(214,69,61,.55); } 50% { box-shadow: 0 0 14px 3px rgba(214,69,61,.55); } }

.ep-ttwin-h button:first-of-type { margin-left: auto; }
.ep-ttwin-h button + button { margin-left: 0; }

/* Morgenansicht */
.ep-mgwrap { max-width: 640px; margin: 0 auto; display: flex; flex-direction: column; gap: 22px; }
.ep-mgsec h3 { margin: 0 0 8px; font-size: 16px; }
.ep-mgcap { font-size: 12.5px; margin: 6px 0; } .ep-mgcap.is-over { color: #D6453D; font-weight: 600; }
.ep-mglvls { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; }
.ep-mglv { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 10px 4px; background: var(--background-secondary); border: 2px solid transparent; border-radius: 12px; cursor: pointer; color: inherit; font: inherit; }
.ep-mglv:hover { border-color: var(--c); } .ep-mglv.is-on { border-color: var(--c); background: color-mix(in srgb, var(--c) 14%, var(--background-secondary)); }
.ep-mgdot { width: 26px; height: 26px; border-radius: 50%; background: var(--c); display: inline-block; flex: none; }
.ep-mglt { font-size: 11.5px; text-align: center; line-height: 1.2; }
.ep-mgnote { width: 100%; margin-top: 4px; }
.ep-mgrow { display: flex; align-items: center; gap: 8px; padding: 5px 4px; border-radius: 8px; } .ep-mgrow.is-done .ep-mgt { text-decoration: line-through; opacity: .55; }
.ep-mgt { flex: 1; min-width: 0; } .ep-mgt.is-link { cursor: pointer; } .ep-mgt.is-link:hover { text-decoration: underline; }
.ep-mgx { background: none; border: 0; padding: 2px 4px; cursor: pointer; color: var(--text-muted); border-radius: 6px; } .ep-mgx:hover { color: var(--text-normal); background: var(--background-modifier-hover); }
.ep-mgc { cursor: pointer; opacity: .85; } .ep-mgc:hover { background: var(--background-modifier-hover); opacity: 1; }
.ep-mgcg { font-size: 11.5px; text-transform: uppercase; letter-spacing: .04em; color: var(--text-muted); margin: 10px 0 2px; } .ep-mgcg.is-red { color: #D6453D; }
.ep-mgadd input { width: 100%; }
.ep-mgterm { display: flex; flex-wrap: wrap; gap: 6px; margin: 4px 0; } .ep-mgev { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; padding: 3px 10px; border-radius: 999px; background: var(--background-secondary); color: inherit; text-decoration: none; }
.ep-mgfoot { display: flex; justify-content: flex-end; }
.ep-mgvh { display: flex; align-items: center; } .ep-mgvh h3 { flex: 1; margin: 0; }
.ep-mggrid { display: grid; grid-template-columns: repeat(14, 1fr); gap: 4px; margin-top: 8px; }
.ep-mgcell { aspect-ratio: 1; border-radius: 4px; } .ep-mgcell.is-empty { background: var(--background-secondary); } .ep-mgcell.is-today { outline: 2px solid var(--text-muted); outline-offset: 1px; }
.ep-mgwarn { display: flex; gap: 12px; padding: 12px 14px; border-radius: 12px; background: color-mix(in srgb, #D6453D 12%, var(--background-secondary)); border: 1px solid #D6453D; font-size: 13.5px; margin-bottom: 16px; line-height: 1.45; } .ep-mgwarn .ep-ic { color: #D6453D; margin-top: 2px; }
.ep-mghost:not(:empty) { margin-bottom: 14px; }
.ep-mgnudge { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; color: var(--text-muted); text-decoration: none; padding: 4px 2px; } .ep-mgnudge:hover { color: var(--text-normal); }
.ep-mgdash { background: var(--background-secondary); border-radius: 12px; padding: 8px 12px; }
.ep-mgdh { display: flex; align-items: center; gap: 8px; margin-bottom: 2px; } .ep-mgdh .ep-mgdot { width: 12px; height: 12px; } .ep-mgdt { font-weight: 700; flex: 1; } .ep-mgedit { font-size: 12px; color: var(--text-muted); }
@media (max-width: 480px) { .ep-mglt { font-size: 10.5px; } .ep-mggrid { grid-template-columns: repeat(7, 1fr); } }
