@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Figtree:wght@500;600;700;800&display=swap');

:root {
    --bg-main: #f8f9fa;
    --bg-workspace: #ffffff;
    --bg-sidebar: #ffffff;
    --border-color: #e2e8f0;
    --border-hover: #cbd5e1;
    --text-primary: #1e293b;
    --text-muted: #64748b;
    --navy-accent: #1c4963;
    --navy-hover: #153a52;
    --navy-light: #e8f1f5;
    --navy-subtle: #f0f6f9;
    --scb-gold: #c8913a;
    --scb-gold-soft: #fdf0e0;
    --scb-gold-text: #805c2d;
    --danger: #dc2626;
    --danger-light: #fee2e2;
    --radius-sm: 6px;
    --radius-md: 8px;
    --radius-lg: 12px;
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body {
    background-color: var(--bg-main);
    color: var(--text-primary);
    height: 100vh;
    overflow: hidden;
}

.app-container {
    display: flex;
    height: 100vh;
    width: 100vw;
}

/* ==========================================================================
   Seitenleiste (Sidebar)
   ========================================================================== */
.sidebar {
    width: 290px;
    min-width: 290px;
    background-color: var(--bg-sidebar);
    border-right: 1px solid var(--border-color);
    display: flex;
    flex-direction: column;
    padding: 1.15rem 1rem;
    box-shadow: 2px 0 12px rgba(28, 73, 99, 0.03);
    user-select: none;
}

.sidebar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.25rem;
    padding: 0 0.25rem;
}

.brand {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.brand-icon {
    font-size: 1.25rem;
}

.sidebar-header h2 {
    font-family: "Figtree", sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--navy-accent);
    letter-spacing: -0.01em;
}

.btn-primary-sm {
    background-color: var(--navy-accent);
    color: white;
    border: none;
    padding: 0.4rem 0.65rem;
    border-radius: var(--radius-sm);
    cursor: pointer;
    font-family: "Figtree", sans-serif;
    font-size: 0.8rem;
    font-weight: 600;
    transition: background-color 150ms ease, transform 150ms ease;
}

.btn-primary-sm:hover {
    background-color: var(--navy-hover);
    transform: translateY(-1px);
}

.folder-tree {
    flex-grow: 1;
    overflow-y: auto;
    padding-right: 0.25rem;
}

.folder-item {
    margin-bottom: 0.4rem;
}

.folder-header {
    font-family: "Figtree", sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    padding: 0.45rem 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    border-radius: var(--radius-sm);
    cursor: pointer;
    color: var(--text-primary);
    transition: background-color 140ms ease;
}

.folder-header:hover {
    background-color: var(--navy-subtle);
}

.folder-chevron {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    color: var(--text-muted);
    font-size: 0.75rem;
    transition: transform 180ms ease;
}

.folder-item.open > .folder-header .folder-chevron {
    transform: rotate(90deg);
}

.folder-icon {
    font-size: 1rem;
}

