:root,[data-theme=light]{color-scheme:light;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--bg-primary: #ffffff;--bg-secondary: #f5f5f7;--bg-hover: #e8e8ec;--text-primary: #1d1d1f;--text-secondary: #6e6e73;--border-color: #d2d2d7;--border-light: #e5e5ea;--accent: #007aff;--accent-hover: #0056cc;--danger: #ff3b30;--danger-hover: #cc2f26;--shadow: 0 1px 3px rgba(0, 0, 0, .08);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .1);--time-grid-bg: #fafafa;--time-grid-line: #e5e5ea;--time-grid-quarter: #f0f0f2;--divider-bg: #d2d2d7;--divider-hover: #007aff;--input-bg: #ffffff;--dropdown-bg: #ffffff;--tag-bg: #e8e8ec}[data-theme=dark]{color-scheme:dark;--bg-primary: #1c1c1e;--bg-secondary: #2c2c2e;--bg-hover: #3a3a3c;--text-primary: #f5f5f7;--text-secondary: #98989d;--border-color: #48484a;--border-light: #38383a;--accent: #0a84ff;--accent-hover: #409cff;--danger: #ff453a;--danger-hover: #ff6961;--shadow: 0 1px 3px rgba(0, 0, 0, .3);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .4);--time-grid-bg: #1c1c1e;--time-grid-line: #38383a;--time-grid-quarter: #2c2c2e;--divider-bg: #48484a;--divider-hover: #0a84ff;--input-bg: #2c2c2e;--dropdown-bg: #2c2c2e;--tag-bg: #3a3a3c}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow:hidden}#root{height:100vh;display:flex;flex-direction:column}input,select,textarea,button{font-family:inherit;font-size:inherit;color:inherit}input,select,textarea{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;padding:8px 12px;outline:none;transition:border-color .2s;color:var(--text-primary)}select option{background:var(--input-bg);color:var(--text-primary)}input:focus,select:focus,textarea:focus{border-color:var(--accent)}button{cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-weight:500;transition:background-color .2s,opacity .2s}button:hover{opacity:.9}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.confirm-overlay{position:fixed;inset:0;z-index:400;display:flex;align-items:center;justify-content:center}.confirm-backdrop{position:absolute;inset:0;background:#00000059}[data-theme=dark] .confirm-backdrop{background:#0000008c}.confirm-modal{position:relative;width:380px;max-width:90vw;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 16px 48px #0000002e;z-index:1;animation:confirm-in .12s ease;overflow:hidden}[data-theme=dark] .confirm-modal{box-shadow:0 16px 48px #00000080}@keyframes confirm-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.confirm-body{padding:24px 24px 16px}.confirm-titel{font-size:16px;font-weight:700;margin:0 0 8px;color:var(--text-primary)}.confirm-bericht{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.5}.confirm-actions{display:flex;justify-content:flex-end;gap:8px;padding:14px 24px;border-top:1px solid var(--border-color)}.confirm-annuleer{padding:8px 16px;font-size:13px;font-weight:500;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:background .15s}.confirm-annuleer:hover{background:var(--bg-hover)}.confirm-bevestig{padding:8px 16px;font-size:13px;font-weight:600;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:opacity .15s}.confirm-bevestig:hover{opacity:.85}.confirm-bevestig.gevaarlijk{background:#e74c3c}.confirm-bevestig.gevaarlijk:hover{background:#c0392b}.textinput-modal-input{width:100%;margin-top:8px;padding:8px 12px;font-size:14px;border:1px solid var(--border-color);border-radius:6px;background:var(--input-bg);color:var(--text-primary);outline:none;transition:border-color .15s}.textinput-modal-input:focus{border-color:var(--accent)}.confirm-bevestig:disabled{opacity:.4;cursor:not-allowed}.time-schedule{flex:1;overflow-y:auto;overflow-x:hidden;position:relative;background:var(--time-grid-bg);cursor:crosshair;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.time-schedule::-webkit-scrollbar{width:8px}.time-schedule::-webkit-scrollbar-track{background:transparent}.time-schedule::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.time-schedule::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.time-schedule.is-dragging{cursor:ns-resize;-webkit-user-select:none;user-select:none}.time-grid{position:relative;min-width:100%}.time-row{display:flex;border-bottom:1px solid var(--time-grid-line);position:relative}.time-label{width:50px;min-width:50px;padding:2px 6px 0;font-size:10px;color:var(--text-secondary);font-weight:500;text-align:right;-webkit-user-select:none;user-select:none}.time-slots{flex:1;display:flex;flex-direction:column}.time-slot-quarter{flex:1;border-bottom:1px dashed var(--time-grid-quarter)}.time-slot-quarter:last-child{border-bottom:none}.time-block{position:absolute;left:56px;right:6px;border-radius:4px;padding:2px 6px;cursor:pointer;overflow:hidden;z-index:2;transition:box-shadow .15s;display:flex;flex-direction:column;gap:0}.time-block:hover{box-shadow:var(--shadow-lg)}.time-block.selected{box-shadow:0 0 0 2px var(--accent)}.time-block.resizing{z-index:5;box-shadow:0 0 0 2px var(--accent);opacity:.85}.time-schedule.is-moving{cursor:grabbing;-webkit-user-select:none;user-select:none}.time-block.moving{z-index:10;opacity:.9;box-shadow:0 4px 16px #0003;cursor:grabbing}.time-block-ghost{position:absolute;left:56px;right:6px;border-radius:4px;border:1px dashed var(--border-color);background:var(--bg-hover);opacity:.4;pointer-events:none;z-index:1}.time-block-project{font-size:11px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.time-block-title{font-size:10px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-secondary)}.time-block-contacts{font-size:9px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-secondary);opacity:.7}.time-block-notitie-icon{margin-left:4px;font-size:10px;opacity:.6}.time-block-concept{background-color:var(--accent)!important;opacity:.2;border-left:3px dashed var(--accent)!important;pointer-events:none}.time-block-concept .time-block-project{color:var(--text-primary);opacity:1}.time-block-drop-preview{position:absolute;left:48px;right:4px;border-radius:4px;padding:4px 8px;border-left:3px solid;pointer-events:none;z-index:10;display:flex;flex-direction:column;gap:1px;box-shadow:0 2px 8px #00000026;animation:drop-preview-pulse 1s ease-in-out infinite alternate}.time-block-drop-preview .time-block-project{font-weight:600;font-size:11px}.time-block-drop-preview .time-block-title{font-size:11px;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.time-block-droptijd{font-size:10px;opacity:.6}@keyframes drop-preview-pulse{0%{opacity:.7}to{opacity:.95}}.time-schedule.drop-actief{outline:2px dashed var(--accent);outline-offset:-2px}.time-block-preview{position:absolute;left:56px;right:6px;background:var(--accent);opacity:.25;border-radius:4px;border-left:3px solid var(--accent);z-index:1;display:flex;align-items:center;padding:0 6px;font-size:11px;font-weight:500;color:var(--text-primary);pointer-events:none}.resize-handle{position:absolute;left:0;right:0;height:6px;cursor:ns-resize;z-index:3}.resize-handle-top{top:0;border-radius:4px 4px 0 0}.resize-handle-bottom{bottom:0;border-radius:0 0 4px 4px}.time-block:hover .resize-handle-top,.time-block:hover .resize-handle-bottom{background:var(--accent);opacity:.3}.context-menu{background:var(--dropdown-bg);border:1px solid var(--border-color);border-radius:6px;box-shadow:var(--shadow-lg);z-index:100;overflow:hidden;min-width:140px}.context-menu-item{display:block;width:100%;padding:8px 14px;border:none;background:transparent;cursor:pointer;text-align:left;font-size:13px;border-radius:0;color:var(--text-primary)}.context-menu-item:hover{background:var(--bg-hover)}.context-menu-danger{color:var(--danger)}.context-menu-danger:hover{background:#ff3b301a}.context-menu-divider{height:1px;background:var(--border-color);margin:2px 0}.current-time-indicator{position:absolute;left:46px;right:0;z-index:6;pointer-events:none;display:flex;align-items:center}.current-time-dot{width:8px;height:8px;border-radius:50%;background:#ff3b30;flex-shrink:0;margin-left:-4px}.current-time-line{flex:1;height:1.5px;background:#ff3b30}.current-time-label{position:absolute;right:8px;top:-8px;font-size:9px;font-weight:600;color:#ff3b30;background:var(--bg-primary);padding:0 3px;border-radius:2px}.time-block-move-label{position:absolute;left:56px;z-index:11;font-size:10px;font-weight:600;color:var(--accent);background:var(--bg-primary);border:1px solid var(--accent);border-radius:3px;padding:1px 6px;pointer-events:none;white-space:nowrap}@media(max-width:768px){.time-label{width:36px;min-width:36px;font-size:9px;padding:2px 4px 0}.time-block,.time-block-preview,.time-block-ghost{left:40px}.time-block-project{font-size:10px}.time-block-title{font-size:9px}.time-block-contacts{font-size:8px}}.time-empty-hint{position:absolute;left:50px;right:8px;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border:2px dashed var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:13px;pointer-events:none;opacity:.6;animation:hint-pulse 3s ease-in-out infinite}.time-empty-hint-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:2px solid var(--text-secondary);border-radius:50%;font-size:14px;font-weight:700;flex-shrink:0}.time-empty-hint-tekst{font-weight:500}@keyframes hint-pulse{0%,to{opacity:.4}50%{opacity:.7}}.sd-wrap{position:relative;flex:1;min-width:0}.sd-trigger{display:flex;align-items:center;gap:6px;width:100%;padding:7px 10px;height:35px;box-sizing:border-box;background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;font-size:13px;text-align:left;cursor:pointer;transition:border-color .2s;color:var(--text-primary)}.sd-trigger:hover,.sd-trigger.open{border-color:var(--accent)}.sd-trigger.placeholder .sd-trigger-text{color:var(--text-secondary)}.sd-trigger-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-chevron{font-size:8px;color:var(--text-secondary);flex-shrink:0}.sd-kleur-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.sd-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--dropdown-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg);z-index:50;overflow:hidden}.sd-zoek{width:100%;padding:8px 10px;border:none;border-bottom:1px solid var(--border-light);border-radius:0;font-size:13px;background:var(--input-bg);outline:none}.sd-lijst{max-height:300px;overflow-y:auto}.sd-optie{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;font-size:13px;border:none;background:transparent;cursor:pointer;text-align:left;border-radius:0;color:var(--text-primary)}.sd-optie:hover{background:var(--bg-hover)}.sd-optie.actief{background:var(--accent);color:#fff}.sd-optie.actief:hover{opacity:.9;background:var(--accent)}.sd-checkbox{width:16px;height:16px;border:1px solid var(--border-color);border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0}.sd-checkbox.checked{background:var(--accent);border-color:var(--accent);color:#fff}.sd-optie.actief .sd-checkbox{border-color:#fff}.sd-optie-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-pin{flex-shrink:0;font-size:10px;opacity:0;transition:opacity .12s;padding:2px;border-radius:3px;line-height:1;filter:grayscale(100%)}.sd-optie:hover .sd-pin{opacity:.5}.sd-pin.gepind{opacity:.7;filter:none}.sd-optie:hover .sd-pin.gepind{opacity:1}.sd-pin:hover{opacity:1!important;background:var(--bg-secondary)}.sd-dropdown-flip{top:auto;bottom:calc(100% + 4px)}.sd-geen{padding:12px;text-align:center;color:var(--text-secondary);font-size:13px}.sd-nieuw-item{color:var(--accent);font-weight:500;border-top:1px solid var(--border-light)}.sd-nieuw-item:hover{background:#4a90e214}.tiptap-wrap{display:flex;flex-direction:column;flex:1;min-height:0;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;background:var(--input-bg);position:relative}.tiptap-geen-rand{border:none;border-radius:0;background:transparent}.tiptap-content{flex:1;overflow-y:auto;min-height:0}.tiptap-content .tiptap{padding:16px 20px;outline:none;min-height:100%;font-size:15px;line-height:1.7;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.tiptap-content .tiptap p{margin:0 0 2px;min-height:1.7em}.tiptap-content .tiptap h1{font-size:1.875em;font-weight:700;margin:1.2em 0 .3em;line-height:1.3;letter-spacing:-.01em;color:var(--text-primary)}.tiptap-content .tiptap h2{font-size:1.5em;font-weight:600;margin:1em 0 .25em;line-height:1.35;letter-spacing:-.005em;color:var(--text-primary)}.tiptap-content .tiptap h3{font-size:1.25em;font-weight:600;margin:.8em 0 .2em;line-height:1.4;color:var(--text-primary)}.tiptap-content .tiptap>h1:first-child,.tiptap-content .tiptap>h2:first-child,.tiptap-content .tiptap>h3:first-child{margin-top:0}.tiptap-content .tiptap h1,.tiptap-content .tiptap h2,.tiptap-content .tiptap h3{position:relative;padding-left:24px}.tiptap-content .tiptap h1:before,.tiptap-content .tiptap h2:before,.tiptap-content .tiptap h3:before{content:"▶";position:absolute;left:0;top:50%;transform:translateY(-50%) rotate(90deg);font-size:10px;color:var(--text-secondary);opacity:0;transition:opacity .15s,transform .15s;cursor:pointer;width:20px;text-align:center;line-height:1;-webkit-user-select:none;user-select:none}.tiptap-content .tiptap h1:hover:before,.tiptap-content .tiptap h2:hover:before,.tiptap-content .tiptap h3:hover:before{opacity:.6}.tiptap-content .tiptap h1[data-collapsed=true]:before,.tiptap-content .tiptap h2[data-collapsed=true]:before,.tiptap-content .tiptap h3[data-collapsed=true]:before{transform:translateY(-50%) rotate(0);opacity:.6}.tiptap-content .tiptap h1[data-collapsed=true]:hover:before,.tiptap-content .tiptap h2[data-collapsed=true]:hover:before,.tiptap-content .tiptap h3[data-collapsed=true]:hover:before{opacity:1}.tiptap-content .tiptap>.collapsed-hidden{display:none!important}.tiptap-content .tiptap ul,.tiptap-content .tiptap ol{padding-left:1.5em;margin:2px 0}.tiptap-content .tiptap li{margin:1px 0}.tiptap-content .tiptap li p{margin:0}.tiptap-content .tiptap ul[data-type=taskList]{list-style:none;padding-left:0;margin:4px 0}.tiptap-content .tiptap ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:8px;margin:2px 0}.tiptap-content .tiptap ul[data-type=taskList] li>label{flex-shrink:0;margin-top:3px}.tiptap-content .tiptap ul[data-type=taskList] li>label input[type=checkbox]{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;max-width:18px;min-height:18px;max-height:18px;box-sizing:border-box;border:2px solid var(--border-color);border-radius:50%;cursor:pointer;position:relative;padding:0;margin:0;background:transparent;transition:all .15s ease}.tiptap-content .tiptap ul[data-type=taskList] li>label input[type=checkbox]:hover{border-color:var(--accent);background:#4a90e20f}.tiptap-content .tiptap ul[data-type=taskList] li>label input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}.tiptap-content .tiptap ul[data-type=taskList] li>label input[type=checkbox]:checked:after{content:"✓";color:#fff;font-size:11px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-weight:700}.tiptap-content .tiptap ul[data-type=taskList] li[data-checked=true]>div>p{text-decoration:line-through;color:var(--text-secondary)}.tiptap-content .tiptap ul[data-type=taskList] li>div{flex:1;min-width:0}ul[data-type=taskList] input[type=checkbox]{appearance:none!important;-webkit-appearance:none!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;border:2px solid var(--border-color)!important;border-radius:50%!important;cursor:pointer;position:relative;padding:0!important;margin:0!important;background:transparent;box-sizing:border-box}ul[data-type=taskList] input[type=checkbox]:checked{background:var(--accent)!important;border-color:var(--accent)!important}ul[data-type=taskList] input[type=checkbox]:checked:after{content:"✓";color:#fff;font-size:11px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-weight:700}.tiptap-content .tiptap blockquote{border-left:3px solid var(--text-primary);padding-left:14px;margin:8px 0;color:var(--text-primary)}.tiptap-content .tiptap code{background:var(--tag-bg, rgba(135, 131, 120, .15));border-radius:3px;padding:.15em .4em;font-size:.875em;font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#eb5757}[data-theme=dark] .tiptap-content .tiptap code{color:#ff7b7b}.tiptap-content .tiptap pre{background:var(--bg-secondary, #f7f6f3);border-radius:6px;padding:16px 20px;margin:8px 0;overflow-x:auto;font-size:.875em;line-height:1.6}.tiptap-content .tiptap pre code{background:none;padding:0;color:var(--text-primary);font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace}.tiptap-content .tiptap hr{border:none;border-top:1px solid var(--border-color);margin:1.5em 0}.tiptap-content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--text-secondary);opacity:.5;pointer-events:none;height:0;font-style:normal}.notion-bubble-menu{display:flex;align-items:center;gap:1px;background:var(--dropdown-bg, #fff);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 16px #0000001f,0 0 0 1px #0000000a;padding:3px;z-index:100}[data-theme=dark] .notion-bubble-menu{box-shadow:0 4px 16px #0006,0 0 0 1px #ffffff0f}.notion-bubble-menu button{background:transparent;border:none;padding:5px 8px;border-radius:5px;font-size:13px;color:var(--text-primary);cursor:pointer;min-width:28px;height:28px;display:flex;align-items:center;justify-content:center;transition:background .1s ease}.notion-bubble-menu button:hover{background:var(--bg-hover)}.notion-bubble-menu button.is-active{background:var(--accent);color:#fff}.bubble-divider{width:1px;height:18px;background:var(--border-color);margin:0 3px;flex-shrink:0}.slash-menu{position:absolute;z-index:110;background:var(--dropdown-bg, #fff);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 4px 24px #0000001f,0 0 0 1px #0000000a;width:260px;max-height:340px;overflow-y:auto;padding:6px}[data-theme=dark] .slash-menu{box-shadow:0 4px 24px #00000080,0 0 0 1px #ffffff0f}.slash-menu-header{padding:6px 8px 4px;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.slash-menu-leeg{padding:12px 8px;color:var(--text-secondary);font-size:13px;text-align:center}.slash-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:6px 8px;border:none;background:transparent;border-radius:6px;cursor:pointer;text-align:left;color:var(--text-primary);transition:background .1s ease}.slash-menu-item:hover{background:var(--bg-hover)}.slash-menu-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border-light, var(--border-color));border-radius:6px;font-size:14px;font-weight:600;flex-shrink:0;color:var(--text-primary)}.slash-menu-tekst{display:flex;flex-direction:column;gap:0px;min-width:0}.slash-menu-label{font-size:13px;font-weight:500;line-height:1.3}.slash-menu-beschrijving{font-size:11px;color:var(--text-secondary);line-height:1.3}.tiptap-content::-webkit-scrollbar{width:8px}.tiptap-content::-webkit-scrollbar-track{background:transparent}.tiptap-content::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb, rgba(0, 0, 0, .15));border-radius:4px;border:2px solid transparent;background-clip:padding-box}.tiptap-content::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover, rgba(0, 0, 0, .25));background-clip:padding-box}.slash-menu::-webkit-scrollbar{width:6px}.slash-menu::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb, rgba(0, 0, 0, .15));border-radius:3px}.tiptap-content .tiptap .tiptap-image,.tiptap-content .tiptap img{max-width:100%;height:auto;border-radius:6px;margin:8px 0;display:block;cursor:zoom-in;user-select:auto;-webkit-user-select:auto;transition:opacity .15s}.tiptap-content .tiptap img:hover{opacity:.9}.tiptap-content .tiptap img.ProseMirror-selectednode{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.tiptap-content .tiptap .ProseMirror-gapcursor{display:none;pointer-events:none;position:absolute}.tiptap-content .tiptap ::selection{background:#4a90e233}.tiptap-content .tiptap a,.tiptap-content .tiptap .tiptap-link{color:var(--accent);text-decoration:underline;text-underline-offset:2px;cursor:pointer;transition:opacity .15s}.tiptap-content .tiptap a:hover,.tiptap-content .tiptap .tiptap-link:hover{opacity:.75}.tiptap-content .tiptap .tiptap-file-link{display:inline-flex;align-items:center;gap:4px;background:var(--bg-secondary);padding:2px 8px;border-radius:4px;font-size:13px;color:var(--text-primary);text-decoration:none;border:1px solid var(--border-color);transition:background .15s}.tiptap-content .tiptap .tiptap-file-link:hover{background:var(--bg-hover);opacity:1}.tiptap-lightbox-overlay{position:fixed;inset:0;z-index:9999;background:#000000d9;display:flex;align-items:center;justify-content:center;cursor:zoom-out;animation:tiptap-lightbox-fadein .15s ease;padding:32px}@keyframes tiptap-lightbox-fadein{0%{opacity:0}to{opacity:1}}.tiptap-lightbox-img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:8px;box-shadow:0 8px 32px #0006;cursor:default;animation:tiptap-lightbox-zoomin .2s ease}@keyframes tiptap-lightbox-zoomin{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}.tiptap-lightbox-sluit{position:absolute;top:16px;right:20px;background:none;border:none;color:#fffc;font-size:32px;cursor:pointer;line-height:1;padding:4px 8px;border-radius:4px;transition:background .15s,color .15s;z-index:10000}.tiptap-lightbox-sluit:hover{background:#ffffff26;color:#fff}.tiptap-datum-tag{background:var(--accent-dim, rgba(59, 130, 246, .15));color:var(--accent, #3b82f6);border-radius:4px;padding:1px 5px;font-size:.85em;font-weight:500;letter-spacing:-.01em;white-space:nowrap;margin-left:2px}.tiptap-link-input-overlay{position:fixed;inset:0;z-index:500;display:flex;align-items:center;justify-content:center;background:#0003}.tiptap-link-input-popup{display:flex;gap:6px;padding:12px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg);min-width:360px;animation:confirm-in .12s ease}.tiptap-link-input{flex:1;padding:7px 10px;border:1px solid var(--border-color);border-radius:6px;background:var(--input-bg);color:var(--text-primary);font-size:14px;outline:none}.tiptap-link-input:focus{border-color:var(--accent)}.tiptap-link-input-btn{padding:7px 16px;font-size:13px;font-weight:600;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer}.tiptap-link-input-btn:hover{opacity:.85}.detail-panel{display:flex;flex-direction:column;height:100%;padding:16px 20px;overflow-y:auto;background:var(--bg-primary)}.detail-panel-daynotes{padding:0;position:relative}.detail-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-shrink:0}.detail-title-input{flex:1;font-size:18px;font-weight:600;border:none;background:transparent;padding:4px 0;outline:none;color:var(--text-primary)}.detail-title-input::placeholder{color:var(--text-secondary);font-weight:400}.btn-icon{background:transparent;border:none;padding:4px 6px;font-size:16px;cursor:pointer;border-radius:4px;line-height:1;color:var(--text-secondary);filter:grayscale(100%)}.btn-icon:hover{background:#ff3b301a;color:var(--danger);filter:none}.btn-terug-icon{font-size:22px;font-weight:300;color:var(--text-secondary);filter:none;padding:2px 4px;line-height:1}.btn-terug-icon:hover{background:var(--bg-hover);color:var(--accent)}.detail-form{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0}.form-row-all{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:13px}.form-groep{display:flex;align-items:center;gap:6px}.form-groep-divider{width:1px;height:24px;background:var(--border-color);flex-shrink:0;margin:0 4px}.form-groep-wie{flex:1;min-width:0}.datum-input{width:auto;padding:7px 10px;font-size:13px;max-width:140px;height:35px;box-sizing:border-box;background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);transition:border-color .2s}.datum-input:hover,.datum-input:focus{border-color:var(--accent);outline:none}.datetime-separator{color:var(--text-secondary);font-size:13px}.tijd-select{display:inline-flex;align-items:center;gap:1px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;padding:0 4px;height:35px;box-sizing:border-box;transition:border-color .2s}.tijd-select:hover,.tijd-select:focus-within{border-color:var(--accent)}.tijd-select-uur,.tijd-select-min{width:auto;padding:7px 4px;font-size:13px;min-width:36px;text-align:center;background:transparent;border:none;color:var(--text-primary);outline:none}.tijd-select-sep{font-size:13px;color:var(--text-secondary);font-weight:600}.detail-tags-row{padding:2px 0}.tags-container{display:flex;align-items:center;flex-wrap:wrap;gap:4px;min-height:28px}.tag-chip{display:inline-flex;align-items:center;gap:3px;background:var(--bg-secondary);border:1px solid var(--border-light, var(--border-color));border-radius:4px;padding:2px 8px;font-size:12px;font-weight:500;color:var(--text-primary);line-height:1.4;white-space:nowrap}.tag-chip-remove{background:transparent;border:none;color:var(--text-secondary);font-size:14px;line-height:1;cursor:pointer;padding:0 0 0 2px;opacity:.5;transition:opacity .1s}.tag-chip-remove:hover{opacity:1;color:var(--danger)}.tag-input-wrap{position:relative;flex:1;min-width:80px}.tag-input{width:100%;border:none;background:transparent;font-size:12px;color:var(--text-primary);outline:none;padding:4px 2px}.tag-input::placeholder{color:var(--text-secondary);opacity:.5}.tag-input:focus::placeholder{opacity:.7}.tag-suggesties{position:absolute;top:100%;left:0;z-index:50;background:var(--dropdown-bg, #fff);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 12px #0000001a;min-width:140px;max-height:200px;overflow-y:auto;padding:4px}.tag-suggestie-item{display:block;width:100%;text-align:left;border:none;background:transparent;padding:5px 8px;font-size:12px;color:var(--text-primary);cursor:pointer;border-radius:4px;transition:background .1s}.tag-suggestie-item:hover{background:var(--bg-hover)}.detail-gekoppelde-actie{display:flex;align-items:center;gap:6px;padding:6px 8px;margin:4px 0;background:var(--bg-secondary);border-radius:6px;font-size:13px}.detail-gekoppelde-label{color:var(--text-secondary);white-space:nowrap;font-size:12px}.detail-gekoppelde-link{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px;padding:2px 4px;border-radius:4px;text-align:left;display:flex;align-items:center;gap:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-gekoppelde-link:hover{background:var(--bg-hover);text-decoration:underline}.detail-gekoppelde-status{font-size:12px;flex-shrink:0}.detail-gekoppelde-status.open{color:var(--text-secondary)}.detail-gekoppelde-status.afgerond{color:var(--success, #2ecc71)}.detail-gekoppelde-deadline{font-size:11px;color:var(--text-secondary);margin-left:auto;white-space:nowrap;flex-shrink:0}.detail-gekoppelde-deadline.verlopen{color:#e74c3c;font-weight:600}.detail-gekoppelde-deadline.vandaag{background:var(--accent);color:#fff;font-size:10px;font-weight:600;padding:1px 6px;border-radius:8px}.detail-gekoppelde-deadline.morgen{color:#f0ad4e;font-weight:600}.detail-separator{border:none;border-top:1px solid var(--border-light);margin:4px 0}.detail-editor-fullsize{flex:1;min-height:200px;display:flex;flex-direction:column}.detail-editor-bare{flex:1;display:flex;flex-direction:column;height:100%}.error-message{color:var(--danger);font-size:13px;font-weight:500;padding:8px 12px;background:#ff3b301a;border-radius:6px;margin-top:8px}.detail-actions{display:flex;gap:8px;margin-top:8px;flex-shrink:0}.btn-primary{background:var(--accent);color:#fff;padding:8px 20px;font-weight:600}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);padding:8px 20px;font-weight:500}.btn-secondary:hover{background:var(--bg-hover)}.btn-danger{background:var(--danger);color:#fff;padding:8px 20px;font-weight:600}.btn-danger:hover{background:var(--danger-hover)}.opslaan-indicator{font-size:11px;font-weight:500;color:var(--text-secondary);white-space:nowrap;animation:opslaan-fade-in .15s ease}.opslaan-indicator.opgeslagen{color:#27ae60}.opslaan-indicator.opgeslagen:before{content:"✓"}.opslaan-indicator-dag{position:absolute;top:8px;right:12px;z-index:5;pointer-events:none}@keyframes opslaan-fade-in{0%{opacity:0}to{opacity:1}}@media(max-width:1024px){.form-row-all{gap:4px}.detail-panel{padding:12px 14px}}@media(max-width:768px){.detail-panel{padding:10px 12px}.detail-title-input{font-size:16px}.datum-input{max-width:130px;font-size:12px;padding:6px 8px}.tijd-select-uur,.tijd-select-min{font-size:12px;padding:6px 3px;min-width:30px}}.dagstart-dashboard{height:100%;overflow-y:auto;padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-5)}.dashboard-laden{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:14px}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);flex:1;min-height:0}.dashboard-kolom{display:flex;flex-direction:column;gap:var(--space-4);min-height:0}.dashboard-sectie{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.sectie-kop{display:flex;align-items:center;justify-content:space-between}.sectie-kop h3{margin:0;font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.sectie-badge{font-size:12px;font-weight:600;color:var(--text-secondary);background:var(--bg-secondary);padding:2px 8px;border-radius:10px;min-width:20px;text-align:center}.sectie-leeg{font-size:13px;color:var(--text-secondary);margin:0;padding:var(--space-2) 0}.dashboard-todos{display:flex;flex-direction:column;gap:0}.dtodo-groep{margin-bottom:2px}.dtodo-groep-kop{display:flex;align-items:center;gap:6px;padding:6px 10px 4px;border-left:3px solid #888;-webkit-user-select:none;user-select:none}.dtodo-groep-naam{font-size:12px;font-weight:600;color:var(--text-primary)}.dtodo-groep-aantal{font-size:11px;color:var(--text-secondary)}.dashboard-todo-item{display:flex;align-items:center;gap:8px;padding:4px 10px 4px 16px;cursor:pointer;transition:background .15s ease}.dashboard-todo-item:hover{background:var(--bg-hover)}.dashboard-todo-item[draggable=true]{cursor:grab}.dashboard-todo-item[draggable=true]:active{cursor:grabbing}.dashboard-todo-item.prioriteit-hoog{border-left:3px solid #e74c3c;padding-left:13px}.dashboard-todo-item.prioriteit-laag{border-left:3px solid #3498db;padding-left:13px}.dashboard-todo-item.verlopen{background:#e74c3c0f}.dashboard-todo-item.verlopen .dtodo-tekst{color:var(--danger, #e74c3c)}.dashboard-todo-item.wordt-afgevinkt{animation:dtodoAfvink .4s ease forwards}@keyframes dtodoAfvink{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(20px);max-height:0;padding:0;margin:0}}.dtodo-checkbox{appearance:none;-webkit-appearance:none;width:16px;height:16px;min-width:16px;min-height:16px;box-sizing:border-box;border:2px solid var(--border-color);border-radius:50%;cursor:pointer;position:relative;flex-shrink:0;padding:0;margin:0;background:transparent;transition:all .15s}.dtodo-checkbox:hover{border-color:var(--accent)}.dtodo-checkbox:checked{background:var(--accent);border-color:var(--accent)}.dtodo-checkbox:checked:after{content:"✓";color:#fff;font-size:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dtodo-tekst{font-size:13px;color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.dtodo-prio-badge{display:flex;align-items:center;flex-shrink:0}.dtodo-prio-badge.hoog{color:#e74c3c}.dtodo-hover-acties{display:flex;align-items:center;gap:2px;flex-shrink:0}.dtodo-actie{display:flex;align-items:center;background:none;border:none;padding:2px;cursor:pointer;border-radius:4px;color:var(--text-secondary);opacity:0;transition:opacity .15s ease,background .15s ease,color .15s ease}.dashboard-todo-item:hover .dtodo-actie{opacity:.5}.dtodo-actie:hover{opacity:1!important;background:var(--bg-secondary);color:var(--accent)}.dashboard-snelacties{padding:0;border:none;background:none}.snelactie-knoppen{display:flex;gap:var(--space-2);flex-wrap:wrap}.snelactie-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:13px;cursor:pointer;transition:background .15s ease,border-color .15s ease;flex:1;justify-content:center;min-width:0}.snelactie-btn:hover{background:var(--bg-secondary);border-color:var(--accent);color:var(--accent)}.snelactie-btn svg{flex-shrink:0}.dashboard-kladblok{flex:1;min-height:200px;display:flex;flex-direction:column}.kladblok-editor{flex:1;min-height:150px;overflow-y:auto}.kladblok-editor .tiptap-editor{min-height:150px;height:100%}.kladblok-editor .ProseMirror{min-height:130px;font-size:13px}@media(max-width:768px){.dagstart-dashboard{padding:var(--space-4) var(--space-3);gap:var(--space-4)}.dashboard-grid{grid-template-columns:1fr}.snelactie-knoppen{flex-wrap:wrap}}.date-nav{display:flex;align-items:center;gap:8px}.date-nav-arrows{display:flex;gap:2px}.date-nav-btn{background:transparent;border:none;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:14px;padding:0;color:var(--text-secondary);cursor:pointer;border-radius:4px;transition:color .12s,background .12s}.date-nav-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.date-nav-center{display:flex;align-items:center;gap:8px;padding:0 4px}.date-nav-week{font-size:11px;font-weight:600;color:var(--accent);background:#007aff14;padding:2px 6px;border-radius:4px;white-space:nowrap;letter-spacing:.02em}[data-theme=dark] .date-nav-week{background:#0a84ff1f}.date-nav-label{font-size:15px;font-weight:600;white-space:nowrap}.date-nav-uren{font-size:13px;color:var(--text-secondary);font-weight:400;white-space:nowrap}.date-nav-uren.uren-goed{color:#27ae60;font-weight:500}.date-nav-uren.uren-over{color:var(--accent);font-weight:500}.date-nav-today{background:var(--accent);color:#fff;font-size:11px;padding:3px 10px}.date-nav-today:hover{background:var(--accent-hover)}.date-nav-picker-wrap{position:relative}.date-nav-calendar{color:var(--text-primary)}.date-nav-calendar svg{display:block}.date-nav-hidden-input{position:absolute;top:0;left:0;width:0;height:0;opacity:0;overflow:hidden;pointer-events:none}@media(max-width:768px){.date-nav-label{font-size:13px}.date-nav-uren{font-size:11px}.date-nav-btn{width:28px;height:28px;font-size:12px}}.search-bar-wrap{position:absolute;left:50%;transform:translate(-50%);width:280px;max-width:560px;z-index:10;transition:width .25s ease}.search-bar-wrap--focus{width:560px}.search-bar-input-wrap{display:flex;align-items:center;gap:8px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:0 12px}.search-bar-icon{flex-shrink:0;opacity:.5}.search-bar-input{flex:1;border:none;background:transparent;padding:8px 0;font-size:13px;outline:none;color:var(--text-primary)}.search-bar-input::placeholder{color:var(--text-secondary)}.search-bar-clear{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background:var(--bg-hover);border-radius:50%;cursor:pointer;color:var(--text-secondary);transition:background .15s,color .15s}.search-bar-clear:hover{background:var(--border-color);color:var(--text-primary)}.search-syntax-btn{width:20px;height:20px;min-width:20px;min-height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:1.5px solid var(--border-color);border-radius:50%;font-size:11px;font-weight:700;color:var(--text-secondary);cursor:pointer;transition:all .12s;flex-shrink:0;padding:0;line-height:1;box-sizing:content-box}.search-syntax-btn:hover{color:var(--accent);border-color:var(--accent)}.search-syntax-panel{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--dropdown-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg);z-index:201;padding:8px 0}.search-syntax-header{font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;padding:4px 12px 6px}.search-syntax-item{display:flex;align-items:center;gap:10px;width:100%;padding:6px 12px;background:transparent;border:none;cursor:pointer;font-size:13px;color:var(--text-primary);text-align:left;transition:background .1s}.search-syntax-item:hover{background:var(--bg-hover)}.search-syntax-filter{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;padding:2px 6px;font-size:12px;font-family:SF Mono,Consolas,Courier New,monospace;font-weight:500;color:var(--accent);white-space:nowrap;min-width:110px}.search-syntax-uitleg{color:var(--text-secondary);font-size:12px}.search-syntax-tip{font-size:11px;color:var(--text-secondary);padding:6px 12px 4px;border-top:1px solid var(--border-light, var(--border-color));margin-top:4px;font-style:italic}.search-results{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--dropdown-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg);z-index:200;max-height:60vh;overflow-y:auto}.search-loading,.search-geen{padding:16px;text-align:center;color:var(--text-secondary);font-size:13px}.search-results-grid{display:flex;flex-direction:column}.search-datum-header{padding:6px 12px 4px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);background:var(--bg-secondary);border-bottom:1px solid var(--border-light);position:sticky;top:0;z-index:1}.search-result-tile{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:none;border-bottom:1px solid var(--border-light);background:transparent;cursor:pointer;text-align:left;border-radius:0;color:var(--text-primary)}.search-result-tile:hover,.search-result-actief{background:var(--bg-hover)}.search-result-tile:last-child{border-bottom:none}.search-tile-header{display:flex;align-items:center;gap:6px}.search-tile-kleur{width:8px;height:8px;border-radius:50%;flex-shrink:0}.search-tile-project{font-size:12px;font-weight:600;flex:1}.search-tile-notitie-indicator{font-size:12px;color:var(--text-secondary);opacity:.5;flex-shrink:0}.search-tile-datum{font-size:11px;color:var(--text-secondary)}.search-tile-verwijder{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;background:transparent;border-radius:50%;cursor:pointer;color:var(--text-secondary);opacity:0;transition:opacity .15s,background .15s,color .15s}.search-result-tile:hover .search-tile-verwijder{opacity:.6}.search-tile-verwijder:hover{opacity:1!important;background:var(--bg-hover);color:var(--danger, #dc3545)}.search-tile-body{display:flex;align-items:center;gap:8px;font-size:12px}.search-tile-tijd{color:var(--text-secondary);font-size:11px}.search-tile-omschrijving{color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-tile-contacts{font-size:11px;color:var(--text-secondary)}.search-meer{display:block;width:100%;padding:10px;text-align:center;background:var(--bg-secondary);border:none;border-top:1px solid var(--border-light);border-radius:0 0 8px 8px;color:var(--accent);font-size:12px;font-weight:600;cursor:pointer}.search-meer:hover{background:var(--bg-hover)}.search-meer:disabled{opacity:.5;cursor:default}.search-recente-header{padding:8px 12px 4px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.search-recente-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:13px;border:none;background:transparent;cursor:pointer;text-align:left;color:var(--text-primary);transition:background .1s}.search-recente-item:hover{background:var(--bg-hover)}.search-recente-item svg{flex-shrink:0;color:var(--text-secondary)}@media(max-width:768px){.search-bar-wrap{position:relative;left:auto;transform:none;flex:1;max-width:none;min-width:0;order:3;width:100%;transition:none}.search-bar-wrap--focus{width:100%}.search-results{width:100vw;left:50%;right:auto;transform:translate(-50%);border-radius:0 0 8px 8px}}.search-kb-header{display:flex;align-items:center;gap:6px;margin-top:4px;border-top:1px solid var(--border-color);padding-top:8px}.search-kb-tile{cursor:pointer}.search-kb-kleur{background-color:var(--accent)!important;opacity:.7}.search-kb-tags{display:flex;gap:4px;padding:2px 12px 4px 24px;flex-wrap:wrap}.search-kb-tag{font-size:10px;padding:1px 6px;border-radius:6px;background:var(--bg-secondary);color:var(--text-secondary)}.project-panel{display:flex;flex-direction:column;height:100%;background:var(--bg-primary);overflow:hidden}.project-panel-header{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.project-panel-kleur{width:10px;height:10px;border-radius:50%;flex-shrink:0}.project-panel-titel{font-size:14px;font-weight:600;margin:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-panel-lijst{flex:1;overflow-y:auto;padding:4px 0;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.project-panel-lijst::-webkit-scrollbar{width:6px}.project-panel-lijst::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb, rgba(0, 0, 0, .15));border-radius:3px}.project-panel-sectie{border-bottom:1px solid var(--border-light)}.project-panel-sectie:last-child{border-bottom:none}.project-panel-sectie-header{display:flex;align-items:center;gap:6px;width:100%;padding:10px 12px;background:transparent;border:none;cursor:pointer;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;text-align:left;transition:background .12s,color .12s;border-radius:4px;margin:2px 4px;width:calc(100% - 8px)}.project-panel-sectie-header:hover{background:var(--bg-hover);color:var(--text-primary)}.project-panel-chevron{font-size:9px;transition:transform .15s ease;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:3px}.project-panel-sectie-header:hover .project-panel-chevron{background:var(--bg-secondary)}.project-panel-chevron.open{transform:rotate(90deg)}.project-panel-sectie-titel{flex:1}.project-panel-sectie-count{font-size:10px;font-weight:600;color:var(--text-secondary);background:var(--bg-secondary);border-radius:10px;padding:1px 7px;flex-shrink:0}.project-panel-sectie-inhoud{padding:0 8px 8px}.project-panel-todo-item{display:flex;align-items:flex-start;gap:8px;padding:6px 8px;border-radius:4px;font-size:12px}.project-panel-todo-item:hover{background:var(--bg-hover)}.project-panel-todo-checkbox{appearance:none;-webkit-appearance:none;width:16px;height:16px;min-width:16px;min-height:16px;box-sizing:border-box;border:2px solid var(--border-color);border-radius:50%;cursor:pointer;position:relative;flex-shrink:0;padding:0;margin:1px 0 0;background:transparent;transition:all .15s}.project-panel-todo-checkbox:hover{border-color:var(--accent)}.project-panel-todo-checkbox:checked{background:var(--accent);border-color:var(--accent)}.project-panel-todo-checkbox:checked:after{content:"✓";color:#fff;font-size:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-weight:700}.project-panel-todo-tekst{flex:1;line-height:1.4;color:var(--text-primary)}.project-panel-todo-tekst.afgevinkt{text-decoration:line-through;color:var(--text-secondary)}.project-panel-todo-prio{color:#e74c3c;font-weight:700;font-size:13px;flex-shrink:0}.project-panel-todo-deadline{font-size:11px;color:var(--text-secondary);white-space:nowrap;flex-shrink:0;margin-left:auto}.project-panel-todo-deadline.verlopen{color:#e74c3c;font-weight:600}.project-panel-todo-deadline.vandaag{background:var(--accent);color:#fff;font-size:10px;font-weight:600;padding:1px 6px;border-radius:8px}.project-panel-todo-deadline.morgen{color:#f0ad4e;font-weight:600}.project-panel-todo-groep-kop{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;padding:8px 8px 3px;margin-top:4px;border-top:1px solid var(--border-light, var(--border-color))}.project-panel-todo-wacht .project-panel-todo-tekst{color:var(--text-secondary);font-style:italic}.project-panel-dag{margin-bottom:2px}.project-panel-datum{font-size:11px;font-weight:600;color:var(--text-secondary);padding:8px 8px 4px;text-transform:uppercase;letter-spacing:.03em}.project-panel-entry{display:flex;align-items:center;gap:8px;width:100%;padding:7px 8px;margin-bottom:2px;background:transparent;border:none;border-radius:4px;cursor:pointer;text-align:left;font-size:12px;color:var(--text-primary);transition:background-color .1s}.project-panel-entry:hover{background:var(--bg-secondary)}.project-panel-entry-tijd{font-size:11px;font-weight:500;color:var(--text-secondary);white-space:nowrap;flex-shrink:0}.project-panel-entry-omschrijving{font-size:12px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.project-panel-entry-heeft-notitie{font-size:12px;color:var(--text-secondary);margin-left:auto;flex-shrink:0;opacity:.5}.project-panel-entry-geen-notitie{font-size:11px;color:var(--text-secondary);font-style:italic;margin-left:auto;flex-shrink:0}.project-panel-leeg-klein{font-size:12px;color:var(--text-secondary);font-style:italic;padding:8px}.project-panel-leeg,.project-panel-laden{text-align:center;color:var(--text-secondary);font-size:13px;padding:24px 12px}.project-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:4px 0}.project-stat{display:flex;flex-direction:column;padding:8px 10px;background:var(--bg-secondary);border-radius:6px}.project-stat-waarde{font-size:16px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.project-stat-label{font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.project-stats-periode{font-size:11px;color:var(--text-secondary);padding:6px 2px 2px}.project-stats-maanden{display:flex;flex-direction:column;gap:4px;margin-top:8px}.project-stats-maand{display:flex;align-items:center;gap:8px;font-size:11px}.project-stats-maand-naam{width:55px;flex-shrink:0;color:var(--text-secondary);font-variant-numeric:tabular-nums}.project-stats-maand-bar{flex:1;height:6px;background:var(--bg-secondary);border-radius:3px;overflow:hidden}.project-stats-maand-fill{display:block;height:100%;border-radius:3px;min-width:2px;transition:width .3s ease}.project-stats-maand-uren{width:40px;flex-shrink:0;text-align:right;color:var(--text-primary);font-weight:500;font-variant-numeric:tabular-nums}.toast-container{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column-reverse;gap:8px;pointer-events:none}.toast{display:flex;align-items:center;gap:8px;padding:10px 12px 10px 16px;border-radius:8px;font-size:13px;font-weight:500;box-shadow:0 4px 16px #00000026;animation:toast-in .2s ease;pointer-events:auto;white-space:nowrap;max-width:480px}.toast-success{background:#27ae60;color:#fff}.toast-error{background:#e74c3c;color:#fff}.toast-info{background:var(--bg-primary, #fff);color:var(--text-primary, #1d1d1f);border:1px solid var(--border-color, #d2d2d7)}.toast-icon{font-size:14px;font-weight:700;flex-shrink:0}.toast-bericht{flex:1}.toast-undo{background:#fff3;border:1px solid rgba(255,255,255,.3);color:inherit;font-size:12px;font-weight:600;padding:3px 10px;border-radius:4px;cursor:pointer;white-space:nowrap;transition:background .12s;flex-shrink:0}.toast-undo:hover{background:#ffffff59}.toast-info .toast-undo{background:var(--accent);border-color:var(--accent);color:#fff}.toast-info .toast-undo:hover{opacity:.85}.toast-sluit{background:transparent;border:none;color:inherit;font-size:18px;line-height:1;cursor:pointer;padding:0 2px;opacity:.6;transition:opacity .12s;flex-shrink:0}.toast-sluit:hover{opacity:1}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .toast-info{box-shadow:0 4px 16px #0006}.app{height:100vh;display:flex;flex-direction:column;overflow:hidden}.app.dragging{cursor:col-resize;-webkit-user-select:none;user-select:none}.app-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--border-color);background:var(--bg-primary);flex-shrink:0;position:relative}.header-actions{display:flex;align-items:center;gap:8px}.home-toggle,.inbox-toggle,.todo-toggle,.kennisbank-toggle,.meer-menu-toggle{background:transparent;border:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:16px;padding:0;color:var(--text-secondary);cursor:pointer;border-radius:6px;transition:color .12s,background .12s}.home-toggle:hover,.inbox-toggle:hover,.todo-toggle:hover,.kennisbank-toggle:hover,.meer-menu-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.inbox-toggle{position:relative}.inbox-badge{position:absolute;top:-5px;right:-5px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;border-radius:50%;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;line-height:1;padding:0 3px}.todo-toggle{position:relative}.todo-badge{position:absolute;top:-5px;right:-5px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;border-radius:50%;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;line-height:1;padding:0 3px}.meer-menu-wrap{position:relative}.meer-menu-dropdown{position:absolute;top:100%;right:0;margin-top:6px;width:200px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 8px 24px #0000001f;z-index:100;padding:4px 0;animation:meer-menu-in .15s ease}[data-theme=dark] .meer-menu-dropdown{box-shadow:0 8px 24px #0006}@keyframes meer-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.meer-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 14px;background:transparent;border:none;color:var(--text-primary);font-size:13px;cursor:pointer;text-align:left;transition:background .1s}.meer-menu-item:hover{background:var(--bg-hover)}.meer-menu-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;color:var(--text-secondary)}.meer-menu-divider{height:1px;background:var(--border-color);margin:4px 0}.sneltoetsen-overlay{position:fixed;inset:0;z-index:400;display:flex;align-items:center;justify-content:center}.sneltoetsen-backdrop{position:absolute;inset:0;background:#0000004d}[data-theme=dark] .sneltoetsen-backdrop{background:#00000080}.sneltoetsen-modal{position:relative;width:360px;max-width:90vw;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 16px 48px #00000026;z-index:1;animation:sneltoetsen-in .15s ease;overflow:hidden}[data-theme=dark] .sneltoetsen-modal{box-shadow:0 16px 48px #00000080}@keyframes sneltoetsen-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.sneltoetsen-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--border-color)}.sneltoetsen-titel{font-size:15px;font-weight:700;margin:0;color:var(--text-primary)}.sneltoetsen-sluit{background:transparent;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;padding:0 4px;line-height:1}.sneltoetsen-sluit:hover{color:var(--text-primary)}.sneltoetsen-lijst{padding:12px 20px 16px}.sneltoetsen-item{display:flex;align-items:center;justify-content:space-between;padding:8px 0}.sneltoetsen-item+.sneltoetsen-item{border-top:1px solid var(--border-light, var(--border-color))}.sneltoetsen-kbd{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;padding:3px 8px;font-size:12px;font-family:SFMono-Regular,Menlo,monospace;color:var(--text-primary);white-space:nowrap}.sneltoetsen-beschrijving{font-size:13px;color:var(--text-secondary)}.app-content{display:flex;flex:1;overflow:hidden}.panel-left,.panel-center,.panel-right{overflow:hidden;display:flex;flex-direction:column}.divider{width:1px;background:var(--border-color);cursor:col-resize;flex-shrink:0;position:relative}.divider:after{content:"";position:absolute;inset:0 -3px}.divider:hover,.app.dragging .divider{background:var(--accent)}.divider-met-knop{display:flex;align-items:center;justify-content:center}.panel-collapse-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;color:var(--text-secondary);z-index:2;padding:0;opacity:0;transition:opacity .15s,background .15s,color .15s}.divider-met-knop:hover .panel-collapse-btn{opacity:1}.panel-collapse-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--accent)}@media(max-width:1024px){.app-header{padding:10px 12px;gap:8px}}@media(max-width:768px){.app-header{flex-wrap:wrap;padding:8px 10px;gap:6px}.app-content{flex-direction:column}.panel-left,.panel-center,.panel-right{width:100%!important;flex:1;min-height:0}.panel-right,.divider{display:none}.home-toggle,.inbox-toggle,.todo-toggle,.kennisbank-toggle,.meer-menu-toggle{width:44px;height:44px;min-width:44px}}.login-pagina{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#f0f2f5;padding:1rem}.login-kaart{background:#fff;border-radius:12px;padding:2.5rem;width:100%;max-width:420px;box-shadow:0 2px 12px #00000014}.login-titel{font-size:1.75rem;font-weight:700;color:#1a1a2e;margin:0 0 .25rem;text-align:center}.login-subtitel{color:#6c757d;text-align:center;margin:0 0 1.5rem;font-size:.9rem;line-height:1.4}.login-subtitel strong{color:#1a1a2e}.login-formulier{display:flex;flex-direction:column;gap:1rem}.login-veld{display:flex;flex-direction:column;gap:.3rem}.login-veld label{font-size:.85rem;font-weight:600;color:#495057}.login-veld input{padding:.6rem .75rem;border:1px solid #dee2e6;border-radius:6px;font-size:.95rem;transition:border-color .15s}.login-veld input:focus{outline:none;border-color:#4a90d9;box-shadow:0 0 0 3px #4a90d926}.login-code-wrapper{display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem}.login-code-veld{width:3rem;height:3.5rem;border:2px solid #dee2e6;border-radius:8px;text-align:center;font-size:1.5rem;font-weight:700;color:#1a1a2e;transition:border-color .15s;padding:0}.login-code-veld:focus{outline:none;border-color:#4a90d9;box-shadow:0 0 0 3px #4a90d926}.login-code-veld:disabled{background:#f8f9fa;opacity:.65}.login-fout{background:#fff3f3;color:#dc3545;padding:.5rem .75rem;border-radius:6px;font-size:.85rem;border:1px solid #f5c6cb;text-align:center}.login-knop{background:#4a90d9;color:#fff;border:none;padding:.65rem;border-radius:6px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s;margin-top:.5rem}.login-knop:hover:not(:disabled){background:#357abd}.login-knop:disabled{opacity:.65;cursor:not-allowed}.login-laden{text-align:center;color:#6c757d;font-size:.85rem;margin:0}.login-acties{display:flex;justify-content:space-between;align-items:center;margin-top:1.25rem;font-size:.85rem}.login-countdown{color:#adb5bd;font-size:.85rem}.login-wissel-knop{background:none;border:none;color:#4a90d9;cursor:pointer;font-weight:600;font-size:.85rem;padding:0}.login-wissel-knop:hover{text-decoration:underline}.login-wissel-knop:disabled{color:#adb5bd;cursor:not-allowed}
