.avatar.task-author-avatar{width:22px;height:22px;flex:0 0 22px;margin-top:3px;border-width:1px;font-size:11px;line-height:1;-webkit-user-select:none;user-select:none}.avatar.task-author-avatar.author-unknown{color:#8b9187;background:#eeeee8}.task-author-details{padding:6px 12px 10px;color:#76806f;font-size:12px;overflow-wrap:anywhere}.author-avatar-toggle{display:inline-flex;align-items:center;gap:7px;padding:7px 5px;color:#6b7962;font-size:12px;white-space:nowrap;flex-shrink:0;border-radius:7px}.author-avatar-toggle:focus-visible{outline:2px solid #729069;outline-offset:2px}.author-avatar-track{width:30px;height:18px;padding:2px;border-radius:20px;background:#cbd0c5;transition:background .15s}.author-avatar-track>span{display:block;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #32472920;transition:transform .15s}.author-avatar-toggle[aria-checked=true] .author-avatar-track{background:#79946e}.author-avatar-toggle[aria-checked=true] .author-avatar-track>span{transform:translate(12px)}@media(max-width:680px){.author-avatar-toggle{flex-direction:column;gap:3px;padding:3px;font-size:10px}}@media(prefers-reduced-motion:reduce){.author-avatar-track,.author-avatar-track>span{transition:none}}.rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}[data-rwp-wrapper] ul{margin:0;padding:0;list-style:none}[data-rwp-wrapper] li{margin:0;padding:0}[data-rwp-wrapper]{position:relative;overflow:hidden;display:flex;width:100%;align-items:stretch;justify-content:space-between;perspective:2000px;-webkit-user-select:none;-moz-user-select:none;user-select:none}[data-rwp]{position:relative;overflow:hidden;flex:1;cursor:default;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 20%,black 80%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,black 20%,black 80%,transparent 100%)}[data-rwp]:focus-visible{outline:none}[data-rwp-highlight-wrapper]{position:absolute;overflow:hidden;top:50%;width:100%;transform:translateY(-50%);font-size:1rem;font-weight:500}[data-rwp-highlight-list]{position:absolute;width:100%}[data-rwp-options]{position:absolute;top:50%;left:0;display:block;width:100%;height:0;margin:0 auto;-webkit-font-smoothing:subpixel-antialiased;will-change:transform;backface-visibility:hidden;transform-style:preserve-3d}[data-rwp-option]{position:absolute;top:0;left:0;width:100%;-webkit-font-smoothing:subpixel-antialiased;will-change:visibility;font-size:.875rem}[data-rwp-option],[data-rwp-highlight-item]{display:flex;align-items:center;justify-content:center}[data-rwp-option][data-disabled],[data-rwp-highlight-item][data-disabled]{pointer-events:none}.checklist-list .todo-row{isolation:isolate;align-items:center}.checklist-list .todo-main{flex:1;min-width:0}.checklist-list .todo-main .todo-copy{padding-right:0}.checklist-list .todo-row>:not(.todo-deadline-glow){position:relative;z-index:1}.checklist-list .todo-row-tools{position:static;flex-direction:row;align-self:center;background:transparent}.checklist-list .todo-row .todo-circle{margin-top:0;align-self:center}.checklist-list .todo-row[data-deadline]{border:1px solid #dce5d580;border-radius:10px;padding:11px 8px;margin:8px 0;background:#f9fcf6a8;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.checklist-list .todo-row[data-deadline]:hover{border-color:#cad9c2;background:#fbfdf9}.todo-deadline-glow{position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;pointer-events:none;opacity:0}.checklist-list .todo-row[data-deadline=urgent] .todo-deadline-glow{background:#d3a14e42;border:1px solid #d3a14ebf;box-shadow:0 0 22px 5px #d3a14e47,inset 0 0 18px #d3a14e1f;animation:task-deadline-breathe 3s ease-in-out infinite}.checklist-list .todo-row[data-deadline=late] .todo-deadline-glow{background:#f2dcd3;border:1px solid #d5a596;opacity:1}.todo-deadline-meta{display:flex;flex-wrap:wrap;gap:2px 8px;margin-top:5px;color:#7c8975;font-size:11px;line-height:1.5;font-variant-numeric:tabular-nums}.todo-deadline-meta time{white-space:nowrap}.todo-deadline-button{position:relative;flex:0 0 40px;width:40px;height:40px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;color:#829773;background:transparent}.todo-deadline-button:hover:not(:disabled){background:#dce6d34d}.todo-deadline-button:focus-visible{outline:2px solid #8f9f7b;outline-offset:3px}.todo-deadline-button:disabled{cursor:default}.todo-deadline-control{position:relative;z-index:6;display:flex;flex:0 0 40px;align-self:flex-start}.task-deadline-popover{z-index:220000;box-sizing:border-box;width:min(340px,calc(100vw - 24px));max-height:min(calc(100dvh - 24px),var(--radix-popover-content-available-height));overflow:auto;overscroll-behavior:contain;padding:16px;border:1px solid #dce2d2;border-radius:18px;background:#fffdf6;color:#4c5942;box-shadow:0 16px 48px #35432b26,0 3px 10px #35432b0d;outline:none;font:13px/1.5 Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;transform-origin:var(--radix-popover-content-transform-origin);animation:task-deadline-popover-enter .14s ease-out}.task-deadline-popover-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px;color:#4e6148;font-size:13px}.task-deadline-popover-header>span{display:flex;align-items:center;gap:7px}.task-deadline-popover-header strong{font-weight:600}.task-deadline-popover-header>button{display:grid;place-items:center;width:26px;height:26px;padding:0;border-radius:7px;color:#89967b}.task-deadline-popover-header>button:hover{background:#edf0e4;color:#526447}.todo-deadline-ring{width:40px;height:40px}.todo-deadline-track{fill:none;stroke:#dce4d5;stroke-width:2.5}.todo-deadline-arc{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;transform:rotate(-90deg);transform-origin:20px 20px;transition:stroke-dashoffset .3s ease}.todo-deadline-value{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#607354;font-size:10px;font-variant-numeric:tabular-nums}[data-deadline=urgent] .todo-deadline-button{color:#c89a49}[data-deadline=urgent] .todo-deadline-value,[data-deadline=urgent] .todo-deadline-status{color:#90631e}[data-deadline=late] .todo-deadline-button{color:#b96f5c}[data-deadline=late] .todo-deadline-value,[data-deadline=late] .todo-deadline-status{color:#985040}[data-deadline=late] .todo-deadline-meta{color:#85695f}[data-deadline=done] .todo-deadline-button{color:#afbaa5}[data-deadline=done] .todo-deadline-value{color:#8c9d80}.task-deadline-title{margin:0 0 12px;color:#859078;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.task-deadline-fields{min-width:0;margin:0;padding:0;border:0}.task-deadline-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.qingdan-calendar{--rdp-accent-color: #6d825b;--rdp-accent-background-color: #edf1e5;--rdp-day-width: 40px;--rdp-day-height: 34px;--rdp-day_button-width: 32px;--rdp-day_button-height: 32px;--rdp-day_button-border-radius: 9px;--rdp-selected-border: 1px solid transparent;--rdp-nav-height: 34px;--rdp-nav_button-width: 28px;--rdp-nav_button-height: 28px;--rdp-outside-opacity: .38;--rdp-weekday-padding: 8px 0 4px;font-size:12px;width:100%}.qingdan-calendar .rdp-months,.qingdan-calendar .rdp-month,.qingdan-calendar .rdp-month_grid{width:100%;max-width:none}.qingdan-calendar .rdp-month_grid{table-layout:fixed}.qingdan-calendar .rdp-day_button{margin:0 auto;font-weight:400}.qingdan-calendar .rdp-day_button:hover:not(:disabled){background:#eaf0e1}.qingdan-calendar .rdp-selected{font-size:inherit}.qingdan-calendar .rdp-selected .rdp-day_button,.qingdan-calendar .rdp-selected .rdp-day_button:hover{background:#748765;color:#fffef8;font-weight:600;box-shadow:0 2px 4px #52644717}.qingdan-calendar .rdp-today:not(.rdp-selected) .rdp-day_button{background:#edf1e5;color:#526447}.qingdan-calendar .rdp-weekday{color:#929b87;font-size:11px;font-weight:400;opacity:1}.qingdan-calendar .rdp-month_caption{font-size:13px;font-weight:550;align-items:center}.qingdan-calendar .rdp-dropdowns{flex-direction:row;gap:4px}.qingdan-calendar .rdp-dropdown_root{border-radius:7px;padding:3px 5px}.qingdan-calendar .rdp-dropdown_root:hover{background:#edf1e5}.qingdan-calendar .rdp-caption_label{gap:3px}.qingdan-calendar .rdp-chevron{fill:none;color:#89967b;width:14px;height:14px}.qingdan-calendar .rdp-button_next,.qingdan-calendar .rdp-button_previous{border-radius:8px}.qingdan-calendar .rdp-button_next:hover:not(:disabled),.qingdan-calendar .rdp-button_previous:hover:not(:disabled){background:#edf1e5}.qingdan-calendar .rdp-dropdown{background:#fffdf6;color:#4c5942}.qingdan-calendar .rdp-dropdown:focus-visible~.rdp-caption_label{outline:2px solid #91a27d;outline-offset:2px;border-radius:4px}.task-deadline-time-heading{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e5e8dc;margin-top:10px;padding-top:11px;font-size:12px}.task-deadline-time-heading>span:first-child{display:flex;align-items:center;gap:6px;color:#7b886e}.task-deadline-time-preview{font-variant-numeric:tabular-nums;color:#536947;font-weight:550}.task-deadline-time-wheels{position:relative;margin-top:6px;border-radius:12px;background:#f4f5ec;gap:22px;padding:6px 30px 0}.task-deadline-time-field{flex:1;min-width:0}.task-deadline-wheel-label{display:block;text-align:center;color:#8a957e;font-size:10px;padding:2px 0 0}.task-deadline-time-option{color:#929d87;font-variant-numeric:tabular-nums}.task-deadline-time-highlight{background:#e4ebd9;border-radius:8px;color:#465b39}.task-deadline-time-selected{font-size:19px;font-weight:550;font-variant-numeric:tabular-nums}.task-deadline-time-highlight[data-rwp-focused]{box-shadow:inset 0 0 0 1.5px #91a27d}.task-deadline-time-colon{position:absolute;left:50%;top:calc(50% + 12px);transform:translate(-50%,-50%);color:#839576;font-size:18px;pointer-events:none}.task-deadline-fields:disabled{opacity:.55}.task-deadline-summary{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:12px;color:#627651;font-size:11px;font-variant-numeric:tabular-nums}.task-deadline-hint{margin:3px 0 0;color:#929b87;font-size:10px;text-align:center}.task-deadline-error{margin:10px 0 0;color:#a85f4d;font-size:12px}.task-deadline-actions{position:sticky;bottom:-16px;z-index:1;padding-bottom:2px;background:#fffdf6;display:flex;align-items:center;gap:6px;margin-top:14px;padding-top:12px;border-top:1px solid #e5e8dc}.task-deadline-actions>span{flex:1}.task-deadline-actions button{padding:7px 12px;border-radius:9px;font-size:12px}.task-deadline-actions .task-deadline-remove{padding-left:0;color:#939b89;font-size:11px}.task-deadline-remove:hover:not(:disabled){color:#a36557}.task-deadline-cancel{color:#7b886e}.task-deadline-cancel:hover{background:#edf1e5}.task-deadline-confirm{background:#748765;color:#fffef8;min-width:66px}.task-deadline-confirm:hover:not(:disabled){background:#637851}.task-deadline-popover button:focus-visible{outline:2px solid #91a27d;outline-offset:2px}@keyframes task-deadline-popover-enter{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}@keyframes task-deadline-breathe{0%,to{opacity:.12}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.checklist-list .todo-row[data-deadline=urgent] .todo-deadline-glow{animation:none;opacity:.65}.todo-deadline-arc{transition:none}.task-deadline-popover{animation:none}}@media(max-width:380px){.task-deadline-popover{padding:12px;border-radius:14px}.qingdan-calendar{--rdp-day_button-width: 30px}.task-deadline-time-wheels{padding-left:22px;padding-right:22px}}.task-completion-copy{position:fixed;z-index:160;pointer-events:none;box-sizing:border-box;border-radius:8px;transform-origin:top left;will-change:transform;overflow:visible}.todo-row-slot{display:flow-root}.completion-strike{position:absolute;height:1px;background:#b1bba5;transform-origin:left center;pointer-events:none}.todo-row[data-completion-hidden=true]{visibility:hidden}.completion-source-placeholder,.completion-target-slot,.completion-target-buffer{overflow:hidden;overflow-anchor:none;pointer-events:none}.agent-list:has(.completion-source-placeholder) .todo-panel-body{overflow-anchor:none}.completion-announcement{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(prefers-reduced-motion:reduce){.task-completion-copy{display:none}.todo-row[data-completion-hidden=true]{visibility:visible}}.arranged-workspace{display:flex;flex-direction:column;padding:18px clamp(18px,5vw,76px) 26px;color:#4a5642}.project-navigation{display:flex;align-items:flex-end;gap:8px;flex-shrink:0;min-width:0;border-bottom:1px solid #bdc9af80;margin-bottom:14px}.project-tabs{display:flex;align-items:flex-end;min-width:0;overflow-x:auto;padding:5px 2px 0;scrollbar-width:thin;scrollbar-color:#bdc9af80 transparent;isolation:isolate}.project-tab{position:relative;display:flex;align-items:center;gap:9px;flex:0 0 176px;min-width:138px;max-width:236px;height:41px;padding:0 23px 0 17px;border:1px solid #d5decba6;border-bottom:0;border-radius:15px 15px 0 0;background:#e8eddf;color:#859079;transition:background .16s,color .16s}.project-tab+.project-tab{margin-left:-10px}.project-tab:hover{background:#f0f3e9;color:#526447;z-index:1}.project-tab[aria-selected=true]{z-index:2;height:45px;border-color:#bdc9af;background:#fbfcf5;color:#4c6240;box-shadow:0 -3px 10px #61774206}.project-tab>svg{flex-shrink:0;opacity:.7}.project-tab-title{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;text-align:left}.project-tab-count{flex-shrink:0;font-size:10px;font-variant-numeric:tabular-nums;border-radius:5px;padding:2px 5px;background:#657c4710}.project-tab-add{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:9px;margin-bottom:5px;color:#82916f}.project-tab-add:hover:not(:disabled){background:#ffffff80;color:#526447}.project-tab-add:disabled{opacity:.35}.project-tab:focus-visible,.project-tab-add:focus-visible{outline:2px solid #8fa87a;outline-offset:-4px}.arranged-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;height:35px;margin-bottom:15px;color:#89937f;font-size:12px}.arranged-toolbar>div{display:flex;align-items:center;gap:8px}.arranged-project-heading{min-width:0}.arranged-project-heading>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arranged-project-heading>svg,.arranged-toolbar button{flex-shrink:0}.arranged-toolbar button{display:flex;align-items:center;justify-content:center;gap:7px;height:31px;min-width:31px;padding:0 9px;border:1px solid #fff9;border-radius:8px;color:#74816c;background:#ffffff6e}.arranged-toolbar button:hover:not(:disabled){background:#ffffffe6}.arranged-toolbar button:disabled{opacity:.35}.arranged-toolbar .arranged-collection{margin-left:8px}.arranged-view-switch{display:flex;gap:3px;padding:3px;border-radius:10px;background:#dce5d080}.arranged-toolbar .arranged-view-switch button{border:0;background:transparent;height:27px}.arranged-toolbar .arranged-view-switch button[aria-pressed=true]{background:#fff;color:#4e653b;box-shadow:0 1px 4px #3d542718}.arranged-calendar-panel{flex:1;min-height:0;overflow:auto}.arranged-collection>span{font-variant-numeric:tabular-nums;color:#9ca78f}.arranged-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;flex:1;min-height:0;overflow-x:auto;padding:1px 1px 4px;scrollbar-width:thin}.checklist-pane{display:flex;flex-direction:column;min-width:0;min-height:0}.arranged-workspace .todo-pagebar{flex-shrink:0;height:36px;margin:0 0 13px;gap:8px;position:relative;z-index:40}.arranged-workspace .todo-pagebar .checklist-page-heading{gap:3px;flex:1;min-width:0}.arranged-workspace .todo-pagebar .checklist-page-actions{gap:4px;flex-shrink:0}.arranged-workspace .checklist-page-actions>button{width:26px;height:28px}.checklist-list,.checklist-empty{flex:1;min-width:0;min-height:0;border:1px solid #ffffffdf;border-radius:18px;box-shadow:0 12px 28px #68724207;overflow:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fbfbf68f}.checklist-list{display:flex;flex-direction:column}.checklist-pane.is-active .checklist-list{border-color:#bcc8ad;box-shadow:0 12px 28px #68724207,0 0 0 1px #aaba9410}.checklist-list .todo-panel{flex:1;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.checklist-list .done-panel{background:#f6f8f14d}.checklist-list .todo-panel>header{align-items:center;gap:8px;padding:15px 20px 10px;min-height:56px}.checklist-list .todo-panel h1{font-size:16px;letter-spacing:.3px;gap:7px;margin:0}.checklist-list .todo-panel h1 small{background:none;min-width:auto;height:auto;padding:0;font-size:11px}.checklist-clear-completed{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;margin-left:auto;padding:6px 8px;border-radius:7px;color:#74816c;font-size:12px;white-space:nowrap}.checklist-clear-completed:hover:not(:disabled){color:#9e5748;background:#a8624d0d}.checklist-clear-completed:disabled{opacity:.35}.checklist-clear-completed:focus-visible{outline:2px solid #8fa87a;outline-offset:2px}.checklist-list .todo-panel-body{padding:0 18px 14px;overflow-x:hidden;scrollbar-gutter:stable}.checklist-panel-actions{display:flex;align-items:center;gap:6px;color:#8b9b7c}.checklist-sort-deadline{display:inline-flex;align-items:center;gap:4px;padding:5px 7px;border-radius:7px;font-size:12px;white-space:nowrap}.checklist-sort-deadline:hover:not(:disabled){color:#637c50;background:#dfe7d350}.checklist-sort-deadline:disabled{opacity:.35}.checklist-sort-deadline:focus-visible{outline:2px solid #8fa87a;outline-offset:2px}.checklist-list .todo-row[data-reorderable=true]{cursor:grab}.checklist-list .todo-row.is-reordering{opacity:.45;cursor:grabbing}.checklist-list .todo-row.drop-before{box-shadow:inset 0 2px #8fa87a}.checklist-list .todo-row.drop-after{box-shadow:inset 0 -2px #8fa87a}.checklist-list .todo-panel-action{width:23px;height:23px}.checklist-list .todo-row,.checklist-list .todo-draft{gap:9px;padding:12px 1px;min-height:49px}.checklist-list .todo-copy,.checklist-list .todo-copy .block-editor{font-size:14px}.checklist-list .todo-row-tools{gap:0;flex-shrink:0}.checklist-list .todo-row-tools button{width:20px}.checklist-list .todo-circle{margin-top:4px;width:16px;height:16px;flex-basis:16px}.checklist-list .todo-empty-row{min-height:43px;border-bottom:0;gap:7px}.checklist-list .todo-empty-row>span{font-size:12px}.checklist-list .todo-row.is-selected:not(:has(.block-editor)){background:#dfe7d350}.checklist-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#98a18c;padding:30px;gap:12px}.checklist-empty h2{font-size:18px;font-weight:500;color:#687b5c;margin:8px 0 0}.checklist-empty .button{display:flex;align-items:center;gap:6px}.checklist-empty-done{font-size:12px;color:#a3ac98;padding-top:8px}.arranged-columns:has(.completion-source-placeholder) .todo-panel-body{overflow-anchor:none}.cloud-canvas .view-mode-switch{margin-left:auto}.cloud-canvas .view-mode-switch button{display:flex;align-items:center;white-space:nowrap}@keyframes checklist-menu-in{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}@keyframes checklist-menu-out{to{opacity:0;transform:translateY(-3px)}}@media(max-width:1150px){.arranged-workspace{padding:16px 20px 20px}.arranged-columns{gap:16px}.arranged-workspace .todo-page-count{display:none}.cloud-canvas .board-title{max-width:130px}.cloud-canvas .presence>span:last-child:not(.avatar){display:none}}@media(max-width:820px){.cloud-canvas .sync-indicator{display:none}.cloud-canvas .board-title{max-width:100px}.cloud-canvas .nav-start{gap:7px}.cloud-canvas .presence{display:none}}@media(max-width:600px){.arranged-workspace{padding:10px 12px 14px}.arranged-columns{grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(240px,1fr));overflow-y:auto;gap:12px}.project-tab{flex-basis:156px;min-width:124px;padding-left:12px;padding-right:18px}.arranged-toolbar{gap:6px}.arranged-toolbar>div{gap:3px}.arranged-project-heading>svg{display:none}.cloud-canvas .board-title,.cloud-canvas .nav-divider,.cloud-canvas .brand{display:none}.cloud-canvas .view-mode-switch{margin-left:0}.cloud-canvas .view-mode-switch button{padding:5px 7px}.cloud-canvas .share-button{font-size:11px;padding:7px}}@media(prefers-reduced-motion:reduce){.arranged-workspace *,.arranged-workspace *:before{animation-duration:0s!important;transition-duration:0s!important;scroll-behavior:auto!important}}.checklist-board-picker{position:relative;min-width:0;max-width:min(45vw,400px)}.arranged-workspace .todo-pagebar .checklist-board-trigger{display:flex;gap:8px;align-items:center;width:auto;max-width:100%;height:34px;padding:0 11px;border:1px solid transparent;border-radius:10px;color:#5c6b4f;background:transparent;transition:background .15s,border-color .15s,box-shadow .15s}.checklist-board-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.checklist-board-trigger>svg{flex-shrink:0;color:#8b9b7c}.checklist-board-trigger>svg:last-child{margin-left:6px;transition:transform .18s}.checklist-board-picker.open .checklist-board-trigger>svg:last-child{transform:rotate(180deg)}.arranged-workspace .todo-pagebar .checklist-board-trigger:hover,.checklist-board-picker.open .checklist-board-trigger{background:#fbfcf6c7;border-color:#ffffffdc;box-shadow:0 2px 7px #63744908}.checklist-board-options{position:absolute;top:calc(100% + 8px);left:0;z-index:30;width:286px;max-width:calc(100vw - 70px);max-height:min(360px,60dvh);overflow:auto;scrollbar-width:thin;padding:7px;border:1px solid #ffffffed;border-radius:14px;background:#fbfcf6f5;box-shadow:0 14px 42px #4857371b,0 2px 8px #4857370b;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform-origin:24px top;animation:checklist-menu-in .18s cubic-bezier(.2,.8,.2,1)}.checklist-board-options.closing{pointer-events:none;animation:checklist-menu-out .12s ease-in forwards}.arranged-workspace .todo-pagebar .checklist-board-options>button{display:flex;align-items:center;gap:10px;width:100%;height:auto;min-height:62px;text-align:left;padding:10px 11px;border:0;border-radius:9px;color:#526146;background:transparent}.arranged-workspace .todo-pagebar .checklist-board-options>button:hover,.arranged-workspace .todo-pagebar .checklist-board-options>button:focus-visible{background:#edf1e5;outline:none}.arranged-workspace .todo-pagebar .checklist-board-options>button[aria-selected=true]{background:#eaf0e1}.checklist-board-swatch{width:29px;height:32px;display:grid;place-items:center;border-radius:7px;background:#e9e0cb;color:#95896c;flex-shrink:0}.checklist-board-options>button:nth-child(2n) .checklist-board-swatch{background:#e0e7d7;color:#849274}.checklist-board-label{flex:1;min-width:0}.checklist-board-label strong{display:block;font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checklist-board-label small{display:block;margin-top:3px;font-size:10px;color:#9ca58f}.checklist-hover-text{display:block;overflow:hidden;min-width:0;white-space:nowrap;overflow-wrap:normal}.checklist-hover-text>.block-copy{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:100%}.checklist-hover-text.is-scrolling>.block-copy{width:max-content;max-width:none;overflow:visible;text-overflow:clip}.checklist-hover-text.show-full-text,.checklist-hover-text.show-full-text>.block-copy{white-space:pre-wrap;overflow:visible;width:auto;overflow-wrap:anywhere}.checklist-hover-text:focus-visible{outline:1px solid #a4b795;outline-offset:2px;border-radius:3px}.account-flow fieldset,.email-settings fieldset{border:0;padding:0;margin:0;min-width:0}.account-notice,.dialog .account-notice{color:#46694e;background:#f0f4ec;padding:12px;border-radius:8px;font-size:12px;line-height:1.7}.account-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:12px}.account-actions button,.auth-forgot{font-size:12px;padding:4px 0}.account-actions .text-button{margin-top:0}.auth-forgot{display:block;margin:12px 0 0 auto}.recovery-back{margin-top:16px}.account-hint,.dialog .account-hint{display:block;color:#828a80;font-size:11px;line-height:1.7}.email-identity,.email-settings p{overflow-wrap:anywhere}.email-identity,.dialog .email-identity{color:#697e63;font-size:12px;line-height:1.7}.email-settings .email-content{margin-top:16px}.email-settings .account-hint+.primary{margin-top:16px}.avatar-cropper{margin:18px 0 26px;padding:16px;min-width:0;border:1px solid #dce5d7;border-radius:12px;background:#f8faf6}.avatar-cropper h3{margin:0 0 8px;font-size:15px;font-weight:600}.avatar-cropper>p{color:#778170;font-size:11px;line-height:1.7;margin:8px 0 14px}.avatar-crop-stage{position:relative;width:100%;max-width:320px;aspect-ratio:1;margin:0 auto;overflow:hidden;border-radius:8px;background:#dce1d9;isolation:isolate;touch-action:none}.avatar-crop-stage>canvas{display:block;width:100%;height:100%}.avatar-crop-selection{position:absolute;box-sizing:border-box;border:2px solid white;border-radius:50%;box-shadow:0 0 0 999px #10190db3;cursor:move;touch-action:none;-webkit-user-select:none;user-select:none}.avatar-crop-selection:focus-visible{outline:3px solid #dbeac8;outline-offset:3px}.avatar-crop-selection .avatar-crop-resize{position:absolute;left:85.355%;top:85.355%;width:28px;height:28px;padding:0;transform:translate(-50%,-50%);border:3px solid #fff;border-radius:50%;background:#577b60;cursor:nwse-resize;touch-action:none}.avatar-crop-resize:after{content:"↔";display:block;transform:rotate(45deg);color:#fff;font-size:15px;line-height:1}.avatar-crop-controls{display:flex;align-items:center;gap:20px;margin-top:16px}.avatar-crop-controls fieldset{flex:1;min-width:0;margin:0;padding:0;border:0}.avatar-crop-controls label{display:block;margin:0 0 12px;font-size:12px}.avatar-crop-controls label:last-child{margin-bottom:0}.avatar-crop-controls label>span{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px}.avatar-crop-controls input[type=range]{display:block;width:100%;height:24px;padding:0;margin:0;border:0;accent-color:#577b60;cursor:pointer}.avatar-crop-preview{flex:0 0 64px;text-align:center;font-size:10px;color:#778170}.avatar-crop-preview canvas{display:block;width:64px;height:64px;margin-bottom:7px;border-radius:50%;background:#fff}.avatar-cropper .form-error{color:#ae5144}.avatar-cropper .avatar-crop-note{margin:14px 0}.avatar-crop-actions{display:flex;justify-content:flex-end;gap:8px}.avatar-crop-actions button{padding:9px 14px}@media(max-width:420px){.avatar-cropper{padding:12px}.avatar-crop-controls{gap:12px}}.auth-page{height:100dvh;overflow-y:auto}.auth-main{max-width:1200px;margin:auto;display:grid;grid-template-columns:1fr 440px;align-items:center;gap:80px;padding:64px 40px;min-height:calc(100dvh - 86px)}.auth-intro h1{font-size:44px;font-weight:550;line-height:1.5;letter-spacing:1px}.auth-intro>p{font-size:15px;color:#828a80;line-height:2;margin-top:24px}.auth-benefits{display:grid;gap:22px;list-style:none;padding:0;margin-top:48px;color:#697e63;font-size:13px}.auth-benefits li{display:flex;gap:14px;align-items:center}.auth-card{width:100%;box-shadow:0 16px 60px #2639270d}.auth-tabs{display:flex;border-bottom:1px solid #e4e9df;margin-bottom:26px;gap:24px}.auth-tabs button{padding:0 2px 12px;color:#8b9386;font-size:14px;border-bottom:2px solid transparent}.auth-tabs button[aria-pressed=true]{color:#46694e;border-color:#577b60}.auth-card fieldset{border:0;padding:0;margin:0;min-width:0}.auth-card label{margin:17px 0}.auth-card h2{font-size:22px}.auth-card p{margin-bottom:18px}.auth-card .auth-claim{flex-direction:row;align-items:flex-start;line-height:1.7;background:#f0f4ec;padding:12px;border-radius:8px}.auth-claim input{width:15px;margin-top:3px;accent-color:#577b60}.auth-claim small{display:block;margin-top:4px}.auth-footnote{display:block;font-size:11px;line-height:1.8;color:#929b88;margin-top:20px}.profile-settings details{margin-top:24px;border-top:1px solid #e4e9df;padding-top:20px}.profile-avatar-setting{display:flex;align-items:center;gap:16px;margin:24px 0}.profile-avatar-setting .profile-avatar{width:64px;height:64px;font-size:24px}.profile-avatar-actions{display:flex;flex-wrap:wrap;gap:8px}.profile-avatar-actions button{padding:8px 11px}.profile-avatar-setting small{display:block;color:#828a80;font-size:11px;line-height:1.7;margin-top:8px}.profile-settings summary{cursor:pointer;font-size:13px;color:#5d6b57}.profile-settings .profile-notice{color:#46694e;background:#f0f4ec;padding:12px;border-radius:8px}.logout-button{margin-top:24px}@media(min-width:851px)and (max-height:800px){.auth-main{padding:24px 40px}.auth-page .auth-card{padding:24px 30px}.auth-page .auth-card label{margin:10px 0;gap:6px}.auth-page .auth-card input{padding:9px 12px}.auth-page .auth-card>p{margin:8px 0 14px}.auth-page .auth-tabs{margin-bottom:18px}.auth-page .auth-footnote{margin-top:12px}}.dialog:has(.profile-settings){max-height:90dvh;overflow-y:auto}@media(max-width:850px){.auth-main{grid-template-columns:1fr;max-width:520px;gap:30px;padding:32px 22px}.auth-intro h1{font-size:30px}.auth-intro>p,.auth-benefits{display:none}.auth-intro h1 br{display:none}}/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\!visible{visibility:visible!important}.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.isolate{isolation:isolate}.\!container{width:100%!important}@media(min-width:40rem){.\!container{max-width:40rem!important}}@media(min-width:48rem){.\!container{max-width:48rem!important}}@media(min-width:64rem){.\!container{max-width:64rem!important}}@media(min-width:80rem){.\!container{max-width:80rem!important}}@media(min-width:96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.\!block{display:block!important}.block{display:block}.contents{display:contents}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{color:#343a36;font-synthesis:none;text-rendering:optimizelegibility;--ink:#343a36;--muted:#858b85;--line:#e7eae4;--green:#577b60;--shadow:0 10px 40px #23362412;--canvas-background:#ecedef;--canvas-grid:#d0d3d8;--frame-border:#bbc0c7;--frame-active:#8e959f;background:#ecedef;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}button:disabled{cursor:default;opacity:.38}button,a{-webkit-tap-highlight-color:transparent}button svg{flex-shrink:0}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline-offset:3px;outline:2px solid #92ad91}#root,.app-shell{height:100dvh;overflow:hidden}.topbar{border-bottom:1px solid var(--line);z-index:20;-webkit-user-select:none;user-select:none;background:#fff;justify-content:space-between;align-items:center;gap:16px;height:64px;padding:0 26px;display:flex;position:relative}.nav-start,.nav-end{align-items:center;gap:10px;min-width:0;display:flex}.nav-start{gap:20px}.brand{letter-spacing:2px;white-space:nowrap;align-items:center;gap:10px;font-size:19px;font-weight:600;display:flex}.brand-mark{background:#68896e;border-radius:7px 7px 9px;width:25px;height:28px;display:inline-block;position:relative;transform:rotate(-5deg)}.brand-mark:before,.brand-mark:after{content:"";background:#fff9;border-radius:2px;height:2px;position:absolute;left:6px}.brand-mark:before{width:13px;top:10px}.brand-mark:after{width:8px;top:16px}.nav-divider{background:var(--line);flex-shrink:0;width:1px;height:20px}.project-switch{color:#515a51;background:0 0;border:0;gap:12px;max-width:240px;padding:8px 2px;font-size:14px}.project-switch span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-switch svg{color:#969d93}.icon-button{color:#727a71;background:0 0;border:0;border-radius:7px;flex-shrink:0;width:32px;height:32px}.icon-button:hover:not(:disabled){color:#414c40;background:#f0f3ee}.help-button{color:#61715a;white-space:nowrap;background:#f8faf6;border:1px solid #e2e8dd;border-radius:7px;flex-shrink:0;gap:5px;height:32px;padding:0 9px;font-size:12px}.help-button:hover{background:#edf2e8;border-color:#c9d4c2}.save-status{color:#92988f;white-space:nowrap;background:0 0;border:0;gap:6px;padding:5px;font-size:11px}.status-dot{background:#80a082;border-radius:50%;width:5px;height:5px}.save-status[data-state=error]{color:#bd6a46}.save-status[data-state=error] .status-dot{background:#bd6a46}.save-status[data-state=saving] .status-dot{background:#b8a170}.save-status[data-state=readonly] .status-dot{background:#b1a274}.history-buttons{gap:2px;display:flex}.zoom-button{color:#697366;font-variant-numeric:tabular-nums;background:0 0;border:0;gap:5px;min-width:64px;padding:6px;font-size:12px}.add-button{color:#55734f;background:#f1f5ef;border:1px solid #dbe5d8;border-radius:7px;gap:6px;height:33px;padding:0 10px;font-size:12px}.add-button:hover{background:#e7efe3}.return-button{color:var(--green);background:#f1f5ee;border:0;border-radius:6px;gap:5px;padding:6px 9px;font-size:11px}.canvas{touch-action:none;background-color:var(--canvas-background);height:calc(100dvh - 64px);position:relative;overflow:hidden;outline:none!important}.project-type-tag{color:#737b85;cursor:default;background:#f0f1f3;border:1px solid #e1e3e6;border-radius:6px;flex-shrink:0;align-items:center;gap:5px;padding:4px 8px;font-size:11px;display:inline-flex}.canvas.arranged{touch-action:pan-y;overscroll-behavior:contain;scrollbar-gutter:stable;scroll-behavior:auto;overflow:hidden auto}.arranged .canvas-world{width:100%;min-height:100%;position:relative}.arranged .canvas-object{touch-action:pan-y;transform-origin:0 0}.arranged .frame-heading,.arranged .frame-edge{cursor:default}.arranged .collection-dock,.arranged .image-toolbar{position:fixed}.arranged .arranged-entering{z-index:100000!important}.arranged .empty-canvas{z-index:1}.arranged-archive{z-index:3;color:#6f786a;opacity:0;pointer-events:none;cursor:pointer;background:#fafbf9ed;border:1px solid #aab0a445;border-radius:8px;place-items:center;width:27px;height:27px;padding:0;transition:opacity .12s,background .12s;display:grid;position:absolute;top:6px;right:6px;box-shadow:0 2px 5px #333b3210}.arranged-object:hover>.arranged-archive,.arranged-object:focus-within>.arranged-archive{opacity:1;pointer-events:auto}.arranged-archive:hover{color:#4f6943;background:#edf1e8}.arranged-archive:focus-visible{outline-offset:2px;outline:2px solid #7b906d}.arranged.is-dragging .arranged-archive{visibility:hidden}.arranged .frame-heading{cursor:grab;padding-right:40px}.arranged .note-paper{cursor:grab}.arranged .note-blocks{cursor:default}.arranged .note-paper.is-editing{cursor:text}.arranged-placeholder{pointer-events:none;background:#dce0d838;border:1px dashed #aeb6a980;border-radius:9px;position:absolute}.placeholder-collection{border-radius:14px}.arranged-collection-overlay{z-index:42;pointer-events:none;width:0;height:0;position:fixed}.arranged-floating{transform:scale(var(--drag-scale,1));transform-origin:0 0;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 12px 16px #30382c25);position:absolute}.arranged-floating.is-returning{animation:.18s cubic-bezier(.2,.75,.2,1) both arranged-return}@keyframes arranged-return{0%{transform:translate(0) scale(var(--drag-scale,1))}to{transform:translate(var(--return-x),var(--return-y)) scale(1)}}@media(hover:none){.arranged-archive{opacity:1;pointer-events:auto}}@media(prefers-reduced-motion:reduce){.arranged-archive{transition:none}.arranged-floating.is-returning{animation-duration:1ms}}.radial-create{z-index:90;-webkit-user-select:none;user-select:none;touch-action:none;width:0;height:0;position:fixed}.radial-orbit{left:calc(-1 * var(--orbit-radius));top:calc(-1 * var(--orbit-radius));width:calc(2 * var(--orbit-radius));height:calc(2 * var(--orbit-radius));pointer-events:none;border:1px solid #a9afb7;border-radius:50%;place-items:center;display:grid;position:absolute}.radial-fill{animation:radial-fill var(--hold-time) linear both;background:#bdc1c8a6;border-radius:50%;position:absolute;top:0;right:0;bottom:0;left:0}.radial-create.is-ready .radial-fill{animation:none;transform:scale(1)}.radial-orbit svg{color:#707986;position:relative}.radial-create button{color:#555f6d;background:#fafbfc;border:1px solid #d5d9df;border-radius:50%;flex-direction:column;gap:2px;width:58px;height:58px;margin:-29px;transition:background .12s,box-shadow .12s;animation:.16s ease-out both radial-action-in;position:absolute;box-shadow:0 5px 16px #30384617,0 1px 2px #3038460a}.radial-create button span{font-size:11px;line-height:16px}.radial-create button:hover{background:#fff;box-shadow:0 5px 20px #30384630}.radial-create button:focus-visible{outline-offset:3px;outline:2px solid #8c98aa}@keyframes radial-fill{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes radial-action-in{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.radial-create button{animation:none}.radial-fill{opacity:.45;animation:none;transform:scale(1)}}@media(max-width:760px){.project-type-tag svg{display:none}.nav-start{gap:10px}}.canvas.has-grid{background-image:radial-gradient(circle,var(--canvas-grid) .8px,transparent .9px);background-size:var(--grid-size) var(--grid-size);background-position:var(--grid-x) var(--grid-y)}.canvas.space-pan,.canvas.is-dragging{cursor:grabbing}.canvas-world,.canvas-drag-layer{transform-origin:0 0;z-index:0;width:0;height:0;position:absolute;top:0;left:0}.canvas-drag-layer{z-index:42;pointer-events:none}.canvas-drag-layer .resize-handle{visibility:hidden}.canvas-drag-layer>.object-note .note-paper{box-shadow:0 14px 32px #22341c30}.canvas-drag-layer>.object-frame,.canvas-drag-layer>.object-collection{filter:drop-shadow(0 10px 16px #22341c24)}.canvas-object{-webkit-user-select:none;user-select:none;touch-action:none;outline-offset:3px;border-radius:9px;outline:1px solid #0000;position:absolute}.canvas-object.is-selected{outline-color:#9caf94}.canvas-object.located{outline-offset:6px;outline:2px solid #87a875}.canvas-object.object-frame.is-selected,.canvas-object.object-frame.located{outline-color:var(--frame-active)}.object-frame{pointer-events:none}.object-frame .frame-heading,.object-frame .resize-handle{pointer-events:auto}.frame-edge{pointer-events:auto;cursor:grab;z-index:1;position:absolute}.frame-edge.edge-top{height:8px;top:-4px;left:0;right:0}.frame-edge.edge-bottom{height:8px;bottom:-4px;left:0;right:0}.frame-edge.edge-left{width:8px;top:0;bottom:0;left:-4px}.frame-edge.edge-right{width:8px;top:0;bottom:0;right:-4px}.frame-heading{z-index:2;position:relative}.frame-heading>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.frame-heading small{flex-shrink:0}.group-frame{border:1px solid var(--frame-border);background:#f5f6f740;border-radius:10px;height:100%}.group-frame.collapsed{background:#e3e5e8}.inspiration-board .group-frame{pointer-events:auto;background:#e8dfcd;border-color:#c9bea8;border-radius:16px;box-shadow:0 7px 24px #55553e0b}.inspiration-board .frame-heading{color:#626550;height:50px}.inspiration-board .frame-title{font-weight:500}.inspiration-board .frame-heading>.object-action{flex-shrink:0}.inspiration-board .board-add{color:#737563;align-items:center;gap:4px;margin-left:auto;transition:color .15s;display:flex}.inspiration-board .board-add:hover:not(:disabled),.inspiration-board .board-add:focus-visible{color:#3f684b}.resize-handle.inspiration-resize{color:#9b937b;z-index:5;background:0 0;border:0;width:26px;height:26px;bottom:0;right:0}.board-member .note-paper{border:0;border-radius:2px;padding:18px 18px 20px;overflow:auto;box-shadow:0 2px 4px #645b4112,0 8px 22px #645b4118}.board-member.canvas-object{border-radius:2px}.board-member .color-sand{background:#f5eddc}.board-member .color-sage{background:#dce2d0}.board-member .color-rose{background:#ead5c7}.inspiration-draft{pointer-events:none;z-index:9999;background:#e8dfcd88;border:2px solid #a89e86;border-radius:16px;position:absolute}.inspiration-draft.is-blocked{background:#eed7cf88;border-color:#b57366}.frame-heading{color:#6b727d;cursor:grab;align-items:center;gap:8px;height:40px;padding:0 12px;font-size:13px;display:flex}.frame-heading small{color:#747b85;background:#dce0e5;border-radius:4px;padding:1px 6px;font-size:10px}.object-action{color:inherit;background:0 0;border:0;padding:2px}.note-paper{color:#343a36;background:#fff;border:0;border-radius:3px;padding:16px;font-size:16px;line-height:1.7;position:relative;overflow:hidden;box-shadow:0 2px 4px #27372408,0 8px 22px #2737240c}.note-paper.is-editing{-webkit-user-select:text;user-select:text;cursor:text;overflow:auto}.note-lock{color:#94a08d;position:absolute;top:7px;right:8px}.color-paper{background-color:#fff}.color-sage{background-color:#edf2e7}.color-sand{background-color:#faf2df}.color-rose{background-color:#f8ece8}.color-blue{background-color:#eaf0f7}.color-lavender{background-color:#f0ecf6}.note-blocks{flex-direction:column;gap:8px;display:flex}.note-block{align-items:flex-start;gap:10px;min-width:0;display:flex}.note-block input{accent-color:#698b69;cursor:pointer;flex-shrink:0;width:16px;height:16px;margin:7px 0 0}.block-copy,.block-editor{white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:none;user-select:none;background:0 0;width:100%;min-width:0;min-height:27px;box-shadow:none!important;border:0!important;outline:none!important}.block-editor{-webkit-user-select:text;user-select:text;cursor:text;caret-color:#414b3d}.block-editor:empty:before{content:attr(data-placeholder);color:#a6afa0;pointer-events:none}.block-copy.empty-copy{color:#a6afa0}.note-block.is-done>.block-copy,.note-block.is-done>.block-editor{color:#9aa392;-webkit-text-decoration:line-through #aeb8a5;text-decoration:line-through #aeb8a5;text-decoration-thickness:1px}.note-block.is-done .note-reference{color:inherit;-webkit-text-decoration:line-through #aeb8a5;text-decoration:line-through #aeb8a5;text-decoration-thickness:1px}.note-reference{vertical-align:baseline;white-space:normal;color:#637953;word-break:break-word;background:#e4edde;border:0;border-radius:4px;gap:4px;max-width:100%;margin:0 3px;padding:0 5px;font-size:12px;line-height:1.7;text-decoration:none;display:inline-flex}.note-reference.unavailable{color:#9a8a80;background:#eeeae5}.add-line{visibility:hidden;color:#a0aa97;background:0 0;border:0;gap:4px;margin-top:13px;padding:2px 0;font-size:12px}.note-paper:hover .add-line,.is-selected .add-line,.note-paper:focus-within .add-line{visibility:visible}.resize-handle{cursor:nwse-resize;color:#91a286;z-index:2;background:#fff;border:1px solid #91a286;border-radius:3px;width:14px;height:14px;position:absolute;bottom:-5px;right:-5px}.resize-handle svg{width:10px;height:10px}.object-note>.resize-handle{opacity:0}.object-image img{object-fit:contain;pointer-events:auto;width:100%;height:100%;display:block}.object-image{border-radius:2px}.canvas-object.is-lifted{transform-origin:0 0;pointer-events:none;outline:2px solid #8ca67a;transition:box-shadow .1s;transform:scale(1);box-shadow:0 15px 36px #22341c35}.placement-preview{border:2px dashed var(--frame-active);pointer-events:none;z-index:99999;background:#c7cbd32e;border-radius:4px;position:absolute;box-shadow:inset 0 0 0 3px #f2f3f5b3}.placement-preview>span{color:#626b77;white-space:nowrap;background:#f3f4f6ef;border-radius:6px;padding:6px 10px;font-size:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.placement-frame{pointer-events:none;z-index:0;background:#dce0e615;border:1px solid #8e959f99;border-radius:10px;position:absolute}.group-hover-frame{border:2px dashed var(--frame-active);pointer-events:none;z-index:99999;background:#dce0e620;border-radius:10px;position:absolute}.group-drop-hint{z-index:43;pointer-events:none;color:#626b77;border:1px solid var(--frame-border);background:#fafbfdf5;border-radius:8px;max-width:212px;padding:9px 12px;font-size:12px;position:absolute;box-shadow:0 5px 18px #2b344218}.group-drop-hint>span:first-child{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.group-dwell-track{background:#dce0e5;border-radius:2px;height:3px;margin-top:7px;display:block;overflow:hidden}.group-dwell-track i{transform-origin:0;background:#8e959f;height:100%;animation:linear forwards group-dwell-fill;display:block}.group-drop-hint.is-ready .group-dwell-track i{animation:none;transform:scaleX(1)}@keyframes group-dwell-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.group-drop-hint:not(.is-ready) .group-dwell-track i{animation:none;transform:scaleX(0)}}.snap-guides{pointer-events:none;z-index:999999;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.snap-guides line{stroke:#729762;stroke-width:1px;stroke-dasharray:4 3}.collection-icon{color:#849879;cursor:grab;background:0 0;border:0;justify-content:center;align-items:center;width:64px;height:64px;padding:0;transition:transform .14s,color .14s;display:flex;position:relative}.collection-icon:hover{color:#566e48}.collection-dock{z-index:40;-webkit-user-select:none;user-select:none;touch-action:none;position:absolute}.collection-dock .collection-icon{cursor:pointer;transform-origin:0 0;background:#fafbf9;border:1px solid #bdcbb5;border-radius:12px;width:100%;height:100%}.collection-dock .collection-count{top:-4px;right:-4px}.receiving .collection-icon{color:#567942;filter:drop-shadow(0 5px 6px #66814b30);transform:scale(1.18)}.object-collection{border-radius:14px}.collection-count{color:#fff;background:#6b855c;border:2px solid #fafbf9;border-radius:10px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;display:grid;position:absolute;top:2px;right:2px}.collected-image{background:#f3f5ef;border-radius:4px;width:100%;overflow:hidden}.collection-anchor{pointer-events:none;z-index:100001;background:#849879;border:solid #fff;border-radius:50%;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #627b54}.collection-anchor.is-receiving{background:#41652e;box-shadow:0 0 0 3px #88ab6560}.collection-flight{transform-origin:0 0;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:99999;animation:.24s cubic-bezier(.2,.7,.2,1) both collect-into-icon;position:absolute}.collection-flight-child{position:absolute}.paper-collection-flight{z-index:100000;pointer-events:none;-webkit-user-select:none;user-select:none;color:#eee9de;width:0;height:0;animation:1s linear both paper-collect-travel;position:absolute}.paper-color-sage{color:#dce6d3}.paper-color-sand{color:#eee0bf}.paper-color-rose{color:#eed6d3}.paper-color-blue{color:#d4e3eb}.paper-color-lavender{color:#e1d9eb}.paper-crumple-sheet{transform-origin:50%;filter:drop-shadow(0 8px 12px #403b2926);background:currentColor;border-radius:8px;animation:1s ease-in-out both paper-crumple-sheet;position:absolute;overflow:hidden}.paper-crumple-sheet:after{content:"";background:conic-gradient(from 25deg at 36% 42%,#655d4d44,#fff9 16%,#0000 32%,#72624a55 49%,#fff8 70%,#0000 90%),linear-gradient(125deg,#0000 30%,#fff9 45%,#665a4144 50%,#0000 65%);animation:1s linear both paper-fold-shadows;position:absolute;top:0;right:0;bottom:0;left:0}.paper-crumple-ball{left:calc(var(--paper-size) / -2);top:calc(var(--paper-size) / -2);width:var(--paper-size);height:var(--paper-size);filter:drop-shadow(2px 5px 3px #443a292e);animation:1s ease-in-out both paper-crumple-ball;position:absolute;overflow:visible}.collection-dock.is-paper-collecting .collection-icon{transform-origin:bottom;animation:1s ease-in-out both paper-dock-catch}@keyframes paper-collect-travel{0%,36%{opacity:1;transform:translate(0)scale(1)}64%{transform:translate(var(--paper-mid-x),var(--paper-mid-y)) scale(1.05);opacity:1}88%{transform:translate(var(--paper-end-x),var(--paper-end-y)) scale(.7);opacity:1}to{transform:translate(var(--paper-end-x),var(--paper-end-y)) scale(.05);opacity:0}}@keyframes paper-crumple-sheet{0%{clip-path:polygon(0 0,33% 0,66% 0,100% 0,100% 33%,100% 66%,100% 100%,66% 100%,33% 100%,0 100%,0 66%,0 33%);opacity:1;transform:rotate(0)scale(1)}12%{opacity:1;transform:rotate(-6deg)skew(3deg,-3deg)scale(.88,.8)}24%{clip-path:polygon(12% 8%,38% 0,64% 7%,90% 2%,100% 40%,86% 61%,94% 91%,68% 100%,36% 88%,7% 97%,0 65%,13% 40%);opacity:1;transform:rotate(8deg)skew(-7deg,5deg)scale(.45,.55)}36%,to{transform:rotate(-16deg) scale(var(--paper-scale-x),var(--paper-scale-y));clip-path:polygon(27% 2%,45% 7%,62% 4%,84% 16%,94% 38%,100% 56%,84% 84%,63% 100%,39% 94%,13% 86%,0 54%,12% 24%);opacity:0}}@keyframes paper-fold-shadows{0%{opacity:0}22%,to{opacity:1}}@keyframes paper-crumple-ball{0%,22%{opacity:0;transform:rotate(-24deg)scale(.6)}36%{opacity:1;transform:rotate(12deg)scale(1.12,.9)}48%{opacity:1;transform:rotate(70deg)scale(1)}to{opacity:1;transform:rotate(385deg)scale(1)}}@keyframes paper-dock-catch{0%,72%{transform:scale(1)}85%{transform:scale(1.18,.9)rotate(-4deg)}94%{transform:scale(.96,1.13)rotate(3deg)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.paper-collection-flight,.paper-crumple-sheet,.paper-crumple-sheet:after,.paper-crumple-ball,.collection-dock.is-paper-collecting .collection-icon{animation-duration:1ms}}@keyframes collect-into-icon{0%{transform:translate(0) scale(var(--collect-start-scale));opacity:1}to{transform:translate(var(--collect-x),var(--collect-y)) scale(.06);opacity:0}}@media(prefers-reduced-motion:reduce){.canvas-object.is-lifted,.collection-icon{transition:none}.collection-flight{animation-duration:1ms}}.image-content,.image-content>svg,.image-editor{width:100%;height:100%;display:block}.image-content{overflow:hidden}.image-content>svg{pointer-events:none}.image-editor{cursor:crosshair;position:relative}.image-toolbar{z-index:30;color:#59664e;-webkit-user-select:none;user-select:none;background:#fffffff5;border:1px solid #dce1d6;border-radius:12px;align-items:center;gap:3px;padding:5px;font-size:12px;display:flex;position:absolute;box-shadow:0 6px 24px #27312014,0 1px 4px #2731200a}.image-toolbar button{min-height:32px;color:inherit;white-space:nowrap;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;gap:5px;padding:6px 9px;display:flex}.image-toolbar button:hover{background:#f0f4ec}.image-toolbar button:focus-visible{outline-offset:1px;outline:2px solid #799369}.image-toolbar button[aria-pressed=true],.image-toolbar button.image-tool-primary{color:#4d6c3d;background:#e8f0e1}.image-toolbar button:disabled{opacity:.4;cursor:default}.image-toolbar>i{background:#e2e6dc;width:1px;height:17px;margin:0 3px}.image-more-menu{background:#fff;border:1px solid #dce1d6;border-radius:10px;min-width:216px;max-width:280px;max-height:min(400px,100dvh - 145px);padding:6px;position:absolute;top:calc(100% + 7px);right:0;overflow-y:auto;box-shadow:0 8px 26px #27312018}.image-more-menu.opens-up{top:auto;bottom:calc(100% + 7px)}.image-more-menu button{justify-content:flex-start;width:100%;padding:8px 10px}.image-more-menu button span{text-overflow:ellipsis;overflow:hidden}.image-more-menu hr{border:0;border-top:1px solid #edf0e9;margin:4px}.image-menu-label{color:#8b9583;margin:8px 10px 4px;font-size:10px;display:block}.image-edit-hint{color:#7e8a75;white-space:nowrap;pointer-events:none;background:#fafbf9ec;border-radius:5px;padding:4px 8px;font-size:10px;position:absolute;top:calc(100% + 7px);left:50%;transform:translate(-50%)}.image-crop-overlay{position:absolute;top:0;right:0;bottom:0;left:0}.image-crop-shade{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.image-crop-shade>div{position:absolute;box-shadow:0 0 0 10000px #19241580}.image-crop-box{cursor:move;outline:1px solid #fff;position:absolute}.image-crop-box:before,.image-crop-box:after{content:"";pointer-events:none;opacity:.45;position:absolute}.image-crop-box:before{left:33.333%;right:33.333%;border-inline:1px solid #fff;inset-block:0}.image-crop-box:after{top:33.333%;bottom:33.333%;border-block:1px solid #fff;inset-inline:0}.image-crop-box>button{z-index:2;background:#fff;border:1px solid #607452;border-radius:2px;width:12px;height:12px;padding:0;position:absolute}[data-crop-corner=nw]{cursor:nwse-resize;top:-6px;left:-6px}[data-crop-corner=ne]{cursor:nesw-resize;top:-6px;right:-6px}[data-crop-corner=sw]{cursor:nesw-resize;bottom:-6px;left:-6px}[data-crop-corner=se]{cursor:nwse-resize;bottom:-6px;right:-6px}.image-crop-box>span{color:#fff;white-space:nowrap;pointer-events:none;background:#15220db8;border-radius:4px;padding:3px 7px;font-size:10px;position:absolute;bottom:9px;left:50%;transform:translate(-50%)}.image-annotation-input{color:#80552f;background:#fffdf1;border:1px solid #bcccb1;border-radius:5px;outline:none;width:45%;padding:7px 9px;font-size:13px;position:absolute;box-shadow:0 2px 8px #27312015}@media(max-width:420px){.image-toolbar{gap:1px;padding:4px;font-size:11px}.image-toolbar button{gap:3px;padding-inline:5px}}.zoomed-out .note-paper{box-shadow:none}.collection-box{transform-origin:50%;cursor:grab;background:#f4f7eff0;border:1px dashed #b7c5af;border-radius:12px;width:100%;height:100%;padding:18px;transition:transform .14s,border-color .14s}.receiving .collection-box{background:#eaf2e0;border-style:solid;border-color:#789664;transform:scale(1.04)}.collection-heading{color:#657658;align-items:center;gap:8px;font-size:13px;display:flex}.collection-heading small{background:#e1e9d9;border-radius:4px;margin-left:auto;padding:1px 6px;font-size:10px}.collection-preview{height:75px;padding-top:13px;overflow:hidden}.collection-preview>div{color:#929d88;white-space:nowrap;text-overflow:ellipsis;border-left:2px solid #d7e2ce;margin-bottom:3px;padding-left:5px;font-size:11px;line-height:22px;overflow:hidden}.collection-preview>span{text-align:center;color:#a0ae92;margin-top:10px;font-size:12px;display:block}.collection-caption{color:#a0ae92;justify-content:space-between;align-items:center;font-size:10px;display:flex}.marquee{border:1px solid var(--frame-active);pointer-events:none;z-index:2147483647;background:#8e959f18;position:absolute}.empty-canvas{pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;padding-bottom:60px;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.empty-mark{color:#91a185;background:#f4f7f0;border:1px solid #e4eade;border-radius:18px;justify-content:center;align-items:center;width:66px;height:66px;margin-bottom:26px;display:flex;position:relative;transform:rotate(-7deg)}.empty-mark span{background:#a7b79b;border:2px solid #f5f7f1;border-radius:50%;width:9px;height:9px;position:absolute;top:8px;right:8px}.empty-canvas h1{letter-spacing:1px;color:#77816d;font-size:23px;font-weight:400}.empty-canvas p{color:#a7afa1;margin:12px 0 20px;font-size:13px}.empty-canvas button{color:#798d66;pointer-events:auto;background:#f2f6ed;border:1px solid #dce5d4;border-radius:6px;gap:5px;padding:8px 13px;font-size:12px}.empty-tips{color:#b2bbab;margin-top:24px;font-size:10px}.empty-tips span{margin:0 10px}.context-menu{z-index:100;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffffa;border:1px solid #e4e9e0;border-radius:10px;min-width:215px;max-width:min(340px,100vw - 16px);max-height:calc(100dvh - 16px);padding:5px;position:fixed;overflow:auto;box-shadow:0 8px 40px #24351c1a}.context-menu button{text-align:left;background:0 0;border:0;border-radius:5px;justify-content:flex-start;gap:8px;width:100%;min-height:33px;padding:8px 10px;font-size:12px;display:flex}.context-menu button:hover:not(:disabled),.context-menu button:focus-visible{background:#f0f4eb;outline:none}.menu-icon{color:#929f86;flex-shrink:0;align-items:center;width:17px;display:inline-flex}.context-menu kbd{color:#a7afa0;margin-left:auto;padding-left:18px;font-size:10px}.menu-separator{background:#edf0e9;height:1px;margin:4px 6px}.danger{color:#ad7263!important}.selection-bar{z-index:25;border:1px solid var(--line);box-shadow:var(--shadow);white-space:nowrap;background:#fff;border-radius:10px;align-items:center;gap:10px;padding:6px 9px 6px 14px;font-size:12px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%)}.selection-bar>span{color:#97a18e;border-right:1px solid var(--line);padding-right:5px}.selection-bar>button:not(.icon-button){background:0 0;border:0;gap:5px;padding:6px;font-size:11px}.toast{z-index:200;color:#f4f7f0;max-width:calc(100vw - 30px);box-shadow:var(--shadow);background:#394832f5;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:12px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast>svg{color:#b5c6a6}.toast>button{color:#d1e9b5;white-space:nowrap;background:0 0;border:0;padding:0;font-size:12px}.toast .toast-close{color:#b1bca7}.modal-backdrop{z-index:110;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#26331c29;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.modal{background:#fff;border:1px solid #e7ece2;border-radius:14px;width:420px;max-width:100%;max-height:85dvh;padding:24px;overflow:auto;box-shadow:0 20px 80px #22341924}.modal.wide{width:560px}.modal>header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.modal h2{color:#424e39;font-size:17px;font-weight:500}.dialog-description{color:#8a9480;margin-bottom:20px;font-size:13px;line-height:1.9}.dialog-footnote{color:#a4ad9d;margin-top:15px;font-size:11px;line-height:1.9}.modal.help-tips{width:820px}.help-tips>header{margin-bottom:6px}.help-tips-intro{color:#899181;margin-bottom:20px;font-size:12px}.help-tip-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.help-tip-group{background:#f8faf5;border:1px solid #e7ebdf;border-radius:11px;padding:17px}.help-tip-group h3{color:#56704c;align-items:center;gap:8px;margin-bottom:14px;font-size:13px;font-weight:600;display:flex}.help-tip-group ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.help-tip-group li{font-size:12px;line-height:1.6;display:block}.help-tip-group strong{color:#4d5846;margin-right:3px;font-weight:600}.help-tip-group li span{color:#7b8475}.help-tips-footer{color:#92998a;text-align:right;margin-top:18px;font-size:11px}@media(max-width:640px){.help-tip-grid{grid-template-columns:minmax(0,1fr)}.help-button{padding:0 7px}.help-button span{display:none}}.field-label{color:#7c8871;margin-bottom:8px;font-size:12px;display:block}.text-field{background:#fdfefa;border:1px solid #e0e7d9;border-radius:7px;outline-color:#9aaf85;width:100%;padding:10px 12px;font-size:13px}.text-field:disabled{color:#969c91;background:#f4f5f2}.project-type-picker{border:0;min-width:0;margin:0 0 20px;padding:0}.project-type-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.project-type-option{color:#7b8473;cursor:pointer;background:#fafbf8;border:1px solid #e1e5dc;border-radius:10px;flex-direction:column;gap:8px;padding:18px 14px;transition:background .12s,border-color .12s;display:flex;position:relative}.project-type-option:hover{border-color:#b7c6aa}.project-type-option.selected{color:#506744;background:#eef3e8;border-color:#7f996d}.project-type-option:has(input:focus-visible){outline-offset:3px;outline:2px solid #7f996d}.project-type-option input{accent-color:#6d885b;position:absolute;top:16px;right:14px}.project-type-option strong{font-size:14px;font-weight:500}.project-type-option small,.project-type-hint{color:#8a9382;font-size:11px;line-height:1.7}.project-type-hint{margin-top:10px}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.button{border:1px solid #0000;border-radius:7px;gap:6px;padding:9px 14px;font-size:12px}.button.primary{color:#fff;background:#6d885b}.button.primary:hover{background:#617c50}.button.secondary{color:#7c886f;background:#f6f8f2;border-color:#e1e7da}.button.compact{padding:5px 10px}.button.danger-button{color:#fff;background:#b77662}.form-error{color:#b5725e;margin-top:9px;font-size:12px}.search-field{color:#9ba58f;background:#fafcf7;border:1px solid #e0e8d9;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;display:flex}.search-field input{background:0 0;border:0;outline:none;width:100%;min-width:0;font-size:13px}.search-field kbd{color:#b3bcaa;font-size:10px}.search-results{max-height:50dvh;margin-top:14px;overflow:auto}.trash-modal{flex-direction:column;display:flex}.trash-modal>header,.trash-toolbar,.trash-confirm{flex-shrink:0}.trash-modal .search-results{flex-shrink:1;min-height:0}.trash-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.trash-toolbar .dialog-description{margin:0}.button.trash-clear{color:#a56f5b;background:#fbf7f2;border-color:#e6d6ca;flex-shrink:0}.button.trash-clear:not(:disabled):hover{background:#f5e9df;border-color:#d6b7a6}.trash-confirm{background:#fbf7f2;border:1px solid #e6d6ca;border-radius:10px;margin-top:18px;padding:14px 16px}.trash-confirm p{margin:0;font-size:13px;line-height:1.8}.trash-confirm .dialog-description{margin-top:4px;font-size:12px}.trash-confirm .modal-actions{margin-top:14px}.search-results>button,.trash-row{text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;padding:12px 8px;display:flex}.search-results>button:hover{background:#f7f9f3}.result-icon{color:#8e9d7f;background:#f0f4e9;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:35px;height:35px;display:flex}.result-copy{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.result-copy strong{text-overflow:ellipsis;white-space:nowrap;color:#66745a;font-size:13px;font-weight:400;overflow:hidden}.result-copy small{color:#a5af9a;font-size:10px}.search-results>button>svg{color:#bdc8b1}.panel-empty{color:#a1ad94;text-align:center;padding:25px 10px;font-size:13px}.shortcut-list{flex-direction:column;gap:13px;font-size:12px;display:flex}.shortcut-list>div{color:#8a957d;justify-content:space-between;align-items:center;gap:12px;display:flex}.shortcut-list kbd{color:#98a38d;text-align:right;background:#fafbf8;border:1px solid #e5ebdf;border-radius:4px;padding:2px 6px;font-size:10px}.color-options{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.color-option{color:#87947a;border:1px solid #dae3d340;border-radius:7px;height:60px;font-size:12px}.choice-list{flex-direction:column;gap:5px;display:flex}.choice-list>button{background:#f5f8f0;border:0;border-radius:6px;justify-content:flex-start;gap:10px;padding:12px;font-size:13px}.collection-panel{z-index:45;width:334px;max-width:calc(100vw - 16px);box-shadow:var(--shadow);background:#fff;border:1px solid #dbe5d0;border-radius:12px;position:fixed;overflow:hidden}.collection-panel>header{border-bottom:1px solid #edf1e6;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.collection-panel-anchored{flex-direction:column;display:flex}.collection-panel-anchored>header,.collection-panel-anchored>footer,.collection-panel-anchored>.collection-breadcrumb{flex-shrink:0}.collection-panel-anchored>.collection-members{min-height:0}.collection-panel>header>div{color:#839271;align-items:center;gap:8px;min-width:0;display:flex}.collection-panel>header strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.collection-actions{flex-shrink:0}.collection-clear{color:#8d9485;background:0 0;border:0;border-radius:5px;align-items:center;gap:4px;padding:5px 7px;font-size:11px;display:inline-flex}.collection-clear:hover:not(:disabled),.collection-delete:hover:not(:disabled){color:#a45f50;background:#f6ede8}.collection-clear:disabled,.collection-delete:disabled{opacity:.35;cursor:not-allowed}.collection-breadcrumb{color:#9aa88a;align-items:center;gap:4px;padding:8px 12px 0;display:flex;overflow-x:auto}.collection-breadcrumb button{color:#7b8d6d;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:2px 0;font-size:11px}.collection-breadcrumb button:hover{color:#425f32}.collected-container{color:#728765;text-align:left;cursor:pointer;background:#f5f8f0;border:0;align-items:center;gap:12px;width:100%;padding:20px 14px;display:flex}.collected-container:hover{background:#edf3e5}.collected-container>span{flex:1;min-width:0}.collected-container strong,.collected-container small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.collected-container small{margin-top:5px}.collection-panel strong{font-size:13px;font-weight:500}.collection-panel small{color:#a4b196;font-size:10px}.collection-members{max-height:55dvh;padding:12px;overflow:auto}.collection-member{cursor:grab;border:1px solid #e9eedf;border-radius:8px;margin-bottom:10px;overflow:hidden}.member-heading{color:#9aa88a;border-bottom:1px solid #edf2e7;align-items:center;gap:7px;padding:5px 10px;font-size:11px;display:flex}.member-heading>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.collection-member .note-paper{box-shadow:none;border:0;border-radius:0;min-height:100px!important}.collection-panel>footer{color:#b3bea6;text-align:center;border-top:1px solid #eff3e9;padding:10px;font-size:10px}.image-placeholder{color:#90a475;background:#f1f6e7;border:1px dashed #b3c29e;justify-content:center;align-items:center;gap:10px;width:280px;height:190px;font-size:12px;display:flex;position:absolute}.image-placeholder button{color:#778e5c;background:0 0;border:0;font-size:12px}.image-lightbox{z-index:200;background:#1d251ced;justify-content:center;align-items:center;padding:50px;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.image-lightbox>img{object-fit:contain;max-width:100%;max-height:100%}.image-lightbox>.image-content{width:100%;height:100%}.image-lightbox>.icon-button{color:#fff;background:#ffffff13;position:absolute;top:20px;right:20px}.loading-app{color:#9baa8b;background:#fafcf7;flex-direction:column;justify-content:center;align-items:center;gap:20px;height:100dvh;font-size:13px;display:flex}.loading-app .brand-mark{opacity:.7}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#b6c3a680;border-radius:4px}::-webkit-scrollbar-track{background:0 0}@media(max-width:900px){.topbar{padding:0 16px}.nav-start{gap:12px}.nav-end{gap:4px}.save-status span:not(.status-dot),.history-buttons{display:none}.project-switch{max-width:190px}.brand{font-size:17px}.return-button span{display:none}.save-status{padding:5px 2px}}@media(max-width:600px){.topbar{gap:8px;height:56px;padding:0 10px}.canvas{height:calc(100dvh - 56px)}.brand>span:last-child{display:none}.brand-mark{width:23px;height:25px}.nav-start{gap:8px}.nav-end{gap:1px}.project-switch{gap:6px;max-width:100px;font-size:12px}.nav-end>.nav-divider,.hide-small,.view-button{display:none}.add-button{padding:0 7px}.add-button span{display:none}.zoom-button{min-width:54px;padding:4px;font-size:11px}.icon-button{width:30px}.save-status{display:none}.empty-canvas h1{font-size:20px}.empty-tips{font-size:9px}.selection-bar{gap:4px;bottom:14px}.modal{padding:18px}.return-button{padding:5px}.collection-panel:not(.collection-panel-anchored){top:68px!important}}@media(pointer:coarse){.note-block{min-height:40px}.note-block input{width:22px;height:22px;margin-top:6px}.add-line{visibility:visible;min-height:36px}.context-menu button{min-height:42px}.icon-button{min-height:36px}.resize-handle{width:22px;height:22px;bottom:-10px;right:-10px}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.collection-member.located{border-color:#87a681;box-shadow:0 0 0 2px #aec8a43d}.canvas-minimap{z-index:90;touch-action:none;-webkit-user-select:none;user-select:none;background:#fafaf8ed;border:1px solid #c7beb0;border-radius:10px;width:220px;position:absolute;bottom:20px;left:20px;overflow:hidden;box-shadow:0 3px 16px #45494316}.canvas-minimap.is-collapsed{width:36px}.minimap-toggle{color:#6e746b;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;width:100%;height:30px;padding:0 10px;font-size:11px;display:flex}.minimap-toggle span{text-align:left;flex:1}.canvas-minimap svg[role=img]{cursor:crosshair;background:#ecedef;width:100%;height:150px;display:block}.minimap-viewport{fill:#64775e0a;stroke:#64775e;stroke-width:1.5px;pointer-events:stroke;cursor:grab}.minimap-viewport:active{cursor:grabbing}.map-highlight rect{stroke:#64775e;stroke-width:2px}.canvas-minimap [data-map-id]{cursor:pointer}@media(max-width:600px){.canvas-minimap{width:176px;bottom:12px;left:12px}.canvas-minimap svg[role=img]{height:120px}}.receiving .collection-icon{opacity:0;filter:none;transform:none}.collection-anchor{display:none}.collection-wrap{box-sizing:border-box;pointer-events:none;z-index:-1;background:#eae5dc66;border:solid #9aa48d;transition:left .18s ease-out,top .18s ease-out,width .18s ease-out,height .18s ease-out;position:absolute;box-shadow:0 0 0 3px #fff4}.collection-wrap i{inset:var(--wrap-inset,6px);border-radius:inherit;pointer-events:none;border:1px dashed #8c967a60;position:absolute}.collection-wrap.is-collecting{transition-duration:.32s}.collection-flight{animation-duration:.32s}@media(prefers-reduced-motion:reduce){.collection-wrap{transition:none}.collection-flight{animation-duration:1ms}}.view-mode-switch{background:#efefeb;border:1px solid #e4e4df;border-radius:9px;flex-shrink:0;gap:3px;padding:3px;display:flex}.view-mode-switch button{color:#8a8d85;background:0 0;border:0;border-radius:6px;gap:5px;padding:5px 9px;font-size:11px}.view-mode-switch button[aria-pressed=true]{color:#53664f;background:#fff;box-shadow:0 1px 4px #343a3612}.todo-document{color:#4d5349;background:radial-gradient(at 18% 20%,#e4dfd0 0,#0000 60%),radial-gradient(at 88% 85%,#dce5da 0,#0000 55%),#eeede8;outline:none;height:calc(100dvh - 64px);padding:20px 24px 24px;position:relative;overflow:hidden}.todo-pagebar{justify-content:space-between;align-items:center;gap:14px;height:40px;margin:0 0 18px 60px;display:flex}.todo-pagebar>div{align-items:center;gap:7px;min-width:0;display:flex}.todo-pagebar select{color:#51594d;font:inherit;text-overflow:ellipsis;cursor:pointer;background:0 0;border:0;max-width:min(40vw,360px);padding:6px 20px 6px 4px;font-size:13px}.todo-pagebar button{color:#74816c;background:#ffffff6e;border:1px solid #ffffffa6;border-radius:8px;width:31px;height:31px}.todo-pagebar button:hover:not(:disabled){background:#ffffffe6}.todo-page-count{color:#94998d;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px}.todo-spread{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;height:calc(100% - 58px);min-height:0;display:grid}.todo-panel{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#ffffff64;border:1px solid #ffffffda;border-radius:22px;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden;box-shadow:0 12px 38px #5b66500a,inset 0 1px #fff8}.todo-panel>header{flex-shrink:0;justify-content:space-between;align-items:end;gap:16px;padding:27px 28px 22px;display:flex}.todo-kicker{letter-spacing:2.5px;color:#969e8d;margin-bottom:7px;font-size:9px;display:block}.todo-panel h1{letter-spacing:1px;align-items:center;gap:10px;font-size:21px;font-weight:500;display:flex}.todo-panel h1 small{letter-spacing:0;color:#859175;background:#e3e7db8c;border-radius:50%;place-items:center;min-width:23px;height:23px;padding:0 5px;font-size:11px;font-weight:400;display:grid}.todo-panel-body{scrollbar-width:thin;scrollbar-color:#c8cec0 transparent;overscroll-behavior:contain;flex:1;min-height:0;padding:0 24px 22px;overflow:auto}.todo-panel-action{color:#94a18a;background:0 0;border:0;border-radius:7px;place-items:center;width:28px;height:28px;padding:4px;display:grid}.todo-panel-action:hover:not(:disabled){color:#6b805c;background:#dfe7d4}.todo-row,.todo-draft{border-bottom:1px solid #c9d0be55;align-items:flex-start;gap:12px;min-height:55px;padding:17px 4px 14px;display:flex;position:relative}.todo-circle{color:#fff;background:0 0;border:1.4px solid #b1bba5;border-radius:50%;flex:0 0 17px;width:17px;height:17px;margin:3px 0 0;padding:0}button.todo-circle:hover:not(:disabled){background:#e0e7d7;border-color:#849675}.todo-copy{overflow-wrap:anywhere;white-space:pre-wrap;flex:1;min-width:0;min-height:24px;font-size:14px;line-height:1.65}.todo-copy .block-copy{cursor:text;padding:0}.todo-copy .block-editor{min-height:24px;box-shadow:none;outline:none;padding:0;font-size:14px;line-height:1.65}.todo-copy .block-editor:focus{box-shadow:none;outline:none}.todo-copy .block-editor:empty:before{content:none}.todo-row-tools{opacity:0;align-self:flex-start;gap:1px;margin-top:1px;transition:opacity .12s;display:flex}.todo-row:hover .todo-row-tools,.todo-row:focus-within .todo-row-tools{opacity:1}.todo-row-tools button{color:#9da891;background:0 0;border:0;border-radius:5px;width:23px;height:24px;padding:3px}.todo-row-tools button:hover{color:#68785c;background:#e1e7d6}.todo-row.is-done .todo-circle{background:#91a67e;border-color:#91a67e}.todo-row.is-done .todo-copy{color:#9aa38f;-webkit-text-decoration:line-through #b1bba5;text-decoration:line-through #b1bba5}.todo-row.is-done .todo-copy:has(.block-editor){color:#65735a;text-decoration:none}.todo-row.located{background:#dfe8d1b0;border-radius:8px}.todo-row.is-drag-source{opacity:.2}.todo-empty-row,.todo-blank-row{color:#adb79f;text-align:left;background:0 0;border:0;border-bottom:1px solid #c9d0be40;justify-content:flex-start;align-items:center;width:100%;min-height:55px;padding:10px 3px;display:flex}.todo-empty-row{cursor:text}.todo-empty-row:hover:not(:disabled){color:#6b805c}.todo-empty-row:focus-visible{outline-offset:-1px;outline:1px solid #a9b999}.todo-empty-row:disabled{cursor:default}.todo-draft textarea{resize:none;overflow-wrap:anywhere;color:#4d5943;background:0 0;border:0;outline:none;flex:1;width:100%;min-width:0;padding:0;font-size:14px;line-height:1.65;overflow:hidden}.todo-draft{border-color:#a9b999}.todo-attachments{color:#8c9881;margin-top:28px;font-size:11px}.todo-attachments summary{cursor:pointer;padding:7px 0 13px}.todo-attachments>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.todo-attachments article{background:#ffffffa6;border:1px solid #e4e7dd;border-radius:11px;min-width:0;padding:7px}.todo-image{background:#e8ebe3;border:0;border-radius:7px;width:100%;height:110px;padding:0;position:relative;overflow:hidden}.todo-image img{object-fit:contain;width:100%;height:100%}.todo-attachments article>div{align-items:center;gap:5px;padding:5px 0 0;display:flex}.todo-attachments article>div span{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.todo-attachments article>div button{color:#9caa8f;background:0 0;border:0;flex-shrink:0;padding:3px}.todo-motion-layer{z-index:50;pointer-events:none;isolation:isolate;width:0;height:0;position:absolute;top:0;left:0}.todo-floating{white-space:pre-wrap;overflow-wrap:anywhere;color:#57674c;background:#f4f5ed;border:1px solid #d8ddce;border-radius:10px;padding:17px 32px;font-size:14px;line-height:1.65;position:absolute;overflow:hidden;box-shadow:0 10px 35px #4c614124}.todo-floating .image-content{height:100%}.todo-returning{z-index:1;box-sizing:border-box;background:#f2f4eb;border-radius:8px;margin:0;position:absolute;box-shadow:0 10px 30px #4c614119}.todo-motion-layer .todo-row-tools{display:none}@media(max-width:1000px){.nav-start{gap:10px}.todo-panel>header{padding:23px 22px 18px}}@media(max-width:700px){.todo-document{padding:16px 12px 12px}.todo-spread{gap:10px}.todo-panel{border-radius:16px}.todo-panel>header{padding:20px 13px 15px}.todo-panel h1{gap:6px;font-size:17px}.todo-panel-body{padding:0 10px 14px}.todo-copy{font-size:13px}.todo-row,.todo-draft{gap:8px}.todo-row-tools{background:#f0f3e9;border-radius:6px;flex-direction:column;position:absolute;top:2px;right:0}.todo-row:hover .todo-copy{padding-right:24px}.todo-attachments>div{grid-template-columns:1fr}.view-mode-switch button{padding:5px}.view-mode-switch svg{display:none}}@media(prefers-reduced-motion:reduce){.todo-row-tools{transition:none}}.todo-row.is-selected:not(:has(.block-editor)){background:#dfe7d330}.todo-boxes{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.todo-boxes>div{background:#ffffff50;border:1px solid #d9dfcf;border-radius:10px;gap:8px;padding:8px;display:flex}.todo-boxes button{color:#8a997d;background:0 0;border:0;gap:8px;font-size:12px}.todo-floating:has(.image-content){padding:7px}.todo-attachments article>div button:last-child{cursor:grab;touch-action:none}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.todo-task-actions{display:flex;flex-shrink:0;align-items:center;gap:1px;padding-top:2px}.todo-task-actions button,.todo-checklist-menu{display:grid;place-items:center;width:22px;height:24px;padding:2px;border:0;border-radius:5px;background:transparent;color:#99a18b;cursor:pointer}.todo-task-actions button{opacity:0;transition:opacity .12s,background .12s,color .12s}.todo-task-actions .has-remark,.note-block:hover .todo-task-actions button,.note-block:focus-within .todo-task-actions button,.todo-row:hover .todo-task-actions button,.todo-row:focus-within .todo-task-actions button{opacity:1}.todo-task-actions button:hover,.todo-checklist-menu:hover{background:#dfe5d3b3;color:#596f4c}.todo-task-actions button:focus-visible,.todo-checklist-menu:focus-visible{outline:2px solid #91a27d;outline-offset:1px}.note-block>.block-copy,.note-block>.block-editor{flex:1;width:auto}.note-paper .todo-note-menu{position:absolute;right:6px;top:3px;z-index:3;opacity:0}.note-paper:hover .todo-note-menu,.note-paper:focus-within .todo-note-menu{opacity:1}.note-paper:has(.todo-note-menu){padding-top:30px}.board-member .note-paper:has(.todo-note-menu){padding-top:36px}.board-note-grip{right:30px}.todo-remark-popover,.todo-action-menu{position:fixed;z-index:220000;box-sizing:border-box;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);color:#49523e;background:#fffdf6;border:1px solid #dce2ce;box-shadow:0 14px 44px #38452c29,0 3px 8px #38452c0d;border-radius:14px;font:13px/1.65 Segoe UI,Microsoft YaHei,sans-serif;animation:todo-remark-enter .17s ease-out}.todo-remark-popover{width:316px;padding:14px;display:flex;flex-direction:column;gap:9px}.todo-remark-popover header{display:flex;align-items:center;gap:7px;flex-shrink:0}.todo-remark-popover header strong{font-size:13px;font-weight:550}.todo-remark-popover header span{flex:1}.todo-remark-popover header button,.todo-menu-heading button{display:grid;place-items:center;width:24px;height:24px;padding:2px;border:0;background:transparent;color:#89967b;border-radius:6px;cursor:pointer}.todo-remark-popover header button:hover{background:#edf0e4}.todo-remark-title{color:#97a087;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0}.todo-remark-body,.todo-remark-editor{box-sizing:border-box;display:block;width:100%;min-height:66px;max-height:214px;overflow:auto;border:0;padding:9px 10px;border-radius:8px;background:#f4f4e9;color:#4b5741;font:inherit;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;text-decoration:none}.todo-remark-body{cursor:text}.todo-remark-body:disabled{opacity:1;color:#4b5741;cursor:default}.todo-remark-editor{height:184px;min-height:32px;resize:none;outline:none;box-shadow:inset 0 0 0 1px #d5dfc6}.todo-remark-editor::placeholder{color:#a4ad98}.todo-remark-popover footer{font-size:10px;color:#9ba68d;min-height:16px;flex-shrink:0}.todo-action-menu{min-width:200px;max-width:300px;padding:6px;overflow:auto}.todo-menu-heading{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#929b86;padding:3px 5px 6px 8px}.todo-action-menu>button{width:100%;display:flex;align-items:center;gap:9px;border:0;padding:9px 11px;color:#a36557;background:transparent;border-radius:8px;text-align:left;font:inherit;cursor:pointer}.todo-action-menu>button:hover:not(:disabled){background:#f7ece5}.todo-action-menu>button:disabled{opacity:.5;cursor:default}.todo-action-menu.todo-action-menu-compact{min-width:0;width:max-content;padding:3px;border-radius:9px}.todo-action-menu-compact>button{width:auto;padding:6px 12px;border-radius:6px;font-size:13px;white-space:nowrap}.todo-action-menu small{display:block;font-size:11px;color:#9aa18e;overflow-wrap:anywhere}.todo-row-tools{gap:0}.todo-row-tools:has(.has-remark){opacity:1}.todo-row-tools:has(.has-remark)>button{opacity:0}.todo-row:hover .todo-row-tools>button,.todo-row:focus-within .todo-row-tools>button{opacity:1}.todo-row-tools .todo-task-actions{padding-top:0}.todo-row-tools .todo-more-trigger{cursor:pointer}.todo-panel header>.todo-checklist-menu{flex-shrink:0}.trash-remark{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}@keyframes todo-remark-enter{0%{opacity:0;transform:translateY(4px) scale(.985)}to{opacity:1;transform:none}}@media(hover:none){.todo-task-actions button,.todo-note-menu,.todo-row-tools:has(.has-remark)>button{opacity:1!important}}@media(prefers-reduced-motion:reduce){.todo-remark-popover,.todo-action-menu{animation:none}}.home{min-height:100dvh;background:#f7f8f5;color:#343a36}.home-nav{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 5.4%;border-bottom:1px solid #e8ebe4;background:#fff}.home-nav .brand small{font-size:12px;font-weight:400;letter-spacing:1px;color:#8a9289;padding-left:15px;border-left:1px solid #e0e5de;margin-left:12px}.profile-button{display:flex;align-items:center;gap:9px;font-size:13px}.avatar{position:relative;overflow:hidden;flex-shrink:0;display:inline-flex;width:29px;height:29px;border-radius:50%;background:#e5ecdf;align-items:center;justify-content:center;font-size:12px;border:2px solid #fff;color:#4f6e48}.avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.avatar-1{background:#f2e7da;color:#9a6b35}.avatar-2{background:#e5e5f2;color:#73648e}.avatar-3{background:#e1ecf2;color:#477184}.home-main{max-width:1260px;margin:auto;padding:72px 48px 36px}.eyebrow{font-size:11px;letter-spacing:2px;color:#80927b;font-weight:600;margin-bottom:16px}.home-heading{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:56px}.home-heading h1{font-size:37px;letter-spacing:1px;font-weight:570;line-height:1.3}.heading-dot{color:#7a9573}.home-heading p{margin-top:16px;color:#828a80;font-size:14px;line-height:1.8}.home-actions{display:flex;gap:10px;padding-bottom:5px;flex-shrink:0}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 17px;border-radius:9px;font-size:13px;cursor:pointer;transition:background .2s}.primary{background:#577b60;color:#fff;border:1px solid #577b60}.primary:hover{background:#46694e}.secondary{background:#fff;border:1px solid #dee4d9;color:#5d6b57}.secondary:hover{background:#f0f3ec}.primary:disabled,.secondary:disabled{opacity:.5;cursor:default}.section-caption{display:flex;align-items:center;gap:9px;color:#6f7a69;font-size:13px;margin-bottom:20px}.count{font-size:11px;background:#e9ede5;padding:2px 7px;border-radius:5px;margin-left:3px}.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.room-card{border:1px solid #e1e6dc;border-radius:14px;background:#fff;text-align:left;overflow:hidden;transition:box-shadow .2s,transform .2s}.room-card:hover{box-shadow:0 8px 28px #42563812;transform:translateY(-3px)}.room-preview{height:185px;background:#e9eee6;position:relative;overflow:hidden;background-image:radial-gradient(#bac7b54d 1px,transparent 1px);background-size:15px 15px}.preview-1{background-color:#efece5}.preview-2{background-color:#e9edf0}.preview-paper{position:absolute;background:#fffefa;border-radius:5px;width:96px;height:101px;top:32px;left:20%;transform:rotate(-7deg);box-shadow:0 5px 8px #41533d0c;padding:26px 16px}.preview-paper i{height:3px;background:#dce3d5;display:block;margin-bottom:11px;border-radius:4px}.preview-paper i:last-child{width:60%}.preview-note{position:absolute;left:44%;top:69px;width:125px;height:81px;transform:rotate(5deg);background:#d6e3ca;border-radius:5px;padding:17px 13px;font-size:12px;color:#677e58;box-shadow:0 5px 10px #41533d10}.preview-note span{display:block;font-size:7px;line-height:2;margin-top:5px}.preview-check{position:absolute;top:35px;right:18%;font-size:17px;width:25px;height:25px;border:1px solid #afc59e;border-radius:50%;text-align:center;color:#7d986b}.room-card-body{padding:23px}.room-card-body h2{font-size:16px;font-weight:550;margin-bottom:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-card-body>div{display:flex;align-items:center;justify-content:space-between;color:#8c9588;font-size:11px}.room-card-body>div span{display:flex;gap:6px;align-items:center}.new-room-card{min-height:292px;border:1px dashed #cdd7c6;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f4f6f0;text-align:center}.new-room-icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;color:#87a079;background:#e8eee1;margin-bottom:22px}.new-room-card h2{font-size:15px;font-weight:500;color:#6c7c62;margin-bottom:10px}.new-room-card p{font-size:12px;color:#98a18f}.home-footnote{display:flex;align-items:center;gap:9px;font-size:11px;color:#9da596;margin-top:40px}.home-footnote .status-dot{width:5px;height:5px}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#26332738;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:20px}.dialog{width:min(460px,100%);background:#fff;border:1px solid #e4e9df;padding:38px;border-radius:18px;position:relative;box-shadow:0 24px 80px #26392725}.dialog-close{position:absolute;right:15px;top:15px}.dialog h2{font-size:23px;font-weight:550;letter-spacing:.5px}.dialog p{font-size:13px;color:#8b9386;line-height:1.8;margin:13px 0 24px}.dialog label{display:flex;flex-direction:column;gap:9px;font-size:12px;color:#697762;margin:22px 0}.dialog input,.dialog textarea{border:1px solid #dce3d5;border-radius:8px;padding:12px;width:100%;background:#fafbf8;font-size:14px;outline:none;resize:vertical}.dialog input:focus,.dialog textarea:focus{border-color:#819d73;box-shadow:0 0 0 3px #88a27710}.dialog textarea{min-height:90px;overflow-wrap:anywhere;font-size:12px}.dialog label small{font-size:11px;color:#99a08f}.wide{width:100%}.share-note{font-size:11px;color:#929b88;margin-top:20px;line-height:1.8}.text-button{font-size:12px;color:#768b68;margin-top:12px;text-decoration:underline}.form-error,.message.error{font-size:13px;color:#a65346;background:#fbefeb;border:1px solid #f0d8d0;border-radius:9px;padding:13px;line-height:1.7}.message.error{margin-bottom:25px;display:flex;justify-content:space-between;gap:12px}.message button{font-size:12px;text-decoration:underline}.presence{display:flex;align-items:center;gap:0;white-space:nowrap}.presence .avatar+.avatar{margin-left:-8px}.presence>span:last-child:not(.avatar){font-size:11px;color:#909988;margin-left:9px}.cloud-canvas .nav-start{gap:14px}.cloud-canvas .topbar{padding:0 20px;gap:10px}.board-title{font-size:14px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sync-indicator{display:flex;align-items:center;gap:6px;font-size:11px;color:#9aa290;white-space:nowrap}.sync-indicator.offline,.sync-indicator.error,.sync-indicator.conflict{color:#b28048}.sync-indicator.offline .status-dot,.sync-indicator.error .status-dot,.sync-indicator.conflict .status-dot{background:#c69c6c}.sync-indicator.saving .status-dot,.sync-indicator.uploading .status-dot{animation:fade-dot 1s infinite}.share-button{font-size:12px;padding:8px 12px;margin-left:6px}.canvas-toolbox{position:absolute;z-index:30;left:22px;top:40%;transform:translateY(-30%);display:flex;flex-direction:column;gap:5px;padding:8px;background:#fffffff2;border:1px solid #dce2d9;border-radius:14px;box-shadow:0 6px 24px #3a4c3712;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.canvas-toolbox button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:46px;min-height:45px;padding:7px 2px;border-radius:8px;color:#6d7b65}.canvas-toolbox button span{font-size:9px}.canvas-toolbox button:hover{background:#eef2e9;color:#4b6d3e}.canvas-toolbox button:disabled{opacity:.3}.canvas-toolbox i{height:1px;background:#e7ebe3;margin:4px}.canvas-view-tools{position:absolute;right:25px;bottom:22px;z-index:30;background:#fff;border:1px solid #dfe4d9;border-radius:10px;display:flex;align-items:center;gap:8px;padding:8px 10px;box-shadow:0 3px 15px #3a4c370a}.canvas-view-tools span{font-size:11px;color:#8b9583;min-width:38px;text-align:center}.canvas-view-tools button{display:grid;place-items:center;width:25px;height:24px;color:#7b8a70}.canvas-welcome{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);pointer-events:none;color:#9ba096;text-align:center}.canvas-welcome span{font-size:17px;letter-spacing:1px}.canvas-welcome small{display:block;font-size:11px;margin-top:16px;color:#acb2a6}.canvas-banner{position:absolute;top:80px;left:50%;transform:translate(-50%);width:max-content;max-width:85%;z-index:80;display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 18px;border-radius:10px;background:#fff8ed;border:1px solid #e4c99b;font-size:12px;color:#9b783f;box-shadow:0 4px 20px #5c483316}.canvas-banner button{text-decoration:underline;font-size:11px;white-space:nowrap}.canvas-banner.conflict{max-width:850px}.cloud-toast{z-index:300}.loading-screen,.empty-state{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;padding:100px 30px;color:#7d8b73}.loading-screen button{font-size:13px;text-decoration:underline}.image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#15201be6;display:flex;align-items:center;justify-content:center;padding:50px}.image-lightbox img{max-width:95%;max-height:90dvh;object-fit:contain}.image-lightbox button{position:absolute;right:25px;top:20px;color:#fff}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-dot{50%{opacity:.3}}@media(max-width:1000px){.home-heading{align-items:flex-start;flex-direction:column;gap:25px}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sync-indicator{font-size:10px}.presence>span:last-child:not(.avatar){display:none}.board-title{max-width:140px}}@media(max-width:650px){.home-nav{padding:0 22px;height:72px}.home-main{padding:36px 22px}.home-heading h1{font-size:29px}.home-heading p{font-size:12px}.room-grid{grid-template-columns:1fr}.home-heading{margin-bottom:35px}.home-nav .brand small{display:none}.dialog{padding:30px 24px}.cloud-canvas .topbar{padding:0 8px}.cloud-canvas .brand>span:last-child{display:none}.cloud-canvas .nav-start{gap:7px}.cloud-canvas .nav-end{gap:4px}.board-title{max-width:90px;font-size:12px}.presence{display:none}.sync-indicator{font-size:0;gap:0}.share-button{padding:8px;font-size:11px}.canvas-toolbox{left:9px;top:auto;bottom:16px;transform:none;flex-direction:row;gap:2px;padding:5px}.canvas-toolbox button{width:34px;min-height:39px}.canvas-toolbox button svg{width:17px}.canvas-toolbox button span{font-size:8px}.canvas-toolbox i{width:1px;height:30px;margin:4px}.canvas-view-tools{bottom:80px;right:12px}.canvas-welcome{width:80%}.canvas-welcome span{font-size:13px}.canvas-welcome small{font-size:10px}.canvas-banner{top:70px;max-width:95%;font-size:11px}.home-footnote{font-size:10px;line-height:1.7}}
