:root{--bg: #f5f5f7;--white: #ffffff;--text: #1d1d1f;--text-muted: #86868b;--border: #e5e5e7;--cat-hoch: #ff6b35;--cat-hoch-bg: #fff3ed;--cat-wichtig: #0071e3;--cat-wichtig-bg: #edf4fd;--cat-weitere: #7b42c6;--cat-weitere-bg: #f3edfd;--success: #34c759;--danger: #ff3b30;--shadow: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Roboto,sans-serif;background:var(--bg);color:var(--text);min-height:100dvh;-webkit-font-smoothing:antialiased}.container{max-width:800px;margin:0 auto;padding:0 16px 100px}header{position:sticky;top:0;z-index:100;background:#f5f5f7d9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:16px 0 12px}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}header h1{font-size:1.5rem;font-weight:700;letter-spacing:-.3px}.header-logo{display:flex;align-items:center;justify-content:space-between;width:100%}.logo-text{display:flex;flex-direction:column;line-height:1}.logo-truu{font-family:Roboto,sans-serif;font-weight:300;color:var(--text);font-size:1.2rem;line-height:1.1}.logo-tasks{font-family:Roboto,sans-serif;font-weight:700;color:var(--text);font-size:1.2rem;line-height:1.1}.stats-row{display:flex;align-items:center;gap:16px;font-size:.8rem;color:var(--text-muted);margin-bottom:10px}.stat-num{font-weight:600;color:var(--text)}.progress-bar{width:100%;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--cat-hoch),var(--cat-wichtig),var(--cat-weitere));border-radius:2px;transition:width .5s ease}.view-toggle{display:flex;gap:4px;padding:4px 0 10px;align-items:center}.view-toggle-left{display:flex;gap:4px}.lang-switcher{display:flex;gap:2px;margin-left:auto}.lang-btn{width:28px;height:28px;border:1.5px solid var(--border);border-radius:6px;background:var(--white);cursor:pointer;font-size:.85rem;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0}.lang-btn:hover{border-color:#999}.lang-btn.active{border-color:#e65100;background:#fff3e0}.view-btn{padding:6px 14px;border:1.5px solid var(--border);border-radius:8px;font-size:.78rem;font-weight:600;cursor:pointer;background:var(--white);color:var(--text-muted);transition:all .2s;font-family:Roboto,sans-serif}.view-btn:hover{border-color:#999}.view-btn.active{background:var(--text);color:#fff;border-color:var(--text)}.category-tabs{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;padding:14px 0 10px}.cat-tab{aspect-ratio:1 / 1;border:none;border-radius:14px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:6px 4px;position:relative;overflow:hidden;font-family:Roboto,sans-serif}.cat-tab .label{font-family:Roboto,sans-serif;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;line-height:1;margin-bottom:4px;opacity:.85}.cat-tab .count{font-family:Roboto,sans-serif;font-weight:900;line-height:1;font-size:2rem}.cat-tab-all{background:#d1d1d6;color:#555}.cat-tab-all.active{background:#a0a0a5;color:#fff;box-shadow:0 4px 12px #00000026}.cat-tab-hoch{background:#e53935;color:#fff}.cat-tab-hoch.active{background:#c62828;color:#fff;box-shadow:0 4px 12px #e5393573}.cat-tab-wichtig{background:#fb8c00;color:#fff}.cat-tab-wichtig.active{background:#e65100;color:#fff;box-shadow:0 4px 12px #fb8c0073}.cat-tab-weitere{background:#fdd835;color:#5d4037}.cat-tab-weitere.active{background:#f9a825;color:#3e2723;box-shadow:0 4px 12px #fdd83573}.cat-tab-done{background:#43a047;color:#fff}.cat-tab-done.active{background:#2e7d32;color:#fff;box-shadow:0 4px 12px #43a04773}.cat-tab-fuerMich{background:#1e88e5;color:#fff}.cat-tab-fuerMich.active{background:#1565c0;color:#fff;box-shadow:0 4px 12px #1e88e573}.cat-tab-delegiert{background:#1e88e5;color:#fff}.cat-tab-delegiert.active{background:#1565c0;color:#fff;box-shadow:0 4px 12px #1e88e573}.cat-tab-personen{background:#8e24aa;color:#fff}.cat-tab-personen.active{background:#6a1b9a;color:#fff;box-shadow:0 4px 12px #8e24aa73}.tag-filter-bar{display:flex;align-items:center;gap:6px;padding:4px 0 10px;flex-wrap:wrap}.tag-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600;cursor:pointer;border:1.5px solid var(--border);background:var(--white);color:var(--text-muted);transition:all .2s;font-family:Roboto,sans-serif}.tag-chip:hover{border-color:#999}.tag-chip.active{border-color:currentColor;background:currentColor;color:#fff}.tag-chip .tag-icon{font-size:.85rem}.tag-chip-add{border-style:dashed;font-size:.7rem;opacity:.7}.tag-chip-add:hover{opacity:1}.person-header{display:flex;align-items:center;gap:10px;padding:14px 4px 8px;font-weight:700;font-size:.9rem}.person-icon{width:28px;height:28px;border-radius:50%;background:#8e24aa;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}.person-header.known-user .person-icon{background:#e65100}.person-header.known-user{color:#e65100}.person-header.unknown-user .person-icon{background:#8e24aa}.person-header.unknown-user{color:#8e24aa}.person-count{font-size:.75rem;font-weight:600;color:var(--text-muted);margin-left:auto}.search-bar{position:relative;margin-bottom:12px}.search-bar input{width:100%;padding:10px 14px 10px 36px;border:1.5px solid var(--border);border-radius:10px;font-size:.9rem;background:var(--white);color:var(--text);outline:none;transition:border-color .2s}.search-bar input:focus{border-color:var(--cat-wichtig)}.search-bar input::placeholder{color:var(--text-muted)}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:.85rem;pointer-events:none}.toolbar-row{display:flex;align-items:center;justify-content:space-between;padding:4px 0 8px;gap:6px;flex-wrap:wrap}.sort-btn{padding:5px 12px;border:1.5px solid var(--border);border-radius:8px;font-size:.75rem;font-weight:600;cursor:pointer;background:var(--white);color:var(--text-muted);transition:all .2s;display:flex;align-items:center;gap:4px;font-family:Roboto,sans-serif}.sort-btn:hover{border-color:#999}.sort-btn.active{background:var(--text);color:#fff;border-color:var(--text)}.pdf-btn{padding:5px 12px;border:1.5px solid #e53935;border-radius:8px;font-size:.75rem;font-weight:600;cursor:pointer;background:var(--white);color:#e53935;transition:all .2s;display:flex;align-items:center;gap:4px;font-family:Roboto,sans-serif}.pdf-btn:hover{background:#e53935;color:#fff}.add-section{background:var(--white);border-radius:14px;padding:14px;margin:8px 0 16px;box-shadow:var(--shadow)}.add-row{display:flex;gap:8px}.add-section input,.add-section select{flex:1;padding:10px 14px;border:1.5px solid var(--border);border-radius:10px;font-size:.9rem;color:var(--text);background:var(--bg);outline:none;transition:border-color .2s;font-family:inherit}.add-section input:focus{border-color:var(--cat-wichtig)}.add-section input::placeholder{color:var(--text-muted)}.add-section .add-btn{padding:10px 16px;border:none;border-radius:10px;font-size:1.1rem;font-weight:700;cursor:pointer;color:#fff;transition:opacity .2s}.add-btn:active{opacity:.7}.add-extra-row{display:flex;gap:8px;margin-top:8px}.add-extra-row input{font-size:.85rem;padding:8px 12px}.add-extra-row input[type=date]{flex:.8}.add-cat-row{display:flex;gap:6px;margin-top:10px}.add-cat-btn{flex:1;padding:6px 0;border:1.5px solid var(--border);border-radius:8px;font-size:.78rem;font-weight:600;cursor:pointer;text-align:center;background:#fff;transition:all .2s}.add-cat-btn[data-c=hoch]{color:#e53935}.add-cat-btn[data-c=hoch].active{background:#e53935;color:#fff;border-color:#e53935}.add-cat-btn[data-c=wichtig]{color:#fb8c00}.add-cat-btn[data-c=wichtig].active{background:#fb8c00;color:#fff;border-color:#fb8c00}.add-cat-btn[data-c=weitere]{color:#b8860b}.add-cat-btn[data-c=weitere].active{background:#fdd835;color:#3e2723;border-color:#fdd835}.section-header{display:flex;align-items:center;gap:10px;padding:12px 4px 8px;font-weight:700;font-size:.9rem}.section-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.task-list{list-style:none}.task-card{background:var(--white);border-radius:12px;margin-bottom:6px;box-shadow:var(--shadow);transition:all .2s;animation:fadeIn .25s ease;position:relative;overflow:visible}.task-card.done{opacity:.45}.task-card.done .task-name{text-decoration:line-through;color:var(--text-muted)}.task-row{display:grid;grid-template-columns:26px 22px 1fr auto auto auto;gap:8px;align-items:center;padding:10px 10px 10px 14px;min-height:48px}.task-number{font-size:.72rem;font-weight:700;color:var(--text-muted);width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:var(--bg);border-radius:7px;flex-shrink:0}.checkbox{width:22px;height:22px;border:2px solid var(--border);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s;background:transparent}.checkbox:hover{border-color:var(--success)}.task-card.done .checkbox{background:var(--success);border-color:var(--success)}.task-card.done .checkbox:after{content:"";width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) translateY(-1px)}.task-name{font-size:.88rem;line-height:1.3;word-break:break-word;min-width:0}.inline-field{position:relative;flex-shrink:0}.inline-frist{width:100px;padding:4px 6px;border:1.5px solid transparent;border-radius:6px;font-size:.75rem;color:var(--text);background:var(--bg);outline:none;transition:border-color .2s;font-family:inherit;cursor:pointer}.inline-frist:focus{border-color:var(--cat-wichtig);background:var(--white)}.inline-frist::-webkit-calendar-picker-indicator{opacity:.5;cursor:pointer}.inline-frist.frist-ok{color:#2e7d32;font-weight:600;background:#e8f5e9}.inline-frist.frist-soon{color:#e65100;font-weight:600;background:#fff3e0}.inline-frist.frist-overdue{color:#c62828;font-weight:700;background:#ffebee}.inline-delegiert{width:110px;padding:4px 6px;border:1.5px solid transparent;border-radius:6px;font-size:.75rem;color:#666;background:var(--bg);outline:none;transition:border-color .2s;font-family:inherit}.inline-delegiert:focus{border-color:var(--cat-wichtig);background:var(--white)}.inline-delegiert.has-value{color:#555;font-weight:600;background:#f0f0f0}.inline-delegiert.known-user{color:#e65100;font-weight:600;background:#fff3e0;border-color:#e6510033}.inline-delegiert.unknown-user{color:#8e24aa;font-weight:600;background:#f3e5f5;border-color:#8e24aa33}.inline-delegiert::placeholder{color:var(--text-muted);font-weight:400}.expand-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.7rem;flex-shrink:0;transition:all .2s;cursor:pointer;border:none;background:transparent;border-radius:6px}.expand-btn:hover{background:var(--bg)}.task-card.expanded .expand-btn{transform:rotate(180deg)}.cat-indicator{width:4px;position:absolute;left:0;top:0;bottom:0;border-radius:12px 0 0 12px}.cat-indicator.hoch{background:#e53935}.cat-indicator.wichtig{background:#fb8c00}.cat-indicator.weitere{background:#fdd835}@media (max-width: 520px){.task-row{grid-template-columns:26px 22px 1fr auto;grid-template-rows:auto auto}.task-name{grid-column:3 / 4}.inline-fields-mobile{grid-column:3 / 5;display:flex;gap:6px;padding-top:2px}.expand-btn{grid-row:1;grid-column:4}.category-tabs{grid-template-columns:repeat(4,1fr)}}@media (min-width: 521px){.inline-fields-mobile{display:contents}}.edit-panel{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s ease;padding:0 14px;background:var(--bg);border-top:1px solid transparent}.task-card.expanded .edit-panel{max-height:600px;padding:12px 14px;border-top-color:var(--border)}.edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.edit-field label{display:block;font-size:.72rem;font-weight:600;color:var(--text-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.3px}.edit-field input,.edit-field textarea{width:100%;padding:8px 10px;border:1.5px solid var(--border);border-radius:8px;font-size:.85rem;color:var(--text);background:var(--white);outline:none;transition:border-color .2s;font-family:inherit}.edit-field input:focus,.edit-field textarea:focus{border-color:var(--cat-wichtig)}.edit-field-full,.edit-tags{grid-column:1 / -1}.edit-tags-list{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.edit-tag{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:12px;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .2s;border:1.5px solid transparent}.edit-tag.selected{border-color:currentColor}.edit-tag .remove-tag{font-size:.65rem;opacity:.7;cursor:pointer}.edit-tag .remove-tag:hover{opacity:1}.status-badge{display:inline-block;font-size:.6rem;font-weight:700;text-transform:uppercase;padding:1px 6px;border-radius:4px;margin-right:5px;letter-spacing:.3px;vertical-align:middle}.status-in_arbeit{background:#fff3e0;color:#e65100}.status-warte{background:#f3e5f5;color:#8e24aa}.status-erledigt{background:#e8f5e9;color:#2e7d32}.edit-status-row{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.edit-status-row label{font-size:.65rem;font-weight:700;text-transform:uppercase;color:var(--text-muted);letter-spacing:.5px;margin-bottom:4px;display:block}.edit-status-btns{display:flex;gap:4px}.edit-status-btn{flex:1;padding:6px 4px;border-radius:8px;font-size:.72rem;font-weight:600;cursor:pointer;border:1.5px solid;transition:all .2s;font-family:Roboto,sans-serif}.edit-status-btn:hover{opacity:.85}.edit-actions{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.edit-cat-btns{display:flex;gap:4px}.edit-cat-btn{padding:4px 10px;border:1.5px solid var(--border);border-radius:6px;font-size:.72rem;font-weight:600;cursor:pointer;background:#fff;transition:all .2s}.edit-cat-btn.active-hoch{background:#e53935;color:#fff;border-color:#e53935}.edit-cat-btn.active-wichtig{background:#fb8c00;color:#fff;border-color:#fb8c00}.edit-cat-btn.active-weitere{background:#fdd835;color:#3e2723;border-color:#fdd835}.delete-btn{padding:5px 12px;border:1.5px solid var(--danger);background:transparent;color:var(--danger);font-size:.78rem;font-weight:600;cursor:pointer;border-radius:6px;transition:all .2s}.delete-btn:hover{background:var(--danger);color:#fff}.pdf-single-btn{padding:5px 10px;border:1.5px solid #e53935;border-radius:6px;font-size:.72rem;font-weight:600;cursor:pointer;background:transparent;color:#e53935;transition:all .2s;font-family:Roboto,sans-serif}.pdf-single-btn:hover{background:#e53935;color:#fff}.subtask-section{grid-column:1 / -1;margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.subtask-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.subtask-header label{margin-bottom:0}.subtask-add-btn{padding:2px 8px;border:1.5px solid var(--border);border-radius:6px;font-size:.7rem;font-weight:600;cursor:pointer;background:var(--white);color:var(--text-muted);transition:all .2s}.subtask-add-btn:hover{border-color:var(--success);color:var(--success)}.subtask-list{list-style:none}.subtask-item{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:.82rem}.subtask-item .checkbox{width:18px;height:18px}.subtask-item.done .subtask-text{text-decoration:line-through;color:var(--text-muted)}.subtask-text{flex:1;border:none;background:transparent;font-size:.82rem;color:var(--text);outline:none;font-family:inherit}.subtask-text:focus{background:var(--white);border-radius:4px;padding:2px 4px}.subtask-delete{width:18px;height:18px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:.7rem;opacity:0;transition:opacity .2s}.subtask-item:hover .subtask-delete{opacity:1}.subtask-delete:hover{color:var(--danger)}.subtask-add-row{display:flex;gap:6px;margin-top:4px}.subtask-add-row input{flex:1;padding:6px 8px;border:1.5px solid var(--border);border-radius:6px;font-size:.8rem;background:var(--white);outline:none;font-family:inherit}.subtask-add-row input:focus{border-color:var(--success)}.subtask-progress{font-size:.7rem;color:var(--text-muted);font-weight:600}.ac-wrapper{position:relative}.ac-dropdown{position:absolute;top:100%;left:0;z-index:200;min-width:200px;width:max-content;background:var(--white);border:1.5px solid var(--border);border-radius:10px;box-shadow:0 6px 16px #00000026;max-height:200px;overflow-y:auto;display:none;margin-top:4px}.inline-fields-mobile .ac-dropdown{left:auto;right:0}.ac-dropdown.open{display:block}.ac-option{padding:8px 12px;font-size:.82rem;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background .15s;font-family:Roboto,sans-serif}.ac-option:hover,.ac-option.active{background:var(--bg)}.ac-option .ac-icon{width:22px;height:22px;border-radius:50%;background:#8e24aa;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;flex-shrink:0}.ac-option .ac-name{flex:1}.ac-option .ac-count{font-size:.7rem;color:var(--text-muted)}.ac-new{font-style:italic;color:var(--text-muted)}.kanban-board{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:8px 0}@media (max-width: 768px){.kanban-board{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.kanban-board{grid-template-columns:1fr}}.kanban-column{background:var(--bg);border-radius:14px;padding:10px;min-height:200px}.kanban-column-header{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 10px;font-weight:700;font-size:.82rem}.kanban-column-count{background:var(--border);border-radius:10px;padding:2px 8px;font-size:.7rem;font-weight:600;color:var(--text-muted)}.kanban-column.offen .kanban-column-header{color:#1e88e5}.kanban-column.in_arbeit .kanban-column-header{color:#fb8c00}.kanban-column.warte .kanban-column-header{color:#8e24aa}.kanban-column.erledigt .kanban-column-header{color:#43a047}.kanban-card{background:var(--white);border-radius:10px;padding:10px;margin-bottom:8px;box-shadow:var(--shadow);cursor:grab;position:relative;transition:box-shadow .2s}.kanban-card:hover{box-shadow:0 4px 12px #0000001a}.kanban-card .cat-indicator{width:3px;border-radius:8px 0 0 8px}.kanban-card-title{font-size:.82rem;font-weight:500;line-height:1.3;margin-bottom:4px;padding-left:8px}.kanban-card-meta{display:flex;gap:6px;flex-wrap:wrap;padding-left:8px}.kanban-meta-chip{font-size:.68rem;padding:2px 6px;border-radius:4px;background:var(--bg);color:var(--text-muted);font-weight:600}.kanban-meta-chip.overdue{background:#ffebee;color:#c62828}.kanban-meta-chip.soon{background:#fff3e0;color:#e65100}.kanban-meta-chip.delegiert{background:#f3e5f5;color:#8e24aa}.kanban-meta-chip.delegiert-known{background:#fff3e0;color:#e65100}.kanban-card-notiz{font-size:.7rem;color:var(--text-muted);padding-left:8px;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:italic}.kanban-card-subtasks{display:flex;align-items:center;gap:6px;font-size:.7rem;color:var(--text-muted);padding-left:8px;margin-top:4px}.kanban-subtask-bar{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.kanban-subtask-fill{height:100%;background:#43a047;border-radius:2px;transition:width .3s}.kanban-card-tags{display:flex;gap:3px;flex-wrap:wrap;padding-left:8px;margin-top:4px}.kanban-tag-chip{font-size:.65rem;padding:1px 5px;border-radius:6px;font-weight:600}.kanban-status-select{margin-top:6px;padding:4px 8px;border:1px solid var(--border);border-radius:6px;font-size:.72rem;background:var(--white);font-family:Roboto,sans-serif;cursor:pointer;width:100%}.kanban-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000073;z-index:900;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease}.kanban-modal{background:var(--white);border-radius:16px;width:90%;max-width:520px;max-height:85vh;overflow-y:auto;box-shadow:0 12px 40px #0003}.kanban-modal-header{display:flex;align-items:center;gap:8px;padding:16px 20px 12px;border-bottom:1px solid var(--border)}.kanban-modal-header .task-number{font-size:.8rem;color:var(--text-muted)}.kanban-modal-cat{font-size:.7rem;color:#fff;padding:2px 8px;border-radius:6px;font-weight:700;text-transform:uppercase}.kanban-modal-close{margin-left:auto;background:none;border:none;font-size:1.2rem;color:var(--text-muted);cursor:pointer;padding:4px 8px;border-radius:6px}.kanban-modal-close:hover{background:var(--bg)}.kanban-modal-body{padding:16px 20px 20px}.kanban-modal-body .edit-field{margin-bottom:10px}.kanban-modal-body .edit-field label{display:block;font-size:.72rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;margin-bottom:3px}.kanban-modal-body .edit-field input[type=text],.kanban-modal-body .edit-field input[type=date]{width:100%;padding:8px 10px;border:1.5px solid var(--border);border-radius:8px;font-size:.88rem;outline:none;box-sizing:border-box}.kanban-modal-body .edit-field input:focus{border-color:#8e24aa}.kanban-modal-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.kanban-modal-actions{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.kanban-modal-actions .delete-btn{margin-left:auto}.subtask-progress-badge{font-size:.7rem;color:#8e24aa;margin-left:6px;cursor:pointer;font-weight:600;padding:1px 5px;border-radius:6px;background:#f3e5f5;transition:background .2s}.subtask-progress-badge:hover{background:#e1bee7}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#333;color:#fff;padding:10px 20px;border-radius:10px;font-size:.85rem;font-family:Roboto,sans-serif;z-index:999;opacity:0;transition:opacity .3s;pointer-events:none}.toast.show{opacity:1}.empty-state{text-align:center;padding:50px 20px;color:var(--text-muted);font-size:.95rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:500;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.modal{background:var(--white);border-radius:16px;padding:20px;width:90%;max-width:400px;box-shadow:0 20px 60px #0003}.modal h3{font-size:1.1rem;font-weight:700;margin-bottom:14px}.modal-close{float:right;border:none;background:transparent;font-size:1.2rem;cursor:pointer;color:var(--text-muted)}.modal-tag-list{list-style:none;margin-bottom:12px}.modal-tag-item{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--border)}.modal-tag-item:last-child{border-bottom:none}.modal-tag-color{width:12px;height:12px;border-radius:50%}.modal-tag-name{flex:1;font-size:.88rem}.modal-tag-delete{border:none;background:transparent;color:var(--danger);cursor:pointer;font-size:.8rem;opacity:.6}.modal-tag-delete:hover{opacity:1}.modal-add-row{display:flex;gap:6px}.modal-add-row input{flex:1;padding:8px 10px;border:1.5px solid var(--border);border-radius:8px;font-size:.85rem;outline:none}.modal-add-row input:focus{border-color:var(--cat-wichtig)}.modal-add-row button{padding:8px 14px;border:none;border-radius:8px;background:var(--text);color:#fff;font-weight:600;cursor:pointer;font-size:.85rem}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:20px}.auth-card{background:#fff;border-radius:16px;padding:40px 32px;box-shadow:0 4px 24px #00000014;max-width:380px;width:100%}.auth-logo{text-align:center;margin-bottom:8px;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;line-height:1}.auth-logo .logo-truu,.auth-logo .logo-tasks{font-size:2rem}.auth-logo .logo-text{align-items:flex-start}.auth-card h2{text-align:center;font-size:1.1rem;margin:16px 0 20px;color:var(--text)}.auth-field{margin-bottom:14px}.auth-field label{display:block;font-size:.8rem;font-weight:600;color:#666;margin-bottom:4px}.auth-field input{width:100%;padding:10px 12px;border:1.5px solid var(--border);border-radius:10px;font-size:.95rem;outline:none;box-sizing:border-box}.auth-field input:focus{border-color:#e65100}.auth-btn{width:100%;padding:12px;border:none;border-radius:10px;background:#e65100;color:#fff;font-size:1rem;font-weight:700;cursor:pointer;margin-top:8px;transition:background .2s}.auth-btn:hover{background:#bf360c}.auth-btn:disabled{opacity:.6;cursor:wait}.auth-error{background:#fce4ec;color:#c62828;padding:8px 12px;border-radius:8px;font-size:.85rem;margin:10px 0}.auth-message{background:#e8f5e9;color:#2e7d32;padding:8px 12px;border-radius:8px;font-size:.85rem;margin:10px 0}.auth-links{display:flex;flex-direction:column;gap:6px;margin-top:16px;align-items:center}.auth-links button{background:none;border:none;color:#e65100;font-size:.85rem;cursor:pointer;text-decoration:underline}.auth-skip{margin-top:20px;text-align:center;border-top:1px solid var(--border);padding-top:16px}.auth-skip button{background:none;border:none;color:#999;font-size:.8rem;cursor:pointer}.auth-skip button:hover{color:#666}.user-bar{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#fff3e0;border-radius:8px;margin-bottom:8px;font-size:.8rem;color:#e65100}.sync-indicator{font-size:.8rem;color:#43a047;font-weight:600;display:flex;align-items:center;gap:4px}.logout-btn{background:none;border:1px solid #ffab91;color:#e65100;padding:3px 10px;border-radius:6px;font-size:.75rem;cursor:pointer;font-weight:600}.logout-btn:hover{background:#ffe0b2}.team-panel-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#00000073;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s}.team-panel{background:var(--white);border-radius:16px;width:min(95vw,780px);max-height:85vh;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;overflow:hidden}.team-panel-header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--border)}.team-panel-header h2{font-size:1.15rem;font-weight:700;letter-spacing:-.3px}.team-panel-close{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--text-muted);padding:4px 8px;border-radius:6px}.team-panel-close:hover{background:var(--bg)}.team-panel-body{display:flex;flex:1;overflow:hidden;min-height:0}.team-list-section{width:240px;min-width:200px;border-right:1px solid var(--border);padding:14px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.team-list-section h3{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);margin-bottom:8px}.team-list-item{padding:10px 12px;border-radius:10px;cursor:pointer;transition:all .15s}.team-list-item:hover{background:var(--bg)}.team-list-item.active{background:#f3e5f5;border-left:3px solid #8e24aa}.team-list-item-name{font-size:.88rem;font-weight:600}.team-list-item-meta{font-size:.72rem;color:var(--text-muted);margin-top:2px}.team-create-form{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.team-input{width:100%;padding:8px 10px;border:1.5px solid var(--border);border-radius:8px;font-size:.82rem;font-family:inherit;outline:none;transition:border-color .2s}.team-input:focus{border-color:#8e24aa}.team-create-btn{background:#8e24aa;color:#fff;border:none;padding:8px;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .2s}.team-create-btn:hover{background:#7b1fa2}.team-detail-section{flex:1;padding:18px;overflow-y:auto}.team-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.team-detail-header h3{font-size:1.05rem;font-weight:700}.team-delete-btn{background:none;border:1px solid #ef9a9a;color:#e53935;padding:5px 12px;border-radius:8px;font-size:.75rem;font-weight:600;cursor:pointer}.team-delete-btn:hover{background:#ffebee}.team-members-section{margin-bottom:20px}.team-members-section h4,.team-invite-section h4,.team-invites-section h4{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted);margin-bottom:10px}.team-member-row{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-radius:8px;margin-bottom:4px;transition:background .15s}.team-member-row:hover{background:var(--bg)}.team-member-info{display:flex;align-items:center;gap:10px}.team-member-avatar{width:32px;height:32px;border-radius:50%;background:#e1bee7;color:#8e24aa;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}.team-member-email{font-size:.85rem;font-weight:500}.team-role-badge{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;padding:2px 8px;border-radius:5px;letter-spacing:.4px}.team-member-actions{display:flex;align-items:center;gap:6px}.team-role-select{padding:4px 8px;border:1.5px solid var(--border);border-radius:6px;font-size:.78rem;font-family:inherit;cursor:pointer;outline:none}.team-role-select:focus{border-color:#8e24aa}.team-remove-btn{background:none;border:none;color:#e53935;font-size:1rem;cursor:pointer;padding:2px 6px;border-radius:4px}.team-remove-btn:hover{background:#ffebee}.team-invite-section{margin-bottom:20px}.team-invite-form{display:flex;gap:6px;align-items:center}.team-invite-form .team-input{flex:1}.team-invite-btn{background:#8e24aa;color:#fff;border:none;padding:8px 14px;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap}.team-invite-btn:hover{background:#7b1fa2}.team-invites-section{margin-top:12px}.team-invite-row{display:flex;align-items:center;gap:10px;padding:6px 10px;font-size:.85rem;border-bottom:1px solid var(--border)}.team-invite-email{flex:1;color:var(--text-muted)}.team-empty{color:var(--text-muted);font-size:.85rem;padding:12px 0}.team-loading{color:var(--text-muted);font-size:.85rem;padding:12px 0;text-align:center}.team-toast{position:absolute;bottom:16px;left:50%;transform:translate(-50%);background:#333;color:#fff;padding:8px 20px;border-radius:20px;font-size:.82rem;font-weight:500;opacity:0;transition:opacity .3s;pointer-events:none}.team-toast.show{opacity:1}.team-btn{background:none;border:1px solid #ffab91;color:#e65100;padding:3px 10px;border-radius:6px;font-size:.75rem;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:4px}.team-btn:hover{background:#ffe0b2}.view-switch-bar{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#f3e5f5;border-radius:8px;margin-bottom:8px;font-size:.82rem}.view-switch-select{padding:4px 8px;border:1.5px solid #ce93d8;border-radius:6px;font-size:.8rem;font-family:inherit;cursor:pointer;outline:none;background:#fff}.view-switch-select:focus{border-color:#8e24aa}@media (max-width: 600px){.team-panel-body{flex-direction:column}.team-list-section{width:100%;min-width:unset;border-right:none;border-bottom:1px solid var(--border);max-height:180px}.team-invite-form{flex-wrap:wrap}.team-invite-form .team-input{min-width:200px}}.view-btn-notes{position:relative}.view-btn-count{display:inline-block;background:#ffffff40;border-radius:8px;padding:0 5px;font-size:.75rem;margin-left:3px}.view-btn-notes.active .view-btn-count{background:#ffffff59}.add-note-row{display:flex;gap:8px;margin-bottom:16px}.add-note-input{flex:1;padding:10px 14px;border-radius:10px;border:2px solid var(--border);font-size:.95rem;background:#fff;transition:border-color .2s}.add-note-input:focus{border-color:#e65100;outline:none}.add-note-btn{background:#e65100;color:#fff;border:none;border-radius:10px;padding:10px 18px;font-weight:600;font-size:.95rem;cursor:pointer;white-space:nowrap}.add-note-btn:hover{background:#bf360c}.note-grid{display:grid;grid-template-columns:1fr;gap:12px}@media (min-width: 700px){.note-grid{grid-template-columns:1fr 1fr}}.note-card{background:#fffde7;border:1px solid #fff9c4;border-radius:14px;padding:16px;box-shadow:0 2px 8px #0000000f;transition:box-shadow .2s}.note-card:hover{box-shadow:0 4px 16px #0000001a}.note-card-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.note-title-input{flex:1;border:none;background:transparent;font-size:1.05rem;font-weight:600;color:#333;padding:4px 0;border-bottom:1px solid transparent}.note-title-input:focus{outline:none;border-bottom-color:#e65100}.note-title-input::placeholder{color:#bbb;font-weight:400}.note-actions{display:flex;gap:4px}.note-pdf-btn{background:#e3f2fd;border:1px solid #bbdefb;border-radius:8px;cursor:pointer;font-size:.78rem;padding:4px 10px;color:#1565c0;font-weight:600}.note-pdf-btn:hover{background:#bbdefb}.note-delete-btn{background:#fbe9e7;border:1px solid #ffccbc;border-radius:8px;cursor:pointer;font-size:1rem;padding:4px 8px;opacity:.8}.note-delete-btn:hover{opacity:1;background:#ffccbc}.note-confirm-delete{display:flex;gap:4px}.note-delete-confirm,.note-delete-cancel{border:none;border-radius:6px;padding:4px 8px;cursor:pointer;font-size:.9rem}.note-delete-confirm{background:#e53935;color:#fff}.note-delete-cancel{background:#eee;color:#666}.note-content-textarea{width:100%;border:1px solid #e8e5d0;border-radius:10px;padding:12px;font-size:.93rem;line-height:1.6;background:#fff;resize:vertical;min-height:160px;font-family:inherit;color:#444}.note-content-textarea:focus{outline:none;border-color:#e65100}.note-content-textarea::placeholder{color:#bbb}.note-tags-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;align-items:center}.note-tag{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:12px;font-size:.78rem;border:1px solid;cursor:pointer;font-weight:500}.note-tag:hover{opacity:.7}.note-tag-add-btn{background:none;border:1px dashed #ccc;border-radius:12px;padding:3px 10px;font-size:.78rem;color:#999;cursor:pointer}.note-tag-add-btn:hover{border-color:#e65100;color:#e65100}.note-tag-picker{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.note-tag-option{border:1px solid transparent;border-radius:12px;padding:3px 10px;font-size:.78rem;cursor:pointer;font-weight:500}.note-tag-option:hover{opacity:.7}.note-meta{margin-top:10px;display:flex;justify-content:flex-end}.note-date{font-size:.75rem;color:#aaa}.memo-container{padding-top:8px}.memo-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.memo-search-bar{flex:1;display:flex;align-items:center;gap:6px;background:var(--white);border-radius:10px;padding:0 12px;border:1.5px solid var(--border);height:38px}.memo-search-bar .search-icon{font-size:.9rem;color:var(--text-muted)}.memo-search-input{flex:1;border:none;outline:none;font-size:.85rem;background:transparent;color:var(--text)}.memo-search-clear{background:none;border:none;color:var(--text-muted);font-size:1.1rem;cursor:pointer;padding:0 2px;line-height:1}.memo-search-clear:hover{color:var(--text)}.memo-create-btn{padding:10px 20px;border-radius:10px;border:none;background:#f57c00;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s}.memo-create-btn:hover{background:#e56800}.memo-loading{text-align:center;padding:20px;color:var(--text-muted);font-size:.85rem}.memo-empty{text-align:center;padding:40px 20px;color:var(--text-muted);font-size:.9rem}.memo-cards{display:flex;flex-direction:column;gap:8px}.memo-card{background:var(--white);border-radius:12px;padding:14px 16px;box-shadow:var(--shadow);cursor:pointer;transition:box-shadow .15s,border-color .15s;border:2px solid transparent}.memo-card:hover{box-shadow:0 2px 8px #0000001a}.memo-card-active{border-color:#f57c00}.memo-card-header{display:flex;align-items:center;gap:12px;margin-bottom:4px}.memo-card-date{font-size:.8rem;font-weight:600;color:var(--text)}.memo-card-time{font-size:.75rem;color:var(--text-muted)}.memo-card-title{font-size:.95rem;font-weight:500;color:var(--text);margin-bottom:4px}.memo-card-participants{font-size:.75rem;color:var(--text-muted);margin-bottom:2px}.memo-card-sections{font-size:.72rem;color:#aaa}.memo-editor{background:var(--white);border-radius:14px;padding:20px;box-shadow:0 4px 16px #0000001a;margin-bottom:16px;border:2px solid #f57c00}.memo-editor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.memo-editor-header h3{font-size:1.1rem;font-weight:600;color:var(--text);margin:0}.memo-close-btn{width:32px;height:32px;border-radius:50%;border:none;background:var(--bg);font-size:1.2rem;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center}.memo-close-btn:hover{background:#eee}.memo-field{margin-bottom:14px}.memo-field>label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:4px;font-weight:600}.memo-field-row{display:flex;gap:10px;margin-bottom:14px}.memo-field-row .memo-field{flex:1;margin-bottom:0}.memo-input{width:100%;padding:8px 10px;border-radius:8px;border:1.5px solid var(--border);font-size:.85rem;background:var(--bg);color:var(--text);box-sizing:border-box}.memo-input:focus{border-color:#f57c00;outline:none}.memo-input-half{flex:1}.memo-input-third{flex:1;min-width:0}.memo-participants-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.memo-participant-chip{display:inline-flex;align-items:center;gap:4px;background:#fff3e0;color:#e65100;border-radius:20px;padding:4px 10px;font-size:.78rem;font-weight:500}.memo-chip-firma{color:#6d4c00;font-weight:500;font-size:.72rem}.memo-chip-email{color:#bf6c00;font-weight:400;font-size:.72rem}.memo-chip-remove{background:none;border:none;color:#e65100;font-size:1rem;cursor:pointer;padding:0 2px;line-height:1}.memo-chip-remove:hover{color:#b71c1c}.memo-cc-chip{background:#e3f2fd;border-color:#90caf9}.memo-card-cc{font-style:italic;opacity:.85}.memo-cc-label{font-weight:600;color:var(--text-secondary, #666)}.memo-lock-banner,.memo-shared-banner{padding:8px 14px;border-radius:8px;font-size:13px;margin-bottom:10px}.memo-lock-banner{background:#fff3e0;color:#e65100;border:1px solid #ffcc80}.memo-shared-banner{background:#e3f2fd;color:#1565c0;border:1px solid #90caf9}.memo-card-badges{display:inline-flex;gap:4px;margin-left:6px}.memo-badge{font-size:13px}.memo-card-locked{border-left:3px solid #f57c00}.memo-card-shared{border-left:3px solid #1976d2}.memo-card-locked.memo-card-shared{border-left:3px solid #7b1fa2}.memo-editor input[readonly],.memo-editor textarea[readonly]{background:var(--bg-hover, #f5f5f5);cursor:default;opacity:.85}.memo-add-participant{display:flex;gap:6px;align-items:center;position:relative;flex-wrap:wrap}.memo-add-btn{width:34px;height:34px;border-radius:8px;border:1.5px solid #f57c00;background:#fff3e0;color:#f57c00;font-size:1.1rem;font-weight:700;cursor:pointer;flex-shrink:0}.memo-add-btn:hover{background:#ffe0b2}.memo-suggestions{position:absolute;top:100%;left:0;right:40px;z-index:50;background:var(--white);border:1.5px solid var(--border);border-radius:10px;box-shadow:0 4px 16px #0000001f;max-height:200px;overflow-y:auto;margin-top:4px}.memo-suggestion-item{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;font-size:.82rem}.memo-suggestion-item:hover{background:#f5f5f7}.memo-suggestion-name{font-weight:500;color:var(--text)}.memo-suggestion-firma{color:#6d4c00;font-size:.73rem}.memo-suggestion-email{color:var(--text-muted);font-size:.75rem}.memo-suggestion-type{margin-left:auto;font-size:.65rem;text-transform:uppercase;padding:2px 6px;border-radius:4px;font-weight:600}.memo-suggestion-type.user{background:#e3f2fd;color:#1565c0}.memo-suggestion-type.contact{background:#fff3e0;color:#e65100}.memo-section{background:var(--bg);border-radius:10px;padding:12px;margin-bottom:10px;border:1px solid var(--border)}.memo-section-header{display:flex;align-items:center;gap:6px;margin-bottom:8px}.memo-section-heading-input{flex:1;font-weight:600;font-size:.9rem;background:transparent;border:none;border-bottom:1.5px solid var(--border);border-radius:0;padding:4px 0}.memo-section-heading-input:focus{border-color:#f57c00;outline:none}.memo-section-remove{width:26px;height:26px;border-radius:50%;border:none;background:#ffebee;color:#c62828;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.memo-section-remove:hover{background:#ffcdd2}.memo-textarea{width:100%;padding:8px 10px;border-radius:8px;border:1.5px solid var(--border);font-size:.85rem;font-family:Roboto,sans-serif;resize:vertical;min-height:80px;background:var(--white);color:var(--text);box-sizing:border-box}.memo-textarea:focus{border-color:#f57c00;outline:none}.memo-add-section-btn{display:block;width:100%;padding:8px;border-radius:8px;border:1.5px dashed var(--border);background:transparent;color:var(--text-muted);font-size:.82rem;cursor:pointer;transition:border-color .15s,color .15s}.memo-add-section-btn:hover{border-color:#f57c00;color:#f57c00}.memo-actions{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}.memo-action-btn{padding:8px 16px;border-radius:8px;border:none;font-size:.82rem;font-weight:600;cursor:pointer;transition:opacity .15s}.memo-action-btn:hover{opacity:.85}.memo-pdf-btn{background:#2e4057;color:#fff}.memo-send-btn{background:#f57c00;color:#fff}.memo-delete-btn{background:#ffebee;color:#c62828}
