@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg-primary: #fafafa;--bg-secondary: #FFFFFF;--bg-sidebar: #F4F4F5;--bg-hover: #F0F0F2;--bg-active: #E8E8EC;--accent: #5A7863;--accent-hover: #3B4953;--accent-soft: #EBF4DD;--accent-text: #3B4953;--success: #10B981;--warning: #F59E0B;--danger: #EF4444;--text: #18181B;--text-secondary: #52525B;--text-muted: #A1A1AA;--text-placeholder: #D4D4D8;--border: #E4E4E7;--border-light: #F4F4F5;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .06), 0 2px 4px -1px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .06), 0 4px 6px -2px rgba(0, 0, 0, .03);--font-sans: Monaco, -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-serif: New York, Charter, Georgia, Apple Garamond, -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--sidebar-width: 240px;--header-height: 64px;--content-max: 1200px;--card-radius: 12px;--radius-sm: 6px;--radius: 8px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;overflow:hidden}body{font-family:var(--font-sans);font-size:.9375rem;line-height:1.6;color:var(--text);background:var(--bg-primary);height:100%;overflow:hidden;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{scroll-behavior:auto}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none}::selection{background:var(--accent-soft);color:var(--accent-text)}a{color:var(--accent);text-decoration:none;transition:color .15s}a:hover{color:var(--accent-hover)}button{font-family:inherit;font-size:inherit;border:none;background:none;cursor:pointer;color:inherit}input,textarea{font-family:inherit;font-size:inherit;border:none;outline:none;background:transparent;color:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}:focus-visible{outline:2px solid var(--accent-soft);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-soft);outline-offset:2px}button,a,input,textarea,[role=button]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.todo-box{margin-bottom:var(--space-4);padding:var(--space-5) 0;border-radius:var(--radius);background-color:var(--bg-secondary);border:.5px solid var(--bg-hover)}.todo-filter-row{display:flex;flex-direction:column;gap:var(--space-2);padding:0 var(--space-3);margin-bottom:var(--space-2)}.todo-project-dropdown{position:relative}.todo-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-2) var(--space-3);font-size:.75rem;color:var(--text-secondary);background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s}.todo-dropdown-trigger:hover{border-color:var(--border)}.todo-dropdown-menu{position:absolute;top:100%;left:0;right:0;z-index:100;margin-top:2px;padding:var(--space-1) 0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);max-height:200px;overflow-y:auto}.todo-dropdown-item{display:block;width:100%;padding:var(--space-2) var(--space-3);font-size:.75rem;color:var(--text-secondary);text-align:left;background:transparent;border:none;cursor:pointer}.todo-dropdown-item:hover{background:var(--bg-hover);color:var(--text)}.todo-dropdown-item.active{color:var(--accent);font-weight:500}.todo-tabs{display:flex;gap:2px;background:var(--bg-primary);border-radius:var(--radius-sm);padding:2px}.todo-tab{flex:1;padding:var(--space-1) var(--space-2);font-size:.6875rem;font-weight:500;color:var(--text-muted);background:transparent;border:none;border-radius:calc(var(--radius-sm) - 2px);cursor:pointer;transition:all .15s}.todo-tab:hover{color:var(--text-secondary)}.todo-tab.active{background:var(--bg-secondary);color:var(--text);box-shadow:var(--shadow)}.todo-list{display:flex;flex-direction:column;max-height:300px;overflow-y:auto;padding:var(--space-1) 0}.todo-empty{padding:var(--space-4) var(--space-3);font-size:.75rem;color:var(--text-muted);text-align:center}.todo-item{display:flex;flex-direction:column;padding:var(--space-1) var(--space-3);transition:background .15s;border-left:2px solid transparent}.todo-item:hover{border-left-color:var(--accent)}.todo-title-row{display:flex;align-items:flex-start;gap:var(--space-2);width:100%}.todo-toggle{flex:1;display:flex;align-items:flex-start;gap:var(--space-2);padding:0;margin:0;background:transparent;border:none;text-align:left;cursor:pointer}.todo-toggle:disabled{cursor:wait;opacity:.6}.todo-link-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;margin-top:1px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity .15s,color .15s}.todo-item:hover .todo-link-btn{opacity:1}.todo-link-btn:hover{color:var(--accent)}.todo-checkbox{flex-shrink:0;width:14px;height:14px;margin-top:2px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--border);border-radius:3px;background:transparent;color:transparent;transition:all .15s}.todo-toggle:hover .todo-checkbox{border-color:var(--accent);color:var(--accent)}.todo-checkbox.toggling{opacity:.5}.todo-item.overdue{border-left-color:var(--danger, #ef4444)}.todo-item.overdue .todo-time{color:var(--danger, #ef4444)}.todo-title{flex:1;font-size:.8125rem;color:var(--text);line-height:1.4;display:-webkit-box;-webkit-box-orient:vertical;font-family:var(--font-serif)}.todo-meta{display:flex;align-items:center;gap:var(--space-2);padding-left:22px}.todo-project{color:var(--accent);font-weight:500}.todo-time{display:flex;align-items:center;gap:3px;font-size:.6875rem;color:var(--text-muted)}.todo-time svg{opacity:.6}.todo-project,.todo-time{font-size:.5rem}.sidebar{position:sticky;top:0;height:100vh;width:280px;min-width:280px;max-width:280px;display:flex;flex-direction:column;flex-shrink:0}.sidebar.hidden{display:none}.sidebar-header{padding:var(--space-3) var(--space-4)}.logo{display:flex;align-items:center;background:none;border:none;padding:0;cursor:pointer}.logo-img{height:44px;padding-top:5px;width:auto}.sidebar-nav{flex:1;overflow-y:auto;padding:var(--space-3)}.nav-section{margin-bottom:var(--space-4)}.nav-section-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.nav-section-action{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);border-radius:var(--radius-sm);opacity:0;transition:opacity .15s,background .15s,color .15s}.nav-section:hover .nav-section-action{opacity:1}.nav-section-action:hover{background:var(--bg-hover);color:var(--text)}.nav-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);font-size:.875rem;color:var(--text);border-radius:var(--radius);transition:background .15s,color .15s}.nav-item:hover{background:var(--bg-hover);color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:500}.nav-count{margin-left:auto;font-size:.75rem;color:var(--text);font-weight:400}.nav-tags{display:flex;flex-direction:column;gap:2px}.nav-tag{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);font-size:.8125rem;color:var(--text-secondary);border-radius:var(--radius);transition:background .15s,color .15s}.nav-tag:hover{background:var(--bg-hover);color:var(--text)}.nav-tag.active{background:var(--accent-soft);color:var(--accent)}.tag-dot{flex-shrink:0}.tag-name{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-count{font-size:.75rem;color:var(--text-muted);min-width:20px;text-align:right}.nav-section-header svg{margin-right:var(--space-2)}.nav-tasks{display:flex;flex-direction:column;gap:2px}.nav-task-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);font-size:.8125rem;color:var(--text-secondary);border-radius:var(--radius);transition:background .15s,color .15s}.nav-task-item:hover{background:var(--bg-hover);color:var(--text)}.nav-task-item.active{background:var(--accent-soft);color:var(--accent)}.nav-task-item.overdue{color:var(--danger)}.nav-task-item.overdue:hover{background:#fee2e2}.nav-task-item.overdue.active{background:#fee2e2;color:var(--danger)}.nav-task-item span:first-of-type{flex:1;text-align:left}.task-count{font-size:.75rem;color:var(--text-muted);min-width:20px;text-align:right}.task-count.overdue{color:var(--danger);font-weight:500}@media(max-width:768px){.sidebar{position:fixed;left:0;top:0;bottom:0;min-width:280px;max-width:320px;z-index:100;transform:translate(-100%);transition:transform .25s ease;background:#fafafacc;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);box-shadow:var(--shadow-lg)}.sidebar.hidden{display:flex}.sidebar.open{transform:translate(0)}}.memo-editor,.editor-textarea-wrapper{position:relative}.editor-textarea,.memo-editor textarea{width:100%;min-height:80px;max-height:400px;padding:5px;font-size:.9375rem;line-height:1.65;color:var(--text);resize:vertical;background:transparent;border-radius:8px;overflow:auto;font-family:var(--font-serif)}.editor-textarea::placeholder,.memo-editor textarea::placeholder{color:var(--text-placeholder)}.tag-autocomplete{position:absolute;left:0;bottom:100%;margin-bottom:var(--space-2);min-width:200px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);overflow:hidden;z-index:100}.tag-option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:.8125rem;cursor:pointer;transition:background .1s}.tag-option:hover{background:var(--bg-hover)}.tag-option.active{background:var(--accent-soft);color:var(--accent)}.tag-option .tag-color{width:8px;height:8px;border-radius:50%}.tag-option.new-tag{color:var(--text-secondary);font-style:italic}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-3);margin-top:var(--space-3);border-top:1px solid var(--border-light)}.toolbar-left{display:flex;align-items:center;gap:2px}.toolbar-right{display:flex;align-items:center;gap:var(--space-2)}.toolbar-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);border-radius:var(--radius-sm);transition:background .15s,color .15s}.toolbar-btn:hover{background:var(--bg-hover);color:var(--text)}.toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.toolbar-divider{width:1px;height:16px;background:var(--border);margin:0 var(--space-2)}.editor-image-previews,.editor-images{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.editor-image-preview,.editor-image{position:relative;width:56px;height:56px;border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-primary);border:1px solid var(--border-light)}.editor-image-preview img,.editor-image img{width:100%;height:100%;object-fit:cover}.editor-image-preview.uploading,.editor-image.uploading{opacity:.5}.remove-image,.image-remove-btn{position:absolute;top:2px;right:2px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:#0009;color:#fff;border-radius:50%;font-size:10px;opacity:0;transition:opacity .15s}.editor-image-preview:hover .remove-image,.editor-image:hover .image-remove-btn{opacity:1}.remove-image:hover,.image-remove-btn:hover{background:var(--danger)}.char-count{position:absolute;bottom:var(--space-1);right:0;font-size:.6875rem;color:var(--text-muted)}.char-count.warning{color:var(--warning)}.char-count.error{color:var(--danger)}.tags-input{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1)}.tag-chip{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;font-size:.6875rem;border-radius:4px;border:1px solid;transition:opacity .15s}.tag-chip:hover{opacity:.9}.tag-text{line-height:1.2}.tag-remove-btn{display:flex;align-items:center;justify-content:center;width:12px;height:12px;margin-left:2px;border-radius:2px;opacity:.5;transition:opacity .15s,background .15s}.tag-remove-btn:hover{opacity:1;background:#0000001a}.tag-add-btn{display:flex;align-items:center;justify-content:center;width:18px;height:18px;color:var(--text-muted);border:1px dashed var(--border);border-radius:4px;transition:border-color .15s,color .15s}.tag-add-btn:hover{border-color:var(--accent);color:var(--accent)}.tag-input-wrapper{position:relative}.tag-input{width:80px;padding:2px 4px;font-size:.6875rem;border:1px solid var(--accent);border-radius:4px;background:var(--bg-secondary)}.tag-input::placeholder{color:var(--text-placeholder)}.tag-suggestions{position:absolute;top:100%;left:0;margin-top:4px;min-width:120px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:100;overflow:hidden}.tag-suggestion{display:flex;align-items:center;gap:4px;width:100%;padding:6px 8px;font-size:.75rem;text-align:left;transition:background .1s}.tag-suggestion:hover,.tag-suggestion.selected{background:var(--bg-hover)}.suggestion-hash{opacity:.5}.datetime-picker-dropdown{position:fixed;z-index:1000;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);min-width:240px;overflow:hidden}.datetime-picker-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-light);font-weight:500;font-size:.8125rem;color:var(--text-secondary)}.datetime-picker-close{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-sm);color:var(--text-muted);transition:background .15s,color .15s}.datetime-picker-close:hover{background:var(--bg-hover);color:var(--text)}.datetime-picker-body{padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3)}.datetime-picker-row{display:flex;align-items:center;gap:var(--space-3)}.datetime-picker-row label{font-size:.75rem;color:var(--text-muted);min-width:40px;display:flex;align-items:center;gap:4px}.datetime-picker-input,.datetime-picker-select{flex:1;padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.8125rem;background:var(--bg-primary);color:var(--text);transition:border-color .15s}.datetime-picker-input:focus,.datetime-picker-select:focus{outline:none;border-color:var(--accent)}.datetime-picker-weekdays{display:flex;gap:2px;flex:1}.weekday-btn{flex:1;padding:4px 2px;font-size:.6875rem;border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-muted);border:1px solid var(--border-light);transition:all .15s}.weekday-btn:hover{background:var(--bg-hover);color:var(--text)}.weekday-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.datetime-picker-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-light);background:var(--bg-primary)}.datetime-picker-btn{display:flex;align-items:center;gap:4px;padding:var(--space-1) var(--space-2);font-size:.75rem;font-weight:500;border-radius:var(--radius-sm);transition:background .15s,color .15s}.datetime-picker-btn.clear{color:var(--danger);margin-right:auto}.datetime-picker-btn.clear:hover{background:var(--danger);color:#fff}.datetime-picker-btn.cancel{color:var(--text-secondary)}.datetime-picker-btn.cancel:hover{background:var(--bg-hover);color:var(--text)}.datetime-picker-btn.save{background:var(--accent);color:#fff}.datetime-picker-btn.save:hover{background:var(--accent-hover)}@media(prefers-color-scheme:dark){.datetime-picker-input,.datetime-picker-select{color-scheme:dark}}.markdown-table-scroll{max-width:100%;overflow-x:auto;margin:.9em 0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.markdown-table-scroll:focus-visible{outline:2px solid var(--accent-soft);outline-offset:2px}.markdown-table-scroll table{width:max-content;min-width:100%;margin:0;border-collapse:separate;border-spacing:0;font-family:var(--font-sans);font-size:.8125rem;line-height:1.45;color:var(--text)}.markdown-table-scroll thead th{position:sticky;top:0;z-index:1;background:#f4f6f1;color:var(--accent-text);font-weight:600;white-space:nowrap}.markdown-table-scroll th,.markdown-table-scroll td{padding:9px 12px;border-bottom:1px solid var(--border-light);vertical-align:top;text-align:left;max-width:360px;overflow-wrap:anywhere}.markdown-table-scroll th:not(:last-child),.markdown-table-scroll td:not(:last-child){border-right:1px solid var(--border-light)}.markdown-table-scroll tbody tr:nth-child(2n) td{background:#f4f4f573}.markdown-table-scroll tbody tr:hover td{background:#ebf4dd8c}.markdown-table-scroll tr:last-child td{border-bottom:none}.markdown-table-scroll td code{white-space:nowrap}.markdown-table-scroll th[align=center],.markdown-table-scroll td[align=center]{text-align:center}.markdown-table-scroll th[align=right],.markdown-table-scroll td[align=right]{text-align:right}@media(max-width:768px){.markdown-table-scroll{margin:.75em 0;border-radius:var(--radius-sm)}.markdown-table-scroll table{font-size:.75rem}.markdown-table-scroll th,.markdown-table-scroll td{padding:8px 10px}}.memo-card{background:var(--bg-secondary);border-radius:var(--card-radius);padding:var(--space-5);transition:box-shadow .2s,transform .2s;cursor:default;box-shadow:var(--shadow)}.memo-card:hover{box-shadow:var(--shadow-md)}.memo-card.pinned{outline:.5px solid var(--accent);border-bottom:.5px solid var(--accent)}.memo-card.saving{opacity:.85}.memo-card.failed{border:1px solid var(--danger);background:linear-gradient(135deg,#FEF2F2 0%,var(--bg-secondary) 100%)}.memo-meta.saving{color:var(--accent)}.memo-meta.error{color:var(--danger)}.memo-meta-icon.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.memo-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-3)}.memo-meta{display:flex;align-items:center;gap:var(--space-2);font-size:.75rem;color:var(--text-muted)}.memo-meta-icon{color:var(--accent)}.memo-date-link{color:inherit;text-decoration:none}.memo-date-link:hover{text-decoration:underline}.memo-insight-link{display:flex;align-items:center;color:var(--accent);text-decoration:none;transition:opacity .15s}.memo-insight-link:hover{opacity:.7}.memo-insight-link.generating{color:var(--text-muted)}.memo-insight-link .spinning{animation:spin 1s linear infinite}.memo-card .memo-actions{display:flex;gap:12px;opacity:0;transition:opacity .15s}.memo-card:hover .memo-actions{opacity:1}.action-btn{width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);border-radius:var(--radius-sm);transition:background .15s,color .15s}.action-btn:hover{background:var(--bg-hover);color:var(--text)}.action-btn.danger:hover{background:#fee2e2;color:var(--danger)}.memo-text{font-size:.9375rem;line-height:1.65;color:var(--text);cursor:pointer}.memo-text,.memo-tasks{font-family:var(--font-serif)}.markdown-content{font-size:.9375rem;line-height:1.6;color:var(--text);word-wrap:break-word}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{font-weight:500;color:var(--text);line-height:1.35;margin-top:1.2em;margin-bottom:.6em}.markdown-content h1{font-size:1.5em}.markdown-content h2{font-size:1.3em}.markdown-content h3{font-size:1.15em}.markdown-content h4{font-size:1.05em}.markdown-content h5,.markdown-content h6{font-size:1em}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child,.markdown-content h4:first-child{margin-top:0}.markdown-content p{margin-bottom:.8em}.markdown-content p:last-child{margin-bottom:0}.markdown-content strong,.markdown-content b{font-weight:600;color:var(--text)}.markdown-content em,.markdown-content i{font-style:italic}.markdown-content code{font-family:var(--font-mono);font-size:.875em;background:var(--bg-primary);padding:2px 6px;border-radius:4px;border:1px solid var(--border-light)}.markdown-content pre{background:#f8f8f8;border:1px solid var(--border-light);padding:1em 1.5em;overflow-x:auto;margin:.8em 0;border-radius:var(--radius);font-size:.875em;line-height:1.5}.markdown-content pre code{background:transparent;border:none;padding:0;font-size:inherit}.markdown-content blockquote{border-left:2px solid var(--accent);padding-left:1em;margin:.8em 0;color:var(--text-secondary);font-weight:400}.markdown-content blockquote p:last-child{margin-bottom:0}.markdown-content a{color:var(--accent);text-decoration:none}.markdown-content a:hover{text-decoration:underline}.markdown-content ul{margin:.5em 0;padding-left:1.3em;list-style-type:disc}.markdown-content ol{margin:.5em 0;padding-left:1.9em;list-style-type:decimal}.markdown-content li{margin-bottom:.4em;line-height:1.45}.markdown-content li:last-child{margin-bottom:0}.markdown-content ul ul,.markdown-content ol ul{list-style-type:circle;margin:.4em 0;padding-left:1.5em}.markdown-content ul ol,.markdown-content ol ol{margin:.4em 0;padding-left:1.5em}.markdown-content img{max-width:100%;height:auto;border-radius:var(--radius);margin:1em 0}.markdown-content hr{border:none;border-top:1px solid var(--border);margin:1.5em 0}.markdown-content mark{background:#fffdd1;padding:1px 4px;border-bottom:1px solid #ffedce}.markdown-content small{font-size:.9em;color:var(--text-secondary)}.inline-hashtag{color:var(--accent);font-weight:500;cursor:pointer;font-size:.8rem}.inline-hashtag:hover{text-decoration:underline}.memo-footer{margin-top:var(--space-4)}.memo-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.memo-tag{position:relative;display:inline-flex;align-items:center;gap:4px;font-size:.5rem;padding:2px 5px;border-radius:3px;transition:opacity .15s;opacity:.6}.memo-tag:hover{opacity:1}.tag-remove{position:absolute;right:-6px;top:-6px;display:flex;align-items:center;justify-content:center;width:16px;height:16px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:50%;cursor:pointer;opacity:0;transform:scale(.8);transition:opacity .15s,transform .15s}.memo-tag:hover .tag-remove{opacity:1;transform:scale(1)}.tag-remove:hover{background:var(--danger);border-color:var(--danger);color:#fff}.memo-edit{display:flex;flex-direction:column;gap:var(--space-3)}.memo-edit .editor-textarea{max-height:400px}.edit-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}.edit-hint{font-size:.75rem;color:var(--text-muted);margin-right:auto}.edit-btn{font-size:.8125rem;font-weight:500;padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);transition:background .15s,color .15s}.edit-btn.cancel{color:var(--text-secondary)}.edit-btn.cancel:hover{background:var(--bg-hover);color:var(--text)}.edit-btn.save{background:var(--accent);color:#fff}.edit-btn.save:hover{background:var(--accent-hover)}.edit-btn:disabled{opacity:.5;cursor:not-allowed}.memo-tasks{margin:1em 0;display:flex;flex-direction:column;gap:4px;margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-light)}.memo-tasks .task-item{display:flex;align-items:self-start;gap:8px}.memo-tasks .task-item.done .task-title{opacity:.6}.memo-tasks .task-checkbox{width:16px;height:16px;border:2px solid var(--border);border-radius:4px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease;padding:0}.memo-tasks .task-checkbox:hover{border-color:var(--accent)}.memo-tasks .task-checkbox.checked{background:var(--accent);border-color:var(--accent);color:#fff}.memo-tasks .task-checkbox.toggling{opacity:.5;cursor:wait}.memo-tasks .task-checkbox:disabled{cursor:not-allowed;opacity:.4}.memo-tasks .task-title-group{flex:1;align-items:baseline;flex-wrap:wrap;min-width:0}.memo-tasks .task-title{font-size:.9375rem}.memo-tasks .task-project{font-size:12px;color:var(--accent);opacity:.8;white-space:nowrap;padding:2px 0}.memo-tasks .task-title,.memo-tasks .task-project{padding-right:5px}.memo-tasks .task-datetime{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-muted);white-space:nowrap}.memo-tasks .task-datetime.overdue{color:var(--danger)}.memo-tasks .task-meta{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:2px 6px;border-radius:var(--radius-sm);transition:background .15s}.memo-tasks .task-meta.clickable{cursor:pointer}.memo-tasks .task-meta.clickable:hover{background:var(--bg-hover)}.memo-tasks .task-datetime-add{display:inline-flex;align-items:center;color:var(--text-muted);opacity:0;transition:opacity .15s}.memo-tasks .task-item:hover .task-datetime-add{opacity:.5}.memo-tasks .task-meta.clickable:hover .task-datetime-add{opacity:1}.memo-tasks .task-recurrence{display:inline-flex;align-items:center;color:var(--accent);opacity:.7;cursor:help}.memo-tasks .task-recurrence:hover{opacity:1}.task-checkbox-item{display:flex;align-items:center;gap:8px;padding:4px 0}.task-checkbox-item.done .task-title{text-decoration:line-through;opacity:.6}.task-checkbox{width:16px;height:16px;border:2px solid #d1d5db;border-radius:4px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease;padding:0;margin-top:4px}.task-checkbox:hover{border-color:#6366f1}.task-checkbox.checked{background:#6366f1;border-color:#6366f1;color:#fff}.task-checkbox.toggling{opacity:.5;cursor:wait}.task-checkbox:disabled{cursor:not-allowed;opacity:.4}.task-checkbox.not-synced{border-style:dashed;border-color:#f59e0b}.task-title{flex:1}.task-datetime{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#6b7280;white-space:nowrap}.task-datetime.overdue,.task-checkbox-item.overdue .task-title{color:#ef4444}.inline-task{display:inline-flex;align-items:center;gap:6px}.inline-task.done .task-title{text-decoration:line-through;opacity:.6}.inline-task .task-checkbox{width:16px;height:16px;vertical-align:middle}.inline-task .task-datetime{font-size:11px}@media(prefers-color-scheme:dark){.task-checkbox{border-color:#4b5563}.task-checkbox:hover{border-color:#818cf8}.task-checkbox.checked{background:#818cf8;border-color:#818cf8}.task-datetime{color:#9ca3af}.task-datetime.overdue,.task-checkbox-item.overdue .task-title{color:#f87171}}.memo-input-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--card-radius);padding:var(--space-4);box-shadow:var(--shadow)}.memo-input-card:focus-within{box-shadow:var(--shadow),0 0 0 3px var(--accent-soft)}.memo-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:.875rem;font-weight:500;padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);transition:background .15s,color .15s,opacity .15s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn .shortcut{font-size:.6875rem;opacity:.7;margin-left:var(--space-1)}.agent-chat{margin-top:var(--space-3)}.agent-chat-messages{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto;padding:var(--space-2) 0;margin-bottom:var(--space-3)}.agent-chat-message{display:flex;align-items:flex-end;gap:4px;max-width:90%}.agent-chat-user{align-self:flex-end;flex-direction:row-reverse}.agent-chat-assistant{align-self:flex-start}.agent-chat-message-content{font-size:13px;line-height:1.6;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);word-break:break-word;white-space:pre-wrap}.agent-chat-user .agent-chat-message-content{background:var(--primary, #3b82f6);color:#fff;border-bottom-right-radius:2px}.agent-chat-assistant .agent-chat-message-content{background:var(--bg-hover);color:var(--text-secondary);border-bottom-left-radius:2px}.agent-chat-assistant.posture-establish .agent-chat-message-content{border-left:3px solid #6C5CE7}.agent-chat-assistant.posture-challenge .agent-chat-message-content{border-left:3px solid #E17055}.agent-chat-assistant.posture-aporia .agent-chat-message-content{border-left:3px solid #00B894}.agent-chat-assistant.posture-synthesis .agent-chat-message-content{border-left:3px solid #FDCB6E}.agent-chat-thinking{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-style:italic}.agent-chat-thinking .spinning{animation:agent-spin 1s linear infinite}@keyframes agent-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.agent-chat-cursor{display:inline-block;width:2px;height:14px;background:var(--text-muted);margin-left:1px;vertical-align:text-bottom;animation:agent-blink 1s step-end infinite}@keyframes agent-blink{50%{opacity:0}}.agent-chat-save-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;opacity:0;transition:all .15s}.agent-chat-message:hover .agent-chat-save-btn{opacity:.6}.agent-chat-save-btn:hover{opacity:1!important;background:var(--bg-hover);color:var(--text-secondary)}.agent-chat-prompt-hint{font-size:12px;color:var(--text-muted);text-align:center;padding:var(--space-2);cursor:pointer;transition:color .15s}.agent-chat-prompt-hint:hover{color:var(--primary, #3b82f6)}.agent-chat-input-row{display:flex;align-items:flex-end;gap:6px}.agent-chat-input{flex:1;font-size:13px;line-height:1.5;padding:6px 10px;background:var(--bg);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text);resize:none;outline:none;transition:border-color .15s;font-family:inherit;min-height:32px;max-height:120px}.agent-chat-input:focus{border-color:var(--primary, #3b82f6)}.agent-chat-input:disabled{opacity:.6}.agent-chat-send-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:var(--primary, #3b82f6);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;transition:opacity .15s}.agent-chat-send-btn:hover:not(:disabled){opacity:.9}.agent-chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.agent-chat-send-btn .spinning{animation:agent-spin 1s linear infinite}.memo-response-section{margin-top:var(--space-5)}.memo-response-block{margin-bottom:var(--space-4)}.memo-response-block:last-child{margin-bottom:0}.memo-response-section-header{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--text-muted);margin-bottom:var(--space-2)}.memo-response-regenerate-btn{margin-left:auto;display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;color:var(--text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s;opacity:.6}.memo-response-regenerate-btn:hover:not(:disabled){opacity:1;background:var(--bg-hover);color:var(--text-secondary)}.memo-response-regenerate-btn:disabled{cursor:not-allowed}.memo-response-regenerate-btn .spinning{animation:memo-response-spin 1s linear infinite}.memo-response-confidence-badge{font-size:10px;font-weight:500;padding:1px 6px;border-radius:10px;background:#eab3081f;color:var(--text-muted)}.memo-response-model-badge{font-size:10px;font-weight:500;padding:1px 6px;border-radius:10px;background:#6366f11a;color:var(--text-muted)}.memo-response-insight{font-size:13px;line-height:1.7;color:var(--text-secondary);padding:var(--space-3) var(--space-4);background:var(--bg-hover);border-radius:var(--radius-sm)}.memo-response-headline{font-size:14px;font-weight:600;color:var(--text);line-height:1.5;margin-bottom:var(--space-2)}.memo-response-body{font-size:13px;line-height:1.7;color:var(--text-secondary)}.memo-response-tension{font-size:13px;line-height:1.7;color:var(--text-secondary);margin-top:var(--space-2);padding-left:var(--space-3);border-left:2px solid rgba(234,179,8,.4)}.memo-response-question{display:flex;align-items:flex-start;gap:8px;margin-top:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:13px;line-height:1.6;color:var(--text);cursor:pointer;transition:all .15s}.memo-response-question:hover,.memo-response-question.active{border-color:var(--primary, #3b82f6);background:var(--bg)}.memo-response-question>svg{flex-shrink:0;margin-top:2px;color:var(--primary, #3b82f6)}.memo-response-no-insight{color:var(--text-muted);font-style:italic}.memo-response-ref-link{color:var(--primary, #3b82f6);text-decoration:none;font-weight:500;cursor:pointer}.memo-response-ref-link:hover{text-decoration:underline}.memo-response-related{display:flex;flex-direction:column;gap:6px}.memo-response-related-item{display:flex;align-items:flex-start;gap:8px;padding:var(--space-3) var(--space-4);background:var(--bg-hover);border-radius:var(--radius-sm);text-decoration:none;color:inherit;transition:background .15s}.memo-response-related-item:hover{background:var(--bg-secondary);box-shadow:var(--shadow)}.memo-response-related-index{flex-shrink:0;font-size:11px;font-weight:600;color:var(--primary, #3b82f6);margin-top:1px}.memo-response-related-content{flex:1;min-width:0}.memo-response-related-text{font-size:12px;line-height:1.5;color:var(--text-secondary);word-break:break-word}.memo-response-no-related{font-size:13px;color:var(--text-muted);font-style:italic;padding:var(--space-2) 0}.memo-response-related-meta{font-size:11px;color:var(--text-muted);margin-top:4px;display:flex;align-items:center;gap:8px}.memo-response-related-tags{color:var(--text-muted)}.memo-response-match-badge{font-size:10px;font-weight:500;padding:1px 6px;border-radius:10px;line-height:1.4}.memo-response-match-badge.match-close{background:#22c55e1f;color:#16a34a}.memo-response-match-badge.match-surprising{background:#3b82f61f;color:#2563eb}.memo-response-match-badge.match-temporal{background:#a855f71f;color:#9333ea}.memo-response-generate{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.memo-response-generate-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;font-size:13px;color:var(--text-secondary);background:var(--bg-hover);border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s}.memo-response-generate-btn:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--border);color:var(--text)}.memo-response-generate-btn:disabled{opacity:.6;cursor:not-allowed}.memo-response-generate-btn .spinning{animation:memo-response-spin 1s linear infinite}@keyframes memo-response-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.memo-response-error{font-size:12px;color:var(--danger, #ef4444)}.memo-response-status{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted);padding:var(--space-3) var(--space-4);background:var(--bg-hover);border-radius:var(--radius-sm)}.memo-response-status-failed{color:var(--danger, #ef4444);background:#ef444414;justify-content:space-between}.memo-response-status-no-related{color:var(--text-muted)}.memo-response-retry-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:12px;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s}.memo-response-retry-btn:hover:not(:disabled){background:var(--bg);border-color:var(--border)}.memo-response-retry-btn:disabled{opacity:.6;cursor:not-allowed}.memo-response-retry-btn .spinning{animation:memo-response-spin 1s linear infinite}.memo-response-empty{font-size:13px;color:var(--text-muted);padding:var(--space-2) 0}.memo-response-research-toggle{margin-top:var(--space-3)}.memo-response-research-label{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);cursor:pointer;padding:6px 12px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-sm);transition:all .15s}.memo-response-research-label:hover{background:var(--bg-hover);border-color:var(--border)}.memo-response-research-label input{width:14px;height:14px;margin:0;cursor:pointer}.memo-response-research-label .spinning{animation:memo-response-spin 1s linear infinite}.memo-response-research{margin-top:var(--space-3);padding:var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-sm)}.memo-response-research-header{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--primary, #3b82f6);margin-bottom:var(--space-3)}.memo-response-research-content{font-size:13px;line-height:1.7;color:var(--text-secondary)}.memo-response-research-content p{margin:0 0 var(--space-3) 0}.memo-response-research-content p:last-child{margin-bottom:0}.memo-response-research-content a{color:var(--primary, #3b82f6);text-decoration:none}.memo-response-research-content a:hover{text-decoration:underline}.memo-response-research-content strong{color:var(--text)}.memo-response-research-content ul,.memo-response-research-content ol{margin:0 0 var(--space-3) 0;padding-left:var(--space-5)}.memo-response-research-content li{margin-bottom:var(--space-1)}.memo-response-research-loading{display:flex;align-items:center;gap:8px;color:var(--text-muted)}.memo-response-research-loading .spinning{animation:memo-response-spin 1s linear infinite}.memo-page{height:100vh;overflow-y:auto;background:var(--bg-primary)}.memo-page-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);background:var(--bg-primary);border-bottom:1px solid var(--border-light)}.btn-back{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:.875rem;font-weight:500;color:var(--text-secondary);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s}.btn-back:hover{color:var(--text);background:var(--bg-hover)}.memo-page-content{max-width:800px;margin:0 auto;padding:var(--space-6)}.memo-page-content .memo-card{max-width:100%}.memo-page .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-8);color:var(--text-muted)}.memo-page .error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-8);text-align:center}.memo-page .error-state h3{font-size:1.25rem;font-weight:600;color:var(--text);margin:0}.memo-page .error-state p{font-size:.875rem;color:var(--text-muted);margin:0}@media(max-width:768px){.memo-page-header{padding:var(--space-3) var(--space-4)}.memo-page-content{padding:var(--space-4)}}.search-bar{width:100%}.search-input-wrapper{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--bg-secondary);border:2px solid var(--border);border-radius:var(--radius);transition:border-color .15s,box-shadow .15s}.search-input-wrapper:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.search-icon{color:var(--text-muted);flex-shrink:0}.search-input{flex:1;min-width:0;font-size:.875rem;background:transparent;-webkit-appearance:none}.search-input:focus{outline:none;border:none}.search-input::placeholder{color:var(--text-placeholder)}.search-input::-webkit-search-cancel-button,.search-input::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}.search-input::-ms-clear{display:none;width:0;height:0}.clear-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);border-radius:var(--radius-sm);transition:background .15s,color .15s}.clear-btn:hover{background:var(--bg-hover);color:var(--text)}.search-btn{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);background:var(--accent);color:#fff;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;white-space:nowrap;transition:background .15s}.search-btn:hover:not(:disabled){background:var(--accent-hover)}.search-btn:disabled{opacity:.5;cursor:not-allowed}.admin-dashboard{display:flex;min-height:100vh;background:linear-gradient(135deg,#0f0f14,#1a1a24)}.admin-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem;color:#fff9;background:linear-gradient(135deg,#0f0f14,#1a1a24)}.admin-loading .spinner,.admin-dashboard .tab-loading .spinner{animation:admin-spin 1s linear infinite}@keyframes admin-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-dashboard .admin-sidebar{width:240px;background:#ffffff08;border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.admin-dashboard .sidebar-header{display:flex;align-items:center;gap:.75rem;padding:1.25rem;border-bottom:1px solid rgba(255,255,255,.06)}.admin-dashboard .btn-back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:#ffffffb3;cursor:pointer;transition:all .2s ease}.admin-dashboard .btn-back:hover{background:#ffffff1a;color:#fff}.admin-dashboard .sidebar-brand{display:flex;align-items:center;gap:.5rem;color:#fff;font-weight:600;font-size:1rem}.admin-dashboard .sidebar-nav{flex:1;padding:1rem .75rem;display:flex;flex-direction:column;gap:.25rem}.admin-dashboard .admin-nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:transparent;border:none;border-radius:10px;color:#fff9;font-size:.875rem;cursor:pointer;transition:all .2s ease;text-align:left}.admin-dashboard .admin-nav-item:hover{background:#ffffff0d;color:#ffffffe6}.admin-dashboard .admin-nav-item.active{background:linear-gradient(135deg,#6366f1cc,#8b5cf6cc);color:#fff}.admin-dashboard .sidebar-footer{padding:1rem;border-top:1px solid rgba(255,255,255,.06)}.admin-dashboard .user-info{display:flex;align-items:center;gap:.75rem}.admin-dashboard .user-avatar{width:36px;height:36px;border-radius:10px;object-fit:cover}.admin-dashboard .user-details{display:flex;flex-direction:column}.admin-dashboard .user-name{font-size:.8125rem;font-weight:500;color:#fff}.admin-dashboard .user-role{font-size:.6875rem;color:#ffffff80}.admin-dashboard .admin-main{flex:1;padding:2rem;overflow-y:auto}.admin-dashboard .tab-loading{display:flex;align-items:center;justify-content:center;min-height:300px;color:#ffffff80}.admin-dashboard .tab-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.admin-dashboard .tab-header h1{font-size:1.5rem;font-weight:600;color:#fff;margin:0 0 .25rem}.admin-dashboard .tab-header p{font-size:.875rem;color:#ffffff80;margin:0}.admin-dashboard .header-actions{display:flex;gap:.75rem}.admin-dashboard .btn-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:#ffffffb3;cursor:pointer;transition:all .2s ease}.admin-dashboard .btn-icon:hover{background:#ffffff1a;color:#fff}.admin-dashboard .btn-primary{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:10px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.admin-dashboard .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 24px #6366f14d}.admin-dashboard .btn-primary:disabled{opacity:.6;cursor:not-allowed}.admin-dashboard .hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem}.admin-dashboard .hero-stat{display:flex;align-items:center;gap:1.25rem;padding:1.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-dashboard .hero-stat.primary .hero-icon{background:linear-gradient(135deg,#3b82f633,#2563eb33);color:#60a5fa}.admin-dashboard .hero-stat.success .hero-icon{background:linear-gradient(135deg,#10b98133,#05966933);color:#34d399}.admin-dashboard .hero-stat.users .hero-icon{background:linear-gradient(135deg,#8b5cf633,#7c3aed33);color:#a78bfa}.admin-dashboard .hero-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:14px}.admin-dashboard .hero-content{display:flex;flex-direction:column}.admin-dashboard .hero-value{font-size:2rem;font-weight:700;color:#fff;line-height:1}.admin-dashboard .hero-label{font-size:.8125rem;color:#ffffff80;margin-top:.25rem}.admin-dashboard .status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.admin-dashboard .status-card{position:relative;padding:1.25rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:14px;overflow:hidden;transition:all .2s ease}.admin-dashboard .status-card:hover{background:#ffffff0d;transform:translateY(-2px)}.admin-dashboard .status-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;margin-bottom:1rem}.admin-dashboard .status-card.pending .status-icon{background:#fbbf2426;color:#fbbf24}.admin-dashboard .status-card.processing .status-icon{background:#3b82f626;color:#60a5fa}.admin-dashboard .status-card.completed .status-icon{background:#10b98126;color:#34d399}.admin-dashboard .status-card.failed .status-icon{background:#ef444426;color:#f87171}.admin-dashboard .status-content{display:flex;flex-direction:column}.admin-dashboard .status-value{font-size:1.75rem;font-weight:700;color:#fff;line-height:1}.admin-dashboard .status-label{font-size:.75rem;color:#ffffff80;margin-top:.25rem;text-transform:uppercase;letter-spacing:.05em}.admin-dashboard .status-bar{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff0d}.admin-dashboard .status-bar .status-fill{height:100%;transition:width .5s ease}.admin-dashboard .status-card.pending .status-fill{background:#fbbf24}.admin-dashboard .status-card.processing .status-fill{background:#60a5fa}.admin-dashboard .status-card.completed .status-fill{background:#34d399}.admin-dashboard .status-card.failed .status-fill{background:#f87171}.admin-dashboard .status-action{display:flex;align-items:center;gap:.25rem;margin-top:.75rem;font-size:.75rem;color:#f87171}.admin-dashboard .alert{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-radius:12px;margin-bottom:1.5rem;font-size:.875rem}.admin-dashboard .alert.success{background:#10b9811a;border:1px solid rgba(16,185,129,.2);color:#34d399}.admin-dashboard .alert.error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#f87171}.admin-dashboard .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.admin-dashboard .empty-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;background:#10b9811a;border-radius:20px;color:#34d399;margin-bottom:1.5rem}.admin-dashboard .empty-state h3{font-size:1.25rem;font-weight:600;color:#fff;margin:0 0 .5rem}.admin-dashboard .empty-state p{font-size:.875rem;color:#ffffff80;margin:0}.admin-dashboard .memo-list{display:flex;flex-direction:column;gap:.75rem}.admin-dashboard .memo-item{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:14px;transition:all .2s ease}.admin-dashboard .memo-item:hover{background:#ffffff0d}.admin-dashboard .memo-info{flex:1;min-width:0}.admin-dashboard .memo-meta{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.admin-dashboard .memo-user{font-size:.8125rem;font-weight:500;color:#fff}.admin-dashboard .memo-date{font-size:.75rem;color:#fff6}.admin-dashboard .memo-preview{font-size:.875rem;color:#fff9;line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.admin-dashboard .btn-retry{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:8px;color:#f87171;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;flex-shrink:0;margin-left:1rem}.admin-dashboard .btn-retry:hover:not(:disabled){background:#ef444433}.admin-dashboard .btn-retry:disabled{opacity:.5;cursor:not-allowed}@media(max-width:1024px){.admin-dashboard .status-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.admin-dashboard{flex-direction:column}.admin-dashboard .admin-sidebar{width:100%;border-right:none;border-bottom:1px solid rgba(255,255,255,.06)}.admin-dashboard .sidebar-nav{flex-direction:row;overflow-x:auto;padding:.5rem .75rem}.admin-dashboard .sidebar-footer{display:none}.admin-dashboard .admin-main{padding:1.5rem}.admin-dashboard .hero-stats{grid-template-columns:1fr}.admin-dashboard .status-grid{grid-template-columns:repeat(2,1fr)}}.admin-dashboard .users-tab{max-width:100%}.admin-dashboard .users-table-wrapper{overflow-x:auto;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:14px}.admin-dashboard .users-table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-dashboard .users-table th{text-align:left;padding:1rem 1.25rem;font-weight:500;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#ffffff80;border-bottom:1px solid rgba(255,255,255,.06);white-space:nowrap}.admin-dashboard .users-table td{padding:1rem 1.25rem;color:#fffc;border-bottom:1px solid rgba(255,255,255,.04)}.admin-dashboard .users-table tbody tr:hover{background:#ffffff05}.admin-dashboard .users-table tbody tr:last-child td{border-bottom:none}.admin-dashboard .user-cell{display:flex;align-items:center;gap:.75rem}.admin-dashboard .user-avatar-small{width:32px;height:32px;border-radius:8px;object-fit:cover}.admin-dashboard .user-avatar-placeholder{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,#6366f14d,#8b5cf64d);display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:600;color:#fff}.admin-dashboard .email-cell{color:#fff9;font-size:.8125rem}.admin-dashboard .memo-count-cell{font-weight:600;color:#fff}.admin-dashboard .date-cell{color:#ffffff80;font-size:.8125rem;white-space:nowrap}.admin-dashboard .badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:6px;font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.admin-dashboard .badge.admin{background:linear-gradient(135deg,#8b5cf633,#7c3aed33);color:#a78bfa}.admin-dashboard .badge.user{background:#ffffff0d;color:#ffffff80}.admin-dashboard .rebuild-tab{padding:2rem}.admin-dashboard .rebuild-progress-section{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}.admin-dashboard .rebuild-stats{display:flex;gap:2rem;margin-bottom:1.5rem}.admin-dashboard .rebuild-stat{display:flex;flex-direction:column;gap:.25rem}.admin-dashboard .rebuild-stat-value{font-size:1.75rem;font-weight:600;color:#ffffffe6}.admin-dashboard .rebuild-stat-label{font-size:.75rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.05em}.admin-dashboard .rebuild-stat.completed .rebuild-stat-value{color:#34d399}.admin-dashboard .rebuild-stat.failed .rebuild-stat-value{color:#f87171}.admin-dashboard .rebuild-stat.pending .rebuild-stat-value{color:#fbbf24}.admin-dashboard .rebuild-progress-bar{position:relative;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.admin-dashboard .rebuild-progress-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:4px;transition:width .3s ease}.admin-dashboard .rebuild-progress-text{position:absolute;right:0;top:-1.5rem;font-size:.75rem;color:#fff9}.admin-dashboard .rebuild-running-indicator{display:flex;align-items:center;gap:.5rem;margin-top:1rem;font-size:.875rem;color:#fff9}.admin-dashboard .rebuild-running-indicator .spinner{animation:admin-spin 1s linear infinite}.admin-dashboard .rebuild-actions{margin-bottom:1.5rem}.admin-dashboard .btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fffc;font-size:.875rem;cursor:pointer;transition:all .2s}.admin-dashboard .btn-secondary:hover{background:#ffffff14;border-color:#ffffff26}.admin-dashboard .btn-danger{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:linear-gradient(135deg,#ef444433,#dc262633);border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:.875rem;cursor:pointer;transition:all .2s}.admin-dashboard .btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#ef44444d,#dc26264d)}.admin-dashboard .btn-danger:disabled{opacity:.5;cursor:not-allowed}.admin-dashboard .rebuild-logs{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:1.5rem}.admin-dashboard .rebuild-logs h3{font-size:.875rem;font-weight:600;color:#ffffffe6;margin-bottom:1rem}.admin-dashboard .rebuild-log-list{max-height:400px;overflow-y:auto}.admin-dashboard .rebuild-log-empty{text-align:center;padding:2rem;color:#fff6;font-size:.875rem}.admin-dashboard .rebuild-log-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border-radius:8px;font-size:.8125rem;transition:background .15s}.admin-dashboard .rebuild-log-item:hover{background:#ffffff08}.admin-dashboard .rebuild-log-item.success .rebuild-log-status{color:#34d399}.admin-dashboard .rebuild-log-item.failed .rebuild-log-status{color:#f87171}.admin-dashboard .rebuild-log-id{font-family:monospace;color:#ffffff80;flex-shrink:0}.admin-dashboard .rebuild-log-preview{flex:1;color:#ffffffb3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-dashboard .rebuild-log-time{color:#fff6;font-size:.75rem;flex-shrink:0}.admin-dashboard .orphan-memos-warning{background:#fbbf241a;border:1px solid rgba(251,191,36,.2);border-radius:12px;padding:1.25rem;margin-bottom:1.5rem}.admin-dashboard .orphan-header{display:flex;align-items:center;gap:.75rem;color:#fbbf24;font-weight:600;margin-bottom:.5rem}.admin-dashboard .orphan-description{color:#fff9;font-size:.875rem;margin-bottom:1rem;line-height:1.5}.admin-dashboard .orphan-actions{display:flex;gap:.75rem;align-items:center}.admin-dashboard .user-select{flex:1;padding:.625rem 1rem;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:.875rem;cursor:pointer}.admin-dashboard .user-select:focus{outline:none;border-color:#6366f180}.admin-dashboard .user-select option{background:#1a1a2e;color:#fff}:root{--quick-capture-height: 80px;--main-content-width: 800px;--main-content-min-width: 500px}.auth-screen{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:var(--space-6)}.auth-card{text-align:center;max-width:400px;width:100%}.auth-logo{margin-bottom:var(--space-6)}.auth-logo .logo-img{height:80px;width:auto}.auth-card h1{font-size:1.5rem;font-weight:600;margin-bottom:var(--space-2);letter-spacing:-.02em}.auth-card p{color:var(--text-secondary);margin-bottom:var(--space-8)}.btn-google{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-6);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);font-size:.9375rem;font-weight:500;transition:border-color .15s,box-shadow .15s}.btn-google:hover{border-color:var(--text-muted);box-shadow:var(--shadow)}.btn-apple{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-6);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);font-size:.9375rem;font-weight:500;margin-top:var(--space-3);transition:border-color .15s,box-shadow .15s}.btn-apple:hover{border-color:var(--text-muted);box-shadow:var(--shadow)}.loading-screen{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary)}.dashboard{height:100vh;width:100%;max-width:none;margin:0;background:var(--bg-primary);display:flex;align-items:stretch;overflow-x:auto;overflow-y:hidden}.main-content{flex:0 0 var(--main-content-width, 800px);width:var(--main-content-width, 800px);min-width:var(--main-content-min-width, 500px);max-width:none;height:100vh;overflow:visible;position:relative;background:var(--bg-primary);border-right:1px solid var(--border-light)}.main-scroll{height:100vh;overflow-y:auto}.dashboard-header{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;height:var(--header-height);padding:0 var(--space-6);z-index:50;background:#fafafab3;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.header-left{display:flex;align-items:center;gap:var(--space-4)}.mobile-menu{display:none}.sidebar-toggle{display:flex}.page-title{font-size:1.125rem;font-weight:600;letter-spacing:-.01em}.memo-count{font-size:.8125rem;color:var(--text-muted)}.header-right{display:flex;align-items:center;gap:var(--space-4)}.btn-search{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#fff9;border:1px solid var(--border);border-radius:var(--radius);font-size:.8125rem;color:var(--text-muted);transition:border-color .15s,box-shadow .15s}.btn-search:hover{border-color:var(--text-muted);color:var(--text-secondary)}.btn-search kbd{font-family:inherit;font-size:.6875rem;padding:2px 4px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;margin-left:var(--space-2)}.search-wrapper{display:flex;align-items:center;gap:var(--space-2)}.search-overlay{position:absolute;inset:0;display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-6);background:#fafafae6;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);z-index:60}.search-overlay .search-bar{flex:1;max-width:600px}.btn-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);border-radius:var(--radius);transition:background .15s,color .15s}.btn-icon:hover{background:var(--bg-hover);color:var(--text)}.main-resize-handle{position:absolute;top:0;right:-5px;z-index:80;width:10px;height:100%;cursor:col-resize;touch-action:none}.main-resize-handle:after{content:"";position:absolute;top:var(--header-height);right:4px;width:1px;height:calc(100% - var(--header-height));background:transparent;transition:background .15s,box-shadow .15s}.main-resize-handle:hover:after,.main-resize-handle:focus-visible:after,body.is-resizing-main .main-resize-handle:after{background:var(--accent);box-shadow:0 0 0 1px var(--accent-soft)}body.is-resizing-main{cursor:col-resize;-webkit-user-select:none;user-select:none}.user-menu{display:flex;align-items:center;gap:var(--space-2)}.user-avatar{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);border-radius:50%;font-size:.8125rem;font-weight:600}.content-area{display:flex;flex-direction:column;min-height:calc(100vh - var(--header-height))}.memos-section{flex:1;padding:var(--space-6);padding-top:var(--space-6);padding-bottom:5px}.memos-grid{display:flex;flex-direction:column;gap:var(--space-4)}.quick-capture{padding:var(--space-4) var(--space-6);padding-bottom:0}.quick-capture .memo-input-card{transition:all .2s ease}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-16) 0;color:var(--text-muted);font-size:.875rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16) 0;text-align:center}.empty-icon{font-size:3rem;margin-bottom:var(--space-4)}.empty-state h3{font-size:1rem;font-weight:600;margin-bottom:var(--space-2)}.empty-state p{color:var(--text-muted);font-size:.875rem}.sidebar-overlay{display:none}@media(max-width:768px){.dashboard{width:100%;max-width:100%;overflow:hidden}.main-content{flex:1 1 auto;width:100%;min-width:0;border-right:none}.mobile-menu{display:flex}.sidebar-toggle,.main-resize-handle,.btn-search span,.btn-search kbd{display:none}.sidebar-overlay{display:block;position:fixed;inset:0;background:#0000004d;z-index:90}.memos-section{padding:var(--space-4)}.quick-capture{padding:var(--space-3) var(--space-4);padding-bottom:0}}.load-more-trigger{grid-column:1 / -1;padding:var(--space-6) 0;min-height:60px}.loading-more{display:flex;align-items:center;justify-content:center;gap:var(--space-2);color:var(--text-muted);font-size:.875rem}.spinner-small{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}