.folder-name {
    flex-grow: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.folder-count {
    font-size: 0.7rem;
    color: var(--text-muted);
    background: #f1f5f9;
    padding: 1px 6px;
    border-radius: 10px;
}

.folder-actions {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    opacity: 0;
    transition: opacity 140ms ease;
}

.folder-header:hover .folder-actions {
    opacity: 1;
}

.icon-btn {
    background: none;
    border: none;
    color: var(--text-muted);
    cursor: pointer;
    font-size: 0.85rem;
    padding: 2px 4px;
    border-radius: 4px;
    line-height: 1;
}

.icon-btn:hover {
    color: var(--navy-accent);
    background-color: var(--navy-light);
}

.icon-btn.danger-hover:hover {
    color: var(--danger);
    background-color: var(--danger-light);
}

.page-list {
    list-style: none;
    padding-left: 1.35rem;
    margin-top: 0.15rem;
    display: none;
}

.folder-item.open > .page-list {
    display: block;
}

.page-item {
    padding: 0.4rem 0.55rem;
    font-size: 0.85rem;
    color: var(--text-muted);
    border-radius: var(--radius-sm);
    cursor: pointer;
    margin-top: 0.15rem;
    display: flex;
    align-items: center;
    gap: 0.45rem;
    transition: background-color 140ms ease, color 140ms ease;
}

.page-item:hover {
    background-color: var(--navy-subtle);
    color: var(--text-primary);
}

.page-item.active {
    background-color: var(--navy-light);
    color: var(--navy-accent);
    font-weight: 600;
}

.page-item-title {
    user-select: none;
    touch-action: manipulation;
    flex-grow: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.page-item-actions {
    display: flex;
    flex-shrink: 0;
    opacity: 1;
    transition: opacity 140ms ease;
}

.page-item:hover .page-item-actions {
    opacity: 1;
}

.sidebar-footer {
    border-top: 1px solid var(--border-color);
    margin-top: 0.75rem;
    padding-top: 0.75rem;
}

.logout-button {
    background: transparent;
    border: 0;
    color: var(--text-muted);
    cursor: pointer;
    font: 600 0.82rem "Figtree", sans-serif;
    padding: 0.4rem 0.2rem;
    display: flex;
    align-items: center;
    gap: 0.35rem;
    transition: color 150ms ease;
}

.logout-button:hover {
    color: var(--danger);
}

/* ==========================================================================
   Haupt-Arbeitsbereich (Workspace / Canvas)
   ========================================================================== */
.main-content {
    flex-grow: 1;
    background-color: var(--bg-workspace);
    display: flex;
    flex-direction: column;
    height: 100vh;
    min-width: 0;
    overflow-y: auto;
    position: relative;
}

.empty-state {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 2rem;
}

.empty-state-card {
    text-align: center;
    max-width: 420px;
    padding: 3rem 2rem;
    border-radius: var(--radius-lg);
    background: #ffffff;
    border: 1px dashed var(--border-color);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
}

.empty-icon {
    font-size: 3rem;
    margin-bottom: 1rem;
    display: inline-block;
}

.empty-state-card h3 {
    font-family: "Figtree", sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--navy-accent);
    margin-bottom: 0.6rem;
}

.empty-state-card p {
    color: var(--text-muted);
    font-size: 0.95rem;
    line-height: 1.5;
}

.page-workspace {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

/* Cover Image Banner */
.cover-container {
    position: relative;
    width: 100%;
    height: 200px;
    background-color: #f1f5f9;
    overflow: hidden;
}

.cover-image-view {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
}

.cover-actions {
    position: absolute;
    bottom: 12px;
    right: 24px;
    display: flex;
    gap: 8px;
    opacity: 0;
    transition: opacity 180ms ease;
}

.cover-container:hover .cover-actions {
    opacity: 1;
}

.cover-btn {
    background: rgba(15, 23, 42, 0.75);
    backdrop-filter: blur(4px);
    color: #ffffff;
    border: none;
    padding: 6px 12px;
    font-size: 0.78rem;
    font-weight: 600;
    border-radius: var(--radius-sm);
    cursor: pointer;
    transition: background 150ms ease;
}

.cover-btn:hover {
    background: rgba(15, 23, 42, 0.95);
}

.cover-btn-danger:hover {
    background: var(--danger);
}

/* Page Top Actions (Hover bar) */
.page-top-actions {
    max-width: 860px;
    width: 100%;
    margin: 0 auto;
    padding: 1.5rem 3rem 0.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.ghost-action-btn {
    background: transparent;
    border: none;
    color: var(--text-muted);
    font-size: 0.8rem;
    font-weight: 600;
    padding: 4px 8px;
    border-radius: var(--radius-sm);
    cursor: pointer;
    transition: all 140ms ease;
    opacity: 0.6;
}

.ghost-action-btn:hover {
    opacity: 1;
    background-color: var(--navy-subtle);
    color: var(--navy-accent);
}

.ghost-action-btn.danger-hover:hover {
    background-color: var(--danger-light);
    color: var(--danger);
}

/* Page Canvas & Title */
.page-canvas {
    max-width: 860px;
    width: 100%;
    margin: 0 auto;
    padding: 2rem 3rem 5rem;
    flex-grow: 1;
}

.page-canvas.page-canvas-wide {
    max-width: none;
    margin-left: 0;
    margin-right: 0;
}

.page-title-input {
    width: 100%;
    border: none;
    background: transparent;
    font-family: "Figtree", sans-serif;
    font-size: 2.25rem;
    font-weight: 800;
    color: var(--text-primary);
    outline: none;
    padding: 0.5rem 0 1rem;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.page-title-input::placeholder {
    color: #94a3b8;
    font-weight: 700;
}

.editor-container {
    margin-top: 0.5rem;
}

/* ==========================================================================
   Editor.js Anpassungen & Block-Styles
   ========================================================================== */
.codex-editor__redactor {
    padding-bottom: 250px !important;
}

.ce-block__content {
    max-width: 100% !important;
}

.ce-toolbar__content {
    max-width: 100% !important;
}

.ce-paragraph {
    font-size: 1.05rem;
    line-height: 1.45;
    padding: 3px 0;
    color: #334155;
}

.ce-header {
    font-family: "Figtree", sans-serif;
    font-weight: 700;
    color: var(--navy-accent);
    padding: 0.8rem 0 0.3rem;
}

h1.ce-header { font-size: 1.85rem; }
h2.ce-header { font-size: 1.5rem; }
h3.ce-header { font-size: 1.25rem; }

/* Custom Page Link Block */
.scb-page-link-block {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0.85rem 1.15rem;
    background-color: #ffffff;
    border: 1px solid var(--border-color);
    border-left: 4px solid var(--navy-accent);
    border-radius: var(--radius-md);
    cursor: pointer;
    transition: all 160ms ease;
    margin: 0.5rem 0;
    user-select: none;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
}

.scb-page-link-block:hover {
    border-color: var(--navy-accent);
    background-color: var(--navy-subtle);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(28, 73, 99, 0.08);
}

.scb-link-icon {
    font-size: 1.35rem;
    line-height: 1;
}

.scb-link-meta {
    flex-grow: 1;
}

.scb-link-title {
    font-family: "Figtree", sans-serif;
    font-weight: 700;
    font-size: 0.95rem;
    color: var(--navy-accent);
}

.scb-link-sub {
    font-size: 0.78rem;
    color: var(--text-muted);
    margin-top: 2px;
}

.scb-link-arrow {
    font-size: 1.1rem;
    color: var(--text-muted);
}

.scb-toc-block { margin: .75rem 0; padding: 14px 16px; border: 1px solid var(--border-color); border-radius: var(--radius-md); background: var(--bg-workspace); }
.scb-toc-block > strong { display: block; margin-bottom: 8px; color: var(--navy-accent); font-family: "Figtree", sans-serif; }
.scb-toc-block ol { display: grid; gap: 3px; margin: 0; padding: 0; list-style: none; }
.scb-toc-block li { min-width: 0; }
.scb-toc-block .toc-level-2 { padding-left: 16px; }
.scb-toc-block .toc-level-3 { padding-left: 32px; }
.scb-toc-block button { max-width: 100%; padding: 3px 0; border: 0; background: transparent; color: var(--text-primary); cursor: pointer; text-align: left; overflow-wrap: anywhere; }
.scb-toc-block button:hover { color: var(--navy-accent); text-decoration: underline; }
.scb-toc-empty { color: var(--text-muted); font-size: .85rem; }
.scb-heading-target { animation: scb-heading-pulse 1.6s ease; }
@keyframes scb-heading-pulse { 0%,100% { background: transparent; } 25% { background: color-mix(in srgb, #f4c542 28%, transparent); } }

/* Custom Image Block */
.scb-image-block {
    margin: 1rem 0;
}

.scb-image-preview {
    width: 100%;
    max-height: 480px;
    object-fit: contain;
    border-radius: var(--radius-md);
    display: block;
    background: #f8fafc;
}

.scb-image-placeholder {
    border: 2px dashed var(--border-color);
    border-radius: var(--radius-md);
    padding: 1.5rem;
    text-align: center;
    background: #f8fafc;
}

.scb-image-input-row {
    display: flex;
    gap: 8px;
    max-width: 500px;
    margin: 0.75rem auto 0;
}

/* Custom Video Block */
.scb-video-block {
    margin: 1rem 0;
}

.scb-video-wrapper {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    height: 0;
    border-radius: var(--radius-md);
    overflow: hidden;
    background: #000;
}

.scb-video-wrapper iframe,
.scb-video-wrapper video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* ==========================================================================
   Modale & Dialoge
   ========================================================================== */
.modal-dialog {
    border: none;
    border-radius: var(--radius-lg);
    background: #ffffff;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.2);
    padding: 0;
    max-width: 540px;
    width: 90vw;
    margin: auto;
}

.modal-dialog::backdrop {
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(3px);
}

.modal-content {
    padding: 1.5rem;
}

.modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.25rem;
}

.modal-header h3 {
    font-family: "Figtree", sans-serif;
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--navy-accent);
}

.modal-close-btn {
    background: transparent;
    border: none;
    font-size: 1.5rem;
    color: var(--text-muted);
    cursor: pointer;
    line-height: 1;
}

.modal-section-title {
    font-family: "Figtree", sans-serif;
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 0.5rem;
}

.cover-presets-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}

.cover-preset-card {
    height: 60px;
    border-radius: var(--radius-sm);
    cursor: pointer;
    border: 2px solid transparent;
    transition: transform 140ms ease, border-color 140ms ease;
}

.cover-preset-card:hover {
    transform: scale(1.04);
    border-color: var(--navy-accent);
}

.form-text-input {
    width: 100%;
    border: 1px solid var(--border-color);
    border-radius: var(--radius-sm);
    padding: 0.6rem 0.75rem;
    font-size: 0.9rem;
    color: var(--text-primary);
    outline: none;
}

.form-text-input:focus {
    border-color: var(--navy-accent);
    box-shadow: 0 0 0 3px var(--navy-light);
}

.url-input-group {
    display: flex;
    gap: 8px;
}

.file-input-field {
    font-size: 0.85rem;
    margin-top: 0.35rem;
}

.link-pages-list {
    max-height: 280px;
    overflow-y: auto;
    margin-top: 1rem;
    border: 1px solid var(--border-color);
    border-radius: var(--radius-sm);
}

.link-picker-item {
    padding: 0.65rem 0.9rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid var(--border-color);
    cursor: pointer;
    transition: background 120ms ease;
}

.link-picker-item:last-child {
    border-bottom: none;
}

.link-picker-item:hover {
    background-color: var(--navy-subtle);
}

.link-picker-heading { padding-top: .48rem; padding-bottom: .48rem; background: color-mix(in srgb, var(--navy-light) 35%, transparent); }
.link-picker-heading.toc-level-2 { padding-left: 1.8rem; }
.link-picker-heading.toc-level-3 { padding-left: 2.8rem; }

.link-picker-title {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--text-primary);
}

.link-picker-folder {
    font-size: 0.75rem;
    color: var(--text-muted);
    background: #f1f5f9;
    padding: 2px 6px;
    border-radius: 4px;
}

/* ==========================================================================
   Responsive Ansicht
   ========================================================================== */
@media (max-width: 768px) {
    .app-container {
        flex-direction: column;
    }

    .sidebar {
        width: 100%;
        min-width: 100%;
        max-height: 240px;
        border-right: none;
        border-bottom: 1px solid var(--border-color);
    }

    .page-canvas {
        padding: 0.5rem 1.25rem 4rem;
    }

    .page-top-actions {
        padding: 1rem 1.25rem 0.25rem;
    }

    .page-title-input {
        font-size: 1.75rem;
    }
}

/* Anzeigeauswahl im Seitenleisten-Fuß */
.sidebar-footer { display: flex; justify-content: space-between; align-items: center; }
.theme-toggle {
    width: 34px; height: 34px; border: 1px solid var(--border-color);
    border-radius: var(--radius-sm); background: var(--bg-sidebar);
    color: var(--text-muted); cursor: pointer; font-size: 1.4rem; line-height: 1;
}
.theme-toggle:hover { background: var(--navy-light); color: var(--navy-accent); }
.theme-toggle:focus-visible { outline: 2px solid var(--navy-accent); outline-offset: 3px; }
html[data-theme="dark"] {
    color-scheme: dark;
    --bg-main: #101b24;
    --bg-workspace: #14212b;
    --bg-sidebar: #182833;
    --border-color: #304653;
    --border-hover: #48616f;
    --text-primary: #e8edf0;
    --text-muted: #afbec8;
    --navy-accent: #92c5df;
    --navy-hover: #b5def0;
    --navy-light: #284655;
    --navy-subtle: #203744;
    --danger: #ff9a94;
    --danger-light: #4c292d;
}
html[data-theme="dark"] .btn-primary-sm { background: #1c4963; color: #fff; }
html[data-theme="dark"] .btn-primary-sm:hover { background: #285f7e; }
html[data-theme="dark"] .ce-paragraph { color: var(--text-primary); }
html[data-theme="dark"] :is(.empty-state-card, .scb-page-link-block, .modal-dialog, .form-text-input, .scb-image-placeholder, .scb-image-preview) {
    background: var(--bg-sidebar); color: var(--text-primary);
}
html[data-theme="dark"] :is(.folder-count, .link-picker-folder) { background: var(--navy-light); color: var(--text-muted); }
html[data-theme="dark"] :is(.ce-toolbar__plus, .ce-toolbar__settings-btn, .ce-inline-toolbar, .ce-conversion-toolbar, .ce-popover, .ce-popover__container) {
    background: var(--bg-sidebar); color: var(--text-primary); border-color: var(--border-color);
}
html[data-theme="dark"] :is(.ce-popover-item, .ce-inline-tool, .ce-conversion-tool, .ce-popover-item__title, .cdx-search-field) { color: var(--text-primary); }
html[data-theme="dark"] :is(.ce-popover-item:hover, .ce-inline-tool:hover, .ce-conversion-tool:hover, .cdx-search-field, .ce-popover-item__icon) { background: var(--navy-light); }
html[data-theme="dark"] :is(.tc-cell, .tc-row, .tc-table, .cdx-input) { border-color: var(--border-color); }
.tc-cell { position: relative; min-width: 0; }
.scb-table-column-resizer { position: absolute; z-index: 3; top: -1px; right: -5px; width: 10px; height: calc(100% + 2px); cursor: col-resize; touch-action: none; }
.scb-table-column-resizer::after { content: ''; position: absolute; top: 0; bottom: 0; left: 4px; width: 2px; background: transparent; border-radius: 2px; transition: background .12s ease; }
.scb-table-column-resizer:hover::after, .scb-table-column-resizer.is-resizing::after { background: var(--navy-accent); }
html[data-theme="dark"] .ce-block--selected .ce-block__content { background: var(--navy-light); }

/* Graue Navigation, kompaktes Erstellen-Menü */
:root { --bg-sidebar: #f0f1f2; }
.create-menu-wrap { position: relative; }
.create-plus { display: grid; place-items: center; width: 32px; height: 32px; padding: 0; border: 0; border-radius: 7px; background: transparent; color: var(--navy-accent); font-size: 1.65rem; font-weight: 500; line-height: 1; cursor: pointer; }
.create-plus:hover { background: color-mix(in srgb,var(--text-muted) 12%,transparent); }
.create-plus:focus-visible { outline: 2px solid var(--navy-accent); outline-offset: 2px; }
.create-menu {
    position: absolute; top: calc(100% + 8px); right: 0; z-index: 50;
    width: 175px; padding: 5px; border: 1px solid var(--border-color);
    border-radius: 8px; background: var(--bg-sidebar); box-shadow: 0 8px 24px #0002;
}
.create-menu button { display: block; width: 100%; padding: 10px; text-align: left; border: 0; border-radius: 5px; background: transparent; color: var(--text-primary); cursor: pointer; }
.create-menu button:hover { background: var(--navy-light); }
.organize-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 1.2rem; }
#organize-modal label { display: block; margin: 12px 0 5px; color: var(--text-muted); }
#organize-modal [hidden], .create-menu[hidden] { display: none; }
.page-item-title { min-width: 0; }
.page-item-actions .icon-btn { padding: 3px; }

.flowboard-block { margin: 1rem 0; border: 1px solid var(--border-color); border-radius: 8px; overflow: hidden; background: var(--bg-sidebar); }
.flowboard-bar { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; padding: 10px; border-bottom: 1px solid var(--border-color); }
.flowboard-bar strong { flex: 1; min-width: 100px; color: var(--text-primary); }
.flowboard-block > svg { display: block; width: 100%; max-height: 500px; background: #f8fafc; }
.flowboard-node-text { display: flex; align-items: center; justify-content: center; height: 100%; font: 14px 'DM Sans', sans-serif; color: #1e293b; text-align: center; white-space: pre-wrap; overflow-wrap: anywhere; overflow: hidden; }
.flowboard-large { max-width: 95vw; width: 95vw; }
.flowboard-viewport { height: 78vh; overflow: auto; background: #f8fafc; padding: 12px; }
.flowboard-viewport svg { width: 100%; min-height: 100%; display: block; max-width: none; }
#flowboard-import-modal label { display: block; margin: 12px 0 5px; color: var(--text-muted); }

/* Mehrspaltige Inhaltsblöcke */
.columns-block { margin: 1.2rem 0; border: 0; border-radius: 0; background: transparent; }
.columns-controls { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 12px; border-bottom: 1px solid var(--border-color); color: var(--text-muted); font-size: .75rem; }
.columns-controls label { display: flex; align-items: center; gap: 8px; }
.columns-controls select { background: var(--bg-sidebar); color: var(--text-primary); border: 1px solid var(--border-color); border-radius: 5px; padding: 3px 8px; }
.columns-grid { display: grid; grid-template-columns: repeat(var(--column-count), minmax(0,1fr)); }
.note-column { padding: 16px 22px; min-width: 0; border-right: 1px solid var(--border-color); }
.note-column:last-child { border-right: 0; }
.note-column .codex-editor__redactor { padding-bottom: 55px !important; }
.note-column .ce-paragraph { font-size: .95rem; overflow-wrap: anywhere; }
.note-column .scb-image-placeholder { padding: .75rem; }
.note-column .scb-image-input-row { flex-wrap: wrap; }
.note-column input[type=file] { max-width: 100%; }
.note-column .flowboard-bar { padding: 5px; }
.page-canvas:has(.columns-block) { max-width: 1200px; }
@media(max-width:768px) {
    .columns-grid { grid-template-columns: 1fr; }
    .note-column { border-right: 0; border-bottom: 1px solid var(--border-color); }
    .note-column:last-child { border-bottom: 0; }
    .columns-controls span { display: none; }
}

.notes-search { width: 100%; margin: -2px 0 16px; padding: 8px 10px; border: 1px solid var(--border-color); border-radius: 7px; background: var(--bg-workspace); color: var(--text-primary); font-size: .8rem; outline: none; }
.notes-search::placeholder { color: var(--text-muted); }
.notes-search:focus { border-color: var(--navy-accent); box-shadow: 0 0 0 2px var(--navy-light); }
.search-empty { color: var(--text-muted); font-size: .82rem; padding: 12px 6px; }

/* Lange Notizen dürfen das Cover nicht zusammendrücken. */
.cover-container { flex-shrink: 0; }
.page-workspace { flex-shrink: 0; }
html[data-theme="dark"] :is(.ce-code__textarea, .cdx-input, .tc-add-column, .tc-add-row) { background: var(--bg-sidebar); color: var(--text-primary); }
html[data-theme="dark"] .ce-delimiter { color: var(--text-muted); }
.flowboard-json-output { height: 240px; margin-top: 12px; font-family: monospace; font-size: .75rem; }

/* Block ziehen: Vorschau und Einfügemarke ohne Eingriff in den Editor-Inhalt. */
.ce-toolbar__settings-btn { cursor: grab; touch-action: none; }
.ce-popover-item[hidden] { display: none !important; }
.ce-toolbar { z-index: 1000 !important; }
.ce-popover { z-index: 1001 !important; isolation: isolate; opacity: 1 !important; background: var(--bg-workspace) !important; }
.ce-popover__container,.ce-popover__items { opacity: 1 !important; background: var(--bg-workspace) !important; }
.ce-popover .cdx-search-field { background: var(--bg-sidebar) !important; }
.block-being-dragged { opacity: .3; }
.dragging-note-block, .dragging-note-block * { cursor: grabbing !important; user-select: none !important; }
.block-drop-marker { position: fixed; height: 3px; background: var(--navy-accent); z-index: 10001; pointer-events: none; border-radius: 3px; }
.block-drag-preview { position: fixed; max-width: 320px; padding: 12px 16px; background: var(--bg-sidebar); color: var(--text-primary); border: 1px solid var(--navy-accent); box-shadow: 0 8px 25px #0003; border-radius: 8px; z-index: 10002; pointer-events: none; font-size: 14px; }
.ce-block.block-selected-for-action { border-radius: 7px; background: color-mix(in srgb,var(--text-muted) 12%,transparent); }
.block-delete-action { position: absolute; top: var(--block-action-top,50%); right: -40px; transform: translateY(-50%); display: grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 7px; background: color-mix(in srgb,var(--text-muted) 14%,transparent); color: var(--danger); box-shadow: none; cursor: pointer; z-index: 20; }
.block-delete-action:hover { background: color-mix(in srgb,var(--text-muted) 22%,transparent); }
.block-delete-action svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
@media(max-width:768px){.block-delete-action{right:2px;}}

.sidebar { position: relative; z-index: 20; overflow: visible; }
.sidebar-top-controls { position: absolute; right: -25px; top: 112px; z-index: 30; }
.sidebar-toggle { display: flex; align-items: center; justify-content: center; width: 25px; height: 42px; padding: 0; border: 1px solid var(--border-color); border-left: 0; border-radius: 0 8px 8px 0; background: var(--bg-sidebar); color: var(--text-muted); font-size: 23px; line-height: 1; box-shadow: 3px 2px 6px #00000008; }
.sidebar-toggle:hover { background: var(--navy-light); color: var(--navy-accent); }
.sidebar-content { display: flex; flex-direction: column; flex: 1; min-height: 0; }
.sidebar-content[hidden] { display: none; }
.sidebar.is-collapsed { width: 0; min-width: 0; padding: 0; border: 0; }
@media (max-width: 768px) {
    .sidebar-top-controls { right: auto; left: 16px; top: auto; bottom: -28px; }
    .sidebar-toggle { width: 42px; height: 28px; border: 1px solid var(--border-color); border-top: 0; border-radius: 0 0 8px 8px; }
    .sidebar.is-collapsed { width: 100%; min-width: 100%; height: 0; max-height: 0; padding: 0; }
}

.settings-link { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.auth-page { min-height: 100vh; height: auto; overflow: auto; display: grid; place-items: center; padding: 28px; background: #f5f3ef; color: #1a1a1a; }
.auth-shell { width: min(1040px, 100%); min-height: min(650px, calc(100vh - 56px)); display: grid; grid-template-columns: 1.08fr .92fr; overflow: hidden; border: 1px solid #d8e0e3; border-radius: 18px; background: #fff; box-shadow: 0 24px 70px rgba(21, 58, 82, .13); }
.auth-intro { display: flex; flex-direction: column; padding: clamp(32px, 5vw, 64px); background: linear-gradient(145deg, #153a52, #1c4963 55%, #245e78); color: #fff; }
.auth-brand { display: inline-flex; align-items: center; gap: 10px; color: #fff; text-decoration: none; font: 700 20px 'Figtree', sans-serif; }
.auth-brand-mark { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid rgba(255,255,255,.42); border-radius: 9px; background: rgba(255,255,255,.1); }
.auth-brand-mark svg { width: 20px; height: 20px; }
.auth-intro-copy { max-width: 440px; margin: auto 0 28px; }
.auth-kicker { margin: 0 0 13px; color: #c8913a; font: 700 11px 'Figtree', sans-serif; letter-spacing: .14em; }
.auth-intro h1 { max-width: 420px; margin: 0; color: #fff; font: 700 clamp(34px, 4vw, 54px)/1.08 'Figtree', sans-serif; letter-spacing: -.045em; }
.auth-intro-copy > p:last-child { max-width: 390px; margin: 20px 0 0; color: rgba(255,255,255,.78); font-size: 17px; line-height: 1.6; }
.auth-feature-list { display: grid; gap: 11px; color: rgba(255,255,255,.87); font-size: 14px; }
.auth-feature-list span { display: flex; align-items: center; gap: 9px; }
.auth-feature-list i { display: grid; place-items: center; width: 19px; height: 19px; border-radius: 50%; background: rgba(200,145,58,.24); color: #f8d39a; font-style: normal; font-size: 12px; }
.auth-card { display: flex; flex-direction: column; justify-content: center; padding: clamp(32px, 6vw, 72px); background: #fff; }
.auth-card-header { margin-bottom: 30px; }
.auth-card-header .auth-kicker { margin-bottom: 10px; color: #c8913a; }
.auth-card h2 { margin: 0; color: #1c4963; font: 700 31px/1.15 'Figtree', sans-serif; letter-spacing: -.035em; }
.auth-card-header > p:last-child { margin: 10px 0 0; color: #627582; font-size: 15px; }
.auth-form { display: grid; gap: 17px; }
.auth-form label { display: grid; gap: 7px; color: #38515f; font: 700 13px 'Figtree', sans-serif; }
.auth-form input:not([type="checkbox"]):not([type="hidden"]) { width: 100%; min-height: 47px; padding: 11px 13px; border: 1px solid #cdd9de; border-radius: 8px; outline: none; color: #1a1a1a; background: #fff; font: 400 16px 'DM Sans', sans-serif; transition: border-color .15s, box-shadow .15s; }
.auth-form input:not([type="checkbox"])::placeholder { color: #94a4ad; }
.auth-form input:not([type="checkbox"]):focus { border-color: #1c4963; box-shadow: 0 0 0 3px #e5f0f5; }
.auth-form button { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; margin-top: 5px; border: 0; border-radius: 8px; background: #1c4963; color: #fff; cursor: pointer; font: 700 15px 'Figtree', sans-serif; transition: background .15s, transform .15s; }
.auth-form button:hover { background: #153a52; transform: translateY(-1px); }
.auth-form button span { font-size: 20px; line-height: 1; }
.auth-card-footer { display: flex; justify-content: space-between; gap: 16px; margin-top: 22px; color: #7a8b94; font-size: 12px; }
.auth-card-footer a, .auth-copy a { color: #1c4963; font-weight: 700; text-decoration: none; }
.auth-card-footer a:hover, .auth-copy a:hover { text-decoration: underline; }
.auth-mobile-brand { display: none; color: #1c4963; font: 700 17px 'Figtree', sans-serif; }
.form-error { margin: 0 0 18px; padding: 11px 13px; border: 1px solid #f0b5ae; border-radius: 8px; background: #fce8e6; color: #a32b20; font-size: 14px; }
/* Die Reset- und Einrichtungsseiten teilen die ruhige Kartenoptik. */
.auth-page > .auth-panel { width: min(440px, 100%); padding: 38px; border: 1px solid #d8e0e3; border-radius: 16px; background: #fff; box-shadow: 0 20px 55px rgba(21,58,82,.1); }
.auth-panel h1 { margin: 0 0 8px; color: #1c4963; font: 700 30px 'Figtree', sans-serif; letter-spacing: -.03em; }
.auth-panel .auth-copy { margin: 0 0 25px; color: #627582; line-height: 1.5; }
@media (max-width: 760px) { .auth-page { padding: 0; place-items: stretch; background: #fff; } .auth-shell { min-height: 100vh; grid-template-columns: 1fr; border: 0; border-radius: 0; box-shadow: none; } .auth-intro { display: none; } .auth-card { justify-content: flex-start; padding: 42px 28px; } .auth-mobile-brand { display: block; margin-bottom: 48px; } .auth-card-footer { align-items: flex-start; flex-direction: column; gap: 9px; } .auth-page > .auth-panel { min-height: 100vh; width: 100%; border: 0; border-radius: 0; box-shadow: none; padding: 42px 28px; } }
.settings-page { overflow: auto; background: var(--bg-main); }
.settings-panel { max-width: 760px; margin: 40px auto; padding: 24px; color: var(--text-primary); }
.settings-panel h1 { margin: 24px 0; }
.settings-panel section { padding: 24px; margin: 16px 0; border: 1px solid var(--border-color); border-radius: 10px; background: var(--bg-workspace); }
.settings-panel h2 { margin-bottom: 12px; }
.settings-panel p { margin: 12px 0; }
.settings-panel button, .settings-panel select { padding: 8px 12px; cursor: pointer; }
.tracking-collection { border: 1px solid var(--border-color); border-radius: 10px; padding: 14px; margin: 12px 0; background: var(--bg-workspace); }
.collection-controls { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.collection-controls input { flex: 1; min-width: 150px; font-weight: 600; }
.tracking-collection :is(input,select,button), .settings-panel select { border: 1px solid var(--border-color); border-radius: 5px; padding: 6px 8px; background: var(--bg-sidebar); color: var(--text-primary); font: inherit; }
.tracking-collection button { cursor: pointer; font-size: 12px; }
.collection-table-scroll { overflow-x: auto; }
.tracking-collection table { width: 100%; border-collapse: collapse; }
.tracking-collection :is(th,td) { padding: 6px; text-align: left; border-bottom: 1px solid var(--border-color); }
.tracking-collection td :is(input,select) { min-width: 110px; width: 100%; }
.collection-board { display: grid; grid-template-columns: repeat(3,minmax(180px,1fr)); gap: 12px; overflow-x: auto; }
.collection-board section { background: var(--bg-sidebar); padding: 10px; border-radius: 8px; }
.collection-card { background: var(--bg-workspace); border: 1px solid var(--border-color); padding: 10px; border-radius: 8px; margin-top: 10px; }
.collection-card label { display: block; font-size: 12px; margin-bottom: 6px; }
.collection-card :is(input,select) { display: block; width: 100%; }
.collection-message { color: var(--text-muted); font-size: 12px; margin-top: 10px; }

.scb-brand-mark { width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; border-radius: 7px; background: #C8913A; color: #1C4963; font: 700 10px 'Figtree', sans-serif; letter-spacing: .5px; }
.nav-line-icon { display: block; flex-shrink: 0; }
.folder-icon { color: var(--text-muted); display: inline-flex; align-items: center; }
.page-item > span:first-child { display: inline-flex; align-items: center; color: var(--text-muted); }
.icon-btn.danger-hover { color: #c45151; display: inline-flex; align-items: center; justify-content: center; }
.icon-btn.danger-hover .nav-line-icon { width: 14px; height: 14px; }
html[data-theme="dark"] .icon-btn.danger-hover { color: #e98181; }

.scb-image-frame { position: relative; margin: 0 auto; }
.scb-image-frame .scb-image-preview { height: auto; max-height: none; }
.scb-image-resize-handle { position: absolute; right: -10px; bottom: 8px; width: 24px; height: 24px; border: 1px solid var(--border-color); background: var(--bg-workspace); color: var(--navy-accent); border-radius: 5px; cursor: ew-resize; touch-action: none; }

.page-canvas { position: relative; }
.sticky-controls { position: fixed; right: 12px; bottom: 12px; z-index: 40; display: flex; gap: 8px; }
body:has(.sidebar.is-collapsed) .sticky-controls { right: 12px; }
@media (max-width: 768px) { .sticky-controls, body:has(.sidebar.is-collapsed) .sticky-controls { right: 12px; } }
.sticky-controls button { border: 0; border-radius: 5px; background: var(--bg-sidebar); color: var(--text-muted); padding: 5px 8px; cursor: pointer; font: inherit; font-size: 12px; }
.sticky-controls .sticky-icon-btn { display: grid; place-items: center; width: 30px; height: 30px; padding: 6px; }
.sticky-icon-btn svg { width: 17px; height: 17px; fill: currentColor; }
.sticky-icon-btn:hover { color: var(--navy-accent); background: var(--navy-light); }
.sticky-layer { position: absolute; inset: 0; pointer-events: none; z-index: 5; }
.floating-sticky { position: absolute; pointer-events: auto; background: #fff0b3; color: #403513; border: 1px solid #dcc67d; border-radius: 4px; box-shadow: 0 4px 12px #0002; display: flex; flex-direction: column; }
.sticky-drag-handle { padding: 5px 7px; font-size: 11px; cursor: grab; user-select: none; touch-action: none; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 5px; align-items: center; }
.sticky-grip { color: #786322; line-height: 1; }
.sticky-title-input { width: 100%; min-width: 0; border: 0; border-bottom: 1px solid transparent; outline: none; padding: 2px 1px; background: transparent; color: #403513; font: 600 12px 'DM Sans', sans-serif; }
.sticky-title-input:hover { border-bottom-color: #bda65d; }
.sticky-title-input:focus { border-bottom-color: #786322; }
.sticky-drag-handle button { border: 0; background: transparent; color: #a3483b; cursor: pointer; font-size: 18px; }
.floating-sticky textarea { flex: 1; min-height: 0; resize: none; border: 0; outline: none; padding: 4px 10px 20px; background: transparent; color: inherit; font: 14px 'DM Sans', sans-serif; }
.sticky-resize-handle { position: absolute; right: 2px; bottom: 2px; width: 24px; height: 24px; padding: 2px; border: 0; background: transparent; color: #786322; cursor: nwse-resize; touch-action: none; }
.sticky-resize-handle svg { display: block; width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

.page-item .icon-btn[draggable="true"] { cursor: grab; }
.note-drag-source { opacity: .45; }
.page-item.note-drop-target { background: var(--navy-light); outline: 2px solid var(--navy-accent); outline-offset: -2px; }
.page-item.note-drop-target::before { content: '↳'; color: var(--navy-accent); font-size: 14px; }
.folder-header.note-drop-target { background: var(--navy-light); outline: 2px solid var(--navy-accent); outline-offset: -2px; }

.table-label-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 8px 0; color: var(--text-muted); font-size: 12px; }
.table-label-controls > input { border: 0; border-bottom: 1px solid var(--border-color); background: transparent; color: var(--text-primary); font: 600 15px 'DM Sans', sans-serif; }
.table-size-picker { padding: 16px; border: 1px solid var(--border-color); border-radius: 8px; }
.table-size-grid { display: grid; grid-template-columns: repeat(8,20px); gap: 4px; margin: 12px 0; width: max-content; }
.table-size-grid button { width: 20px; height: 20px; background: var(--bg-sidebar); border: 1px solid var(--border-color); border-radius: 2px; cursor: pointer; }
.table-size-grid button.selected { background: var(--navy-light); border-color: var(--navy-accent); }

.table-structure-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 10px 0; font-size: 12px; color: var(--text-muted); }
.table-structure-actions :is(button,select) { padding: 4px 7px; border: 1px solid var(--border-color); border-radius: 5px; background: var(--bg-sidebar); color: var(--text-primary); cursor: pointer; }

.scb-text-default { color: var(--text-primary); }
.scb-text-petrol { color: #1c4963; }
.scb-text-gold { color: #9a681e; }
.scb-text-red { color: #b83b3b; }
.scb-text-green { color: #28734b; }
.scb-text-blue { color: #2864b5; }
.scb-text-purple { color: #8146a3; }
html[data-theme="dark"] .scb-text-petrol { color: #8fc6dd; }
html[data-theme="dark"] .scb-text-gold { color: #e5b860; }
html[data-theme="dark"] .scb-text-red { color: #f28b8b; }
html[data-theme="dark"] .scb-text-green { color: #80cca0; }
html[data-theme="dark"] .scb-text-blue { color: #8ab9f6; }
html[data-theme="dark"] .scb-text-purple { color: #d4a0ee; }
.text-color-tool-icon { font-weight: 700; border-bottom: 3px solid #c8913a; }
.text-color-palette { display: flex; gap: 4px; padding: 8px; }
.text-color-palette button { width: 28px; height: 28px; background: var(--bg-workspace); border: 1px solid var(--border-color); border-radius: 4px; cursor: pointer; font-weight: 700; }
.colored-quote { --quote-accent: #1c4963; border-left: 4px solid var(--quote-accent); border-radius: 0 6px 6px 0; padding: 10px 14px; margin: 12px 0; background: color-mix(in srgb,var(--quote-accent) 9%,var(--bg-workspace)); }
.quote-gold { --quote-accent: #c8913a; }
.quote-red { --quote-accent: #bf5252; }
.quote-green { --quote-accent: #398b5f; }
.quote-blue { --quote-accent: #3978c8; }
.quote-purple { --quote-accent: #9259ae; }
.quote-default { --quote-accent: #8995a4; }
.colored-quote .cdx-quote { padding: 0; }
.colored-quote .cdx-quote__text { border: 0; box-shadow: none; background: transparent; min-height: 50px; }
.quote-color-control { display: flex; justify-content: flex-end; align-items: center; gap: 6px; color: var(--text-muted); font-size: 11px; margin-bottom: 5px; }
.quote-color-control select { border: 1px solid var(--border-color); border-radius: 4px; background: var(--bg-workspace); color: var(--text-primary); }

.note-utilities { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 6px; margin-bottom: 14px; font-size: 11px; color: var(--text-muted); }
.note-utilities button { background: transparent; border: 0; color: var(--text-muted); cursor: pointer; font: inherit; }
.utility-icon-btn { display: inline-grid; place-items: center; width: 28px; height: 28px; padding: 0; border-radius: 6px; font-size: 20px !important; line-height: 1; }
.utility-icon-btn:hover { color: var(--navy-accent); background: var(--navy-light); }
.utility-icon-btn svg { width: 17px; height: 17px; fill: currentColor; }
#page-width-toggle svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.history-arrow-btn svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.capture-icon-btn { width: 44px; grid-template-columns: 24px 10px; gap: 3px; }
.capture-icon-btn .capture-camera-icon { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.capture-icon-btn .capture-chevron-icon { width: 9px; height: 6px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
#save-status { position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:80;box-sizing:border-box;width:max-content;max-width:calc(100vw - 32px);height:auto;padding:11px 16px;border:1px solid var(--danger);border-radius:9px;background:var(--danger-light);color:var(--danger);box-shadow:0 4px 18px #0002;font-size:13px;line-height:1.4;cursor:pointer;overflow-wrap:anywhere; }
#save-status[hidden]{display:none}
.backlinks { color: var(--text-muted); font-size: 12px; margin-bottom: 12px; }
.backlinks button { border: 0; background: var(--navy-light); color: var(--navy-accent); padding: 3px 6px; margin: 3px; border-radius: 4px; cursor: pointer; }
.extras-dialog { box-sizing: border-box; width: min(540px,calc(100vw - 32px)); max-height: 90vh; overflow: auto; padding: 24px; }
.extras-dialog h3 { margin: 0 0 20px; }
.extras-dialog button { margin: 0 8px 8px 0; min-height: 44px; padding: 10px 14px; cursor: pointer; }
.extras-dialog pre { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 12px; }
.history-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--border-color); font-size: 12px; }
.history-row span { flex: 1; }
.capture-preview canvas { max-width: 100%; height: auto; touch-action: none; cursor: crosshair; }
.capture-preview video { width: 100%; max-height: 60vh; }
.capture-dialog { position: relative; width: min(680px,calc(100vw - 32px)); padding: 26px; border: 0; border-radius: 18px; box-shadow: 0 24px 70px #0b263c40; color: var(--text-primary); }
.capture-dialog .capture-heading { margin: 0 48px 6px 0; color: var(--navy-accent); font-size: 22px; line-height: 1.25; }
.capture-dialog .capture-close { position: absolute; top: 16px; right: 16px; display: grid; place-items: center; width: 34px; height: 34px; margin: 0; padding: 0; border: 0; border-radius: 50%; background: var(--bg-sidebar); color: var(--text-muted); font-size: 24px; line-height: 1; }
.capture-dialog .capture-close:hover { background: var(--navy-light); color: var(--navy-accent); }
.capture-intro { margin: 0 0 20px; color: var(--text-muted); font-size: 14px; }
.capture-mic-option { display: flex; align-items: center; gap: 10px; width: fit-content; margin: 0 0 18px; color: var(--text-primary); font-size: 14px; cursor: pointer; }
.capture-mic-option input { width: 18px; height: 18px; margin: 0; accent-color: var(--navy-accent); }
.capture-actions { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.capture-dialog .capture-action { display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 54px; margin: 0; padding: 10px 14px; border: 1px solid var(--border-color); border-radius: 11px; background: var(--bg-sidebar); color: var(--text-primary); font: 600 14px 'DM Sans',sans-serif; }
.capture-dialog .capture-action:hover { border-color: var(--navy-accent); background: var(--navy-light); color: var(--navy-accent); }
.capture-dialog .capture-action svg { width: 21px; height: 21px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.capture-dialog .capture-stop { color: var(--danger); }
.capture-status:empty { display: none; }
.capture-status { margin: 0 0 14px; padding: 9px 11px; border-radius: 8px; background: var(--navy-light); color: var(--navy-accent); font-size: 13px; }
.capture-dialog .capture-save { margin: 0 0 14px; padding: 9px 14px; border: 0; border-radius: 8px; background: var(--navy-accent); color: #fff; font-weight: 600; }
@media (max-width: 620px) { .capture-dialog { padding: 22px 18px; } .capture-actions { grid-template-columns: 1fr; } }

/* Aufgabenplaner */
.tasks-page{overflow:auto;background:var(--bg-main);color:var(--text-primary)}.tasks-shell{min-height:100vh;display:grid;grid-template-columns:260px minmax(420px,1fr) 340px}.tasks-sidebar{display:flex;flex-direction:column;padding:24px 16px;background:var(--bg-sidebar);border-right:1px solid var(--border-color)}.tasks-brand{padding:0 10px 24px}.tasks-brand a{display:block;color:var(--navy-accent);font-size:19px;font-weight:800;text-decoration:none}.tasks-brand span{color:var(--text-muted);font-size:12px}.tasks-smart-list,.task-list-nav{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:8px;background:transparent;color:var(--text-primary);text-align:left;cursor:pointer}.tasks-smart-list:hover,.task-list-nav:hover,.tasks-smart-list.active,.task-list-nav.active{background:var(--navy-light);color:var(--navy-accent)}.tasks-smart-list b,.task-list-nav b{margin-left:auto;font-size:11px}.task-lists-heading{display:flex;align-items:center;justify-content:space-between;margin:26px 10px 8px;color:var(--text-muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.task-lists-heading button{border:0;background:transparent;color:inherit;font-size:20px;cursor:pointer}.task-list-nav i{width:9px;height:9px;border-radius:50%}.task-list-nav span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks-back-link{margin-top:auto;padding:20px 10px 0;color:var(--text-muted);font-size:13px;text-decoration:none}.tasks-main{padding:50px clamp(28px,6vw,90px);overflow:auto}.tasks-header{display:flex;justify-content:space-between;align-items:start}.tasks-eyebrow{margin:0;color:var(--text-muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.tasks-header h1{margin:5px 0 3px;font-size:34px;color:var(--navy-accent)}.tasks-header>button{border:0;background:transparent;font-size:24px;color:var(--text-muted);cursor:pointer}.tasks-subtitle{color:var(--text-muted)}.quick-task-form{display:grid;grid-template-columns:38px 1fr auto auto;align-items:center;margin:28px 0 20px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-workspace);box-shadow:0 8px 24px #00000008;overflow:hidden}.quick-task-form input{min-width:0;padding:14px 8px;border:0;background:transparent;color:var(--text-primary);outline:0}.quick-task-form button{height:100%;border:0;background:transparent;color:var(--navy-accent);font-size:22px;cursor:pointer}.quick-task-form .quick-add-text{padding:0 16px;background:var(--navy-accent);color:#fff;font-size:13px}.task-list{display:grid;gap:8px}.task-row{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-workspace);cursor:pointer}.task-row:hover{border-color:color-mix(in srgb,var(--navy-accent) 40%,var(--border-color));box-shadow:0 6px 18px #00000008}.task-check{flex:0 0 auto;width:22px;height:22px;border:2px solid #9aa8b6;border-radius:50%;background:transparent;color:#fff;cursor:pointer}.task-row.completed{opacity:.65}.task-row.completed .task-check{border-color:#2ba568;background:#2ba568}.task-row.completed strong{text-decoration:line-through}.task-row-body{min-width:0}.task-row-body strong{font-size:15px}.task-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;color:var(--text-muted);font-size:11px}.task-meta .overdue,.priority-high{color:var(--danger)}.tasks-empty{text-align:center;padding:70px 20px;color:var(--text-muted)}.tasks-empty>span{display:grid;place-items:center;width:54px;height:54px;margin:auto;border-radius:50%;background:var(--navy-light);color:var(--navy-accent);font-size:25px}.tasks-empty h2{margin-bottom:4px;color:var(--text-primary)}.completed-section{margin-top:26px}.completed-section>button{border:0;background:transparent;color:var(--text-muted);cursor:pointer}.completed-section>div{display:grid;gap:8px;margin-top:10px}.task-detail{position:relative;padding:50px 28px;background:var(--bg-sidebar);border-left:1px solid var(--border-color)}.task-detail-close{position:absolute;top:16px;right:18px;border:0;background:transparent;color:var(--text-muted);font-size:25px;cursor:pointer}.task-detail h2{margin:0 0 24px}.task-detail label{display:grid;gap:6px;margin:14px 0;color:var(--text-muted);font-size:12px}.task-detail :is(input,select,textarea),.task-list-dialog input{padding:10px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--text-primary);font:inherit}.task-detail-actions{display:flex;gap:10px;margin-top:24px}.task-detail-actions button{padding:10px 15px;border:0;border-radius:7px;cursor:pointer}.task-save{background:var(--navy-accent);color:#fff}.task-delete{background:var(--danger-light);color:var(--danger)}.task-list-dialog form{display:grid;gap:16px}.task-list-dialog form>div{display:flex;justify-content:flex-end;gap:8px}.task-list-dialog button{padding:8px 12px}.tasks-link{font-size:18px;font-weight:800}
@media(max-width:1000px){.tasks-shell{grid-template-columns:220px 1fr}.task-detail{position:fixed;inset:0 0 0 auto;width:min(360px,92vw);z-index:100;background:var(--bg-sidebar);box-shadow:-10px 0 35px #0003}.tasks-main{padding:35px 30px}}@media(max-width:700px){.tasks-shell{display:block}.tasks-sidebar{min-height:auto;border:0;border-bottom:1px solid var(--border-color)}.tasks-back-link{margin-top:16px}.tasks-main{padding:28px 16px}.quick-task-form{grid-template-columns:36px 1fr}.quick-task-form input[type=datetime-local],.quick-add-text{grid-column:2;padding:10px!important}.task-lists-heading{margin-top:14px}}
.task-star{margin-left:auto;padding:2px 5px;border:0;background:transparent;color:#9aa8b6;font-size:22px;cursor:pointer}.task-star.active{color:var(--scb-gold)}
.tasks-page{background:#f5f6f8}.tasks-shell{grid-template-columns:250px minmax(420px,1fr) 360px}.tasks-sidebar{padding:20px 12px;background:#f3f4f6}.tasks-brand{padding:2px 12px 22px}.tasks-smart-list,.task-list-nav{min-height:42px;border-radius:5px;padding:9px 12px}.tasks-smart-list.active,.task-list-nav.active{background:#e4edf2}.tasks-main{padding:46px clamp(28px,6vw,84px);background:#fafbfc}.tasks-header h1{font-size:32px}.quick-task-form{border:0;border-radius:6px;box-shadow:0 1px 4px #00000014}.quick-task-form .quick-add-text{background:transparent;color:var(--navy-accent);font-weight:700}.task-list{gap:2px}.task-row{align-items:center;padding:13px 14px;border:0;border-radius:4px;box-shadow:0 1px 3px #00000010}.task-row:hover{border-color:transparent;box-shadow:0 2px 7px #00000018}.task-row-body{flex:1}.task-detail{padding:58px 18px 24px;background:#f3f4f6;overflow-y:auto}.task-detail form{display:grid;gap:10px}.task-detail-title-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:15px 13px;border-radius:5px;background:var(--bg-workspace);box-shadow:0 1px 3px #0001}.task-detail-title-row input{padding:4px 0!important;border:0!important;border-radius:0!important;background:transparent!important;font-size:16px!important;font-weight:650}.task-detail-card{margin:0!important;border:0!important;border-radius:5px!important;background:var(--bg-workspace)!important;box-shadow:0 1px 3px #0001}.task-detail-field{display:grid!important;grid-template-columns:24px 1fr;align-items:center;gap:8px;padding:8px 13px;color:var(--text-muted)}.task-detail-field :is(input,select){padding:6px 0!important;border:0!important;background:transparent!important}.task-steps-card{padding:13px}.task-steps-card h3{margin:0 0 8px;color:var(--text-muted);font-size:12px;font-weight:600}.task-step{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;min-height:36px;border-bottom:1px solid var(--border-color);font-size:13px}.task-step.completed span{text-decoration:line-through;color:var(--text-muted)}.task-step .task-check{width:18px;height:18px;font-size:11px}.step-delete{border:0;background:transparent;color:var(--text-muted);font-size:18px;cursor:pointer}.step-add{display:grid;grid-template-columns:22px 1fr;align-items:center;gap:6px;padding-top:8px;color:var(--navy-accent)}.step-add input{padding:6px 0!important;border:0!important;background:transparent!important}.task-notes-field{display:grid!important;gap:7px;padding:13px;color:var(--text-muted)}.task-notes-field textarea{padding:5px 0!important;border:0!important;background:transparent!important;resize:vertical}.task-detail-actions{justify-content:space-between;margin-top:8px}.task-save{background:transparent;color:var(--navy-accent);font-weight:700}.task-delete{background:transparent}.task-detail-close{top:15px}.task-detail .task-star{font-size:22px}.tasks-page[data-theme="dark"]{background:var(--bg-main)}
.backup-link { display: inline-block; padding: 8px 12px; background: var(--navy-light); border-radius: 5px; }

.text-color-popup { position: fixed; z-index: 10020; background: var(--bg-workspace); border: 1px solid var(--border-color); border-radius: 6px; box-shadow: 0 4px 16px #0002; }

.note-move-handle { cursor: grab; touch-action: none; }
html[data-theme="dark"] .tasks-page,html[data-theme="dark"] .tasks-main{background:var(--bg-main)}html[data-theme="dark"] .tasks-sidebar,html[data-theme="dark"] .task-detail{background:var(--bg-sidebar)}
.tasks-shell:has(.task-detail[hidden]){grid-template-columns:250px minmax(420px,1fr)}

/* Gemeinsame SCB-Modulnavigation */
.module-dock{display:flex;align-items:center;gap:5px;margin-top:auto;padding-top:14px;border-top:1px solid var(--border-color)}.module-dock a{display:grid;place-items:center;width:34px;height:34px;border-radius:7px;color:var(--text-muted);text-decoration:none;font-size:17px;font-weight:700}.module-dock a:hover,.module-dock a.active{background:var(--navy-light);color:var(--navy-accent)}.sidebar-footer{display:block}.sidebar-footer .module-dock{padding:10px 0 0;border-top:0}.tasks-sidebar .module-dock{margin-top:auto}.tasks-sidebar .tasks-back-link{display:none}

/* Kalender / Selbstführungszentrale */
.calendar-page{min-height:100vh;overflow:auto;background:#f7f8fa;color:var(--text-primary)}.calendar-shell{min-height:100vh;display:grid;grid-template-columns:230px minmax(620px,1fr) 290px}.calendar-sidebar{display:flex;flex-direction:column;padding:22px 14px;background:#f2f4f6;border-right:1px solid var(--border-color)}.calendar-today{width:100%;margin:8px 0 18px;padding:9px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);color:var(--navy-accent);font-weight:700;cursor:pointer}.mini-month{padding:12px;color:var(--text-primary);font-weight:700;text-transform:capitalize}.calendar-source{display:grid;gap:12px;margin-top:18px;padding:12px;color:var(--text-muted);font-size:13px}.calendar-source strong{margin-bottom:3px;color:var(--text-primary);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.calendar-source label{display:flex;align-items:center;gap:9px}.source-dot{width:9px;height:9px;border-radius:50%}.event-dot{background:var(--navy-accent)}.task-dot{background:var(--scb-gold)}.google-calendar-status{display:grid;gap:4px;margin:18px 8px;padding:11px;border-radius:7px;background:var(--bg-workspace);font-size:11px;color:var(--text-muted)}.google-calendar-status strong{color:var(--text-primary)}.calendar-main{padding:36px 28px;background:#fbfcfd}.calendar-toolbar{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px}.calendar-toolbar p{margin:0;color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.12em}.calendar-toolbar h1{margin:5px 0 0;color:var(--navy-accent);font-size:30px;text-transform:capitalize}.calendar-toolbar>div:last-child{display:flex;gap:7px}.calendar-toolbar button{min-width:34px;height:34px;border:0;border-radius:6px;background:var(--bg-workspace);color:var(--text-primary);cursor:pointer;box-shadow:0 1px 3px #0001}.calendar-toolbar .calendar-add{padding:0 13px;background:var(--navy-accent);color:#fff}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays span{padding:8px;color:var(--text-muted);font-size:11px;font-weight:700;text-align:center}.calendar-grid{border-top:1px solid var(--border-color);border-left:1px solid var(--border-color)}.calendar-day{min-width:0;min-height:112px;padding:8px;border:0;border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background:var(--bg-workspace);color:var(--text-primary);text-align:left;cursor:pointer}.calendar-day:hover,.calendar-day.selected{background:var(--navy-subtle)}.calendar-day.outside{opacity:.42}.calendar-day strong{display:grid;place-items:center;width:25px;height:25px;margin-left:auto;border-radius:50%;font-size:12px}.calendar-day.today strong{background:var(--navy-accent);color:#fff}.calendar-day>div{display:grid;gap:3px;margin-top:4px}.calendar-item{display:block;overflow:hidden;padding:3px 5px;border-radius:3px;background:var(--navy-light);color:var(--navy-accent);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.calendar-item.task{background:var(--scb-gold-soft);color:var(--scb-gold-text)}.calendar-item.completed{text-decoration:line-through;opacity:.55}.calendar-day small{color:var(--text-muted);font-size:9px}.calendar-agenda{padding:38px 18px;background:#f2f4f6;border-left:1px solid var(--border-color)}.calendar-agenda header p{margin:0;color:var(--text-muted);font-size:12px;text-transform:capitalize}.calendar-agenda h2{margin:5px 0 24px;color:var(--navy-accent)}#agenda-list{display:grid;gap:8px}.agenda-item{display:grid;grid-template-columns:48px 1fr;gap:9px;width:100%;padding:11px;border:0;border-left:3px solid var(--navy-accent);border-radius:5px;background:var(--bg-workspace);color:var(--text-primary);text-align:left;cursor:pointer;box-shadow:0 1px 3px #0001}.agenda-item.task{border-left-color:var(--scb-gold)}.agenda-item time{color:var(--text-muted);font-size:11px}.agenda-item span{display:grid;gap:3px}.agenda-item small,.agenda-empty{color:var(--text-muted);font-size:11px}.event-dialog form{display:grid;gap:13px;min-width:min(560px,82vw)}.event-dialog header,.event-dialog footer{display:flex;align-items:center;gap:9px}.event-dialog header{justify-content:space-between}.event-dialog header button{border:0;background:transparent;font-size:24px}.event-dialog label{display:grid;gap:5px;color:var(--text-muted);font-size:12px}.event-dialog :is(input,select,textarea){padding:10px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);color:var(--text-primary);font:inherit}.event-time-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.event-dialog .event-check{display:flex;align-items:center}.event-dialog .event-check input{width:auto}.event-dialog footer{justify-content:flex-end}.event-dialog footer span{flex:1}.event-dialog footer button{padding:9px 13px;border:0;border-radius:6px;cursor:pointer}html[data-theme="dark"] :is(.calendar-page,.calendar-main){background:var(--bg-main)}html[data-theme="dark"] :is(.calendar-sidebar,.calendar-agenda){background:var(--bg-sidebar)}
@media(max-width:1200px){.calendar-shell{grid-template-columns:210px minmax(560px,1fr)}.calendar-agenda{grid-column:2;padding-top:20px;border-left:0;border-top:1px solid var(--border-color)}}@media(max-width:760px){.calendar-shell{display:block}.calendar-sidebar{min-height:auto}.calendar-sidebar .module-dock{margin-top:18px}.calendar-main{padding:24px 10px;overflow-x:auto}.calendar-toolbar{align-items:flex-start}.calendar-grid,.calendar-weekdays{min-width:680px}.calendar-agenda{padding:22px 14px}.event-time-grid{grid-template-columns:1fr}}
.calendar-sidebar{position:sticky;top:0;height:100vh;box-sizing:border-box}@media(max-width:760px){.calendar-sidebar{position:static;height:auto}}

/* Vollwertige Kalenderansichten */
.calendar-toolbar{align-items:center}.calendar-toolbar h1{margin:0}.calendar-toolbar-actions,.calendar-view-switch{display:flex;align-items:center;gap:5px}.calendar-view-switch{padding:3px;border-radius:7px;background:var(--bg-sidebar)}.calendar-view-switch button{padding:0 10px;box-shadow:none}.calendar-view-switch button.active{background:var(--navy-light);color:var(--navy-accent);font-weight:700}.calendar-source header{display:flex;justify-content:space-between;align-items:center}.calendar-source header button{border:0;background:transparent;color:var(--navy-accent);font-size:18px;cursor:pointer}.calendar-source>div{display:grid;gap:10px}.calendar-source>div label{display:flex;align-items:center;gap:9px}.task-drawer header small{display:block;color:var(--text-muted);font-size:11px;line-height:1.4}.calendar-task-list{display:grid;gap:7px;margin-top:18px}.calendar-task{display:grid;grid-template-columns:16px minmax(0,1fr);gap:2px 8px;padding:10px;border-radius:5px;background:var(--bg-workspace);box-shadow:0 1px 3px #0001;cursor:grab}.calendar-task:active{cursor:grabbing}.calendar-task>span{grid-row:1/3;color:var(--text-muted)}.calendar-task strong{font-size:12px}.calendar-task small{color:var(--text-muted);font-size:10px}.day-agenda{margin-top:26px;padding-top:18px;border-top:1px solid var(--border-color)}.day-agenda>p{color:var(--text-muted);font-size:11px;text-transform:capitalize}.agenda-compact{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px}.agenda-compact a{font-size:10px;color:var(--navy-accent)}.calendar-item{width:100%;border:0;border-left:3px solid var(--item-color,var(--navy-accent));text-align:left;cursor:pointer}.timeline-view{min-width:620px;border:1px solid var(--border-color);background:var(--bg-workspace)}.timeline-head{display:grid;grid-template-columns:56px repeat(var(--timeline-days,7),minmax(90px,1fr));height:42px;border-bottom:1px solid var(--border-color)}.timeline-head button{border:0;border-left:1px solid var(--border-color);background:var(--bg-workspace);color:var(--text-primary);font-weight:700;cursor:pointer}.timeline-body{position:relative;display:grid;grid-template-columns:56px repeat(var(--timeline-days,7),minmax(90px,1fr));height:min(68vh,720px);overflow-y:auto}.timeline-times{position:relative;height:1152px}.timeline-times span{position:absolute;right:8px;transform:translateY(-50%);color:var(--text-muted);font-size:9px}.timeline-day{position:relative;height:1152px;border-left:1px solid var(--border-color);background:repeating-linear-gradient(to bottom,transparent 0,transparent 11px,color-mix(in srgb,var(--border-color) 38%,transparent) 12px)}.timeline-day>i{position:absolute;left:0;right:0;height:1px;background:var(--border-color);pointer-events:none}.time-block{position:absolute;left:3px;right:3px;width:auto!important;z-index:2;overflow:hidden;padding:3px 5px;background:color-mix(in srgb,var(--item-color) 14%,var(--bg-workspace));color:var(--text-primary);font-size:10px}.calendar-dialog form{display:grid;gap:12px}.calendar-dialog label{display:grid;gap:5px}.calendar-dialog input{padding:9px;border:1px solid var(--border-color);border-radius:6px}.calendar-dialog footer{display:flex;justify-content:flex-end;gap:8px}.calendar-dialog footer button{padding:8px 12px;border:0;border-radius:6px}.calendar-page:has(.timeline-view) .calendar-main{overflow:hidden}.calendar-page:has(.timeline-view) .timeline-head{--timeline-days:7}.calendar-page:has(.timeline-view) .timeline-body{--timeline-days:7}.calendar-page:has(.timeline-view .timeline-head button:only-of-type) .timeline-head,.calendar-page:has(.timeline-view .timeline-head button:only-of-type) .timeline-body{--timeline-days:1}

/* Einheitliche Modulnavigation */
.module-dock a svg{width:20px;height:20px;display:block;flex-shrink:0}

/* Terminfenster: ruhige Abstände, Wiederholung und Beschreibungsblöcke */
.event-dialog{width:min(680px,calc(100vw - 32px));max-width:680px;max-height:calc(100vh - 32px);overflow:auto;box-sizing:border-box}.event-dialog form{min-width:0;padding:24px;gap:16px;box-sizing:border-box}.event-dialog header h3{margin:0}.event-dialog label,.event-description-field{min-width:0}.event-dialog :is(input,select,textarea){width:100%;box-sizing:border-box}.event-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.event-dialog .event-check{min-height:42px;display:flex;align-items:center;gap:8px;padding:0 4px}.event-dialog .event-check input{width:17px;height:17px;margin:0}.event-description-field{display:grid;gap:6px;color:var(--text-muted);font-size:12px}.event-description-toolbar{display:flex;gap:5px;padding:6px;border:1px solid var(--border-color);border-bottom:0;border-radius:7px 7px 0 0;background:var(--bg-sidebar)}.event-description-toolbar button{display:grid;place-items:center;min-width:30px;height:28px;padding:0 8px;border:0;border-radius:5px;background:transparent;color:var(--text-primary);font-weight:700;cursor:pointer}.event-description-toolbar button:hover{background:var(--navy-light);color:var(--navy-accent)}.event-description-editor{min-height:120px;max-height:240px;overflow:auto;padding:12px;border:1px solid var(--border-color);border-radius:0 0 7px 7px;background:var(--bg-workspace);color:var(--text-primary);font-size:14px;line-height:1.5;outline:none}.event-description-editor:focus{border-color:var(--navy-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--navy-accent) 15%,transparent)}.event-description-editor:empty::before{content:attr(data-placeholder);color:var(--text-muted)}.event-description-editor :is(h2,h3,p,ul,ol){margin:6px 0}.event-dialog footer{padding-top:4px}.event-dialog footer button{min-height:38px}.event-dialog footer .task-save{background:var(--navy-accent);color:#fff}
@media(max-width:620px){.event-dialog form{padding:18px}.event-time-grid,.event-options-grid{grid-template-columns:1fr}.event-dialog .event-check{min-height:34px}}

/* Benutzerdefinierte Wiederholung und ruhiger Listen-Dialog */
.event-recurrence-days{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:12px;border:1px solid var(--border-color);border-radius:8px}.event-recurrence-days[hidden]{display:none}.event-recurrence-days legend{padding:0 5px;color:var(--text-muted);font-size:12px}.event-recurrence-days label{display:flex;align-items:center;justify-content:center;gap:5px;min-width:54px;padding:8px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--text-primary);font-size:13px;cursor:pointer}.event-recurrence-days input{width:16px!important;height:16px;margin:0}.task-list-dialog{width:min(520px,calc(100vw - 32px));max-width:520px;box-sizing:border-box}.task-list-dialog form{padding:24px;gap:18px}.task-list-dialog h3{margin:0}.task-list-dialog input{width:100%;box-sizing:border-box}.task-list-dialog form>div{padding-top:2px}.task-list-dialog button{min-height:38px;border:0;border-radius:7px;background:var(--bg-sidebar);color:var(--text-primary);cursor:pointer}.task-list-dialog #save-list{background:var(--navy-accent);color:#fff}

/* Aufgabenleiste und getrennte Kalender-Timeboxen */
.calendar-shell.task-drawer-closed{grid-template-columns:230px minmax(620px,1fr)}.calendar-shell.task-drawer-closed .task-drawer{display:none}.task-drawer header{position:relative}.task-drawer header>button{position:absolute;top:-8px;right:-6px;width:30px;height:30px;border:0;border-radius:50%;background:transparent;color:var(--text-muted);font-size:22px;cursor:pointer}.task-drawer header label{display:grid;gap:5px;margin:0 0 12px;color:var(--text-muted);font-size:11px}.task-drawer header select{width:100%;padding:9px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--text-primary)}.calendar-task{border:1px solid transparent}.calendar-task:hover{border-color:var(--border-color);box-shadow:0 3px 10px #0000000d}.calendar-item.timebox{position:relative;padding-right:21px;background:var(--scb-gold-soft);color:var(--scb-gold-text);cursor:grab}.calendar-item.timebox:active{cursor:grabbing}.timebox-delete{position:absolute;top:1px;right:2px;width:18px;height:18px;padding:0;border:0;border-radius:4px;background:transparent;color:inherit;line-height:16px;cursor:pointer;opacity:.55}.timebox-delete:hover{background:#0001;opacity:1}.timebox-resize{position:absolute;left:3px;right:3px;bottom:0;height:6px;border-bottom:2px solid color-mix(in srgb,var(--scb-gold) 60%,transparent);cursor:ns-resize}.calendar-item.timebox.completed{text-decoration:line-through;opacity:.55}@media(max-width:1200px){.calendar-shell.task-drawer-closed{grid-template-columns:210px minmax(560px,1fr)}}

/* Schnelle Aufgabe direkt in der Kalender-Aufgabenleiste */
.calendar-quick-task-form{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;margin:14px 0 0;padding:2px;border:1px solid transparent;border-radius:9px;background:color-mix(in srgb,var(--navy-accent) 5%,var(--bg-workspace));transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.calendar-quick-task-form:focus-within{border-color:color-mix(in srgb,var(--navy-accent) 35%,var(--border-color));background:var(--bg-workspace);box-shadow:0 2px 9px #0000000b}.calendar-quick-task-form button{width:26px;height:28px;margin:auto;border:0;border-radius:0;background:transparent;color:var(--navy-accent);font-size:22px;line-height:1;cursor:pointer;transition:color .15s ease}.calendar-quick-task-form button:hover{color:color-mix(in srgb,var(--navy-accent) 72%,#000)}.calendar-quick-task-form input{min-width:0;padding:10px 8px;border:0;outline:0;background:transparent;color:var(--text-primary);font:inherit;font-size:13px}.calendar-quick-task-form input::placeholder{color:var(--text-muted)}.calendar-quick-task-form button:disabled{opacity:.5;cursor:wait}

/* Google Calendar inspirierte Navigation und Aufgabensteuerung */
.calendar-entry-wrap{position:relative;margin:0 4px 8px}.calendar-entry-wrap>#calendar-entry-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 13px;border:0;border-radius:22px;background:var(--bg-workspace);color:var(--text-primary);font-weight:650;box-shadow:0 1px 4px #0002;cursor:pointer}.calendar-entry-wrap>#calendar-entry-toggle:hover{box-shadow:0 2px 7px #0003}.calendar-entry-wrap>#calendar-entry-toggle span{color:var(--text-muted)}#calendar-entry-menu{position:absolute;z-index:10;top:calc(100% + 5px);left:0;right:0;display:grid;padding:5px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-workspace);box-shadow:0 8px 24px #0002}#calendar-entry-menu[hidden]{display:none}#calendar-entry-menu button{padding:9px 11px;border:0;border-radius:5px;background:transparent;color:var(--text-primary);text-align:left;cursor:pointer}#calendar-entry-menu button:hover{background:var(--navy-subtle)}.mini-month{padding:10px 5px}.mini-month>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.mini-month>header button{width:26px;height:26px;border:0;border-radius:50%;background:transparent;color:var(--text-muted);font-size:20px;cursor:pointer}.mini-month>header button:hover{background:var(--navy-subtle)}.mini-month>header strong{font-size:12px;text-transform:capitalize}.mini-month-grid-inner{display:grid;grid-template-columns:24px repeat(7,minmax(0,1fr));align-items:center;gap:1px;text-align:center}.mini-month-grid-inner>span,.mini-month-grid-inner>button{display:grid;place-items:center;min-width:0;height:24px;padding:0;border:0;background:transparent;color:var(--text-primary);font:inherit;font-size:10px}.mini-month-grid-inner>span{color:var(--text-muted);font-size:9px}.mini-month-grid-inner>.mini-week-label,.mini-month-grid-inner>.mini-week-number{font-size:8px;color:var(--text-muted)}.mini-month-grid-inner>button{border-radius:50%;cursor:pointer}.mini-month-grid-inner>button:hover{background:var(--navy-subtle)}.mini-month-grid-inner>button.outside{color:var(--text-muted);opacity:.52}.mini-month-grid-inner>button.today{background:var(--navy-accent);color:white}.mini-month-grid-inner>button.selected:not(.today){outline:1px solid var(--navy-accent)}.calendar-source header{display:grid;grid-template-columns:22px 1fr 22px;gap:5px}.calendar-source header strong{align-self:center}.calendar-source #calendar-source-list[hidden]{display:none}.calendar-source #calendar-sources label{display:grid;grid-template-columns:14px 9px minmax(0,1fr);gap:7px;align-items:center;cursor:pointer}.calendar-source #calendar-sources input{width:14px;height:14px;margin:0;accent-color:var(--navy-accent)}.calendar-source #calendar-sources label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-weekdays,.calendar-week-row{grid-template-columns:42px repeat(var(--calendar-days,7),minmax(0,1fr))}.calendar-weekdays .kw-heading{font-size:9px}.calendar-grid{display:grid;grid-template-columns:1fr}.calendar-week-row{display:grid;min-width:0}.calendar-week-number{display:grid;place-items:start center;padding:13px 2px;border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background:var(--bg-sidebar);color:var(--text-muted);font-size:9px}.calendar-toolbar-actions #weekend-toggle{min-width:auto;padding:0 11px;border:1px solid var(--border-color);background:var(--bg-workspace);color:var(--text-primary);font-size:11px}.calendar-task{grid-template-columns:24px 14px minmax(0,1fr) 24px;align-items:start}.calendar-task-grip{grid-column:2;grid-row:1/3}.calendar-task>div{grid-column:3;display:grid;gap:3px;min-width:0}.calendar-task strong{overflow:hidden;text-overflow:ellipsis}.calendar-task-check{grid-column:1;grid-row:1/3;width:18px;height:18px;margin:2px auto 0;padding:0;border:1.5px solid var(--border-color);border-radius:50%;background:transparent;color:#fff;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}.calendar-task-check:hover{border-color:#1e8e3e;background:#e6f4ea;transform:scale(1.06)}.calendar-task-check:focus-visible{outline:2px solid var(--navy-accent);outline-offset:2px}.calendar-task-star{grid-column:4;grid-row:1/3;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--scb-gold-text);font-size:18px;cursor:pointer}.calendar-task-star:hover{background:var(--scb-gold-soft)}.calendar-item.timebox{display:flex;align-items:flex-start;gap:3px;padding-right:4px}.calendar-item.timebox>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.calendar-item.timebox button{position:static;flex:none;width:17px;height:17px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;font-size:12px;line-height:1;cursor:pointer;opacity:.75}.calendar-item.timebox button:hover{background:#0001;opacity:1}.calendar-task-dialog{width:min(460px,calc(100vw - 32px));max-width:460px}.calendar-task-dialog form{padding:22px}.calendar-task-dialog h3{margin:0}.calendar-dialog select{padding:9px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);color:var(--text-primary)}

/* Aufgaben aus einer Notiz erstellen */
.note-task-block{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 10px;margin:12px 0;padding:10px 13px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-workspace);box-shadow:0 2px 8px #00000008}.note-task-heading{display:flex;align-items:center;gap:8px;color:var(--navy-accent);font-size:13px;white-space:nowrap}.note-task-heading>span{display:grid;place-items:center;width:23px;height:23px;border:1px solid color-mix(in srgb,var(--navy-accent) 30%,var(--border-color));border-radius:50%;font-size:14px}.note-task-heading{grid-column:1/-1}.note-task-title-row{min-width:0}.note-task-block>input,.note-task-title-row>input,.note-task-controls>input,.note-task-controls>select{box-sizing:border-box;min-width:0;max-width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--text-primary);font:inherit}.note-task-title-row>input{width:100%}.note-task-controls{display:flex;align-items:center;gap:7px}.note-task-controls>.note-task-list{width:145px}.note-task-controls>input[type=datetime-local]{width:190px}.note-task-controls>button{min-height:38px;padding:0 12px;border:0;border-radius:7px;background:var(--navy-accent);color:#fff;font:inherit;font-size:12px;font-weight:650;white-space:nowrap;cursor:pointer}.note-task-controls>button:hover{filter:brightness(.94)}.note-task-controls>button:disabled{opacity:.6;cursor:wait}.note-task-status,.note-task-list-status{grid-column:1/-1;min-height:0;color:var(--text-muted);font-size:11px}.note-task-list-status:empty,.note-task-status:empty{display:none}.note-task-block:has(.note-task-status:not(:empty)),.note-task-block:has(.note-task-list-status:not(:empty)){row-gap:5px}@media(max-width:760px){.note-task-block{grid-template-columns:auto minmax(0,1fr);gap:8px}.note-task-controls{grid-column:1/-1;flex-wrap:wrap}.note-task-controls>.note-task-list{flex:1 1 130px}.note-task-controls>input[type=datetime-local]{flex:1 1 175px}.note-task-status,.note-task-list-status{grid-column:1/-1}}
.calendar-day-number{display:inline-grid;place-items:center;min-width:27px;height:27px;margin:-4px 0 3px;padding:0 6px;border:0;border-radius:50%;background:transparent;color:var(--text-primary);font:inherit;font-size:12px;cursor:pointer}.calendar-day-number:hover{background:var(--navy-subtle)}.calendar-day.today>.calendar-day-number{background:var(--navy-accent);color:#fff}.calendar-day-number:focus-visible{outline:2px solid var(--navy-accent);outline-offset:2px}

.calendar-quick-entry-dialog{width:min(620px,calc(100vw - 28px));max-width:620px;padding:0;overflow:auto;border:1px solid var(--border-color);border-radius:16px;background:var(--bg-workspace);color:var(--text-primary);box-shadow:0 22px 70px #0003}.calendar-quick-entry-dialog::backdrop{background:#10182066;backdrop-filter:blur(2px)}.quick-entry-card{display:grid;gap:18px;padding:24px}.quick-entry-card>header{display:flex;align-items:center;justify-content:space-between;color:var(--text-muted);font-size:13px;text-transform:capitalize}.quick-entry-card>header p{margin:0}.quick-entry-card>header button{width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:var(--text-muted);font-size:25px;cursor:pointer}.quick-entry-card>header button:hover{background:var(--bg-sidebar)}.quick-entry-title{width:100%;box-sizing:border-box;padding:9px 2px;border:0;border-bottom:2px solid var(--navy-accent);outline:0;background:transparent;color:var(--text-primary);font:500 25px/1.3 inherit}.quick-entry-title::placeholder{color:var(--text-muted);opacity:.8}.quick-entry-tabs{display:flex;gap:8px}.quick-entry-tabs button{padding:9px 16px;border:1px solid var(--border-color);border-radius:9px;background:var(--bg-workspace);color:var(--text-primary);font:inherit;cursor:pointer}.quick-entry-tabs button.active{border-color:var(--navy-accent);background:var(--navy-accent);color:#fff}.quick-entry-pane{display:grid;gap:14px}.quick-entry-pane[hidden]{display:none}.quick-entry-date-row{display:grid;grid-template-columns:26px 1fr auto;gap:10px;align-items:center;color:var(--text-muted);font-size:14px}.quick-entry-date-row>span:first-child{font-size:20px}.quick-entry-date-row button,.quick-entry-card footer button{padding:9px 13px;border:1px solid var(--border-color);border-radius:8px;background:transparent;color:var(--navy-accent);font:inherit;cursor:pointer}.quick-entry-pane label{display:grid;gap:6px;color:var(--text-muted);font-size:12px}.quick-entry-pane select,.quick-entry-pane input{box-sizing:border-box;width:100%;padding:10px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--text-primary);font:inherit}.quick-entry-pane p{margin:0;color:var(--text-muted);font-size:12px}.quick-entry-card footer{display:flex;align-items:center;gap:10px;padding-top:4px}.quick-entry-card footer span{flex:1}.quick-entry-card footer #quick-entry-more{border:0}.quick-entry-card footer .task-save{min-width:112px;border-color:var(--navy-accent);background:var(--navy-accent);color:#fff;font-weight:700}.quick-entry-card footer button:disabled{opacity:.55;cursor:wait}@media(max-width:620px){.quick-entry-card{gap:14px;padding:18px}.quick-entry-title{font-size:21px}.quick-entry-date-row{grid-template-columns:22px 1fr}.quick-entry-date-row button{grid-column:2;justify-self:start}.quick-entry-card footer{flex-wrap:wrap}.quick-entry-card footer span{display:none}.quick-entry-card footer>*{flex:1}.quick-entry-card footer #quick-entry-more{text-align:left}}

.calendar-toolbar-actions .calendar-today{width:auto;min-width:64px;margin:0;padding:0 12px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--text-primary);font-weight:600;cursor:pointer}.task-drawer header{padding-top:30px}.task-drawer-toggle{position:absolute;top:0;left:-13px;display:grid;place-items:center;width:27px;height:30px;border:1px solid var(--border-color);border-radius:7px 0 0 7px;background:var(--bg-workspace);color:var(--text-muted);font-size:17px;line-height:1;cursor:pointer;box-shadow:-2px 2px 5px #0000000a}.task-drawer-toggle:hover{color:var(--navy-accent);background:var(--navy-subtle)}.calendar-shell.task-drawer-closed .task-drawer{display:block;position:fixed;z-index:20;top:50%;right:0;width:34px;height:44px;min-height:0;padding:0;border:1px solid var(--border-color);border-right:0;border-radius:9px 0 0 9px;transform:translateY(-50%);overflow:visible}.calendar-shell.task-drawer-closed .task-drawer>*:not(header){display:none}.calendar-shell.task-drawer-closed .task-drawer header{padding:0}.calendar-shell.task-drawer-closed .task-drawer header h2,.calendar-shell.task-drawer-closed .task-drawer header label,.calendar-shell.task-drawer-closed .task-drawer header form{display:none}.calendar-shell.task-drawer-closed .task-drawer-toggle{position:static;width:33px;height:42px;border:0;border-radius:9px 0 0 9px;background:var(--bg-sidebar);box-shadow:none}

.task-list-row{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:3px;min-width:0;border-radius:7px}.task-list-grip{display:grid;place-items:center;width:18px;height:30px;color:var(--text-muted);font-size:15px;letter-spacing:-3px;cursor:grab;opacity:.68;user-select:none}.task-list-grip:active{cursor:grabbing}.task-list-row .task-list-nav{min-width:0}.task-list-nav i{flex:0 0 9px;cursor:pointer;box-shadow:0 0 0 2px transparent;transition:box-shadow .12s,transform .12s}.task-list-nav i:hover,.task-list-nav i:focus{outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--scb-gold) 27%,transparent);transform:scale(1.15)}.task-list-nav i.important{box-shadow:0 0 0 3px color-mix(in srgb,var(--scb-gold) 18%,transparent)}.task-list-row.dragging{opacity:.4}.task-list-row.drop-before{box-shadow:inset 0 2px var(--navy-accent)}.task-list-row.drop-after{box-shadow:inset 0 -2px var(--navy-accent)}

.task-projects-heading{margin-top:22px}.task-project-nav{padding-left:12px}.task-project-nav i{width:9px;height:9px;border-radius:50%}.task-project-tag{color:var(--navy-accent)!important;background:var(--navy-light);padding:1px 6px;border-radius:8px}.task-list-dialog form>label{display:grid;gap:5px;color:var(--text-muted);font-size:12px}.task-list-dialog form>label input,.task-list-dialog form>label select{box-sizing:border-box;width:100%;min-width:0}.project-date-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.task-list-dialog form>div:last-child{gap:8px;flex-wrap:wrap}.task-list-dialog form>div:last-child button:first-child{margin-right:auto}
.task-projects-heading{gap:5px}.task-projects-heading #toggle-projects{width:18px;height:24px;padding:0;font-size:16px}.task-projects-heading #projects-heading{flex:1;padding:0;border:0;background:transparent;color:inherit;text-align:left;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.task-project-row .task-project-nav{padding-left:5px}.task-project-nav i.important{background:#c8913a!important}.project-milestone-editor{display:grid;gap:9px;margin:0;padding:12px;border:1px solid var(--border-color);border-radius:8px}.project-milestone-editor legend{padding:0 5px;color:var(--text-muted);font-size:12px}.project-milestone-editor>button{justify-self:start;padding:7px 10px!important;color:var(--navy-accent)!important}.project-milestone-row{display:grid;grid-template-columns:minmax(0,1fr) 130px 32px;gap:7px;align-items:center}.project-milestone-row input{padding:8px!important}.project-milestone-row .project-milestone-remove{padding:0;font-size:20px}.project-milestone-list{display:grid;grid-template-columns:1fr auto;gap:8px 16px;margin:-4px 0 20px;padding:16px;border:1px solid var(--border-color);border-radius:9px;background:var(--bg-workspace)}.project-milestone-list[hidden]{display:none}.project-milestone-list h2{margin:0;color:var(--navy-accent);font-size:17px}.project-milestone-list>span{align-self:center;color:var(--text-muted);font-size:12px}.project-milestone-overview{grid-column:1/-1;display:grid;gap:3px}.project-milestone-item{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:38px;border-bottom:1px solid var(--border-color)}.project-milestone-item:last-child{border:0}.project-milestone-item .task-check{width:18px;height:18px}.project-milestone-item time{color:var(--text-muted);font-size:12px}.project-milestone-item.completed span{text-decoration:line-through;color:var(--text-muted)}
.timeline-day{cursor:pointer}.timeline-day:hover{background-color:color-mix(in srgb,var(--navy-accent) 3%,var(--bg-workspace))}
/* Fast mobile note inbox */
.quick-capture-page{min-height:100vh;box-sizing:border-box;padding:env(safe-area-inset-top) 16px env(safe-area-inset-bottom);display:grid;place-items:start center;background:var(--bg-main)}
.quick-capture-card{box-sizing:border-box;width:min(100%,680px);margin:clamp(18px,8vh,72px) auto;padding:clamp(20px,5vw,36px);background:var(--bg-workspace);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 12px 36px #153a5214}
.quick-capture-card>a{color:var(--navy-accent);text-decoration:none}.quick-capture-card h1{margin:24px 0 6px;color:var(--navy-accent)}.quick-capture-card>p{color:var(--text-muted)}
.quick-capture-card form{display:grid;gap:14px}.quick-capture-card textarea{box-sizing:border-box;width:100%;min-height:42vh;padding:16px;border:1px solid var(--border-hover);border-radius:12px;font:inherit;font-size:17px;line-height:1.55;resize:vertical;background:var(--bg-workspace);color:var(--text-primary)}.quick-capture-card form button{min-height:50px;border:0;border-radius:10px;background:var(--navy-accent);color:#fff;font:inherit;font-weight:700}.quick-capture-card form button:disabled{opacity:.6}.quick-capture-card [role=status]{min-height:1.5em}

/* iPhone layout: usable viewport, reachable module navigation, no forced wide month grid */
@media (max-width: 760px) {
    .app-container { height: 100vh; height: 100dvh; min-height: 0; width: 100%; overflow: hidden; }
    .sidebar { flex: 0 0 auto; box-sizing: border-box; width: 100%; min-width: 0; max-height: 30vh; max-height: 30dvh; overflow: hidden; padding-bottom: 0; }
    .sidebar-content { overflow-y: auto; overscroll-behavior: contain; }
    .sidebar.is-collapsed { height: auto; max-height: none; padding: 8px 12px; overflow: visible; border-right: 0; border-bottom: 1px solid var(--border-color); }
    .sidebar.is-collapsed .sidebar-content { display: flex !important; overflow: visible; }
    .sidebar.is-collapsed .sidebar-header { min-height: 32px; margin: 0; padding: 0 48px 0 4px; }
    .sidebar.is-collapsed .notes-search,
    .sidebar.is-collapsed .folder-tree,
    .sidebar.is-collapsed .sidebar-footer { display: none; }
    .sidebar.is-collapsed .sidebar-top-controls { top: 8px; right: 8px; bottom: auto; left: auto; }
    .sidebar.is-collapsed .sidebar-toggle { width: 36px; height: 32px; border: 0; border-radius: 8px; background: transparent; box-shadow: none; font-size: 18px; }
    .sidebar.is-collapsed .sidebar-header h2 { margin: 0; font-size: 17px; }
    .sidebar.is-collapsed .create-menu-wrap { display: none; }
    .sidebar:not(.is-collapsed) { position: fixed; z-index: 140; inset: 0 auto 0 0; width: min(320px, calc(100vw - 56px)); min-width: 0; height: 100vh; height: 100dvh; max-height: none; padding: calc(12px + env(safe-area-inset-top)) 14px calc(10px + env(safe-area-inset-bottom)); overflow: hidden; border-right: 1px solid var(--border-color); border-bottom: 0; box-shadow: 12px 0 30px #122b3d24; }
    .sidebar:not(.is-collapsed) .sidebar-content { height: 100%; overflow-y: auto; }
    .sidebar:not(.is-collapsed) .sidebar-header { padding-right: 48px; }
    .sidebar:not(.is-collapsed) .sidebar-top-controls { top: calc(10px + env(safe-area-inset-top)); right: 8px; bottom: auto; left: auto; }
    .sidebar:not(.is-collapsed) .sidebar-toggle { width: 36px; height: 36px; border: 1px solid var(--border-color); border-radius: 8px; }
    .sidebar:not(.is-collapsed) .sidebar-footer { margin-top: auto; }
    .sidebar:not(.is-collapsed) .sidebar-footer .module-dock { position: static; display: grid; grid-template-columns: repeat(4, minmax(44px, 1fr)); justify-content: stretch; gap: 8px; padding: 12px 4px 4px; border: 0; border-top: 1px solid var(--border-color); border-radius: 0; box-shadow: none; }
    .note-utilities { display: none; }
    .sticky-controls { display: none; }
    .sidebar-footer { flex: 0 0 auto; margin-top: 8px; padding: 8px 0 calc(8px + env(safe-area-inset-bottom)); background: var(--bg-sidebar); }
    .sidebar.is-collapsed .sidebar-footer .module-dock { display: none; }
    .page-canvas { box-sizing: border-box; flex: 1 1 0; min-height: 0; width: 100%; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; padding: 12px 16px calc(78px + env(safe-area-inset-bottom)); }

    .tasks-page { min-height: 100vh; min-height: 100dvh; padding-bottom: calc(66px + env(safe-area-inset-bottom)); box-sizing: border-box; overflow-x: hidden; }
    .tasks-sidebar { box-sizing: border-box; max-height: 34vh; max-height: 34dvh; overflow-y: auto; overscroll-behavior: contain; padding: 14px 12px 10px; }
    .tasks-main { min-width: 0; padding: 24px 14px; overflow: visible; }
    .tasks-header h1 { font-size: clamp(26px, 8vw, 32px); overflow-wrap: anywhere; }
    .task-detail { inset: 0; box-sizing: border-box; width: 100%; max-height: 100dvh; padding: calc(48px + env(safe-area-inset-top)) 16px calc(20px + env(safe-area-inset-bottom)); }
    .tasks-sidebar .module-dock { position: fixed; z-index: 120; right: 10px; bottom: env(safe-area-inset-bottom); left: 10px; justify-content: space-around; padding: 8px 6px; border: 1px solid var(--border-color); border-radius: 12px; background: var(--bg-sidebar); box-shadow: 0 4px 18px #122b3d18; }

    .calendar-page { min-height: 100vh; min-height: 100dvh; padding-bottom: calc(62px + env(safe-area-inset-bottom)); box-sizing: border-box; overflow-x: hidden; }
    .calendar-shell { min-height: 0; width: 100%; overflow-x: hidden; }
    .calendar-sidebar { padding: 12px 12px 8px; }
    .calendar-sidebar .mini-month { padding: 8px 4px; }
    .calendar-sidebar .calendar-source { margin-top: 8px; padding: 8px 4px; }
    .calendar-page:has(.month-view) .calendar-sidebar .mini-month { display: none; }
    .calendar-sidebar .google-calendar-status { display: none; }
    .calendar-sidebar .module-dock { position: fixed; z-index: 120; right: 10px; bottom: env(safe-area-inset-bottom); left: 10px; justify-content: space-around; margin: 0; padding: 8px 6px; border: 1px solid var(--border-color); border-radius: 12px; background: var(--bg-sidebar); box-shadow: 0 4px 18px #122b3d18; }
    .calendar-main { min-width: 0; padding: 18px 10px 22px; overflow: visible; }
    .calendar-toolbar { display: grid; grid-template-columns: minmax(0,1fr); gap: 10px; margin-bottom: 14px; }
    .calendar-toolbar h1 { min-width: 0; font-size: clamp(22px, 7vw, 28px); }
    .calendar-toolbar-actions { min-width: 0; flex-wrap: wrap; gap: 5px; }
    .calendar-toolbar-actions .calendar-today { min-width: 56px; padding: 0 8px; }
    .calendar-view-switch { gap: 2px; }
    .calendar-view-switch button { min-width: 38px; padding: 0 7px; }
    .month-view { min-width: 0; width: 100%; overflow: visible; }
    .calendar-weekdays, .calendar-week-row { grid-template-columns: 27px repeat(var(--calendar-days,7), minmax(0,1fr)); min-width: 0; }
    .calendar-grid { grid-template-columns: minmax(0,1fr); min-width: 0; }
    .calendar-weekdays span { padding: 6px 1px; font-size: 10px; }
    .calendar-week-number { padding: 8px 1px; font-size: 8px; }
    .calendar-day { box-sizing: border-box; min-width: 0; min-height: 76px; padding: 3px 2px; }
    .calendar-day-number { min-width: 22px; width: 22px; height: 22px; margin: 0 auto 2px; padding: 0; font-size: 11px; }
    .calendar-day>div { gap: 2px; margin-top: 2px; }
    .calendar-item { box-sizing: border-box; padding: 2px 2px; border-left-width: 2px; font-size: 8px; }
    .calendar-stage { min-width: 0; max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
    .timeline-view { min-width: 620px; }
    .calendar-agenda { padding: 18px 12px; }
    .task-drawer { box-sizing: border-box; width: 100%; min-width: 0; padding: 20px 12px calc(18px + env(safe-area-inset-bottom)); border-top: 1px solid var(--border-color); }
    .calendar-shell.task-drawer-closed .task-drawer { position: fixed; top: auto; right: 0; bottom: calc(74px + env(safe-area-inset-bottom)); left: auto; width: 38px; height: 44px; transform: none; }
    .calendar-shell.task-drawer-closed .task-drawer-toggle { width: 37px; height: 42px; }

    .note-task-block { grid-template-columns: minmax(0,1fr); }
    .note-task-heading, .note-task-status, .note-task-list-status { grid-column: 1; }
    .note-task-title-row, .note-task-controls { grid-column: 1; min-width: 0; }
    .note-task-controls { display: grid; grid-template-columns: minmax(0,1fr); }
    .note-task-controls>.note-task-list, .note-task-controls>input[type=datetime-local] { box-sizing: border-box; width: 100%; }
}

/* Touch refinements inspired by Google Calendar/Tasks/Keep and Microsoft To Do. */
@media (hover: none) and (pointer: coarse) {
    .module-dock a { min-width: 44px; min-height: 44px; display: grid; place-items: center; border-radius: 10px; }
    .module-dock a:active { background: var(--navy-light); color: var(--navy-accent); }
    .tasks-smart-list, .task-list-nav { min-height: 44px; }
    .task-list-grip { width: 32px; min-height: 44px; }
    .task-row { min-height: 48px; }
    .task-check, .calendar-task-check { min-width: 28px; min-height: 28px; }
    .calendar-toolbar-actions button, .calendar-entry-wrap button, .calendar-source button { min-height: 42px; }
    .calendar-day { touch-action: manipulation; }
    .note-task-controls button, .quick-capture-card form button { min-height: 48px; }
}

@media (max-width: 760px) {
    .tasks-brand { padding: 0 8px 12px; }
    .tasks-shell:has(.task-detail[hidden]) { display: flex; flex-direction: column; min-height: 100dvh; }
    .tasks-sidebar { flex: 0 0 auto; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; max-height: 34vh; max-height: 34dvh; overflow-y: auto; overscroll-behavior: contain; padding: 12px 12px 8px; }
    .tasks-sidebar .tasks-brand, .tasks-sidebar .task-lists-heading, .tasks-sidebar #task-lists, .tasks-sidebar #task-projects { grid-column: 1 / -1; }
    .tasks-sidebar .tasks-smart-list { justify-content: flex-start; gap: 7px; min-height: 42px; padding: 6px 10px; font-size: 13px; white-space: nowrap; }
    .tasks-sidebar .tasks-smart-list b { margin-left: auto; }
    .tasks-sidebar .task-lists-heading { margin: 8px 4px 0; }
    .tasks-sidebar .task-list-nav { min-height: 40px; }
    .tasks-sidebar .module-dock { grid-column: 1 / -1; }
    .tasks-main { flex: 1 0 auto; padding: 18px 14px 82px; }
    .tasks-header { align-items: center; }
    .tasks-eyebrow { display: none; }
    .tasks-header h1 { margin: 0; font-size: 28px; }
    .tasks-subtitle { margin: 4px 0 0; font-size: 13px; }
    .quick-task-form { grid-template-columns: 34px minmax(0,1fr) auto; margin: 16px 0; }
    .quick-task-form input:not([type="datetime-local"]) { grid-column: 2 / -1; min-height: 46px; padding: 10px 8px; }
    .quick-task-form input[type="datetime-local"] { grid-column: 2; width: 100%; box-sizing: border-box; min-height: 44px; padding: 8px; }
    .quick-task-form .quick-add-text { grid-column: 3; grid-row: 2; min-height: 44px; padding: 0 12px !important; }
    .task-list { gap: 4px; }
    .task-row { min-height: 48px; padding: 11px 10px; }

    .calendar-shell { display: flex; flex-direction: column; }
    .calendar-shell:has(.timeline-view) .calendar-sidebar { padding: 8px 12px 4px; }
    .calendar-shell:has(.timeline-view) .calendar-sidebar .mini-month { display: block; }
    .calendar-shell:has(.timeline-view) .calendar-sidebar .mini-month-grid-inner { display: none; }
    .calendar-shell:has(.timeline-view) .calendar-sidebar .calendar-source { display: none; }
    .calendar-shell:has(.timeline-view) .calendar-entry-wrap { display: none; }
    .calendar-sidebar { order: 0; }
    .calendar-main { order: 1; padding: 12px 10px 18px; }
    .calendar-shell .task-drawer { order: 2; }
    .calendar-shell:has(.timeline-view) .calendar-main { padding-top: 8px; }
    .calendar-toolbar { gap: 7px; margin-bottom: 10px; }
    .calendar-toolbar h1 { font-size: 23px; }
    .calendar-toolbar-actions { justify-content: space-between; }
    .calendar-view-switch button { min-width: 44px; min-height: 42px; }
    .calendar-stage { overflow-x: auto; }
    .timeline-view { min-width: 680px; }
    .calendar-shell:has(.timeline-view) .task-drawer { padding-top: 14px; }
    .calendar-shell:has(.timeline-view) .task-drawer header { display: grid; grid-template-columns: 1fr auto; gap: 8px; }
    .calendar-shell:has(.timeline-view) .task-drawer header h2 { margin: 0; }
    .calendar-shell:has(.timeline-view) .task-drawer header label { grid-column: 1 / -1; margin: 0; }
    .calendar-shell:has(.timeline-view) .calendar-task-list { margin-top: 10px; }
    .calendar-shell:has(.timeline-view) .day-agenda { margin-top: 14px; padding-top: 10px; }
}

/* To-Do sidebar control follows the Notes toggle style. */
.tasks-sidebar-toggle { display: flex; align-items: center; justify-content: center; flex: 0 0 36px; width: 36px; height: 36px; padding: 0; border: 1px solid var(--border-color); border-radius: 8px; background: var(--bg-sidebar); color: var(--text-muted); font-size: 23px; line-height: 1; box-shadow: 3px 2px 6px #00000008; }
.tasks-sidebar-toggle:hover { color: var(--navy-accent); background: var(--navy-light); }
/* Compact To-Do navigation on small screens; categories stay in an on-demand drawer. */
@media (max-width: 760px) {
    .tasks-sidebar-toggle { flex-basis: 36px; width: 36px; height: 36px; }
    .tasks-sidebar.is-collapsed { position: relative; width: 100%; height: 52px; min-height: 52px; max-height: 52px; overflow: visible; padding: 3px 14px; border: 0; border-bottom: 1px solid var(--border-color); }
    .tasks-sidebar.is-collapsed > :not(.tasks-brand) { display: none !important; }
    .tasks-sidebar.is-collapsed .tasks-brand { display: flex; align-items: center; justify-content: space-between; height: 44px; margin: 0; padding: 0 2px 0 6px; }
    .tasks-sidebar.is-collapsed .tasks-brand a { font-size: 17px; }
    .tasks-sidebar.is-collapsed .tasks-sidebar-toggle { width: 36px; height: 32px; border: 0; border-radius: 8px; background: transparent; box-shadow: none; font-size: 18px; }
    .tasks-sidebar:not(.is-collapsed) { position: fixed; z-index: 140; inset: 0 auto 0 0; display: flex; flex-direction: column; width: min(320px, calc(100vw - 56px)); min-width: 0; height: 100vh; height: 100dvh; max-height: none; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; padding: calc(12px + env(safe-area-inset-top)) 14px calc(10px + env(safe-area-inset-bottom)); border: 0; border-right: 1px solid var(--border-color); box-shadow: 12px 0 30px #122b3d24; }
    .tasks-sidebar:not(.is-collapsed) .tasks-brand { display: flex; align-items: center; justify-content: space-between; flex: 0 0 auto; margin: 0; padding: 2px 4px 18px 10px; }
    .tasks-sidebar:not(.is-collapsed) .tasks-brand a { font-size: 19px; }
    .tasks-sidebar:not(.is-collapsed) .tasks-smart-list { grid-column: 1 / -1; min-height: 42px; }
    .tasks-sidebar:not(.is-collapsed) .task-lists-heading { grid-column: 1 / -1; }
    .tasks-sidebar:not(.is-collapsed) .module-dock { position: static; inset: auto; display: grid; grid-template-columns: repeat(5, minmax(44px, 1fr)); grid-column: 1 / -1; justify-content: stretch; gap: 2px; margin-top: auto; padding: 12px 4px 4px; border: 0; border-top: 1px solid var(--border-color); border-radius: 0; box-shadow: none; }
    .tasks-main { padding: 16px 14px calc(84px + env(safe-area-inset-bottom)); }
    .quick-task-form { grid-template-columns: minmax(0, 1fr) 110px; grid-template-rows: 42px 40px; gap: 6px; margin: 14px 0 18px; padding: 7px; overflow: visible; }
    .quick-task-form input:not([type="datetime-local"]) { grid-column: 1; grid-row: 1; min-height: 42px; padding: 8px; }
    .quick-task-form > button:first-child { grid-column: 2; grid-row: 1; justify-self: end; width: 40px; height: 40px; border-radius: 7px; background: var(--navy-light); font-size: 21px; }
    .quick-task-form input[type="datetime-local"] { grid-column: 1; grid-row: 2; width: 100%; min-height: 40px; padding: 6px; }
    .quick-task-form .quick-add-text { grid-column: 2; grid-row: 2; min-height: 40px; height: 40px; padding: 0 8px !important; font-size: 12px; }
}

/* Calendar sidebars use the same large, framed double-chevron control as Notes. */
.calendar-brand-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 6px 8px 8px;min-height:40px}
.calendar-brand-row>a{color:var(--navy-accent);font-size:16px;font-weight:800;text-decoration:none;white-space:nowrap}
.calendar-brand-row .calendar-sidebar-toggle{flex:0 0 36px;width:36px;height:36px;padding:0;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-sidebar);color:var(--text-muted);font-size:23px;line-height:1;box-shadow:3px 2px 6px #00000008}
.calendar-brand-row .calendar-sidebar-toggle:hover,.task-drawer-toggle:hover{background:var(--navy-light);color:var(--navy-accent)}
.calendar-sidebar-content{display:flex;flex:1;min-height:0;flex-direction:column}
.calendar-shell.calendar-sidebar-closed .calendar-sidebar{min-width:0;padding:8px 5px;overflow:hidden}
.calendar-shell.calendar-sidebar-closed .calendar-sidebar-content{display:none}
.calendar-shell.calendar-sidebar-closed .calendar-brand-row{justify-content:center;margin:0;min-height:40px}
.calendar-shell.calendar-sidebar-closed .calendar-brand-row>a{display:none}
.calendar-shell.calendar-sidebar-closed .calendar-brand-row .calendar-sidebar-toggle{width:36px;height:36px}
.task-drawer .task-drawer-toggle{position:absolute;top:-6px;left:-25px;right:auto;display:flex;align-items:center;justify-content:center;width:25px;height:42px;padding:0;border:1px solid var(--border-color);border-right:0;border-radius:8px 0 0 8px;background:var(--bg-sidebar);color:var(--text-muted);font-size:23px;line-height:1;box-shadow:-3px 2px 6px #00000008}
.calendar-shell.task-drawer-closed .task-drawer{width:25px;height:42px;border-radius:8px 0 0 8px}
.calendar-shell.task-drawer-closed .task-drawer .task-drawer-toggle{position:static;width:25px;height:42px;border:0;border-radius:8px 0 0 8px;background:var(--bg-sidebar);font-size:23px;box-shadow:none}
@media(min-width:1201px){.calendar-shell.calendar-sidebar-closed{grid-template-columns:48px minmax(620px,1fr) 290px}.calendar-shell.calendar-sidebar-closed.task-drawer-closed{grid-template-columns:48px minmax(620px,1fr)}}
@media(min-width:761px) and (max-width:1200px){.calendar-shell.calendar-sidebar-closed{grid-template-columns:48px minmax(560px,1fr)}.calendar-shell.calendar-sidebar-closed .task-drawer{grid-column:2}.calendar-shell.calendar-sidebar-closed.task-drawer-closed{grid-template-columns:48px minmax(560px,1fr)}}
@media(max-width:760px){
 .calendar-sidebar{box-sizing:border-box}
 .calendar-brand-row{margin:0 4px 8px 8px}
 .calendar-brand-row .calendar-sidebar-toggle{flex:0 0 36px;width:36px;height:36px}
 .calendar-shell.calendar-sidebar-closed .calendar-sidebar{height:52px;min-height:52px;padding:4px 12px;border-right:0;border-bottom:1px solid var(--border-color)}
 .calendar-shell.calendar-sidebar-closed .calendar-sidebar-content{display:none}
 .calendar-shell.calendar-sidebar-closed .calendar-brand-row{justify-content:space-between;margin:0 4px;min-height:42px}
 .calendar-shell.calendar-sidebar-closed .calendar-brand-row>a{display:block;font-size:17px}
 .calendar-shell.calendar-sidebar-closed .calendar-brand-row .calendar-sidebar-toggle{width:36px;height:36px}
 .calendar-shell.task-drawer-closed .task-drawer{width:25px;height:42px;border-radius:8px 0 0 8px}
 .calendar-shell.task-drawer-closed .task-drawer .task-drawer-toggle{width:25px;height:42px}
}

/* Anchor calendar chevrons to the sidebar edges, like the Notes handle. */
.calendar-sidebar{position:sticky}
.calendar-brand-row .calendar-sidebar-toggle{position:absolute;top:32px;right:0;z-index:30;display:flex;flex:0 0 25px;width:25px;height:42px;padding:0;border:1px solid var(--border-color);border-left:0;border-radius:0 8px 8px 0;background:var(--bg-sidebar);color:var(--text-muted);font-size:23px;line-height:1;box-shadow:3px 2px 6px #00000008}
.calendar-shell.calendar-sidebar-closed .calendar-sidebar{overflow:visible}
.task-drawer .task-drawer-toggle{left:-43px}
@media(max-width:760px){
 .calendar-sidebar{position:relative}
 .calendar-brand-row .calendar-sidebar-toggle{top:calc(10px + env(safe-area-inset-top));right:8px;left:auto;width:36px;height:36px;flex-basis:36px;border:1px solid var(--border-color);border-radius:8px}
 .calendar-shell.calendar-sidebar-closed .calendar-sidebar{overflow:visible}
 .task-drawer .task-drawer-toggle{left:-37px}
}

/* Keep the collapsed right-hand handle aligned with the top Notes handle. */
.calendar-shell.task-drawer-closed .task-drawer{top:32px;bottom:auto;transform:none}

/* Keep the collapsed calendar handle at the Notes reference size without overhang. */
.calendar-shell.calendar-sidebar-closed .calendar-brand-row .calendar-sidebar-toggle{flex-basis:25px;width:25px;height:42px}

/* Shared Notes-style chevron position and frame for the To-Do sidebar. */
.tasks-sidebar{position:relative}
.tasks-sidebar-toggle{position:absolute;top:32px;right:-25px;z-index:30;display:flex;align-items:center;justify-content:center;width:25px;height:42px;flex:0 0 25px;padding:0;border:1px solid var(--border-color);border-left:0;border-radius:0 8px 8px 0;background:var(--bg-sidebar);color:var(--text-muted);font-size:23px;line-height:1;box-shadow:3px 2px 6px #00000008}
.tasks-sidebar-toggle:hover{background:var(--navy-light);color:var(--navy-accent)}
.tasks-sidebar.is-collapsed{min-width:0;padding:8px 5px;overflow:visible}
.tasks-sidebar.is-collapsed>:not(.tasks-brand){display:none!important}
.tasks-sidebar.is-collapsed .tasks-brand{display:flex;align-items:center;justify-content:center;height:44px;margin:0;padding:0}
.tasks-sidebar.is-collapsed .tasks-brand a{display:none}
.tasks-sidebar.is-collapsed .tasks-sidebar-toggle{right:-25px;width:25px;height:42px;flex-basis:25px;border:1px solid var(--border-color);border-left:0;border-radius:0 8px 8px 0;background:var(--bg-sidebar);font-size:23px;box-shadow:3px 2px 6px #00000008}
.task-lists-section-heading{gap:5px}
.task-lists-section-heading #toggle-lists{width:18px;height:24px;padding:0;font-size:16px}
.task-lists-section-heading #lists-heading{flex:1;padding:0;border:0;background:transparent;color:inherit;text-align:left;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}
@media(min-width:761px){
 .tasks-shell:has(.tasks-sidebar.is-collapsed):has(.task-detail[hidden]){grid-template-columns:48px minmax(420px,1fr)}
 .tasks-shell:has(.tasks-sidebar.is-collapsed):not(:has(.task-detail[hidden])){grid-template-columns:48px minmax(420px,1fr) 360px}
}
@media(max-width:760px){
 .tasks-sidebar{position:relative}
 .tasks-sidebar-toggle{top:calc(10px + env(safe-area-inset-top));right:8px;left:auto;width:36px;height:36px;flex-basis:36px;border:1px solid var(--border-color);border-radius:8px}
 .tasks-sidebar.is-collapsed{padding:3px 14px}
 .tasks-sidebar.is-collapsed .tasks-brand{justify-content:space-between;height:44px;margin:0;padding:0 2px 0 6px}
 .tasks-sidebar.is-collapsed .tasks-brand a{display:block;font-size:17px}
 .tasks-sidebar.is-collapsed .tasks-sidebar-toggle{top:10px;right:8px;width:36px;height:32px;border:0;border-radius:8px;background:transparent;font-size:18px;box-shadow:none}
}

/* Google Tasks-inspired two-row quick task composer. */
.quick-task-form{position:relative;display:block;margin:28px 0 20px;padding:0;overflow:visible;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);box-shadow:0 1px 4px #00000014}
.quick-task-title-row{display:flex;align-items:center;gap:12px;min-height:50px;padding:0 18px;color:#4285f4}
.quick-task-title-row>span{font-size:22px;line-height:1}
.quick-task-title-row input{flex:1;min-height:48px;padding:8px 0;border:0;background:transparent;color:var(--text-primary);font:inherit;outline:0}
.quick-task-title-row input::placeholder{color:var(--text-muted)}
.quick-task-actions{display:flex;align-items:center;gap:5px;min-height:42px;padding:4px 10px;border-top:1px solid var(--border-color);background:#faf9f8}
.quick-task-menu-wrap{position:relative;display:flex}
.quick-task-menu-trigger{display:flex;align-items:center;justify-content:center;gap:6px;min-width:34px;height:32px;padding:0 7px;border:1px solid transparent;border-radius:5px;background:transparent;color:#5f6368;cursor:pointer}
.quick-task-menu-trigger:hover,.quick-task-menu-trigger[aria-expanded="true"]{border-color:#e0e0e0;background:#f1f3f4;color:#3c4043}
.quick-task-menu-trigger svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.quick-task-menu-trigger span:empty{display:none}
.quick-task-menu-trigger span:not(:empty){font-size:11px;white-space:nowrap}
.quick-task-action-spacer{flex:1}
.quick-task-actions>.quick-add-text{min-width:82px;height:32px;padding:0 12px;border:1px solid #dadce0;border-radius:2px;background:#fff;color:var(--navy-accent);font-size:12px;font-weight:600;cursor:pointer}
.quick-task-actions>.quick-add-text:disabled{background:#fafafa;color:#9aa0a6;cursor:not-allowed}
.quick-task-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:180;display:grid;min-width:210px;padding:5px 0;border:1px solid #dadce0;border-radius:5px;background:#fff;color:#3c4043;box-shadow:0 4px 12px #0002;font-size:13px}
.quick-task-popover[hidden],.quick-task-custom-repeat [hidden]{display:none}
.quick-task-popover h3{margin:0;padding:11px 14px;border-bottom:1px solid #dadce0;color:#3c4043;font-size:13px;font-weight:600;text-align:center}
.quick-task-popover>button,.quick-task-custom-repeat>button,.quick-task-date-picker{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:38px;padding:0 14px;border:0;background:#fff;color:#3c4043;font:inherit;text-align:left;cursor:pointer}
.quick-task-popover>button:hover,.quick-task-custom-repeat>button:hover,.quick-task-date-picker:hover{background:#f1f3f4}
.quick-task-popover time{color:#70757a;font-size:12px}
.quick-task-date-picker input{width:100%;min-width:0;min-height:34px;padding:4px;border:1px solid #dadce0;border-radius:4px;background:#fff;color:#3c4043;font:inherit}
.quick-task-date-picker{display:grid;gap:7px;padding-top:7px;padding-bottom:7px;border-top:1px solid #dadce0;cursor:default}
.quick-task-popover>.quick-task-clear{border-top:1px solid #dadce0;color:#70757a}
.quick-task-weekdays{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:9px 12px}
.quick-task-weekdays label{display:flex;align-items:center;gap:3px;font-size:11px}
.quick-task-custom-repeat #quick-task-custom-apply{width:calc(100% - 24px);margin:0 12px 8px;padding:7px;border:0;border-radius:4px;background:#e8f0fe;color:#1967d2;cursor:pointer}
.quick-task-custom-repeat>button{width:100%}
@media(max-width:760px){
 .quick-task-form{display:block;margin:14px 0 18px;padding:0;overflow:visible}
 .quick-task-title-row{min-height:48px;padding:0 12px}
 .quick-task-title-row input{grid-column:auto;min-height:46px;padding:8px 0}
 .quick-task-actions{display:flex;grid-template-columns:none;grid-template-rows:none;min-height:42px;padding:4px 7px}
 .quick-task-actions>.quick-add-text{grid-column:auto;grid-row:auto;min-height:32px;padding:0 10px!important}
 .quick-task-popover{max-width:calc(100vw - 36px)}
}

/* Einheitliche kompakte Projektfelder. */
#project-dialog form{gap:14px}
#project-dialog :is(input,select){box-sizing:border-box;width:100%;min-width:0;min-height:38px;padding:8px 10px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-workspace);color:var(--text-primary);font-family:inherit;font-size:13px;line-height:1.3}
#project-dialog .project-date-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);justify-content:stretch;gap:10px;padding-top:0}
#project-dialog .project-date-fields label{display:grid;gap:5px;min-width:0;color:var(--text-muted);font-size:12px}
#project-dialog .project-date-fields input{height:38px;min-height:38px}
#project-dialog :is(input,select):focus-visible{outline:2px solid var(--navy-accent);outline-offset:1px}

/* Liste und Kanban verwenden dieselben Aufgaben und Filter. */
.tasks-view-switch{display:flex;gap:4px;width:fit-content;margin-top:16px;padding:4px;border:1px solid var(--border-color);border-radius:9px;background:var(--bg-sidebar)}
.tasks-view-switch button{min-height:36px;padding:7px 16px;border:0;border-radius:6px;background:transparent;color:var(--text-muted);font:inherit;font-size:13px;cursor:pointer}
.tasks-view-switch button[aria-pressed="true"]{background:var(--bg-workspace);color:var(--navy-accent);font-weight:700;box-shadow:0 1px 3px #0001}
.task-kanban{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:start}
.task-kanban[hidden],#task-list[hidden],#completed-section[hidden]{display:none}
.kanban-column{min-width:0;min-height:220px;padding:12px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-sidebar)}
.kanban-column h2{margin:0 0 14px;font-size:14px;color:var(--navy-accent)}
.kanban-stack{display:grid;gap:10px}.kanban-card{position:relative;padding:8px;border:1px solid var(--border-color);border-radius:9px;background:var(--bg-workspace)}
.kanban-card .task-row{padding:6px 0 8px;border:0;box-shadow:none;background:transparent}.kanban-card .task-row-body strong{overflow-wrap:anywhere;font-size:13px}.kanban-card .task-meta{gap:5px;font-size:10px}
.kanban-grip{display:block;margin-left:auto;padding:0 4px;border:0;background:transparent;color:var(--text-muted);font-size:19px;cursor:grab}.kanban-grip:active{cursor:grabbing}
.kanban-card select{width:100%;min-height:34px;padding:5px 8px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-sidebar);color:var(--text-primary);font:inherit;font-size:12px}
.kanban-card.dragging{opacity:.5}.kanban-column.drag-over{border-color:var(--navy-accent);background:var(--navy-light)}.kanban-empty{padding:30px 0;text-align:center;color:var(--text-muted);font-size:12px}
@media(max-width:760px){.task-kanban{grid-template-columns:repeat(4,minmax(230px,1fr));overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:12px}.kanban-column{scroll-snap-align:start}.kanban-card select{min-height:40px}.tasks-view-switch button{min-height:40px}}

/* Uploaded note files */
.note-file-card { border:1px solid #dce5ee; border-radius:12px; padding:14px; background:#fff; margin:8px 0; }
.note-file-row { display:flex; align-items:center; gap:14px; min-width:0; }
.note-file-row > div { flex:1; min-width:0; }
.note-file-row strong { display:block; overflow-wrap:anywhere; color:#1c4963; }
.note-file-row small { display:block; color:#62758e; margin-top:4px; }
.note-file-row a { flex-shrink:0; color:#1c4963; padding:8px; }
.note-file-card img,.note-file-card video { display:block; max-width:100%; max-height:480px; margin:0 auto 12px; border-radius:8px; }
.note-file-card audio { width:100%; margin-bottom:12px; }
.note-file-card button { font:inherit; color:#1c4963; background:#edf3f6; border:0; border-radius:8px; padding:12px; cursor:pointer; }
#editor.note-file-drop { outline:2px dashed #1c4963; outline-offset:6px; background:#edf5fa; border-radius:8px; }

/* Kanban project multi-selection */
.kanban-project-filter { margin:18px 0 24px; border:1px solid var(--border-color); border-radius:10px; background:var(--bg-workspace); color:var(--text-primary); }
.kanban-project-filter summary { cursor:pointer; padding:12px 14px; font-size:14px; overflow-wrap:anywhere; }
.kanban-project-options { display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; padding:0 14px 14px; }
.kanban-project-options label { display:flex; align-items:center; gap:8px; min-height:38px; font-size:14px; cursor:pointer; }
.kanban-project-options input { width:18px; height:18px; accent-color:#1c4963; }
.kanban-project-options button { font:inherit; font-size:14px; border:1px solid var(--border-color); border-radius:8px; padding:9px 12px; background:var(--bg-workspace); color:inherit; cursor:pointer; }
@media(max-width:600px){.kanban-project-options { flex-direction:column; align-items:stretch; }.kanban-project-options label { min-height:44px; }}

/* To-Do dark mode: restrained warm outlines. */
html[data-theme="dark"] .tasks-page{--task-outline:color-mix(in srgb,#c8913a 35%,var(--border-color))}
html[data-theme="dark"] .tasks-page :is(.task-row,.kanban-card,.task-detail-title-row,.task-detail-card){background:transparent!important;border:1px solid var(--task-outline)!important;box-shadow:none}
html[data-theme="dark"] .tasks-page .kanban-card .task-row{border:0!important}
html[data-theme="dark"] .tasks-page :is(.tasks-smart-list.active,.task-list-nav.active){background:transparent;box-shadow:inset 0 0 0 1px var(--task-outline);color:var(--text-primary)}
html[data-theme="dark"] .tasks-page .tasks-view-switch button[aria-pressed="true"]{background:transparent;box-shadow:inset 0 0 0 1px var(--task-outline);color:var(--text-primary)}
html[data-theme="dark"] .tasks-page :is(.quick-task-popover,.quick-task-popover>button,.quick-task-custom-repeat>button,.quick-task-date-picker,.quick-task-date-picker input){background:var(--bg-workspace);color:var(--text-primary);border-color:var(--border-color)}

/* Compact note tasks: checkbox line and optional details. */
.note-task-block.note-task-compact{display:block;margin:3px 0;padding:6px 0;border:0;border-radius:0;background:transparent;box-shadow:none}
.note-task-check-row{display:flex;align-items:center;gap:10px;min-width:0}
.note-task-check-row>input[type=checkbox]{flex:0 0 19px;width:19px;height:19px;margin:0;accent-color:var(--navy-accent);cursor:pointer}
.note-task-check-row>input[type=text]{flex:1;min-width:0;box-sizing:border-box;min-height:34px;padding:4px 0;border:0;background:transparent;color:var(--text-primary);font:inherit;font-size:15px;outline:none}
.note-task-check-row>input.completed{text-decoration:line-through;color:var(--text-muted)}
.note-task-settings{flex:0 0 auto}.note-task-settings summary{display:grid;place-items:center;list-style:none;width:34px;height:34px;border-radius:7px;color:var(--text-muted);cursor:pointer}.note-task-settings summary::-webkit-details-marker{display:none}.note-task-settings summary:hover{background:var(--bg-sidebar)}
.note-task-settings summary svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5}
.note-task-settings-panel{display:grid;gap:10px;position:absolute;right:0;z-index:60;box-sizing:border-box;width:min(310px,100%);padding:14px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-workspace);box-shadow:0 8px 24px #0002}
.note-task-compact{position:relative}.note-task-settings-panel label{display:grid;gap:5px;font-size:12px;color:var(--text-muted)}.note-task-settings-panel :is(input,select){box-sizing:border-box;width:100%;min-width:0;min-height:36px;padding:7px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--text-primary);font:inherit}
.note-task-settings-panel button{min-height:36px;border:0;border-radius:7px;background:var(--navy-accent);color:var(--bg-workspace);font:inherit;font-size:13px;cursor:pointer}
.note-task-meta{margin:0 38px 0 29px;font-size:11px;line-height:1.6;color:var(--text-muted);overflow-wrap:anywhere}.note-task-meta:empty{display:none}
.note-task-compact>a{display:inline-block;margin-left:29px;color:var(--text-muted);font-size:11px}.note-task-compact>a[hidden]{display:none}.note-task-compact>.note-task-status{display:block;margin-left:29px}.note-task-compact>.note-task-status:empty{display:none}

/* Editor-Trennblock: echte Linie statt Sternchen, auch in Spalten. */
body .ce-delimiter{line-height:0;padding:16px 0}
body .ce-delimiter::before{content:"";display:block;width:100%;height:0;margin:0;border-top:1px solid var(--border-color);font-size:0;line-height:0;letter-spacing:0}

/* Kompaktes Zitat mit einklappbarer Farbauswahl. */
.colored-quote{position:relative}
.colored-quote .cdx-quote__text{padding-right:34px}
.quote-settings{position:absolute;right:8px;top:7px;z-index:5}
.quote-settings summary{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;list-style:none;color:var(--text-muted);cursor:pointer}
.quote-settings summary::-webkit-details-marker{display:none}
.quote-settings summary:hover{background:var(--bg-sidebar)}
.quote-settings summary svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.quote-settings .quote-color-control{position:absolute;right:0;top:34px;display:grid;gap:7px;min-width:150px;margin:0;padding:12px;border:1px solid var(--border-color);border-radius:9px;background:var(--bg-workspace);box-shadow:0 6px 20px #0002}
.quote-settings select{box-sizing:border-box;width:100%;padding:7px;font:inherit;border-radius:6px}

.colored-quote .cdx-quote__caption{display:none}

/* Explizite Display-Regeln dürfen hidden nicht übersteuern. */
.tasks-smart-list[hidden],.completed-section>div[hidden]{display:none}

/* Projektübersicht und zugeordnete Listen. */
.project-overview[hidden],.list-project-setting[hidden],.tasks-view-switch[hidden],.quick-task-form[hidden]{display:none}
.project-child-lists{padding-left:18px;border-left:1px solid var(--border-color);margin-left:12px}
.project-list-drop{outline:2px solid #c8913a;border-radius:7px;background:var(--navy-light)}
.list-project-setting{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px;color:var(--text-muted);font-size:12px}
.list-project-setting label{display:flex;align-items:center;gap:8px}.list-project-setting select{max-width:240px;padding:7px 10px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--text-primary)}
.project-overview{margin-top:24px}.project-overview-add,.project-overview button{padding:8px 10px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--navy-accent);font:inherit;font-size:12px;cursor:pointer}
.project-table-scroll{overflow-x:auto;margin:16px 0;border:1px solid var(--border-color);border-radius:10px}.project-overview table{border-collapse:collapse;width:100%;min-width:980px;font-size:13px}.project-overview th,.project-overview td{padding:12px;text-align:left;border-bottom:1px solid var(--border-color)}.project-overview th{font-size:11px;color:var(--text-muted);background:var(--bg-sidebar);white-space:nowrap}.project-overview td{color:var(--text-primary)}.project-overview tbody tr:last-child td{border-bottom:0}.project-overview .project-name-link{border:0;background:transparent;padding:0;text-align:left;font-weight:650;font-size:13px}.project-overview a{color:var(--navy-accent)}.project-overview>small{color:var(--text-muted);font-size:11px}

/* Kalenderquellen in lokale Kalender und Google-Kalender gruppieren. */
.calendar-source .calendar-source-items label{display:grid;grid-template-columns:14px 9px minmax(0,1fr);gap:7px;align-items:center;cursor:pointer}
.calendar-source .calendar-source-items input{width:14px;height:14px;margin:0;accent-color:var(--navy-accent)}
.calendar-source .calendar-source-items label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.google-source #google-source-list[hidden],.google-source #google-status[hidden]{display:none}
.google-source .google-calendar-status{margin:8px 0 0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;color:var(--text-muted);font-size:11px;overflow-wrap:anywhere}

#add-sticky{color:var(--scb-gold)}
#add-sticky:hover,#add-sticky:focus-visible{color:var(--scb-gold);background:var(--scb-gold-soft)}

.table-visible-label{box-sizing:border-box;max-width:100%;width:100%;margin:6px 0;border:0;background:transparent;color:var(--text-primary);font:600 15px 'DM Sans',sans-serif}.table-visible-label[hidden]{display:none}
.table-settings-footer{display:flex;justify-content:flex-end;margin:4px 0}.table-settings{position:relative}.table-settings summary{display:grid;place-items:center;list-style:none;width:32px;height:32px;border-radius:7px;color:var(--text-muted);cursor:pointer}.table-settings summary::-webkit-details-marker{display:none}.table-settings summary svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}.table-settings summary:hover{background:var(--bg-sidebar)}
.table-settings-panel{position:absolute;right:0;bottom:38px;z-index:70;display:grid;gap:12px;box-sizing:border-box;width:300px;max-width:calc(100vw - 64px);padding:14px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-workspace);box-shadow:0 8px 24px #0002;color:var(--text-primary);font-size:12px}.table-settings-panel label{display:flex;align-items:center;gap:8px}.table-settings-panel small{font-size:11px;color:var(--text-muted);line-height:1.5}.table-settings-panel .table-formula-label{display:grid;gap:6px}.table-settings-panel input[type=text]{box-sizing:border-box;width:100%;min-width:0;padding:8px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--text-primary);font:inherit}.table-settings-panel button{padding:7px 8px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-sidebar);color:var(--text-primary);font:inherit;cursor:pointer}.table-alignment-buttons{display:flex;gap:5px}.table-alignment-buttons button[aria-pressed=true]{border-color:var(--navy-accent);color:var(--navy-accent)}
.scb-table-highlight-header .tc-row:first-child .tc-cell{background:var(--table-header-bg,var(--navy-light));color:var(--table-header-text,var(--navy-accent));font-weight:650}.tc-cell.table-formula-error{color:var(--danger)}

.tasks-header-actions{display:flex;align-items:center;gap:10px}.tasks-header-actions>#list-menu{border:0;background:transparent;color:var(--text-muted);font-size:24px;cursor:pointer}.tasks-header-actions .tasks-view-switch{margin:0;padding:0;border:0;background:transparent;gap:2px}.tasks-header-actions .tasks-view-switch button{padding:5px 9px;min-height:30px;font-size:11px}.tasks-header-actions .tasks-view-switch button[aria-pressed=true]{box-shadow:none;background:var(--navy-light)}
.project-description-panel[hidden],.quick-task-milestone-wrap[hidden]{display:none}.project-description-panel{margin:20px 0 4px;padding:14px;border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary)}.project-description-panel summary{font-size:13px;font-weight:650;cursor:pointer}.project-description-panel details>div{margin-top:14px;font-size:12px}.project-description-panel p{white-space:pre-wrap;margin:5px 0;color:var(--text-muted);line-height:1.6}.project-description-panel button,.project-plan-milestone header>button:not(.task-check),#project-milestone-list>button{border:0;background:var(--navy-light);color:var(--navy-accent);padding:7px 10px;border-radius:7px;font-size:12px;cursor:pointer}.project-plan-milestone{margin:14px 0;border:1px solid var(--border-color);border-radius:9px;padding:12px}.project-plan-milestone header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;font-size:13px}.project-plan-milestone header time{color:var(--text-muted);font-size:11px}.project-plan-milestone header>button:last-child{margin-left:auto}.project-plan-milestone>details{margin-top:12px}.project-plan-milestone>details summary{color:var(--text-muted);font-size:12px;cursor:pointer}.project-plan-milestone small{color:var(--text-muted);font-size:12px}.quick-task-milestone-wrap{display:flex;gap:8px;align-items:center;padding:8px 14px;border-top:1px solid var(--border-color);font-size:12px;color:var(--text-muted)}.quick-task-milestone-wrap select{max-width:100%;min-width:0;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--text-primary);padding:6px;font:inherit}.task-list-dialog textarea{box-sizing:border-box;width:100%;padding:10px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--text-primary);font:inherit;resize:vertical}.tasks-header{gap:12px;flex-wrap:wrap}

#project-milestone-list{padding:0;border:0;background:transparent}#project-dialog{max-height:calc(100dvh - 40px);overflow-y:auto}

.project-priority-field{display:grid;gap:6px;color:var(--text-muted);font-size:12px}.project-priority-stars{display:flex;align-items:center;gap:4px}.project-priority-stars button{padding:0;width:40px;height:40px;min-height:40px;border:0;border-radius:7px;background:transparent;color:var(--text-muted);font-size:28px;cursor:pointer}.project-priority-stars button.selected{color:var(--scb-gold)}.project-priority-stars button:hover{background:var(--bg-sidebar)}.project-priority-stars .priority-clear{margin-left:5px;font-size:18px}

@media(min-width:761px){.calendar-shell .calendar-brand-row #toggle-calendar-sidebar{left:calc(100% + 1px);right:auto}}

:is(.note-task-settings,.quote-settings,.table-settings)>summary::marker{content:""}
:is(.note-task-settings,.quote-settings,.table-settings)>summary svg{display:block;overflow:visible;stroke-linejoin:round;stroke-linecap:round}

.quote-settings .quote-color-control{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr);justify-content:stretch;align-items:stretch;gap:6px;right:0;top:36px;width:160px;min-width:0;margin:0;padding:12px;text-align:left}
.quote-settings .quote-color-control select{display:block;width:100%;min-width:0;margin:0;padding:7px 9px;min-height:34px}

/* Table plugin controls inherit the application theme, including the SVG tile. */
.sized-table .tc-wrap {
  --color-background: var(--bg-sidebar);
  --color-border: var(--border-color);
  --color-text-secondary: var(--text-muted);
}
.sized-table :is(.tc-add-column, .tc-add-row) {
  color: var(--text-primary);
  background: transparent;
}
.sized-table :is(.tc-add-column, .tc-add-row) svg {
  color: inherit;
  background: transparent;
  border-radius: 5px;
}
.sized-table :is(.tc-add-column, .tc-add-row):hover {
  background: var(--bg-sidebar);
}

/* Anchor deletion to its block and the adjacent six-dot handle. */
.ce-block.block-selected-for-action{position:relative}
.ce-block.block-selected-for-action>.block-delete-action{left:var(--block-action-left);right:auto}

.folder-children { display:none; margin-left:12px; border-left:1px solid var(--border-color, #334b58); padding-left:3px; }
.folder-item.open > .folder-children { display:block; }
.folder-header:focus-within .folder-actions { opacity:1; }
@media (hover:none) { .folder-actions { opacity:1; } }

#tasks-scroll-content{display:contents}
.tasks-main.project-layout{box-sizing:border-box;height:100dvh;display:flex;flex-direction:column;overflow:hidden;padding-bottom:20px;min-width:0}
.project-layout #tasks-scroll-content{display:block;flex:1;min-height:0;overflow-y:auto;padding:0 4px 20px;scrollbar-gutter:stable}
.project-layout>.quick-task-form{flex:none;margin:12px 0 0;position:relative;z-index:50;border:1px solid var(--border-color);background:var(--bg-workspace)}
.project-layout .quick-task-popover{top:auto;bottom:calc(100% + 6px)}
.project-plan-milestone>summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;cursor:pointer;list-style:none}
.project-plan-milestone>summary::-webkit-details-marker{display:none}
.project-plan-milestone>summary:before{content:'›';font-size:20px;transform:rotate(0deg)}
.project-plan-milestone[open]>summary:before{transform:rotate(90deg)}
.project-plan-milestone[open]>summary{margin-bottom:12px}
.project-plan-milestone>summary>button:last-child{margin-left:auto;border:0;border-radius:7px;padding:7px 10px;background:var(--navy-light);color:var(--navy-accent);cursor:pointer;font-size:12px}
.project-plan-milestone>summary time{font-size:11px;color:var(--text-muted)}
.project-task-steps{display:grid;gap:8px;padding:10px 14px 12px 48px}
.project-task-step{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted)}
.project-task-step input{accent-color:var(--navy-accent)}
.project-task-step.completed span{text-decoration:line-through}
@media(max-width:760px){.tasks-main.project-layout{height:calc(100dvh - 110px);padding-bottom:calc(72px + env(safe-area-inset-bottom))}.project-layout-active .tasks-sidebar:not(.is-collapsed){max-height:26dvh}.project-layout-active .tasks-shell:has(.tasks-sidebar:not(.is-collapsed)) .project-layout{height:65dvh}}

#project-milestone-list:not([hidden]){display:block;margin:18px 0}
html[data-theme="dark"] .quick-task-actions{background:var(--bg-workspace)}

.project-progress-heading{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.project-progress-heading h2{flex:0 0 auto}
.project-progress{flex:1;min-width:100px;height:4px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,#C8913A 18%,var(--bg-workspace));border:1px solid color-mix(in srgb,#C8913A 35%,var(--border-color))}
.project-progress-fill{display:block;height:100%;border-radius:inherit;background:#C8913A;transition:width 200ms ease}
.project-progress-label{color:#C8913A;font-size:12px;font-weight:650;white-space:nowrap}
@media(max-width:540px){.project-progress-heading h2{flex-basis:100%}}

.quick-task-measure{display:flex;align-items:center;gap:8px;padding:8px 14px;border-top:1px solid var(--border-color);font-size:12px;color:var(--text-muted)}
.quick-task-measure select,.quick-task-measure input{border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);color:var(--text-primary);padding:6px;font:inherit}
.quick-task-measure input{width:80px}.quick-task-measure input[hidden],#detail-measure-fields[hidden]{display:none}
.task-quantity-counter{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:13px;color:#C8913A}
.task-quantity-counter input{width:76px;padding:5px 7px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);color:var(--text-primary);font:inherit}
.task-measure-card{padding:12px}#detail-measure-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}#detail-measure-fields input{width:100%;box-sizing:border-box}
.project-milestone-row{grid-template-columns:minmax(0,1fr) 125px 125px 32px}
@media(max-width:600px){.project-milestone-row{grid-template-columns:minmax(0,1fr) 32px}.project-milestone-row>input:first-child{grid-column:1}.project-milestone-row>input[type=date]{grid-column:1}.project-milestone-row>button{grid-column:2;grid-row:1}.quick-task-measure{flex-wrap:wrap}}

#project-dialog form>.project-priority-field{display:grid;justify-content:start;text-align:left}

#delete-project{color:var(--danger,#D93025);padding:8px;line-height:0}
#delete-project:hover{background:var(--danger-light,#FCE8E6)}

.project-table-grip{display:inline-flex;align-items:center;justify-content:center;width:22px;margin-right:7px;cursor:grab;color:var(--text-muted);font-size:18px;touch-action:none}.project-table-grip:active{cursor:grabbing}.project-table-scroll tr.drop-before{box-shadow:inset 0 2px #C8913A}.project-table-scroll tr.drop-after{box-shadow:inset 0 -2px #C8913A}.project-table-scroll tr.dragging{opacity:.5}

.sized-table .tc-add-row svg{width:24px;height:24px;padding:0;box-sizing:border-box}

.scb-aligned-block[data-alignment="left"]{text-align:left}
.scb-aligned-block[data-alignment="center"]{text-align:center}
.scb-aligned-block[data-alignment="right"]{text-align:right}

.project-plan-milestone>summary>.task-check{width:16px;height:16px;min-width:16px;min-height:16px;padding:0;border-width:1.5px;font-size:10px;line-height:1}

.project-plan-milestone .milestone-task-composer{margin:14px 0 0;border:1px solid var(--border-color);box-shadow:none}.project-plan-milestone .milestone-task-composer .quick-task-popover{top:calc(100% + 6px);bottom:auto}html[data-theme="dark"] .milestone-task-composer .quick-task-actions{background:var(--bg-workspace)}

.tasks-page .project-plan-milestone .task-row,html[data-theme="dark"] .tasks-page .project-plan-milestone .task-row{border:0!important;box-shadow:none!important;background:transparent!important}
.tasks-page .task-detail :is(.task-detail-title-row,.task-detail-card),html[data-theme="dark"] .tasks-page .task-detail :is(.task-detail-title-row,.task-detail-card){border:1px solid var(--border-color)!important;box-shadow:none}

.project-task-grip{display:inline-flex;align-items:center;justify-content:center;width:24px;flex:none;color:var(--text-muted);font-size:19px;cursor:grab}.project-task-grip:active{cursor:grabbing}.project-plan-milestone.task-drop-target{outline:1px solid #C8913A}.project-plan-milestone .task-row.task-drop-target{box-shadow:inset 0 -2px #C8913A!important}.project-plan-milestone .task-row.dragging{opacity:.45}

.project-layout>#quick-task-form :is(.quick-task-milestone-wrap,.quick-task-measure){display:none}
.project-unassigned-tasks{display:grid;gap:6px;margin:14px 0 20px}.project-unassigned-tasks .task-row,html[data-theme="dark"] .tasks-page .project-unassigned-tasks .task-row{border:0!important;background:transparent!important;box-shadow:none!important}.project-unassigned-tasks.task-drop-target{outline:1px solid var(--border-color)}

.project-layout #tasks-scroll-content{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--text-muted) 28%,transparent) transparent}
.project-layout #tasks-scroll-content::-webkit-scrollbar{width:5px;height:5px}
.project-layout #tasks-scroll-content::-webkit-scrollbar-track{background:transparent}
.project-layout #tasks-scroll-content::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-muted) 28%,transparent);border-radius:999px}
.project-layout #tasks-scroll-content::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text-muted) 48%,transparent)}

.dragging-note-block .note-column:hover{background:color-mix(in srgb,var(--navy-accent) 6%,transparent)}

html[data-theme="dark"] .tasks-page :is(#task-list,#completed-list) .task-row{border-color:var(--border-color)!important}

.task-detail label.task-detail-field[hidden]{display:none!important}

/* Compact sticky note menu. */
.sticky-menu{position:relative}.sticky-menu>summary{list-style:none;cursor:pointer;border-radius:5px;background:var(--bg-sidebar);color:var(--text-muted)}.sticky-menu>summary::-webkit-details-marker{display:none}.sticky-menu>summary:hover{color:var(--navy-accent);background:var(--navy-light)}.sticky-menu-items{position:absolute;right:0;bottom:calc(100% + 8px);min-width:220px;padding:6px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-sidebar);box-shadow:0 4px 18px #0002}.sticky-menu-items button{width:100%;text-align:left;white-space:nowrap}.sticky-menu-items button:disabled{opacity:.45;cursor:default}.sticky-menu-items button:not(:disabled):hover{background:var(--navy-light)}

.note-ai-dialog{width:min(600px,95vw);max-height:90vh;overflow:auto}.note-ai-dialog form{display:grid;gap:12px}.note-ai-dialog label{display:grid;gap:5px}.note-ai-dialog textarea{width:100%;padding:10px;color:var(--text-primary);background:var(--bg-workspace);border:1px solid var(--border-color);border-radius:6px}.note-ai-dialog button,.note-ai-open{padding:7px 10px;border:1px solid var(--border-color);border-radius:6px;background:var(--navy-light);color:var(--navy-accent);cursor:pointer}.note-ai-dialog button:disabled{opacity:.5}.note-ai-presets{display:flex;gap:6px;flex-wrap:wrap}

.block-ai-action{position:absolute;top:var(--block-action-top,50%);left:calc(var(--block-action-left,0px) + 36px);transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:7px;background:var(--navy-light);color:var(--navy-accent);cursor:pointer;z-index:20}

/* KI-Dialog: gleiche Innenabstände für Inhalt und Aktionen. */
.note-ai-dialog{box-sizing:border-box;width:min(600px,calc(100vw - 32px));max-width:600px;background:var(--bg-workspace);color:var(--text-primary)}
.note-ai-dialog form{padding:24px;gap:16px;min-width:0}
.note-ai-dialog h3,.note-ai-dialog p{margin:0}
.note-ai-dialog h3{font-size:20px;line-height:1.3}
.note-ai-dialog p,.note-ai-dialog form>a{line-height:1.5}
.note-ai-dialog label{gap:8px;min-width:0}
.note-ai-dialog textarea{box-sizing:border-box;min-width:0;font:inherit;line-height:1.5;resize:vertical}
.note-ai-dialog [role="status"]:empty{display:none}
.note-ai-dialog form>div:not(.note-ai-presets){display:flex;gap:10px;flex-wrap:wrap}
.note-ai-dialog form>a{font-size:13px;color:var(--navy-accent);line-height:1.5}
.note-ai-dialog button{font:inherit;line-height:1.4}
@media(max-width:480px){.note-ai-dialog form{padding:18px;gap:14px}}

.note-ai-chat-header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.note-ai-chat-header button{font-size:24px;padding:0 8px;background:transparent;border:0}
.note-ai-messages{min-height:160px;max-height:45vh;overflow:auto;display:flex;flex-direction:column;gap:12px}
.note-ai-chat-hint{color:var(--text-muted)}
.note-ai-message{padding:12px 14px;border-radius:10px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}
.note-ai-message-user{align-self:flex-end;max-width:90%;background:var(--navy-light)}
.note-ai-message-assistant{background:var(--bg-sidebar)}
.note-ai-dialog form>.note-ai-compose{display:flex;align-items:flex-end;gap:10px}
.note-ai-compose textarea{flex:1;min-width:0}
.note-ai-compose button{flex:none}
.note-ai-dialog [hidden]{display:none!important}

/* Kompakter KI-Chat: ohne leere Fläche vor der ersten Antwort. */
.note-ai-dialog{width:min(600px,calc(100vw - 32px))}
.note-ai-dialog form{padding:16px;gap:10px}
.note-ai-chat-header h3{font-size:16px}
.note-ai-messages{min-height:0;max-height:40vh}
.note-ai-messages:has(.note-ai-chat-hint){display:none}
.note-ai-compose textarea{height:42px;min-height:42px;max-height:120px;resize:none;padding:9px 10px}
.note-ai-compose button{height:42px}
@media(max-width:480px){.note-ai-dialog form{padding:14px;gap:10px}}

.note-ai-dialog form{padding:10px;gap:8px}
.note-ai-dialog .note-ai-compose{align-items:center;gap:8px}
.note-ai-compose textarea{height:38px;min-height:38px;padding:8px 10px;overflow-y:auto;scrollbar-width:thin}
.note-ai-compose button{height:38px}
.note-ai-compose [data-close]{border:0;background:transparent;padding:0 4px;font-size:20px;color:var(--text-muted)}
@media(max-width:480px){.note-ai-dialog form{padding:10px;gap:8px}}

.note-ai-dialog .note-ai-compose textarea{border:0;outline:none;box-shadow:none;background:transparent}
.note-ai-dialog .note-ai-compose textarea:focus,.note-ai-dialog .note-ai-compose textarea:focus-visible{border:0;outline:none;box-shadow:none}
.note-ai-sparkle{flex:none;font-size:18px;line-height:1}
.note-ai-dialog .note-ai-compose button[type="submit"]{width:34px;height:34px;padding:0;border:0;background:transparent;color:var(--text-muted);font-size:22px;line-height:1}
.note-ai-dialog .note-ai-compose button[type="submit"]:hover{background:var(--navy-light);color:var(--navy-accent)}
.note-ai-dialog .note-ai-compose button:focus-visible{outline:1px solid var(--navy-accent);outline-offset:2px}

.note-ai-dialog form>.note-ai-compose{align-items:center}
.note-ai-dialog .note-ai-compose textarea{height:38px;min-height:38px;padding:8px 10px;line-height:22px;overflow:hidden;scrollbar-width:none}
.note-ai-compose textarea::-webkit-scrollbar{display:none}
.note-ai-dialog .note-ai-sparkle{display:flex;align-items:center;justify-content:center;width:24px;height:38px;line-height:1}
.note-ai-dialog .note-ai-compose button{display:flex;align-items:center;justify-content:center;line-height:1}

/* Keep mobile block controls and their sheet inside the usable iPhone viewport. */
@media (max-width: 760px) {
    .main-content .ce-toolbar__actions { left: auto !important; right: 0 !important; padding-right: 0; }
    .main-content .ce-popover--opened > .ce-popover__container {
        position: fixed !important;
        top: calc(var(--notes-viewport-top, 0px) + 12px + env(safe-area-inset-top)) !important;
        bottom: auto !important;
        left: 12px !important;
        right: 12px !important;
        width: auto;
        min-width: 0;
        max-width: none;
        max-height: calc(var(--notes-viewport-height, 100dvh) - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
        box-sizing: border-box;
        overflow: hidden;
    }
    .main-content .ce-popover__items { min-height: 0; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
}
@media (max-width: 760px) {
    .main-content .ce-toolbar:has(.ce-toolbox .ce-popover--opened) :is(.ce-toolbar__plus, .ce-toolbar__settings-btn) { visibility: hidden; }
}

/* Notes owns an inner scroller, rather than a full-height page behind Safari chrome. */
@media (max-width: 760px) {
    body:has(#notes-sidebar) { height: var(--notes-app-height, 100dvh); min-height: 0; overflow: hidden; }
    body:has(#notes-sidebar) .app-container { height: var(--notes-app-height, 100dvh); }
    body:has(#notes-sidebar) .main-content { flex: 1 1 0; height: auto; min-height: 0; overflow: hidden; }
    body:has(#notes-sidebar) .page-workspace { flex: 1 1 0; min-height: 0; height: 100%; }
    body:has(#notes-sidebar) .cover-container { flex-shrink: 0; }
    body:has(#notes-sidebar) .main-content:has(.ce-popover--opened) { z-index: 150; }
    body.ce-scroll-locked--hard:has(#notes-sidebar) { top: 0 !important; }
    .main-content .ce-popover--opened > .ce-popover__container { animation: none !important; }
}

/* Fixed editor sheets must start below the mobile Notes header/clipping edge. */
@media (max-width: 760px) {
    .main-content .ce-popover--opened > .ce-popover__container {
        top: calc(max(var(--notes-viewport-top, 0px), 49px) + 12px + env(safe-area-inset-top)) !important;
        max-height: calc(var(--notes-viewport-height, 100dvh) + var(--notes-viewport-top, 0px) - max(var(--notes-viewport-top, 0px), 49px) - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
    }
}

.event-color-field{border:0;margin:0;padding:0;min-width:0}.event-color-field legend{padding:0;margin-bottom:8px;font-size:13px;color:var(--text-muted)}
.event-color-palette{display:flex;flex-wrap:wrap;gap:5px}.event-color-palette .event-color-swatch{display:flex;align-items:center;gap:8px;min-width:44px;min-height:44px;padding:5px;border:2px solid transparent;border-radius:10px;background:transparent;color:var(--text-primary);font:inherit;font-size:12px;cursor:pointer}
.event-color-palette .event-color-swatch[aria-pressed="true"]{border-color:var(--navy-accent);background:var(--navy-light)}.event-color-dot{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--swatch-color);color:#fff;font-size:19px;font-weight:700;box-shadow:inset 0 0 0 1px #0002}.event-color-swatch:focus-visible{outline:2px solid var(--navy-accent);outline-offset:2px}

.table-settings-panel{max-height:min(620px,70vh);overflow:auto}.table-settings-panel select{padding:6px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);color:var(--text-primary)}.table-settings-panel input[type=color]{width:42px;height:28px;padding:2px;border:1px solid var(--border-color);border-radius:5px;background:transparent}.table-checkbox-cell{text-align:center}.table-cell-checkbox{width:18px;height:18px;accent-color:var(--navy-accent);cursor:pointer;vertical-align:middle}.table-cell-checkbox:disabled{cursor:default}

/* KI direkt an der Textzeile. */
.note-ai-dialog.note-ai-inline{position:fixed;margin:0;padding:0;border:1px solid var(--border-color);border-radius:18px;box-shadow:0 8px 28px #0002;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);z-index:1000}
.note-ai-dialog.note-ai-inline form{padding:8px 12px;gap:8px}.note-ai-inline .note-ai-compose{flex-wrap:nowrap!important}.note-ai-inline .note-ai-compose textarea{height:40px;min-height:40px;padding:9px 4px;font-size:15px}.note-ai-inline .note-ai-sparkle{width:30px;height:30px;border-radius:50%;background:var(--bg-sidebar);font-size:17px}.note-ai-inline .note-ai-compose button[type=submit]{width:28px;height:28px;border-radius:50%;background:var(--navy-accent);color:#fff;font-size:21px}.note-ai-inline .note-ai-compose [data-close]{width:20px;font-size:18px}.note-ai-inline .note-ai-messages{max-height:35vh}

.scb-toggle-heading{display:flex;gap:8px;align-items:flex-start}.scb-toggle-heading>button{flex:none;width:26px;height:28px;padding:0;border:0;background:transparent;color:var(--text-primary);font-size:19px;cursor:pointer}.scb-toggle-title{flex:1;min-width:0;outline:none;padding:3px 0}.scb-toggle-title:empty:before{content:attr(data-placeholder);color:var(--text-muted)}.scb-toggle-content{margin-left:34px;padding:4px 0}.scb-toggle-content[hidden]{display:none}.scb-toggle-content .ce-block__content,.scb-toggle-content .ce-toolbar__content{max-width:100%}.scb-callout-block{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:8px;background:var(--navy-light)}.scb-callout-block>.ce-paragraph{flex:1;min-width:0}.block-convert-action{position:absolute;top:var(--block-action-top,50%);left:calc(var(--block-action-left,0px) + 72px);transform:translateY(-50%);z-index:80}.block-convert-action>summary{display:grid;place-items:center;list-style:none;width:30px;height:30px;border-radius:7px;background:var(--navy-light);color:var(--navy-accent);cursor:pointer}.block-convert-action>summary::-webkit-details-marker{display:none}.block-convert-menu{position:absolute;top:34px;left:0;display:grid;width:210px;padding:6px;background:var(--bg-workspace);border:1px solid var(--border-color);border-radius:9px;box-shadow:0 8px 24px #0002}.block-convert-menu button{padding:8px;border:0;background:transparent;color:var(--text-primary);text-align:left;font:inherit;font-size:12px;cursor:pointer}.block-convert-menu button:hover{background:var(--navy-light)}.block-convert-menu small{font-size:11px;color:var(--danger)}

.scb-image-picker{position:relative}.scb-image-add{display:flex;align-items:center;gap:10px;box-sizing:border-box;min-height:42px;padding:10px 12px;border-radius:7px;background:var(--bg-sidebar);color:var(--text-muted);cursor:pointer;list-style:none;font-size:14px}.scb-image-add::-webkit-details-marker{display:none}.scb-image-add:hover{background:var(--navy-light)}.scb-image-picker-panel{position:absolute;left:0;top:calc(100% + 5px);z-index:90;box-sizing:border-box;width:380px;max-width:100%;padding:12px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-workspace);box-shadow:0 8px 24px #0002;color:var(--text-primary)}.scb-image-picker:not([open])>.scb-image-picker-panel{display:none}.scb-image-tabs{display:flex;gap:14px;margin-bottom:12px;border-bottom:1px solid var(--border-color)}.scb-image-tabs button{padding:3px 0 8px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font:inherit;font-size:13px;cursor:pointer}.scb-image-tabs button[aria-selected=true]{border-bottom-color:var(--navy-accent);color:var(--text-primary)}.scb-image-upload-button{width:100%;padding:8px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-sidebar);color:var(--text-primary);font:inherit;font-size:13px;cursor:pointer}.scb-image-link-pane{display:grid;gap:8px}.scb-image-picker-panel [hidden]{display:none!important}.scb-image-link-pane input{box-sizing:border-box;width:100%;min-width:0;padding:8px;font-size:13px}.scb-image-picker-panel .image-upload-status{margin:8px 0 0;font-size:12px}.scb-image-picker-panel .image-upload-status:empty{display:none}

.note-page-heading{position:relative}.page-appearance-actions{display:flex;align-items:center;gap:12px;min-height:30px;opacity:0;transition:opacity .12s}.note-page-heading:hover .page-appearance-actions,.note-page-heading:focus-within .page-appearance-actions{opacity:1}.page-appearance-actions button,.page-appearance-actions summary{padding:4px 0;border:0;background:transparent;color:var(--text-muted);font:inherit;font-size:12px;cursor:pointer;list-style:none}.page-appearance-actions summary::-webkit-details-marker{display:none}.page-appearance-actions button:hover,.page-appearance-actions summary:hover{color:var(--navy-accent)}#page-icon-picker{position:relative}#page-icon-display{display:block;margin:6px 0 4px;padding:0;border:0;background:transparent;font-size:42px;line-height:1.25;cursor:pointer}#page-icon-display[hidden],#add-page-cover[hidden]{display:none}.page-icon-panel{position:absolute;top:30px;left:0;z-index:100;width:250px;box-sizing:border-box;padding:12px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-workspace);box-shadow:0 8px 24px #0002}.page-icon-panel label{display:grid;gap:5px;font-size:12px;color:var(--text-muted)}.page-icon-panel input{width:100%;box-sizing:border-box;padding:7px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);color:var(--text-primary)}#page-icon-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;margin-bottom:10px}#page-icon-grid button{font-size:21px;padding:3px}.page-icon-panel>button{padding:8px 6px;font-size:12px}@media(hover:none){.page-appearance-actions{opacity:1}}

/* Keep the global task composer at the bottom of the task workspace. */
.tasks-main:not(.project-layout){display:flex;flex-direction:column;box-sizing:border-box;height:100dvh;min-height:0;overflow-y:auto;padding-bottom:16px}
.tasks-main:not(.project-layout)>*{flex-shrink:0}
.tasks-main:not(.project-layout)>#quick-task-form{order:99;position:sticky;bottom:0;z-index:20;margin: auto 0 0;overflow:visible;box-shadow:0 -8px 20px #0000000a,0 1px 4px #00000014}
#quick-task-form .quick-task-popover{top:auto;bottom:calc(100% + 6px)}
@media(max-width:760px){.tasks-main:not(.project-layout){flex:1 1 auto;height:calc(100dvh - 110px);padding-bottom:calc(72px + env(safe-area-inset-bottom))}.tasks-main:not(.project-layout)>#quick-task-form{margin-top:auto}}

/* Task detail collapse control mirrors the left sidebar control. */
.task-detail-close{top:32px;left:0;right:auto;display:flex;align-items:center;justify-content:center;width:25px;height:42px;padding:0;border:1px solid var(--border-color);border-right:0;border-radius:8px 0 0 8px;background:var(--bg-sidebar);color:var(--text-muted);font-size:23px;line-height:1;box-shadow:-3px 2px 6px #00000008;z-index:30}
.task-detail-close:hover{background:var(--navy-light);color:var(--navy-accent)}
.task-detail{padding-top:86px}
@media(max-width:760px){.task-detail-close{top:calc(10px + env(safe-area-inset-top));left:8px;width:36px;height:36px;border:1px solid var(--border-color);border-radius:8px}.task-detail{padding-top:58px}}

/* Scroll navigation independently so module links remain at the bottom. */
@media(min-width:761px){.tasks-sidebar{position:sticky;top:0;height:100dvh;box-sizing:border-box;min-height:0;overflow:visible}.tasks-sidebar-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.tasks-sidebar .tasks-brand,.tasks-sidebar .module-dock{flex-shrink:0}.tasks-sidebar .module-dock{background:var(--bg-sidebar)}}
@media(max-width:760px){.tasks-sidebar-scroll{grid-column:1 / -1}.tasks-sidebar.is-collapsed .tasks-sidebar-scroll{display:none}}

/* Compact cards and independent, discreet scrolling for each status. */
.task-kanban{align-items:stretch}.task-kanban.hide-done{grid-template-columns:repeat(3,minmax(0,1fr))}
.kanban-column{display:flex;flex-direction:column;height:clamp(240px,calc(100dvh - 370px),650px);box-sizing:border-box;min-height:0}
.kanban-column h2{flex-shrink:0}.kanban-stack{display:flex;flex-direction:column;overflow-y:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#aab6bf66 transparent;overscroll-behavior:contain;padding-right:3px}
.kanban-stack::-webkit-scrollbar{width:5px}.kanban-stack::-webkit-scrollbar-thumb{background:#aab6bf66;border-radius:8px}
.kanban-card{flex-shrink:0;padding:12px;cursor:grab}.kanban-card strong{display:block;font-size:13px;line-height:1.45;overflow-wrap:break-word}.kanban-card .kanban-due{display:block;margin-top:7px;color:var(--text-muted);font-size:11px}.kanban-card .overdue{color:var(--danger)}
.kanban-card.is-done{background:color-mix(in srgb,#2ba568 12%,var(--bg-workspace));border-color:color-mix(in srgb,#2ba568 40%,var(--border-color))}.kanban-card.is-done strong{color:#238454}
#kanban-done-toggle{padding:7px 9px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);color:var(--text-muted);font-size:12px;cursor:pointer}
#kanban-done-toggle[hidden]{display:none}.tasks-header-actions{flex-wrap:wrap;gap:8px}
@media(max-width:760px){.task-kanban,.task-kanban.hide-done{grid-template-columns:repeat(4,minmax(230px,1fr))}.task-kanban.hide-done{grid-template-columns:repeat(3,minmax(230px,1fr))}.kanban-column{height:55dvh}}

html[data-theme="dark"] .tasks-page .kanban-card.is-done{background:color-mix(in srgb,#2ba568 12%,var(--bg-workspace))!important;border-color:color-mix(in srgb,#2ba568 40%,var(--border-color))!important}html[data-theme="dark"] .kanban-card.is-done strong{color:#70cda1}

.task-priority-card{padding:8px 13px}#task-priority-stars{display:flex;align-items:center;justify-content:center;gap:14px}#task-priority-stars button{min-height:36px;padding:5px 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-muted);font-size:18px;letter-spacing:2px;cursor:pointer}#task-priority-stars button:hover{background:var(--navy-light)}#task-priority-stars button.selected{background:var(--navy-light);border-color:var(--border-color);color:#b48732}#task-priority-stars button:focus-visible{outline:2px solid var(--navy-accent);outline-offset:2px}

.task-notes-toolbar{display:flex;gap:4px;align-items:center;padding-bottom:7px;border-bottom:1px solid var(--border-color)}.task-notes-toolbar button{min-height:32px;padding:4px 7px;border:0;border-radius:5px;background:transparent;color:var(--text-primary);font-size:12px;cursor:pointer}.task-notes-toolbar button:hover{background:var(--navy-light)}#detail-notes-editor{min-height:110px;max-height:280px;overflow-y:auto;padding:7px 0;outline:none;color:var(--text-primary);font-size:13px;line-height:1.6;white-space:pre-wrap}#detail-notes-editor:empty:before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none}#detail-notes-editor a{color:var(--navy-accent);text-decoration:underline}#detail-notes-editor ul,#detail-notes-editor ol{padding-left:22px;margin:5px 0}

/* One-line task entry in a persistent bottom layer. */
.tasks-main:not(.project-layout){overflow:hidden}.tasks-main:not(.project-layout)>#tasks-scroll-content{display:block;flex:1;min-height:0;overflow-y:auto;padding-bottom:14px}
.tasks-main:not(.project-layout)>#tasks-scroll-content{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--text-muted) 26%,transparent) transparent}
.tasks-main:not(.project-layout)>#tasks-scroll-content::-webkit-scrollbar{width:5px;height:5px}
.tasks-main:not(.project-layout)>#tasks-scroll-content::-webkit-scrollbar-track{background:transparent}
.tasks-main:not(.project-layout)>#tasks-scroll-content::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-muted) 26%,transparent);border-radius:999px}
.tasks-main:not(.project-layout)>#tasks-scroll-content::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text-muted) 44%,transparent)}
.tasks-main:not(.project-layout) .task-list{gap:10px}
.tasks-main:not(.project-layout) .task-row{padding:11px 13px;border:1px solid var(--border-color);border-radius:7px;box-shadow:0 1px 3px #0000000b}
.tasks-main:not(.project-layout) .task-row:hover{border-color:color-mix(in srgb,var(--navy-accent) 35%,var(--border-color));box-shadow:0 2px 7px #00000010}
.tasks-main>#quick-task-form,.tasks-main:not(.project-layout)>#quick-task-form{flex:none;order:99;position:relative;bottom:auto;margin:12px 0 0;z-index:50;overflow:visible;background:var(--bg-workspace);box-shadow:0 -6px 22px #0000000a,0 1px 4px #00000014}
.quick-task-form:not(.has-title) :is(.quick-task-actions,.quick-task-measure,.quick-task-milestone-wrap){display:none!important}
.kanban-column h2{display:flex;align-items:center;justify-content:space-between;gap:8px}.kanban-done-eye{display:grid;place-items:center;border:0;background:transparent;color:var(--text-muted);padding:2px;cursor:pointer;border-radius:4px}.kanban-done-eye:hover{background:var(--navy-light);color:var(--navy-accent)}.kanban-done-eye svg{width:19px;height:19px}.kanban-stack[hidden]{display:none}.kanban-column.done-collapsed{height:auto;align-self:start;min-height:0}.kanban-column.done-collapsed h2{margin-bottom:0}

/* All SCB sidebar wordmarks use the original Notes typography. */
.sidebar-header h2,.tasks-brand a,.calendar-brand-row>a{font-family:"Figtree",sans-serif;font-size:1.05rem;font-weight:700;line-height:normal;letter-spacing:-0.01em;color:var(--navy-accent);font-style:normal;text-transform:none}

/* Notes typography shared by sibling module interfaces. */
:root{--scb-font-body:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--scb-font-heading:"Figtree",sans-serif}
.tasks-page,.calendar-page{font-family:var(--scb-font-body)}
.tasks-page :is(h1,h2,h3),.calendar-page :is(h1,h2,h3){font-family:var(--scb-font-heading)}
.task-lists-heading,.task-lists-heading #projects-heading,.task-lists-heading #lists-heading,.calendar-source header strong{font-family:var(--scb-font-body);font-size:0.875rem;font-weight:600;letter-spacing:normal;text-transform:none;color:var(--text-primary)}
.task-list-nav,.tasks-smart-list,.calendar-source label{font-family:var(--scb-font-body);font-size:0.85rem}

/* Identical wordmark position and orange accent in expanded sidebars. */
.sidebar:not(.is-collapsed),.tasks-sidebar:not(.is-collapsed),.calendar-shell:not(.calendar-sidebar-closed) .calendar-sidebar{padding:20px 16px}
.sidebar:not(.is-collapsed) .sidebar-header,.tasks-sidebar:not(.is-collapsed) .tasks-brand,.calendar-shell:not(.calendar-sidebar-closed) .calendar-brand-row{display:flex;align-items:flex-start;justify-content:space-between;min-height:34px;margin:0 0 20px;padding:0 4px 10px;border-bottom:1px solid #c8913a;flex-shrink:0}
.sidebar-header h2,.tasks-brand a,.calendar-brand-row>a{margin:0;padding:0;line-height:20px}

/* One consistent source list for local, Google and timeboxing calendars. */
#calendar-source-list{display:grid;gap:0}#calendar-source-list[hidden]{display:none}.calendar-source-items{display:grid;gap:0}
.calendar-source #calendar-source-list label,.calendar-source #calendar-sources label{display:grid;grid-template-columns:14px 9px minmax(0,1fr);align-items:center;gap:7px;min-height:30px;margin:0;padding:4px 0;font-size:0.85rem;line-height:20px}
.calendar-source #calendar-source-list input{width:14px;height:14px;margin:0}.calendar-source #calendar-source-list .source-dot{width:9px;height:9px}

/* Compact project multiselect; choices open above the board. */
.kanban-project-filter{position:relative;align-self:flex-start;width:max-content;max-width:100%;margin:18px 0 24px;border-radius:6px}
.kanban-project-filter summary{padding:8px 12px;font-size:13px}
.kanban-project-options{position:absolute;top:calc(100% + 5px);left:0;z-index:65;display:flex;flex-direction:column;align-items:stretch;gap:0;width:260px;max-width:calc(100vw - 40px);max-height:320px;overflow-y:auto;padding:8px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-workspace);box-shadow:0 6px 20px #00000015}
.kanban-project-actions{display:flex;gap:8px;padding-bottom:7px;margin-bottom:4px;border-bottom:1px solid var(--border-color)}.kanban-project-actions button{min-width:36px;padding:5px 8px}.kanban-project-options label{min-height:34px;padding:4px 7px;font-size:13px;border-radius:5px}.kanban-project-options label:hover{background:var(--navy-light)}.kanban-project-options label span{overflow-wrap:anywhere}

.sidebar:not(.is-collapsed) .sidebar-header,.tasks-sidebar:not(.is-collapsed) .tasks-brand,.calendar-shell:not(.calendar-sidebar-closed) .calendar-brand-row{border-bottom:0}
.sidebar-header h2,.tasks-brand a,.calendar-brand-row>a{position:relative;width:max-content;max-width:100%}
.sidebar-header h2::after,.tasks-brand a::after,.calendar-brand-row>a::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:#c8913a}
.calendar-toolbar-actions .calendar-view-switch{margin-left:12px}

#calendar-quick-task-form{background:var(--bg-workspace);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 1px 4px #00000010}#calendar-quick-task-form input{background:transparent}

.calendar-task{grid-template-columns:24px minmax(0,1fr) 24px;cursor:grab}.calendar-task>div{grid-column:2}.calendar-task-star{grid-column:3}.calendar-agenda{padding-top:20px}.calendar-agenda>header h2{margin-top:0}

.calendar-list-filter{position:relative;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);font-size:13px;margin:10px 0}.calendar-list-filter summary{padding:9px 12px;cursor:pointer}.calendar-list-filter>div{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:80;max-height:320px;overflow-y:auto;padding:8px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-workspace);box-shadow:0 6px 20px #00000015}.calendar-list-actions{display:flex;gap:8px;padding-bottom:7px;border-bottom:1px solid var(--border-color)}.calendar-list-actions button{min-width:36px;padding:5px 8px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);color:var(--text-primary);cursor:pointer}.calendar-list-filter label{display:flex;align-items:center;gap:8px;margin:0;min-height:34px;padding:4px 7px;font-size:13px}.calendar-list-filter input{width:16px;height:16px;margin:0}.calendar-list-filter label:hover{background:var(--navy-light)}.google-calendar-status[hidden]{display:none}

/* Note boards, clock, and grouped block picker. */
.note-clock {padding:20px;text-align:center;border:1px solid var(--border-color,#e2e8f0);border-radius:8px;}
.note-clock time {font-size:clamp(28px,5vw,48px);font-variant-numeric:tabular-nums;font-weight:600;color:var(--navy-accent,#194963);}
.note-kanban {display:flex;gap:12px;overflow-x:auto;padding:8px 0;}
.note-kanban-column {flex:1;min-width:170px;background:var(--bg-sidebar,#f1f3f5);color:var(--text-primary,#1a1a1a);border:1px solid var(--border-color,#dde4e7);border-radius:8px;padding:10px;}
.note-kanban-column>input {width:100%;border:0;background:transparent;font-family:inherit;font-size:14px;font-weight:600;color:inherit;padding:4px 0 10px;}
.note-kanban-cards {max-height:360px;overflow-y:auto;scrollbar-width:thin;}
.note-kanban-card {padding:10px;margin-bottom:8px;background:var(--bg-workspace,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:6px;cursor:grab;}
.note-kanban-card [contenteditable] {min-height:24px;outline:none;overflow-wrap:anywhere;cursor:text;}
.note-kanban-card-actions {display:flex;gap:5px;margin-top:8px;}
.note-kanban-card-actions select {min-width:0;width:100%;font-size:11px;border:0;background:transparent;color:inherit;}
.note-kanban-card-actions button,.note-kanban-add {border:0;background:transparent;color:inherit;cursor:pointer;}
.note-kanban-add {padding:8px 0;font-size:13px;}
.scb-block-category {border-top:1px solid #e2e8f0;padding:10px 8px 5px;font-size:11px;font-weight:600;color:#64748b;pointer-events:none;}
.scb-block-category:first-child {border-top:0;}

.task-notes-toolbar{background:var(--bg-sidebar,#f1f3f5);padding:5px 7px;margin:-1px -1px 5px;border-radius:5px;flex-wrap:wrap}
.task-filter-category{font-size:12px;padding:9px 7px 4px;border-top:1px solid var(--border-color)}
.kanban-project-options .list-project-setting{margin:0 0 8px;padding:5px 7px}
.kanban-project-options .list-project-setting small{display:none}

/* Task headings have breathing room; today's date lives in the sidebar. */
.tasks-header{margin-bottom:24px}
#tasks-subtitle[hidden]{display:none}
.tasks-sidebar-date{display:block;padding:0 8px;margin:0 0 18px;font-size:12px;line-height:1.5;color:var(--text-muted)}
.tasks-sidebar.is-collapsed .tasks-sidebar-date{display:none}
#completed-toggle{color:var(--navy-accent);font-weight:600;font-size:13px;padding:8px 0}
#completed-count{display:inline-block;margin-left:5px;padding:2px 7px;border-radius:5px;background:var(--navy-light);color:var(--navy-accent);font-weight:700}
.completed-section{margin-top:20px}

.tasks-date-weather{display:flex;gap:7px;align-items:center;padding:0 8px;margin:0 0 18px;flex-wrap:wrap}
.tasks-date-weather .tasks-sidebar-date{padding:0;margin:0;font-weight:600;color:var(--text-primary)}
#tasks-weather{font-size:12px;white-space:nowrap;font-weight:600;color:var(--navy-accent)}
.tasks-sidebar.is-collapsed .tasks-date-weather{display:none}
#tasks-weather[hidden]{display:none}

.tasks-date-weather{justify-content:space-between;flex-wrap:nowrap;gap:6px}
.tasks-date-weather .tasks-sidebar-date{font-size:12px}
#tasks-weather{display:flex;align-items:center;gap:4px;margin-left:auto;flex-shrink:0}
#tasks-weather svg{width:25px;height:27px;flex-shrink:0}
#tasks-weather[hidden]{display:none}

#cover-drop-zone{display:block;width:100%;min-height:76px;padding:16px;border:1px dashed var(--text-muted);border-radius:8px;background:var(--bg-sidebar);color:var(--text-muted);font:inherit;font-size:13px;cursor:pointer}
#cover-drop-zone:hover,#cover-drop-zone.is-drag-over{border-color:var(--navy-accent);background:var(--navy-light);color:var(--navy-accent)}
#cover-drop-zone:disabled{cursor:wait;opacity:.65}
#cover-upload-status{font-size:12px;color:var(--text-muted);margin:7px 0 0}

.sidebar-header .brand{flex:1;min-width:0}
.sidebar-header .brand-weather,.tasks-brand .brand-weather,.calendar-brand-row .brand-weather{align-self:flex-start;margin-top:-3px;margin-left:auto;padding:0}
.sidebar-header .create-menu-wrap{margin-right:8px}
.sidebar.is-collapsed .brand-weather,.tasks-sidebar.is-collapsed .brand-weather,.calendar-shell.calendar-sidebar-closed .brand-weather{display:none!important}

/* Compact column content and a quiet width control. */
.columns-block{position:relative}
.columns-grid{grid-template-columns:var(--columns-layout,repeat(var(--column-count),minmax(0,1fr)))}
.note-column{padding:6px 12px}
.note-column .codex-editor__redactor{padding-bottom:20px!important}
.note-column .colored-quote .cdx-quote__text{min-height:28px}
.columns-ratio{position:absolute;right:0;top:-22px;z-index:5;font-size:12px;color:var(--text-muted)}
.columns-ratio summary{cursor:pointer;list-style:none;padding:2px 6px}
.columns-ratio[open]{background:var(--bg-sidebar);padding:4px 8px;border-radius:6px;box-shadow:0 2px 8px #0002}
.columns-ratio input{width:130px;vertical-align:middle}
.columns-ratio output{margin-left:6px}
@media(max-width:760px){.columns-grid{grid-template-columns:1fr!important}.columns-ratio{display:none}}

.habit-tracker{border:1px solid var(--border-color);border-radius:8px;padding:12px;background:var(--bg-workspace);font-size:13px}
.habit-tracker-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.habit-tracker-bar strong{margin-right:auto}
.habit-tracker button,.habit-tracker select{font:inherit;color:var(--text-primary);background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:5px;padding:5px 8px;cursor:pointer}
.habit-tracker-scroll{overflow-x:auto}.habit-tracker table{border-collapse:separate;border-spacing:0;min-width:680px;width:100%}
.habit-tracker th,.habit-tracker td{padding:8px;text-align:center;border-bottom:1px solid var(--border-color)}
.habit-tracker th:first-child{position:sticky;left:0;z-index:1;background:var(--bg-workspace);min-width:150px;text-align:left}
.habit-tracker th input{width:150px;font:inherit;color:var(--text-primary);background:transparent;border:0;padding:5px}
.habit-tracker input[type=checkbox]{width:20px;height:20px;accent-color:var(--navy-accent);cursor:pointer}
.habit-tracker output{display:inline-block;margin:0 8px;white-space:nowrap}.habit-goal-met{color:#398b5f;font-weight:700}
.habit-tracker .habit-today{background:var(--bg-sidebar);color:var(--navy-accent)}
@media(max-width:760px){.habit-tracker{padding:8px}.habit-tracker button{min-height:36px}.habit-tracker th input{width:125px}.habit-tracker th:first-child{min-width:125px}}


.tasks-main:not(.project-layout)>#tasks-scroll-content,.tasks-main:not(.project-layout)>#quick-task-form,.tasks-main:not(.project-layout)>.tasks-header{width:100%;max-width:1040px;box-sizing:border-box;margin-left:auto;margin-right:auto}

/* Compact persistent-login checkbox. */
.auth-form .auth-remember{display:flex;align-items:center;gap:9px;min-height:40px;font-weight:400;cursor:pointer}
.auth-form .auth-remember input[type="checkbox"]{box-sizing:border-box;width:18px;min-width:18px;max-width:18px;min-height:18px;height:18px;margin:0;padding:0;flex:0 0 18px;accent-color:var(--navy-accent);cursor:pointer}
.auth-form .auth-remember input:focus-visible{outline:2px solid var(--navy-accent);outline-offset:3px}

/* Align date headings with the visible time grid. */
.timeline-body{scrollbar-gutter:stable}
.timeline-head{overflow:hidden}
.timeline-head button.today{box-shadow:none;text-decoration-line:underline;text-decoration-color:#f29900;text-decoration-thickness:2px;text-underline-offset:5px}

@media(max-width:760px){.tasks-sidebar:not(.is-collapsed) .module-dock{grid-template-columns:repeat(6,minmax(44px,1fr))}}

/* Embedded shared project list */
.note-project-list{border:1px solid var(--scb-border,#DDE4E7);border-radius:12px;padding:16px;margin:12px 0;background:var(--scb-surface,#fff);max-width:100%;box-sizing:border-box;color:var(--scb-text,#1A1A1A)}
.note-project-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}
.note-project-list p{font-size:13px;color:var(--scb-text-muted,#4A6270);margin:10px 0}
.note-project-scroll{overflow:auto;max-width:100%}
.note-project-list table{border-collapse:collapse;width:100%;font-size:13px}
.note-project-list th,.note-project-list td{padding:8px;border-bottom:1px solid var(--scb-border,#DDE4E7);text-align:left;white-space:nowrap}
.note-project-list input,.note-project-list select{font:inherit;color:inherit;background:transparent;border:1px solid var(--scb-border,#DDE4E7);border-radius:6px;padding:8px;min-height:40px;box-sizing:border-box;width:140px}
.note-project-list input[aria-label="Projekt"]{width:210px}
.note-project-list button{font:inherit;background:var(--scb-primary,#1C4963);color:#fff;border:0;border-radius:7px;padding:9px 12px;min-height:40px;cursor:pointer;white-space:nowrap}
.note-project-list button:disabled{opacity:.6;cursor:wait}

/* Consistent field spacing for note/folder creation, including subfolders. */
#organize-modal { box-sizing: border-box; width: min(540px, calc(100vw - 32px)); max-height: 90dvh; overflow: auto; }
#organize-modal .modal-content { box-sizing: border-box; padding: 24px; }
#organize-modal .modal-header h3 { margin: 0; }
#organize-modal .form-text-input { box-sizing: border-box; width: 100%; min-height: 44px; margin: 0; }
#organize-modal .organize-actions { flex-wrap: wrap; gap: 8px; margin-top: 24px; }
#organize-modal .organize-actions button { min-height: 44px; }
.unfiled-notes > .folder-header .folder-name::before { content: none; }

/* Pomodoro note widget */
.note-pomodoro{box-sizing:border-box;width:100%;max-width:520px;margin:16px 0;padding:24px;border:1px solid var(--border-color,#DDE4E7);border-radius:16px;background:var(--bg-workspace,#fff);color:var(--text-primary,#1A1A1A)}
.note-pomodoro>strong{display:block;font-size:16px;color:var(--navy-accent,#1C4963)}
.pomodoro-status{margin-top:16px;font-size:14px;color:var(--text-muted,#4A6270)}
.pomodoro-time{font-size:clamp(44px,10vw,64px);font-weight:700;font-variant-numeric:tabular-nums;line-height:1.25;letter-spacing:-2px;margin:4px 0 12px}
.note-pomodoro progress{display:block;width:100%;height:8px;accent-color:var(--navy-accent,#1C4963)}
.note-pomodoro[data-phase="break"] progress{accent-color:#1E8E3E}
.pomodoro-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}
.pomodoro-settings label{font-size:12px;color:var(--text-muted,#4A6270)}
.pomodoro-settings input{display:block;width:100%;box-sizing:border-box;margin-top:6px;min-height:44px;border:1px solid var(--border-color,#DDE4E7);border-radius:8px;padding:8px;font:inherit;font-size:16px;color:var(--text-primary,#1A1A1A);background:var(--bg-workspace,#fff)}
.pomodoro-settings input:disabled{opacity:.65}
.pomodoro-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.pomodoro-actions button{min-height:44px;padding:10px 18px;border:0;border-radius:8px;font:inherit;font-size:14px;cursor:pointer;background:var(--navy-accent,#1C4963);color:#fff}
.pomodoro-actions button+button{background:var(--navy-light,#EDF3F5);color:var(--text-primary,#1A1A1A)}
.note-pomodoro>p{font-size:12px;line-height:1.5;color:var(--text-muted,#4A6270);margin:16px 0 0}
@media(max-width:480px){.note-pomodoro{padding:18px}.pomodoro-settings{grid-template-columns:1fr}.pomodoro-settings label{display:flex;align-items:center;justify-content:space-between;gap:12px}.pomodoro-settings input{width:90px;margin-top:0}}

/* Readable selection regardless of theme or inline text color. */
#editor ::selection, .codex-editor ::selection {background:#b8ddf5;color:#102d40;text-shadow:none;}
.note-ai-inline form>.note-ai-writing-actions{display:flex;gap:6px;flex-wrap:wrap;}
.note-ai-writing-actions button{font-size:13px;min-height:36px;}
@media(max-width:600px){.note-ai-writing-actions button{min-height:44px;}}

.note-kanban-add-column{flex:0 0 auto;align-self:flex-start;min-height:44px;padding:10px 14px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-sidebar);color:var(--text-primary);font:inherit;cursor:pointer;white-space:nowrap}
.note-kanban-column .note-kanban-add{color:var(--text-primary);min-height:44px}
.note-kanban-card{color:var(--text-primary)}
.note-kanban-card-actions select option{background:var(--bg-workspace);color:var(--text-primary)}

.scb-selection-toolbar{position:fixed;z-index:1100;display:flex;gap:3px;align-items:center;flex-wrap:wrap;padding:4px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-sidebar);color:var(--text-primary);box-shadow:0 4px 16px #0003}
.scb-selection-toolbar[hidden]{display:none!important}
.scb-selection-toolbar button{min-height:36px;padding:6px 9px;border:0;border-radius:4px;background:transparent;color:inherit;font:inherit;font-size:13px;cursor:pointer}
.scb-selection-toolbar button:hover{background:var(--navy-light)}
.scb-selection-toolbar button[hidden]{display:none}
.scb-text-selected :is(.ce-inline-toolbar,.ce-popover--inline){visibility:hidden!important;pointer-events:none!important}
@media(max-width:600px){.scb-selection-toolbar button{min-height:44px}}

#note-pin.is-pinned{color:var(--gold,#c8913a);background:var(--navy-light)}
#note-pin.is-pinned svg{fill:color-mix(in srgb,currentColor 18%,transparent)}
#folder-tree>#important-notes{margin:12px 0 18px;padding:0 4px}
#important-notes>small{font-size:12px;font-weight:600;padding:4px 7px}
#important-notes .important-note-open{width:100%;min-height:36px}
@media(max-width:760px){#important-notes .important-note-open{min-height:44px}}
/* Keep note actions, including pin, available on narrow screens. */
@media(max-width:900px){body:has(#notes-sidebar) .note-utilities{display:flex}body:has(#notes-sidebar) .note-top-row{flex-wrap:wrap;gap:8px}body:has(#notes-sidebar) .note-utilities .utility-icon-btn{width:44px;height:44px}}
#note-pin svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

.note-kanban-card{position:relative;padding-right:28px}
.note-kanban-card-open{display:block;width:100%;padding:0;border:0;background:transparent;color:var(--text-primary);text-align:left;font:inherit;line-height:1.5;overflow-wrap:anywhere;cursor:pointer;min-height:28px}
.note-kanban-card-delete{position:absolute;right:5px;top:7px;border:0;background:transparent;color:var(--text-muted);cursor:pointer;padding:3px 5px}
.note-kanban-notes-hint{display:block;margin-top:6px;color:var(--text-muted);font-size:11px}
.note-kanban-dialog{width:min(480px,calc(100vw - 24px));box-sizing:border-box;background:var(--bg-workspace);color:var(--text-primary)}
.note-kanban-dialog form{padding:24px;display:grid;gap:16px}.note-kanban-dialog h3{margin:0}.note-kanban-dialog label{display:grid;gap:7px;font-size:14px}.note-kanban-dialog input,.note-kanban-dialog textarea{box-sizing:border-box;width:100%;padding:10px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-sidebar);color:var(--text-primary);font:inherit}.note-kanban-dialog textarea{resize:vertical}.note-kanban-dialog footer{display:flex;gap:8px;justify-content:flex-end}.note-kanban-dialog footer button{min-height:44px;padding:8px 14px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-sidebar);color:var(--text-primary);font:inherit;cursor:pointer}.note-kanban-dialog footer button[type=submit]{background:var(--navy-accent);color:#fff}

.note-kanban-add-column{display:grid;place-items:center;width:28px;height:28px;min-height:28px;padding:0;margin-top:6px;border:0;border-radius:5px;font-size:21px;background:transparent;color:var(--text-muted)}
.note-kanban-add-column:hover{background:var(--navy-light);color:var(--text-primary)}
@media(max-width:600px){.note-kanban-add-column{width:44px;height:44px;min-height:44px;margin-top:0}}

#important-notes{margin:0 0 14px;padding:0 4px}#important-notes[hidden]{display:none}#important-notes>small{display:block;margin-bottom:5px;color:var(--text-muted)}.important-note-row{display:flex;align-items:center}.important-note-row button{border:0;background:transparent;color:var(--text-primary);cursor:pointer;padding:7px}.important-note-open{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.important-note-open.active{background:var(--navy-light);border-radius:6px}.important-note-row>button:last-child,.note-important.is-important{color:#c8913a}

#important-notes .important-note-open{color:var(--gold,#c8913a)}

/* Task details: persistent actions and correctly centered close icon. */
.tasks-page .task-detail{padding-top:0}
.task-detail-toolbar{position:sticky;top:0;z-index:35;display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 -18px 12px;padding:8px 12px;background:var(--bg-sidebar);border-bottom:1px solid var(--border-color)}
.tasks-page .task-detail-toolbar #close-task-detail{position:static;display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:0;border-radius:8px;background:transparent;box-shadow:none;line-height:1}
.task-detail-toolbar .task-delete{min-height:44px;padding:8px 12px;border:0;border-radius:8px;font:inherit;cursor:pointer}
.task-inline-steps{display:grid;gap:4px;margin-top:10px;padding-top:8px;border-top:1px solid var(--border-color)}
.task-inline-step{display:flex;align-items:center;gap:9px;min-height:30px;font-size:13px;cursor:pointer}
.task-inline-step input{flex:none;width:18px;height:18px;margin:0;accent-color:var(--navy-accent)}
.task-inline-step span{min-width:0;overflow-wrap:anywhere}
.task-inline-step.completed span{text-decoration:line-through;color:var(--text-muted)}
@media(max-width:760px){.task-inline-step{min-height:44px}}

/* Parked AI requests: cards and a bottom composer, matching the task UI. */
.note-ai-orders{min-height:calc(100dvh - 220px);display:flex;flex-direction:column;gap:12px;min-width:0;padding-bottom:12px}
.ai-order-list{display:grid;gap:12px}
.ai-order-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-workspace)}
.ai-order-card textarea,.ai-order-composer textarea{width:100%;min-width:0;resize:none;overflow:hidden;border:0;background:transparent;color:var(--text-primary);font:inherit;line-height:1.5;padding:0;outline-offset:4px}
.ai-order-card button{min-height:44px;padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-sidebar);color:var(--text-primary);font:inherit;cursor:pointer}
.ai-order-composer{position:sticky;bottom:16px;margin-top:auto;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-workspace);box-shadow:0 3px 12px #0002;z-index:2}
.ai-order-composer button{width:44px;min-height:44px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--navy-accent);font-size:24px;cursor:pointer}
.ai-order-empty,.ai-order-status{margin:0;color:var(--text-muted);font-size:14px}.ai-order-status:empty{display:none}
@media(max-width:760px){.note-ai-orders{min-height:calc(100dvh - 240px)}.ai-order-card{grid-template-columns:1fr;gap:8px}.ai-order-card button{justify-self:end}.ai-order-composer{bottom:calc(76px + env(safe-area-inset-bottom));padding:10px 12px}}

.ai-order-card textarea::placeholder,.ai-order-composer textarea::placeholder{color:var(--text-muted);opacity:1}

/* Compact task detail actions */
.task-detail-toolbar #delete-task{display:grid;place-items:center;width:44px;height:44px;padding:0;flex:0 0 44px}
#task-detail-form .task-detail-actions{justify-content:flex-end}

/* Space between project creation and the empty-state message */
.project-overview > .project-overview-add + p{margin-top:20px}

/* Compact calendar task-list choices */
#calendar-list-options label{display:flex;flex-direction:row;align-items:center;gap:8px;margin:0;min-height:34px;padding:4px 7px}
#calendar-list-options label input[type=checkbox]{flex:0 0 16px;width:16px;height:16px;margin:0}

/* Card star and compact task action menu */
.task-card-actions{position:relative;display:flex;flex-direction:column;align-items:center;flex:0 0 36px;margin-left:auto}
.task-card-actions .task-star,.task-card-actions .calendar-task-star{margin:0;padding:0;width:36px;height:32px;font-size:26px;line-height:1}
.task-card-menu summary{display:grid;place-items:center;width:36px;height:24px;font-size:17px;cursor:pointer;list-style:none;color:var(--text-muted)}
.task-card-menu summary::-webkit-details-marker{display:none}
.task-card-menu[open]{z-index:90}
.task-card-menu>button{position:absolute;right:0;top:100%;width:158px;min-height:44px;padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-sidebar);box-shadow:0 4px 16px #0004;cursor:pointer}
.task-card-remove{color:var(--danger,#e97979)}
.task-remove-dialog{width:min(420px,calc(100vw - 32px));box-sizing:border-box;border:1px solid var(--border-color);border-radius:12px;padding:24px;background:var(--bg-sidebar);color:var(--text-primary)}
.task-remove-dialog::backdrop{background:#0008}
.task-remove-dialog h3{margin-top:0}.task-remove-dialog p{overflow-wrap:anywhere}
.task-remove-dialog footer{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:20px}
.task-remove-dialog button{min-height:44px;padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);font:inherit;cursor:pointer}
.task-remove-dialog button:not(.task-card-remove){color:var(--text-primary)}
.task-remove-error{color:var(--danger,#e97979)}.task-remove-error:empty{display:none}
@media(max-width:760px){.task-card-actions .task-star,.task-card-actions .calendar-task-star{height:44px}.task-card-menu summary{height:44px}}

.calendar-task{grid-template-columns:24px minmax(0,1fr) 36px}
.calendar-task>.task-card-actions{grid-column:3;grid-row:1;display:flex;gap:0}

.scb-toggle-title-format{flex:none;width:64px;max-width:64px;height:28px;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-workspace);color:var(--text-muted);font:inherit;font-size:12px;padding:2px;cursor:pointer}

.project-description-panel .project-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 24px;margin:10px 0}.project-detail-field{min-width:0;overflow-wrap:anywhere}.project-detail-period{grid-column:1/-1;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.project-detail-period p{margin:0}.project-plan-milestone>summary>.milestone-edit-title{border:0;background:transparent;color:inherit;padding:0;text-align:left;font:inherit;font-weight:700;cursor:pointer;overflow-wrap:anywhere}.milestone-edit-title:hover{text-decoration:underline}.milestone-edit-title:focus-visible{outline:2px solid var(--navy-accent);outline-offset:4px}@media(max-width:600px){.project-description-panel .project-detail-grid{grid-template-columns:minmax(0,1fr)}}

/* Task detail labels use the same inset and rhythm as adjacent cards. */
.task-detail .task-status-field{display:grid;gap:8px;padding:12px 13px;line-height:1.4;box-sizing:border-box}
.task-detail .task-status-field select{width:100%;min-width:0;min-height:44px;margin:0;box-sizing:border-box}
.task-detail .task-measure-card label{display:grid;gap:8px;line-height:1.4}
.task-detail .task-measure-card select{margin:0;min-height:44px}

.task-detail .task-recurrence-card{padding:12px 13px}.task-recurrence-card>label{display:grid;gap:8px}.task-recurrence-card select{width:100%;min-height:44px;box-sizing:border-box;margin:0}.task-recurrence-card p{margin:8px 0 0;font-size:12px;line-height:1.5;color:var(--text-muted)}#detail-recurrence-days{display:flex;flex-wrap:wrap;gap:4px;margin:10px 0 0;padding:0;border:0}#detail-recurrence-days[hidden]{display:none}#detail-recurrence-days legend{font-size:12px;color:var(--text-muted);margin-bottom:6px}#detail-recurrence-days label{display:flex;align-items:center;gap:4px;min-height:44px;margin:0;padding:0 4px}#detail-recurrence-days input{width:16px;height:16px;margin:0}

/* Popover controls must not inherit the composer's full-height buttons. */
.quick-task-form .quick-task-popover button{height:auto;min-height:44px;font-size:13px}
.quick-task-form .quick-task-popover{max-height:calc(100dvh - 100px);overflow-y:auto;box-sizing:border-box}
.quick-task-form .quick-task-custom-repeat{display:grid;grid-template-rows:auto auto}
.quick-task-form .quick-task-custom-repeat>button{padding:8px 14px}
.quick-task-form .quick-task-custom-repeat>div:not([hidden]){display:grid;gap:4px}
.quick-task-form .quick-task-weekdays{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:8px 12px}
.quick-task-form .quick-task-weekdays label{min-height:44px;margin:0;gap:5px;color:inherit;cursor:pointer}
.quick-task-form .quick-task-weekdays input{width:16px;height:16px;min-width:16px;padding:0;margin:0;accent-color:var(--navy-accent)}
.quick-task-form .quick-task-custom-repeat #quick-task-custom-apply{margin:0 12px 10px;background:var(--navy-accent);color:var(--bg-workspace);font-size:13px}
.quick-task-form .quick-task-popover h3{color:inherit;border-color:var(--border-color)}

/* Mehr Luft im Termin-Beschreibungseditor und bei Aufzaehlungen. */
.event-description-editor{padding:18px 20px}
.event-description-editor :is(ul,ol){padding-inline-start:30px}
.event-description-editor li{margin:8px 0;padding-inline-start:6px}

.tasks-page .task-card-actions-inline{flex-direction:row;align-items:center;gap:4px;flex:0 0 auto}
.tasks-page .task-card-actions-inline :is(.task-star,.task-card-trash){display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;background:transparent;color:var(--text-muted);cursor:pointer}
.tasks-page .task-card-actions-inline .task-star.active{color:var(--scb-gold)}
.tasks-page .task-card-actions-inline .task-card-trash:hover{color:var(--danger)}
@media(max-width:760px){.tasks-page .task-card-actions-inline :is(.task-star,.task-card-trash){width:44px;height:44px}}

/* Hold the task itself to reorder project tasks. */
.project-task-item>.task-row{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.project-task-item>.task-row.dragging{cursor:grabbing;opacity:.45}

/* Compact sidebar list rename. */
.task-list-name-input{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:8px 10px;border:1px solid var(--navy-accent);border-radius:6px;background:var(--bg-workspace);color:var(--text-primary);font:inherit}

.scb-selection-toolbar select{max-width:155px;min-height:36px;border:0;border-radius:4px;background:var(--bg-sidebar);color:inherit;font:inherit;font-size:13px;padding:4px;cursor:pointer}.scb-selection-toolbar select[hidden]{display:none}.scb-selection-toolbar button svg{display:block}.scb-heading-1,.scb-heading-2,.scb-heading-3{font-weight:700;line-height:1.3}.scb-heading-1{font-size:2em}.scb-heading-2{font-size:1.5em}.scb-heading-3{font-size:1.17em}@media(max-width:600px){.scb-selection-toolbar select{min-height:44px}}

/* Toggle disclosure follows the first title line, including heading sizes. */
.scb-toggle-heading{--toggle-title-size:1rem}
.scb-toggle-heading:has(>h1){--toggle-title-size:1.85rem}
.scb-toggle-heading:has(>h2){--toggle-title-size:1.5rem}
.scb-toggle-heading:has(>h3){--toggle-title-size:1.25rem}
.scb-toggle-heading>.scb-toggle-title{margin:0;padding:3px 0;line-height:1.35;font-size:var(--toggle-title-size)}
.scb-toggle-heading>button{height:calc(var(--toggle-title-size) * 1.35 + 6px);display:grid;place-items:center;line-height:1}
#editor .ce-toolbar__plus{display:none!important}

.table-settings-panel{max-height:min(560px,65vh);overflow-y:auto;box-sizing:border-box}.table-structure-controls{display:grid;gap:8px;padding-bottom:12px;margin-bottom:8px;border-bottom:1px solid var(--border-color)}

/* Table row/column popovers use the active application theme. */
.sized-table .tc-popover{--color-background:var(--bg-workspace);--color-border:var(--border-color);--color-background-hover:var(--navy-light);color:var(--text-primary);z-index:100}
.sized-table .tc-popover__item{color:var(--text-primary)}
.sized-table .tc-popover__item--confirm{color:var(--color-text-confirm)}
.sized-table .tc-popover__item-icon svg{color:inherit}
.sized-table .tc-toolbox{--toggler-dots-color:var(--text-muted);--toggler-dots-color-hovered:var(--text-primary)}

.sized-table .table-cell-selected{background:color-mix(in srgb,var(--navy-accent) 24%,var(--bg-workspace));box-shadow:inset 0 0 0 2px var(--navy-accent)}
.sized-table .table-selecting{user-select:none}
.table-selection-actions{position:fixed;z-index:1200;display:flex;flex-wrap:wrap;gap:4px;max-width:calc(100vw - 16px);width:max-content;padding:6px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-workspace);color:var(--text-primary);box-shadow:0 5px 18px #0004}
.table-selection-actions[hidden],.table-settings-footer[hidden],.table-structure-controls[hidden]{display:none!important}
.table-selection-actions>button{border:0;border-radius:4px;padding:6px;background:var(--bg-sidebar);color:inherit;font:inherit;font-size:12px;cursor:pointer}
.table-header-colors{display:flex;gap:5px;align-items:center;padding:4px;flex-basis:100%}
.table-header-colors>button{width:20px;height:20px;border:1px solid var(--border-color);border-radius:50%;padding:0;cursor:pointer}

/* Keep note actions available while scrolling; appearance actions remain contextual. */
body:has(#notes-sidebar) .note-top-row{position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;background:var(--bg-workspace);padding:5px 0;min-height:38px}
body:has(#notes-sidebar) .note-top-row .note-utilities{display:flex!important;opacity:1;visibility:visible;margin-left:auto}
body:has(#notes-sidebar) .note-top-row .page-appearance-actions{opacity:0;pointer-events:none}
body:has(#notes-sidebar) .note-top-row:hover .page-appearance-actions,body:has(#notes-sidebar) .note-top-row:has(.page-appearance-actions:focus-within) .page-appearance-actions{opacity:1;pointer-events:auto}

/* Optional packages share the existing project hierarchy. */
.project-work-package {margin:12px 0 12px 16px;padding:12px;border:1px solid var(--border-color,#66717b);border-radius:8px;}
.project-work-package > summary {display:flex;align-items:center;gap:10px;flex-wrap:wrap;cursor:pointer;}
.project-work-package > summary strong {flex:1;}
#work-package-dialog {width:min(520px,calc(100vw - 32px));max-width:520px;max-height:calc(100dvh - 32px);overflow:auto;background:var(--bg-sidebar);color:var(--text-primary);}
#work-package-dialog form {padding:24px;gap:20px;}
#work-package-dialog form > .task-rich-title-editor {display:block;text-align:left;box-sizing:border-box;width:100%;min-height:46px;padding:12px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-workspace);color:var(--text-primary);}
#work-package-dialog [role=alert] {margin:0;color:var(--danger);font-size:13px;}
#work-package-dialog [role=alert]:empty {display:none;}
#work-package-dialog .dialog-actions {display:flex;gap:8px;flex-wrap:wrap;}
#work-package-dialog button[type=submit] {background:var(--navy-accent);color:var(--bg-main);}
#work-package-dialog [data-delete] {color:var(--danger);}
#work-package-dialog [data-delete][hidden] {display:none;}
@media(max-width:600px){.project-work-package {margin-left:6px;padding:8px;}}

.slash-block-convert-menu{position:fixed;z-index:10000;max-height:min(420px,calc(100dvh - 24px));overflow:auto;width:220px;box-sizing:border-box}.slash-block-convert-menu>strong{padding:7px 8px;font-size:12px;color:var(--text-muted)}.slash-block-convert-menu button:focus-visible{outline:2px solid var(--navy-accent);outline-offset:-2px;background:var(--navy-light)}

.scb-link-dialog{width:min(420px,calc(100vw - 32px));box-sizing:border-box;border:1px solid var(--border-color);border-radius:12px;padding:24px;background:var(--bg-workspace);color:var(--text-primary)}
.scb-link-dialog::backdrop{background:#0007}.scb-link-dialog h3{margin:0 0 16px}.scb-link-dialog label{display:block}.scb-link-dialog input{display:block;width:100%;box-sizing:border-box;margin-top:8px;padding:10px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-sidebar);color:inherit;font:inherit;font-size:16px}.scb-link-dialog form>div{display:flex;justify-content:flex-end;gap:8px}.scb-link-dialog button{min-height:44px;padding:8px 14px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-sidebar);color:inherit;cursor:pointer}.scb-link-dialog button[type=submit]{background:var(--navy-accent);color:white}.scb-link-dialog [role=alert]{color:var(--text-primary);font-size:13px}

.calendar-page .calendar-task-group{display:flex;flex-direction:column;gap:3px;z-index:5;min-height:48px;border:1px solid var(--border-color);border-left:3px solid #c8913a;border-radius:6px;background:var(--bg-workspace);text-align:left;cursor:pointer}.calendar-task-group>span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.calendar-task-group small{font-size:11px}.calendar-task-group-dialog{box-sizing:border-box;width:min(540px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow:auto;padding:20px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-workspace);color:var(--text-primary)}.calendar-task-group-dialog::backdrop{background:#0007}.calendar-task-group-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.calendar-task-group-dialog h3{margin:0}.calendar-task-group-dialog header button{min-width:44px;min-height:44px;border:0;background:transparent;color:inherit;font-size:24px;cursor:pointer}.calendar-group-row{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px;margin-bottom:8px;align-items:start}.calendar-group-row>small{padding-top:12px}.calendar-task-group-dialog .calendar-item{position:relative;min-height:44px;margin:0;white-space:normal}.calendar-task-group-dialog .calendar-task-label{white-space:normal}.calendar-task-group-dialog .calendar-task-label small{display:none}

/* To-Do project heading spacing and hierarchy actions. */
.tasks-page .project-description-panel {padding:18px;margin-top:24px;}
.tasks-page .project-description-panel > .project-category-badge {margin:0 0 14px;}
.tasks-page .project-description-panel > details > summary {padding:0 0 4px;line-height:1.5;}
.tasks-page .project-description-panel .project-detail-grid {margin:16px 0 18px;gap:18px 28px;}
.tasks-page .project-plan-milestone > summary {gap:10px;margin-bottom:16px;}
.tasks-page .project-plan-milestone > summary > button:not(.task-check),.tasks-page .project-plan-milestone > button {border:1px solid var(--border-color);background:var(--navy-light);color:var(--navy-accent);padding:6px 10px;border-radius:7px;font:inherit;font-size:12px;cursor:pointer;}
.tasks-page .project-plan-milestone > .milestone-task-composer {margin-top:14px;}
.tasks-page .scb-selection-toolbar {z-index:10030;}

.tasks-page .task-rich-title-source{display:none!important;}
.tasks-page .task-rich-title-editor{min-width:0;min-height:38px;width:100%;box-sizing:border-box;border:1px solid var(--border-color);border-radius:7px;background:var(--navy-light);color:var(--text-primary);padding:9px 12px;outline:none;overflow-wrap:anywhere;}
.tasks-page .task-rich-title-editor:focus{border-color:var(--navy-accent);}
.tasks-page .task-rich-title-editor:empty:before{content:attr(data-placeholder);color:var(--text-secondary);pointer-events:none;}
.tasks-page .quick-task-title-row .task-rich-title-editor{border:0;background:transparent;flex:1;}
.tasks-page .project-description-panel>details>summary{margin-top:0;}

body.tasks-page.scb-text-selected #notes-chat-launcher{visibility:hidden!important;}

/* More space for project text and milestone names, retaining mobile margins. */
#project-dialog{width:min(720px,calc(100vw - 32px));max-width:720px;}

.milestone-actions{position:relative;flex:none}.milestone-menu-trigger{border:1px solid var(--border-color);border-radius:7px;background:var(--navy-light);color:var(--navy-accent);font:inherit;font-size:22px;line-height:1;min-width:36px;min-height:34px;cursor:pointer}.milestone-actions-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:70;min-width:210px;max-width:calc(100vw - 48px);padding:6px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-sidebar);box-shadow:0 6px 20px #0003}.milestone-actions-menu[hidden]{display:none}.milestone-actions-menu button{width:100%;padding:10px;text-align:left;border:0;border-radius:5px;background:transparent;color:var(--text-primary);font:inherit;cursor:pointer}.milestone-actions-menu button:hover,.milestone-actions-menu button:focus-visible{background:var(--navy-light)}

/* Unboxed edit and menu icons in milestone headings. */
.tasks-page .project-plan-milestone > summary > button:not(.task-check),.tasks-page .project-plan-milestone .milestone-menu-trigger{background:transparent;border-color:transparent;box-shadow:none;}

.calendar-project-group{margin:8px 0;padding:8px;border:1px solid var(--border-color);border-radius:7px;min-width:0}.calendar-project-group>summary{cursor:pointer;font-size:13px;font-weight:600;overflow-wrap:anywhere}.calendar-project-group .calendar-project-group{margin:8px 0 0;padding:8px 5px}.calendar-project-group .calendar-task{margin-top:8px}.calendar-project-group>summary:focus-visible{outline:2px solid var(--navy-accent);outline-offset:3px}

@media(max-width:760px){.calendar-page .calendar-shell:not(.task-drawer-closed) #task-drawer{max-height:calc(100dvh - 150px);overflow-y:auto;padding-bottom:100px;scroll-padding-bottom:100px}}

#list-dialog form > .task-rich-title-editor{display:block;text-align:left;justify-content:flex-start;}

#calendar-project-options label{display:flex;align-items:center;gap:9px;padding:8px 0;}#calendar-project-options input{flex:0 0 auto;margin:0;}#calendar-project-options span{min-width:0;overflow-wrap:anywhere;}

/* Compact calendar task launcher, opposite the AI launcher. */
.calendar-page .calendar-main{position:relative}
#calendar-add-task{position:absolute;right:18px;bottom:18px;z-index:120;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-workspace);color:var(--navy-accent);font:inherit;font-size:28px;line-height:1;cursor:pointer}
#calendar-add-task:hover{background:var(--navy-subtle)}
#calendar-add-task:focus-visible{outline:2px solid var(--navy-accent);outline-offset:3px}
@media(max-width:760px){#calendar-add-task{position:fixed;right:14px;bottom:calc(78px + env(safe-area-inset-bottom))}}

@media(max-width:760px){.calendar-page #mobile-new-event{display:none}}

.calendar-project-group>summary[draggable="true"]{cursor:grab}.calendar-project-group>summary[draggable="true"]:active{cursor:grabbing}

.tasks-page .task-card-actions-inline .task-card-trash{color:#d98242}.tasks-page .task-card-actions-inline .task-card-trash svg{width:14px;height:14px}.tasks-page .task-card-actions-inline .task-card-trash:hover{color:#c45f23}

@media(max-width:760px){.calendar-page .calendar-list-filter>div{position:static;max-height:320px;box-shadow:none;box-sizing:border-box}}

/* Calendar task creation dialog: consistent inner and field spacing. */
#calendar-task-dialog{box-sizing:border-box;width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;overflow:auto}
#calendar-task-form{display:grid;gap:16px;padding:24px;box-sizing:border-box}
#calendar-task-form h3{margin:0 0 4px}
#calendar-task-form>label{display:grid;gap:6px;margin:0;min-width:0}
#calendar-task-form :is(input,select){box-sizing:border-box;width:100%;min-width:0;min-height:40px;margin:0;padding:9px 11px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);color:var(--text-primary);font:inherit}
#calendar-task-form>footer{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:10px;margin:4px 0 0;padding:0}
#calendar-task-form>footer button{margin:0;min-height:40px;padding:9px 14px}
@media(max-width:760px){#calendar-task-form{padding:20px}#calendar-task-form>footer button{min-height:44px}}

#calendar-add-menu{position:absolute;right:18px;bottom:72px;z-index:121;display:grid;min-width:190px;max-width:calc(100vw - 28px);padding:6px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-workspace);box-shadow:0 8px 24px #0003}
#calendar-add-menu[hidden]{display:none}
#calendar-add-menu button{padding:11px 13px;min-height:42px;border:0;border-radius:6px;background:transparent;color:var(--text-primary);font:inherit;font-size:14px;text-align:left;cursor:pointer}
#calendar-add-menu button:hover,#calendar-add-menu button:focus-visible{background:var(--navy-subtle);outline:2px solid var(--navy-accent);outline-offset:-2px}
@media(max-width:760px){#calendar-add-menu{position:fixed;right:14px;bottom:calc(132px + env(safe-area-inset-bottom))}#calendar-add-menu button{min-height:44px}}

.calendar-editable-group{cursor:grab}.calendar-editable-group:active{cursor:grabbing}.calendar-editable-group .timebox-resize{touch-action:none;height:9px}
.calendar-task-group-dialog [data-group-editor]{padding:0 20px 16px}.calendar-task-group-dialog [data-group-editor][hidden]{display:none}.calendar-task-group-dialog [data-group-editor] form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.calendar-task-group-dialog [data-group-editor] label{display:grid;gap:6px;min-width:0}.calendar-task-group-dialog [data-group-editor] input{box-sizing:border-box;min-width:0;width:100%;padding:9px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-workspace);color:var(--text-primary);font:inherit}.calendar-task-group-dialog [data-group-editor] button{grid-column:1/-1;justify-self:end;padding:9px 14px}.calendar-task-group-dialog [data-group-editor] p{grid-column:1/-1;color:var(--danger);margin:0}@media(max-width:760px){.calendar-task-group-dialog [data-group-editor] form{grid-template-columns:1fr}}

/* Notes folder add menu: close in the corner, two aligned actions. */
.notes-add-dialog{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:12px 8px;padding:20px;max-width:540px;color:var(--text-primary);background:var(--bg-workspace)}
.notes-add-dialog:not([open]){display:none}
.notes-add-dialog h3{grid-column:1/-1;margin:0 0 4px;padding-right:44px;font-size:20px;line-height:1.3}
.notes-add-dialog>button:not(.notes-add-close){box-sizing:border-box;min-width:0;width:100%;min-height:48px;margin:0;padding:8px;font-size:13px;line-height:1.3;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-sidebar);color:var(--text-primary);overflow-wrap:normal}
.notes-add-dialog>button:hover{background:var(--navy-light);color:var(--navy-accent)}
.notes-add-dialog>.notes-add-close{position:absolute;top:8px;right:8px;display:grid;place-items:center;box-sizing:border-box;width:44px;height:44px;min-height:44px;margin:0;padding:0;border:0;border-radius:8px;background:transparent;color:var(--text-muted);font-size:28px;line-height:1;cursor:pointer}
@media(min-width:761px){.notes-add-dialog{gap:16px 12px;padding:24px}.notes-add-dialog>button:not(.notes-add-close){font-size:14px}.notes-add-dialog>.notes-add-close{top:12px;right:12px}}
