*{box-sizing:border-box}html,body,#root{margin:0;padding:0;width:100%;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app{--surface: #ffffff;--surface-muted: #f3f4f6;--surface-strong: #f9fafb;--border: #e5e7eb;--border-strong: #d1d5db;--text: #111827;--text-secondary: #374151;--text-muted: #4b5563;--text-faint: #6b7280;--text-placeholder: #9ca3af;--header-bg: rgba(255, 255, 255, .86);--canvas-bg: #fafafa;--shadow-color: rgba(15, 23, 42, .12);--overlay-bg: rgba(17, 24, 39, .54);--danger-bg: #fee2e2;--danger-text: #991b1b;--success-text: #16a34a;--tag-bg: #eef2ff;--tag-text: #3730a3;--tag-btn-bg: rgba(55, 48, 163, .1);--info-bg: #e0f2fe;--info-text: #0369a1;--accent-solid: #2563eb;width:100vw;height:100vh;overflow:hidden;position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--canvas-bg);color-scheme:light}.app[data-theme=dark]{--surface: #21262d;--surface-muted: #161b22;--surface-strong: #0d1117;--border: rgba(255, 255, 255, .12);--border-strong: rgba(255, 255, 255, .22);--text: #f1f5f9;--text-secondary: #e2e8f0;--text-muted: #cbd5e1;--text-faint: #94a3b8;--text-placeholder: #64748b;--header-bg: rgba(13, 17, 23, .9);--canvas-bg: #0d1117;--shadow-color: rgba(0, 0, 0, .45);--overlay-bg: rgba(0, 0, 0, .6);--danger-bg: rgba(153, 27, 27, .28);--danger-text: #fca5a5;--success-text: #4ade80;--tag-bg: rgba(99, 102, 241, .22);--tag-text: #c7d2fe;--tag-btn-bg: rgba(199, 210, 254, .16);--info-bg: rgba(3, 105, 161, .28);--info-text: #7dd3fc;--accent-solid: #60a5fa;color-scheme:dark}.canvas-shell{position:relative;z-index:2;width:100%;height:100%}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--canvas-bg);color:var(--text)}.auth-card{width:min(380px,100%);display:grid;gap:12px;padding:22px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 18px 48px var(--shadow-color)}.auth-card h1,.auth-card p{margin:0}.auth-card h1{font-size:24px}.auth-card input,.invite-form input,.invite-form select{height:34px;border:1px solid var(--border-strong);border-radius:8px;padding:0 10px;background:var(--surface);color:var(--text);font:inherit;font-size:13px}.auth-card button,.invite-form button{height:34px;border:0;border-radius:8px;background:var(--accent-solid);color:#fff;font-weight:800;cursor:pointer}.invite-form{display:grid;gap:8px}.auth-card button.auth-mode-toggle{height:auto;padding:2px 0;background:transparent;color:var(--accent-solid);font-weight:600;font-size:13px;text-align:center}.auth-card button.auth-mode-toggle:hover{text-decoration:underline}.auth-divider{display:flex;align-items:center;gap:10px;margin:2px 0;color:var(--text-faint);font-size:12px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-card button.auth-secondary{background:var(--surface-muted);color:var(--text-secondary);border:1px solid var(--border);font-weight:600}.auth-assist-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.auth-assist-actions button{min-height:36px;background:transparent;color:var(--text-secondary);border:1px solid var(--border);font-size:12px;font-weight:600}.auth-message{margin:0;font-size:13px;color:var(--text-secondary);text-align:center}.canvas-map-toolbar{position:absolute;left:50%;z-index:6;display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:8px;max-width:calc(100vw - 48px);overflow:visible;transform:translate(-50%);border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface) 92%,transparent);padding:6px;box-shadow:0 10px 30px var(--shadow-color);pointer-events:auto;backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%)}.canvas-map-scope,.canvas-filter-controls,.canvas-arrange-controls,.canvas-zoom-controls{display:inline-flex;align-items:center;flex:0 0 auto;gap:6px}.canvas-filter-controls,.canvas-arrange-controls,.canvas-zoom-controls{border-left:1px solid var(--border);padding-left:8px}.canvas-filters-toggle{display:none}.canvas-filter-pills{display:contents}.canvas-search{width:180px;min-width:150px}.canvas-arrange-controls button,.canvas-zoom-controls button{display:inline-flex;align-items:center;justify-content:center;height:32px;min-width:32px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text-secondary);font:inherit;font-size:14px;font-weight:800;cursor:pointer;transition:background .15s ease,box-shadow .15s ease,color .15s ease}.canvas-arrange-controls button:hover,.canvas-zoom-controls button:hover{background:var(--surface-muted);color:var(--text);box-shadow:0 4px 12px var(--shadow-color)}.canvas-arrange-controls{position:relative}.canvas-arrange-toggle[aria-expanded=true]{border-color:var(--accent-solid);color:var(--accent-solid)}.canvas-arrange-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:3;display:flex;flex-direction:column;min-width:120px;padding:6px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:0 10px 30px var(--shadow-color)}.canvas-arrange-controls .canvas-arrange-menu button{justify-content:flex-start;min-width:0;height:32px;padding:0 8px;border:0;border-radius:6px;background:transparent;font-size:13px;font-weight:600;gap:8px}.canvas-arrange-controls .canvas-arrange-menu button:hover{box-shadow:none}.app-ambient-glow{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;overflow:hidden;pointer-events:none}.app-ambient-glow span{position:absolute;width:46vw;height:46vw;border-radius:50%;filter:blur(80px);opacity:.35;will-change:transform}.app-ambient-glow span:nth-child(1){top:-12%;left:-8%;background:radial-gradient(circle at 30% 30%,#60a5fa,transparent 70%);animation:glow-drift-a 26s ease-in-out infinite}.app-ambient-glow span:nth-child(2){top:10%;right:-12%;background:radial-gradient(circle at 60% 40%,#f0abfc,transparent 70%);animation:glow-drift-b 32s ease-in-out infinite}.app-ambient-glow span:nth-child(3){bottom:-18%;left:20%;background:radial-gradient(circle at 50% 50%,#a78bfa,transparent 70%);animation:glow-drift-c 38s ease-in-out infinite}.app[data-theme=dark] .app-ambient-glow span{opacity:.28}@keyframes glow-drift-a{0%,to{transform:translate(0) scale(1)}50%{transform:translate(6vw,8vh) scale(1.15)}}@keyframes glow-drift-b{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-8vw,6vh) scale(1.1)}}@keyframes glow-drift-c{0%,to{transform:translate(0) scale(1)}50%{transform:translate(5vw,-7vh) scale(1.2)}}@media (prefers-reduced-motion: reduce){.app-ambient-glow span{animation:none}}:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--accent-solid);outline-offset:2px;border-radius:6px}.canvas-loading{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--canvas-bg)}.app-crash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--canvas-bg)}.app-crash-card{display:flex;flex-direction:column;gap:12px;max-width:460px;padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 18px 44px var(--shadow-color);color:var(--text)}.app-crash-card strong{font-size:16px}.app-crash-card p{margin:0;color:var(--text-muted);font-size:13px;line-height:1.5}.app-crash-card pre{margin:0;padding:10px 12px;overflow-x:auto;border-radius:8px;background:var(--surface-muted);color:var(--danger-text);font-size:12px;white-space:pre-wrap;word-break:break-word}.app-crash-actions{display:flex;gap:8px}.app-crash-actions button{padding:8px 14px;border:0;border-radius:8px;background:var(--accent-solid);color:#fff;font-size:13px;font-weight:700;cursor:pointer}.app-crash-actions button.secondary{border:1px solid var(--border-strong);background:transparent;color:var(--text-muted)}.app-header{position:absolute;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;gap:12px;padding:12px 20px;background:var(--header-bg);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);border-bottom:1px solid var(--border);box-shadow:0 2px 12px var(--shadow-color);pointer-events:none;flex-wrap:wrap;transition:background .25s ease,border-color .25s ease}.app-logo{font-weight:700;font-size:18px;color:var(--accent-solid)}.nav-trigger{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 auto;gap:3px;width:34px;height:34px;border:1px solid var(--border-strong);border-radius:50%;background:var(--surface);color:var(--text-secondary);cursor:pointer;pointer-events:auto;box-shadow:0 4px 12px var(--shadow-color)}.nav-trigger span{display:block;width:13px;height:2px;border-radius:999px;background:currentColor}.nav-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;background:#0f172a2e;pointer-events:auto}.active-board-float{position:absolute;left:20px;z-index:5;display:inline-flex;align-items:center;gap:8px;max-width:min(360px,calc(100vw - 40px));padding:7px 10px;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--text-secondary);box-shadow:0 8px 24px var(--shadow-color);pointer-events:none;backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%)}.active-board-float strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.active-board-float span{flex:0 0 auto;padding:2px 6px;border-radius:999px;background:var(--surface-muted);color:var(--text-faint);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.app[data-theme=dark] .nav-overlay{background:#00000057}.app-nav-drawer{width:min(340px,calc(100vw - 28px));height:100%;padding:18px;border-right:1px solid var(--border);background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:16px 0 44px var(--shadow-color);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);color:var(--text);overflow-y:auto}.nav-drawer-header,.nav-section-title,.nav-view-button,.board-create-form{display:flex;align-items:center}.nav-drawer-header{justify-content:space-between;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--border)}.nav-drawer-header div{min-width:0;display:grid;gap:3px}.nav-drawer-header strong{font-size:18px;color:var(--accent-solid)}.nav-drawer-header span,.nav-section-title small,.board-select-button small,.nav-view-button small,.nav-section-muted p{color:var(--text-faint)}.nav-drawer-header button{flex:0 0 auto;width:32px;height:32px;border:1px solid var(--border);border-radius:50%;background:var(--surface-muted);color:var(--text-secondary);font-size:20px;cursor:pointer}.nav-drawer-header .nav-drawer-header-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto;min-width:0}.nav-drawer-header-actions .nav-signout-button{display:inline-flex;align-items:center;gap:6px;width:auto;height:32px;padding:0 12px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.nav-drawer-header-actions .nav-signout-button:hover{background:var(--danger-bg);color:var(--danger-text);border-color:transparent}.nav-section{display:grid;gap:10px;padding:18px 0;border-bottom:1px solid var(--border)}.nav-section-title{justify-content:space-between;gap:10px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.board-list{display:grid;gap:6px}.board-row{display:flex;align-items:center;gap:6px;min-width:0;border:1px solid transparent;border-radius:8px}.board-select-button,.nav-view-button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:38px;padding:9px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-secondary);font:inherit;font-size:13px;font-weight:700;cursor:pointer;text-align:left}.board-select-button{min-width:0;flex:1}.board-row:hover,.board-row.active{border-color:var(--border);background:var(--surface-muted)}.board-row:hover .board-select-button,.board-row.active .board-select-button{color:var(--text)}.nav-view-button:hover,.nav-view-button.active{border-color:var(--border);background:var(--surface-muted);color:var(--text)}.board-select-button span,.nav-view-button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-row-actions{display:inline-flex;align-items:center;flex:0 0 auto;gap:2px;padding-right:5px;opacity:0;transition:opacity .15s ease}.board-row:hover .board-row-actions,.board-row.active .board-row-actions,.board-row:focus-within .board-row-actions{opacity:1}.board-row-actions button,.board-edit-form button{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-muted);cursor:pointer}.board-row-actions button:hover,.board-edit-form button:hover{color:var(--text);background:var(--surface-muted)}.board-row-actions button.danger{color:var(--danger-text)}.board-edit-form{display:flex;align-items:center;gap:5px;width:100%;padding:5px}.board-edit-form input{min-width:0;flex:1;height:30px;border:1px solid var(--border-strong);border-radius:7px;background:var(--surface);color:var(--text);padding:0 8px;font:inherit;font-size:13px}.board-create-form{gap:6px}.board-create-form input{min-width:0;flex:1;height:34px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);padding:0 10px;font:inherit;font-size:13px}.board-create-form button{height:34px;border:none;border-radius:8px;background:var(--accent-solid);color:#fff;padding:0 12px;font-weight:800;cursor:pointer}.nav-section-muted{border-bottom:none}.nav-section-muted p{margin:0;font-size:12px;line-height:1.5}.app-controls{display:flex;align-items:center;gap:10px;margin-left:auto;pointer-events:auto}.header-view-center{position:absolute;left:50%;top:50%;z-index:1;transform:translate(-50%,-50%);pointer-events:auto}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;height:32px;width:32px;padding:0;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text-muted);font-size:13px;font-weight:700;cursor:pointer;pointer-events:auto;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.theme-toggle:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--shadow-color)}.bg-picker{position:relative;pointer-events:auto}.bg-picker-toggle{display:inline-flex;align-items:center;justify-content:center;height:32px;width:32px;padding:0;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text-muted);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.bg-picker-toggle:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--shadow-color)}.bg-picker-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:20;width:240px;display:flex;flex-direction:column;gap:14px;background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 12px 30px var(--shadow-color);padding:14px;animation:filter-bar-in .15s ease}.bg-picker-section{display:flex;flex-direction:column;gap:8px}.bg-picker-hint{margin:0;color:var(--text-faint);font-size:11px;font-weight:700;text-transform:capitalize}.bg-picker-section-header{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;color:var(--text-secondary)}.bg-picker-reset{border:0;background:transparent;color:var(--accent-solid);font-size:11px;font-weight:700;cursor:pointer;padding:0}.bg-picker-swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.bg-picker-swatch{position:relative;width:100%;aspect-ratio:1;border-radius:8px;border:1px solid var(--border-strong);cursor:pointer;padding:0}.bg-picker-swatch.active{outline:2px solid var(--accent-solid);outline-offset:2px}.bg-picker-custom{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;background:conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.bg-picker-custom input{opacity:0;width:100%;height:100%;cursor:pointer}.bg-picker-upload{display:flex;align-items:center;justify-content:center;height:60px;border:1px dashed var(--border-strong);border-radius:8px;background:var(--surface-strong);color:var(--text-secondary);font-size:12px;font-weight:700;cursor:pointer}.bg-picker-upload input{display:none}.bg-picker-preview{position:relative;overflow:hidden;border-radius:8px;border:1px solid var(--border)}.bg-picker-preview img{display:block;width:100%;height:90px;object-fit:cover}.bg-picker-error{margin:0;color:var(--danger-text);font-size:11px}.view-toggle{display:inline-flex;border:1px solid var(--border-strong);border-radius:8px;overflow:hidden;background:var(--surface)}.view-toggle button{height:32px;min-width:62px;border:0;border-right:1px solid var(--border);background:transparent;color:var(--text-muted);font-size:13px;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease}.view-toggle button:last-child{border-right:0}.view-toggle button:not(.active):hover{background:var(--surface-muted)}.view-toggle button.active{background:var(--accent-solid);color:#fff}.card-toggle button{display:inline-flex;align-items:center;justify-content:center;min-width:38px;width:38px;padding:0}.main-view-toggle button{min-width:72px}.quick-add-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;width:32px;padding:0;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text-secondary);font-size:13px;font-weight:800;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.quick-add-button span{font-size:22px;line-height:1}.quick-add-button:hover{border-color:var(--accent-solid);color:var(--accent-solid);background:color-mix(in srgb,var(--accent-solid) 8%,transparent)}.app-save-status{position:absolute;top:70px;right:20px;z-index:12;padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--surface) 94%,transparent);color:var(--text-muted);font-size:12px;font-weight:800;box-shadow:0 8px 20px var(--shadow-color);pointer-events:none}.app-save-status.saving{color:var(--accent-solid)}.app-save-status.saved{color:var(--success-text)}.app-save-status.error{color:var(--danger-text)}.people-view{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;overflow:auto;padding:0 22px 36px;color:var(--text)}.people-view-inner{width:min(1180px,100%);margin:0 auto}.people-view-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:0 10px 24px var(--shadow-color)}.people-view-toolbar strong,.people-view-toolbar span{display:block}.people-view-toolbar strong{font-size:15px}.people-view-toolbar span{margin-top:2px;color:var(--text-faint);font-size:12px}.people-scope-toggle{display:inline-flex;gap:4px;padding:3px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.people-scope-toggle button{min-width:58px;border:0;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;font:inherit;font-size:12px;font-weight:800;padding:6px 9px}.people-scope-toggle button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px var(--shadow-color)}.people-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.people-summary div{min-width:0;padding:11px 12px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:0 10px 24px var(--shadow-color)}.people-summary span{display:block;color:var(--text-faint);font-size:11px;font-weight:800;text-transform:uppercase}.people-summary strong{display:block;margin-top:4px;font-size:24px;line-height:1}.people-task-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.people-task-group,.people-empty{border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 14px 34px var(--shadow-color)}.people-task-group{min-width:0;overflow:hidden}.people-group-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border-bottom:1px solid var(--border)}.people-group-header strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.people-group-header span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:var(--surface-muted);color:var(--text-muted);font-size:12px;font-weight:800}.people-task-group>p,.people-empty{margin:0;padding:18px 14px;color:var(--text-faint);font-size:13px}.people-empty{display:flex;flex-direction:column;gap:4px;text-align:center}.people-empty strong{color:var(--text)}.people-drop-list{display:flex;flex-direction:column}.people-drop{border-bottom:1px solid var(--border)}.people-drop:last-child{border-bottom:0}.people-drop-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 12px 0 0}.people-drop-toggle{display:flex;align-items:center;gap:8px;min-width:0;padding:11px 4px 11px 12px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.people-drop-caret{flex:0 0 auto;width:12px;color:var(--text-faint);font-size:13px;line-height:1;transition:transform .12s ease}.people-drop.expanded .people-drop-caret{transform:rotate(90deg)}.people-drop-dot{flex:0 0 auto;width:8px;height:8px;border-radius:999px}.people-drop-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700}.people-drop-count{flex:0 0 auto;padding:2px 7px;border-radius:999px;background:var(--surface-muted);color:var(--text-muted);font-size:11px;font-weight:800}.people-drop-flag{flex:0 0 auto;padding:2px 7px;border-radius:999px;background:var(--danger-bg);color:var(--danger-text);font-size:11px;font-weight:800;white-space:nowrap}.people-drop-open{flex:0 0 auto;border:0;background:transparent;color:var(--text-faint);font-size:11px;font-weight:700;cursor:pointer;opacity:0;transition:opacity .12s ease}.people-drop-header:hover .people-drop-open,.people-drop-open:focus-visible{opacity:1}@media (hover: none){.people-drop-open{opacity:1}}.people-drop-open:hover{color:var(--text)}.people-task-list{display:flex;flex-direction:column;padding-bottom:6px}.people-task-item{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 12px 7px 32px}.people-task-check{position:relative;width:18px;height:18px}.people-task-check input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.people-task-check span{display:block;width:18px;height:18px;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface)}.people-task-check input:checked+span{background:var(--accent-solid);border-color:transparent}.people-task-check input:checked+span:after{content:"";position:absolute;left:6px;top:2px;width:4px;height:9px;border:solid #ffffff;border-width:0 2px 2px 0;transform:rotate(45deg)}.people-task-item button{min-width:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;padding:0}.people-task-item button strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:1.25}.people-task-item time{padding:3px 7px;border-radius:999px;background:var(--surface-muted);color:var(--text-muted);font-size:11px;font-weight:800;white-space:nowrap}.people-task-item time.overdue{background:var(--danger-bg);color:var(--danger-text)}.people-task-item time.today{background:var(--info-bg);color:var(--info-text)}.templates-view{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;overflow:auto;padding:0 22px 36px;color:var(--text)}.templates-view-inner{width:min(1180px,100%);margin:0 auto}.templates-view-toolbar{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:14px;margin-bottom:16px}.holidays-bulk-actions{display:flex;flex-wrap:wrap;gap:8px}.holidays-bulk-actions button.secondary{flex:0 0 auto;border:1px solid var(--border);border-radius:8px;padding:10px 14px;background:var(--surface-muted);color:var(--text-secondary);font-weight:700;cursor:pointer}.holidays-bulk-actions button.secondary:disabled{opacity:.5;cursor:not-allowed}.templates-view-toolbar strong{display:block;font-size:15px}.templates-view-toolbar span{display:block;margin-top:2px;color:var(--text-faint);font-size:12px}.templates-new-button{flex:0 0 auto;border:0;border-radius:8px;padding:10px 14px;background:var(--accent-solid);color:#fff;font-weight:700;cursor:pointer}.templates-new-button:hover{filter:brightness(1.08)}.templates-empty{display:flex;flex-direction:column;gap:4px;padding:18px 14px;text-align:center;color:var(--text-faint);font-size:13px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 14px 34px var(--shadow-color)}.templates-empty strong{color:var(--text)}.template-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.template-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 14px 34px var(--shadow-color)}.template-card-image{height:110px;background-size:cover;background-position:center}.template-card-body{display:flex;flex-direction:column;gap:8px;padding:14px}.template-card-body strong{font-size:14px}.template-card-body p{margin:0;color:var(--text-muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.template-card-meta{display:flex;flex-wrap:wrap;gap:6px}.template-chip{padding:3px 8px;border-radius:999px;background:var(--surface-muted);color:var(--text-muted);font-size:11px;font-weight:700}.template-chip-muted{color:var(--text-faint)}.template-card-tags{display:flex;flex-wrap:wrap;gap:6px}.template-card-actions{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--border)}.template-card-actions button{flex:1;border-radius:8px;padding:8px 10px;font-weight:700;font-size:12px;cursor:pointer}.template-card-actions button.secondary{border:1px solid var(--border);background:var(--surface-muted);color:var(--text-secondary)}.template-card-actions button.danger{border:0;background:var(--danger-bg);color:var(--danger-text)}.template-editor-title{margin:0 0 14px;font-size:18px}.template-checklist-editor{display:flex;flex-direction:column;gap:8px}.template-checklist-list{display:flex;flex-direction:column;gap:6px}.template-checklist-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);font-size:13px}.template-checklist-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-checklist-row button{flex:0 0 auto;border:0;background:transparent;color:var(--text-faint);font-size:15px;line-height:1;cursor:pointer}.template-checklist-row button:hover{color:var(--danger-text)}.holiday-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 14px 34px var(--shadow-color);overflow:hidden}.holiday-row{display:flex;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid var(--border)}.holiday-row:last-child{border-bottom:0}.holiday-row.disabled .holiday-row-info{opacity:.45}.holiday-toggle{position:relative;flex:0 0 auto;width:34px;height:20px}.holiday-toggle input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;margin:0;z-index:1}.holiday-toggle span{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:var(--surface-muted);border:1px solid var(--border-strong);transition:background .15s ease}.holiday-toggle span:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:999px;background:var(--surface);box-shadow:0 1px 2px var(--shadow-color);transition:transform .15s ease}.holiday-toggle input:checked+span{background:var(--accent-solid);border-color:transparent}.holiday-toggle input:checked+span:after{transform:translate(14px);background:#fff}.holiday-row-info{flex:1;min-width:0;display:flex;align-items:baseline;gap:10px}.holiday-row-info strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.holiday-row-info span{flex:0 0 auto;color:var(--text-faint);font-size:12px;font-weight:700}.holiday-row-actions{flex:0 0 auto;display:flex;gap:8px}.holiday-row-actions button{border-radius:8px;padding:6px 10px;font-weight:700;font-size:12px;cursor:pointer}.holiday-row-actions button.secondary{border:1px solid var(--border);background:var(--surface-muted);color:var(--text-secondary)}.holiday-row-actions button.danger{border:0;background:var(--danger-bg);color:var(--danger-text)}@media (max-width: 620px){.holiday-row{flex-wrap:wrap}.holiday-row-info{flex-basis:100%;order:1}.holiday-row-actions{order:2}}.command-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:flex-start;justify-content:center;padding-top:88px;background:#00000047;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.command-palette{width:min(640px,calc(100vw - 28px));overflow:hidden;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);box-shadow:0 24px 80px #00000047}.command-palette input{width:100%;height:54px;border:0;border-bottom:1px solid var(--border);border-radius:0;padding:0 18px;background:var(--surface);color:var(--text);font:inherit;font-size:16px;outline:none}.command-list{max-height:min(460px,calc(100vh - 180px));overflow-y:auto;padding:8px}.command-list p{margin:0;padding:18px;color:var(--text-faint);font-size:13px;text-align:center}.command-list button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;min-height:42px;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:var(--text);font:inherit;cursor:pointer;text-align:left}.command-list button:hover,.command-list button:focus-visible{background:var(--surface-muted);outline:none}.command-list button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700}.command-list button small{color:var(--text-faint);font-size:11px;font-weight:800}.date-control{height:32px;border:1px solid var(--border-strong);border-radius:8px;padding:0 8px;background:var(--surface);color:var(--text-secondary);font:inherit;font-size:13px;font-weight:600}.year-control{width:86px}.month-scope-control{width:116px}@keyframes filter-bar-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.filter-search{height:32px;min-width:180px;border:1px solid var(--border-strong);border-radius:8px;padding:0 10px;background:var(--surface);font:inherit;font-size:13px;color:var(--text)}.filter-search::placeholder{color:var(--text-placeholder)}.filter-dropdown{position:relative}.filter-dropdown-toggle{height:28px;padding:0 12px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--text-muted);font-size:12px;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.filter-dropdown-toggle:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--shadow-color)}.filter-dropdown-toggle.active{background:var(--accent-solid);border-color:transparent;color:#fff}.filter-dropdown-menu{animation:filter-bar-in .15s ease}.filter-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:20;min-width:180px;max-height:240px;overflow-y:auto;background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 8px 24px var(--shadow-color);padding:8px;display:flex;flex-direction:column;gap:2px}.filter-dropdown-option{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:13px;color:var(--text-secondary);cursor:pointer}.status-filter-option{display:inline-flex;align-items:center;gap:7px}.status-dot{display:inline-block;width:8px;height:8px;flex:0 0 auto;border-radius:999px;box-shadow:0 0 0 2px color-mix(in srgb,currentColor 10%,transparent)}.filter-dropdown-option:hover{background:var(--surface-muted)}.filter-dropdown-empty{padding:6px 8px;font-size:12px;color:var(--text-placeholder)}.filter-clear{height:28px;padding:0 12px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--danger-text);font-size:12px;font-weight:700;cursor:pointer}.app-filter-empty{position:absolute;top:68px;left:50%;transform:translate(-50%);z-index:10;background:var(--surface-strong);color:var(--text);padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;box-shadow:0 4px 12px var(--shadow-color)}.app-empty-hint{position:absolute;left:50%;transform:translate(-50%);z-index:5;display:grid;justify-items:center;gap:5px;max-width:min(360px,calc(100vw - 48px));padding:12px 16px;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--text-secondary);box-shadow:0 8px 24px var(--shadow-color);font-size:13px;pointer-events:none;backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%)}.app-empty-hint strong{color:var(--text);font-size:14px}.app-empty-hint span{color:var(--text-faint)}.app-error{position:absolute;top:56px;left:20px;z-index:10;background:var(--danger-bg);color:var(--danger-text);padding:8px 14px;border-radius:8px;font-size:13px}.app-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:15;border:0;background:var(--overlay-bg);cursor:pointer}.drop-panel{position:absolute;top:0;right:0;bottom:0;width:430px;background:var(--surface);border-left:1px solid var(--border);box-shadow:-4px 0 16px var(--shadow-color);padding:20px;overflow-y:auto;z-index:20;color:var(--text);animation:drop-panel-in .22s cubic-bezier(.16,1,.3,1)}.drop-detail-hero{position:relative;display:flex;align-items:flex-end;min-height:210px;margin:-20px -20px 14px;padding:18px;overflow:hidden;background-position:center;background-size:cover;color:#fff}.drop-detail-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000002e,#000000c7),linear-gradient(90deg,rgba(0,0,0,.45),transparent 62%)}.drop-detail-hero:not(.has-image):before{background:radial-gradient(circle at 18% 18%,rgba(255,255,255,.24),transparent 34%),linear-gradient(180deg,#0000001a,#00000094)}.drop-detail-hero-content{position:relative;z-index:1;min-width:0}.drop-detail-kicker,.drop-detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;font-weight:800}.drop-detail-kicker span:not(.status-dot),.drop-detail-meta span{padding:5px 8px;border-radius:999px;background:#ffffff29;color:#ffffffeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.drop-detail-hero h2{margin:12px 0;color:#fff;font-size:26px;line-height:1.08;overflow-wrap:anywhere}.drop-panel-close{position:absolute;top:12px;right:12px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid rgba(255,255,255,.26);border-radius:999px;background:#00000042;color:#fff;cursor:pointer;font-size:20px;line-height:1}@keyframes drop-panel-in{0%{transform:translate(24px);opacity:0}to{transform:translate(0);opacity:1}}.sprout-popup-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--overlay-bg);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.sprout-popup{position:relative;width:min(520px,100%);max-height:min(640px,calc(100vh - 48px));overflow-y:auto;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:0 24px 80px #00000047;animation:drop-panel-in .18s cubic-bezier(.16,1,.3,1)}.sprout-popup-header{position:sticky;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border);background:var(--surface)}.sprout-popup-header div{display:flex;flex-direction:column;gap:2px;min-width:0}.sprout-popup-header strong{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sprout-popup-header span{color:var(--text-faint);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.sprout-popup-close{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--text-muted);cursor:pointer;font-size:18px;line-height:1}.sprout-popup-body{padding:16px 18px 18px}.sprout-milestone-list{display:flex;flex-direction:column;gap:10px}.sprout-milestone-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong)}.sprout-milestone-item span{color:var(--text-secondary);font-size:13px;font-weight:700}.sprout-milestone-item strong{color:var(--text);font-size:13px}.sprout-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:32px;background:#000000db}.sprout-lightbox img{max-width:92vw;max-height:92vh;border-radius:8px;object-fit:contain;box-shadow:0 20px 60px #00000080}.sprout-lightbox-close{position:fixed;top:20px;right:20px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:#0006;color:#fff;font-size:20px;cursor:pointer}.drop-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.drop-panel-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:18px;padding:4px;background:var(--surface-muted);border-radius:8px}.drop-panel-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:32px;border:0;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;font-weight:700}.drop-panel-tabs button span{color:var(--text-faint);font-size:10px;font-weight:900}.drop-panel-tabs button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px var(--shadow-color)}.drop-panel-header h2{font-size:16px;margin:0}.drop-panel-header button{background:none;border:none;font-size:20px;cursor:pointer;color:var(--text-faint)}.drop-panel form{display:flex;flex-direction:column;gap:14px}.drop-panel-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.drop-panel-classification-row{grid-template-columns:repeat(3,minmax(0,1fr))}.drop-panel-template-picker{display:flex;align-items:flex-end;gap:8px}.drop-panel-template-picker label{flex:1}.drop-panel-template-hint{margin:-6px 0 0;font-size:12px;color:var(--text-muted)}.drop-panel-template-error{margin:-6px 0 0;font-size:12px;color:var(--danger, #d64545)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 auto;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text-muted);cursor:pointer;padding:0}.icon-button:hover{color:var(--text);border-color:var(--accent-solid)}.icon-button.danger:hover{color:var(--danger, #d64545);border-color:var(--danger, #d64545)}.template-save-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:-4px}.template-save-row input{flex:1;min-width:160px;padding:8px 10px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text)}.drop-panel label,.drop-panel-field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--text-secondary)}.drop-panel input,.drop-panel select,.drop-panel textarea{font-family:inherit;font-size:14px;font-weight:400;padding:8px 10px;border:1px solid var(--border-strong);border-radius:8px;color:var(--text);background:var(--surface)}.drop-panel select.is-placeholder{color:var(--text-faint)}.status-select-wrap{position:relative}.status-select-wrap .status-dot{position:absolute;left:11px;top:50%;transform:translateY(-50%);z-index:1;pointer-events:none}.status-select-wrap select{width:100%;padding-left:28px}.drop-panel-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.drop-panel-date-group{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;align-items:center}.date-group-label{grid-column:1 / -1;color:var(--text-secondary);font-size:12px;font-weight:700}.icon-field{position:relative;display:block;min-width:0}.drop-panel .icon-field{gap:0}.icon-field svg{position:absolute;left:9px;top:50%;transform:translateY(-50%);color:var(--text-faint);pointer-events:none;z-index:1}.icon-field input{width:100%;padding-left:30px}.date-time-field input{min-height:38px}.drop-panel input[type=file]{padding:7px;background:var(--surface-strong)}.drop-image-preview{display:flex;flex-direction:column;gap:8px}.drop-image-preview img{width:100%;height:150px;object-fit:cover;border:1px solid var(--border);border-radius:8px}.drop-image-preview button{align-self:flex-start;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text-secondary);cursor:pointer;font-weight:600;padding:7px 10px}.assets-pane{display:flex;flex-direction:column;gap:14px}.asset-filter-tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;padding:4px;border-radius:8px;background:var(--surface-muted)}.asset-filter-tabs button{height:30px;border:0;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;font-size:12px;font-weight:800}.asset-filter-tabs button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px var(--shadow-color)}.asset-upload-box{display:flex;flex-direction:column;gap:5px;padding:16px;border:1px dashed var(--border-strong);border-radius:8px;background:var(--surface-strong);color:var(--text-secondary);cursor:pointer}.asset-upload-box strong{color:var(--text);font-size:13px}.asset-upload-box span{color:var(--text-faint);font-size:12px}.asset-upload-box input{margin-top:6px}.asset-image-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.asset-image-grid .drop-empty-note{grid-column:1 / -1}.asset-image-card{overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong)}.asset-image-card-button{display:block;width:100%;padding:0;border:1px solid var(--border);cursor:pointer;text-align:left;transition:transform .12s ease,box-shadow .12s ease}.asset-image-card-button:hover{transform:translateY(-1px);box-shadow:0 6px 16px var(--shadow-color)}.sprout-asset-image-scroller{display:contents}.sprout-asset-image-row{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.sprout-asset-image-card{flex:0 0 auto;width:200px}.sprout-asset-image-card img{aspect-ratio:1 / 1}.sprout-scroll-arrow{position:absolute;top:50%;z-index:5;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border-strong);border-radius:999px;background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--text-secondary);cursor:pointer;box-shadow:0 8px 20px var(--shadow-color);transform:translateY(-50%)}.sprout-scroll-arrow:hover{color:var(--text);border-color:var(--accent-solid)}.sprout-scroll-arrow-left{left:10px}.sprout-scroll-arrow-right{right:10px}.asset-image-card img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;background:var(--surface-muted)}.asset-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 8px 0}.asset-card-meta strong{min-width:0;color:var(--text);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-card-meta span{flex:0 0 auto;padding:3px 6px;border-radius:999px;background:var(--info-bg);color:var(--info-text);font-size:10px;font-weight:800}.asset-card-actions{display:flex;gap:6px;padding:8px}.asset-card-actions button,.asset-link-form button{border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text-secondary);cursor:pointer;font-size:12px;font-weight:800;padding:7px 8px}.asset-card-actions button{flex:1}.asset-link-form,.asset-link-edit{display:flex;flex-direction:column;gap:8px}.asset-link-form input,.asset-link-edit input{min-width:0;font-family:inherit;font-size:14px;padding:8px 10px;border:1px solid var(--border-strong);border-radius:8px;color:var(--text);background:var(--surface)}.asset-link-list{display:flex;flex-direction:column;gap:10px}.asset-link-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong)}.asset-link-edit{grid-column:1 / -1}.asset-link-body{min-width:0;display:flex;flex-direction:column;gap:4px}.asset-link-body strong{color:var(--text);font-size:13px}.asset-link-body a{color:var(--info-text);font-size:12px;overflow-wrap:anywhere;text-decoration:none}.asset-link-body a:hover{text-decoration:underline}.tag-editor{display:flex;flex-direction:column;gap:10px}.tag-list{display:flex;flex-wrap:wrap;gap:8px;min-height:30px}.tag-chip{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:6px 8px 6px 10px;border-radius:999px;background:var(--tag-bg);color:var(--tag-text);font-size:12px;font-weight:700}.tag-chip button{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:0;border-radius:999px;background:var(--tag-btn-bg);color:var(--tag-text);cursor:pointer;font-size:14px;line-height:1}.tag-input-row{display:flex;gap:8px}.tag-input-row input{flex:1}.tag-input-row button,.note-entry-actions button,.checklist-form button{border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text-secondary);cursor:pointer;font-weight:700;padding:8px 10px}.notes-pane{display:flex;flex-direction:column;gap:18px}.checklist-pane{display:flex;flex-direction:column;gap:12px}.checklist-progress{display:inline-flex;align-items:center;align-self:flex-start;gap:6px;padding:4px 9px;border:1px solid var(--border);border-radius:999px;background:var(--surface-strong);color:var(--text-muted);font-size:12px;font-weight:700}.checklist-progress strong{color:var(--text)}.checklist-form{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface-strong) 78%,transparent)}.checklist-form-main{display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:8px;align-items:center}.checklist-form-meta{display:grid;grid-template-columns:minmax(0,130px) minmax(0,1fr);gap:8px}.checklist-form input,.checklist-edit-form input,.checklist-form select,.checklist-edit-form select{min-width:0;font-family:inherit;font-size:13px;padding:7px 9px;border:1px solid var(--border-strong);border-radius:8px;color:var(--text);background:var(--surface)}.checklist-due-field{display:flex;flex-direction:column;gap:4px;color:var(--text-faint);font-size:10px;font-weight:700}.checklist-due-field input,.checklist-due-field select{width:100%}.checklist-list{display:flex;flex-direction:column;gap:8px}.checklist-item{display:grid;grid-template-columns:auto 1fr auto;align-items:flex-start;gap:9px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong)}.checklist-item.done .checklist-item-body p{color:var(--text-faint);text-decoration:line-through}.checklist-check{position:relative;display:inline-flex;width:20px;height:20px;margin-top:2px;cursor:pointer}.checklist-check input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.checklist-check span{width:20px;height:20px;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface)}.checklist-check input:checked+span{background:var(--accent-solid);border-color:transparent}.checklist-check input:checked+span:after{content:"";position:absolute;left:7px;top:3px;width:5px;height:10px;border:solid #ffffff;border-width:0 2px 2px 0;transform:rotate(45deg)}.checklist-item-body{min-width:0}.checklist-item-body p{margin:0 0 4px;color:var(--text);font-size:15px;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.checklist-item-meta{display:flex;flex-wrap:wrap;gap:4px 8px}.checklist-item-body time,.checklist-item-meta span{color:var(--text-faint);font-size:10px;font-weight:500;line-height:1.3}.checklist-edit-form{display:flex;flex-direction:column;grid-column:span 2;gap:8px}.checklist-item-actions{display:flex;gap:4px}.checklist-item-actions button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text-muted);cursor:pointer;padding:0}.checklist-add-button{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0;font-size:20px;line-height:1}.checklist-item-actions button:hover{color:var(--text);border-color:var(--accent-solid)}@media (max-width: 520px){.checklist-form-meta{grid-template-columns:1fr}}.note-form{padding-bottom:16px;border-bottom:1px solid var(--border)}.note-list{display:flex;flex-direction:column}.note-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px 0;border-bottom:1px solid var(--border)}.note-entry:first-of-type{padding-top:2px}.note-entry:last-child{border-bottom:0;padding-bottom:4px}.note-entry-meta{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--text-faint);font-size:12px}.note-entry-meta strong{color:var(--text);font-size:14px}.note-entry-meta span{padding:3px 7px;border-radius:999px;background:var(--info-bg);color:var(--info-text);font-weight:700}.note-entry p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.note-entry-actions{display:flex;gap:6px;align-items:flex-start}.note-entry-actions.icon-actions button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-faint);cursor:pointer;padding:0}.note-entry-actions.icon-actions button:hover{background:var(--surface-muted);color:var(--text);border-color:var(--border)}.drop-empty-note{margin:0;padding:14px;border:1px dashed var(--border-strong);border-radius:8px;color:var(--text-faint);font-size:13px;text-align:center}.drop-panel-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.drop-panel-actions button{flex:1;min-width:112px;padding:10px;border-radius:8px;border:none;font-weight:600;cursor:pointer;background:var(--accent-solid);color:#fff;transition:box-shadow .15s ease,filter .15s ease,opacity .15s ease}.drop-panel-actions button:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 6px 16px var(--shadow-color)}.drop-panel-actions button.secondary{background:var(--surface-muted);color:var(--text-secondary);border:1px solid var(--border)}.drop-panel-actions button.danger{background:var(--danger-bg);color:var(--danger-text)}.drop-panel-status{min-height:18px;margin:10px 0 0;font-size:13px;font-weight:600;line-height:18px}.drop-panel-status.success{color:var(--success-text)}.drop-panel-status.dirty{color:var(--accent-solid)}.drop-panel-status.error{color:var(--danger-text)}.drop-panel-actions button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 760px){.people-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.people-task-groups{grid-template-columns:1fr}.app-header{align-items:flex-start;padding:10px 12px}.canvas-map-toolbar{left:12px;right:12px;margin-top:44px;transform:none;justify-content:flex-start;flex-wrap:wrap;max-width:none}.canvas-map-scope{flex:1 1 100%;min-width:0;flex-wrap:wrap}.canvas-map-scope .canvas-search{width:auto;flex:1 1 110px;min-width:100px}.canvas-filter-controls{position:relative;flex:0 1 auto;display:flex;align-items:center;border-left:0;padding-left:0}.canvas-filters-toggle{display:inline-flex;align-items:center;height:32px;padding:0 12px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--text-secondary);font:inherit;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}.canvas-filters-toggle.active{border-color:var(--accent-solid);color:var(--accent-solid)}.canvas-filter-pills{display:none}.canvas-filter-pills.open{display:flex;flex-wrap:wrap;position:absolute;top:calc(100% + 8px);left:0;min-width:260px;max-width:calc(100vw - 48px);z-index:2;gap:6px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:0 10px 30px var(--shadow-color)}.canvas-zoom-controls{flex:0 0 auto;margin-left:auto;border-left:0;padding-left:0}.header-view-center{position:static;order:2;transform:none}.bg-picker{margin-left:auto}.app-hint{display:none}.app-controls{order:3;margin-left:auto}.drop-panel{left:0;width:100%}.drop-panel-row,.drop-panel-date-grid{grid-template-columns:1fr}}
