.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:#f5f5f5}.login-container{background:#fff;padding:40px;border-radius:8px;box-shadow:0 2px 8px #0000001a;width:100%;max-width:400px}.login-title{text-align:center;margin-bottom:32px;font-size:28px;color:#333}.login-form{display:flex;flex-direction:column;gap:20px}.login-field{display:flex;flex-direction:column;gap:8px}.login-field label{font-size:14px;font-weight:500;color:#666}.login-field input{padding:12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .2s}.login-field input:focus{outline:none;border-color:#007bff}.login-field input:disabled{background-color:#f5f5f5;cursor:not-allowed}.login-error{padding:12px;background-color:#fee;border:1px solid #fcc;border-radius:4px;color:#c33;font-size:14px}.login-button{padding:12px;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s}.login-button:hover:not(:disabled){background-color:#0056b3}.login-button:disabled{background-color:#ccc;cursor:not-allowed}@media(max-width:768px){.login-page{padding:20px}.login-container{padding:32px 24px}.login-title{font-size:24px;margin-bottom:24px}}@media(max-width:480px){.login-page{padding:16px}.login-container{padding:24px 20px}.login-title{font-size:22px;margin-bottom:20px}.login-form{gap:16px}}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:#fff;border-radius:8px;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e5e5}.modal-title{font-size:20px;font-weight:600;color:#1a1a1a;margin:0}.modal-close{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:4px}.modal-close:hover{color:#1a1a1a;background-color:#f0f0f0}.modal-close svg{width:20px;height:20px}.modal-body{padding:24px;overflow-y:auto;flex:1}@media(max-width:768px){.modal-content{width:95%;max-width:none;max-height:95vh}.modal-header{padding:16px 20px}.modal-title{font-size:18px}.modal-body{padding:20px}}@media(max-width:480px){.modal-content{width:100%;max-height:100vh;border-radius:0}.modal-header{padding:12px 16px}.modal-title{font-size:16px}.modal-body{padding:16px}}.create-folder-form{display:flex;flex-direction:column;gap:20px}.folder-field{display:flex;flex-direction:column;gap:8px}.folder-label{font-size:14px;font-weight:500;color:#333}.folder-input{padding:10px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.folder-input:focus{border-color:#888}.folder-error{color:#dc3545;font-size:13px}.folder-actions{display:flex;justify-content:flex-end;gap:12px}.folder-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.create-btn{background-color:#1a1a1a;color:#fff}.create-btn:hover:not(:disabled){background-color:#333}.create-btn:disabled{opacity:.6;cursor:not-allowed}.notes-sidebar-section{margin-bottom:8px}.notes-sidebar-section:last-of-type{margin-bottom:24px}.notes-main-button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:none;border:none;border-radius:6px;cursor:pointer;font-size:15px;font-weight:500;color:#1a1a1a;transition:background-color .2s}.notes-main-button:hover{background-color:#f0f0f0}.notes-main-button.active{background-color:#f0f0f0;font-weight:600}.notes-main-button-content{display:flex;align-items:center;gap:10px}.notes-main-button-icon{width:16px;height:16px;color:#666;flex-shrink:0}.notes-main-button.active .notes-main-button-icon{color:#1a1a1a}.create-note-btn{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:4px}.create-note-btn:hover{color:#1a1a1a;background-color:#e0e0e0}.create-note-btn svg{width:18px;height:18px}.notes-sidebar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:0 16px}.notes-sidebar-title{font-size:12px;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.5px}.create-folder-icon-btn{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:4px}.create-folder-icon-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.create-folder-icon-btn svg{width:16px;height:16px}.folders-sidebar-list{display:flex;flex-direction:column;gap:2px}.folder-sidebar-item{display:flex;align-items:center;gap:10px;padding:8px 16px;cursor:pointer;border-radius:4px;transition:background-color .2s}.folder-sidebar-item:hover{background-color:#f0f0f0}.folder-sidebar-icon{width:16px;height:16px;color:#666;flex-shrink:0}.folder-sidebar-name{flex:1;font-size:14px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-sidebar-count{font-size:12px;color:#999;flex-shrink:0}.folder-edit-btn,.folder-delete-btn{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#999;transition:color .2s,background-color .2s;border-radius:4px;opacity:0;margin-left:4px}.folder-sidebar-item:hover .folder-edit-btn,.folder-sidebar-item:hover .folder-delete-btn{opacity:1}.folder-edit-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.folder-delete-btn:hover{color:#dc3545;background-color:#ffebeb}.folder-edit-btn svg,.folder-delete-btn svg{width:14px;height:14px}.notes-sidebar-divider{height:1px;background-color:#e5e5e5;margin:16px 0}.search-suggestions{position:absolute;top:100%;left:0;right:0;background-color:#fff;border:1px solid #e5e5e5;border-top:none;border-radius:0 0 6px 6px;max-height:400px;overflow-y:auto;z-index:1000;box-shadow:0 4px 12px #0000001a;margin-top:-1px}.search-suggestions-empty{padding:16px;text-align:center;color:#999;font-size:14px}.search-suggestions-group{border-bottom:1px solid #f0f0f0}.search-suggestions-group:last-child{border-bottom:none}.search-suggestions-group-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:#f9f9f9;font-size:11px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e5e5e5}.search-suggestions-group-header svg{width:14px;height:14px;color:#999}.search-suggestions-group-title{flex:1}.search-suggestions-group-count{color:#999;font-weight:400}.search-suggestions-items{display:flex;flex-direction:column}.search-suggestions-item{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;transition:background-color .15s;border-bottom:1px solid #f9f9f9}.search-suggestions-item:last-child{border-bottom:none}.search-suggestions-item:hover{background-color:#f0f0f0}.search-suggestions-item-icon{display:flex;align-items:center;justify-content:center;color:#666;flex-shrink:0}.search-suggestions-item-icon svg{width:16px;height:16px}.search-suggestions-item-text{flex:1;font-size:14px;color:#1a1a1a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-suggestions::-webkit-scrollbar{width:6px}.search-suggestions::-webkit-scrollbar-track{background:#f9f9f9}.search-suggestions::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:3px}.search-suggestions::-webkit-scrollbar-thumb:hover{background:#b0b0b0}.change-password-form{display:flex;flex-direction:column;gap:20px}.change-password-field{display:flex;flex-direction:column;gap:8px}.change-password-field label{font-size:14px;font-weight:500;color:#666}.change-password-field input{padding:12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .2s}.change-password-field input:focus{outline:none;border-color:#007bff}.change-password-field input:disabled{background-color:#f5f5f5;cursor:not-allowed}.change-password-error{padding:12px;background-color:#fee;border:1px solid #fcc;border-radius:4px;color:#c33;font-size:14px}.change-password-actions{display:flex;gap:12px;justify-content:flex-end}.change-password-cancel,.change-password-submit{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.change-password-cancel{background-color:#f5f5f5;color:#333}.change-password-cancel:hover:not(:disabled){background-color:#e5e5e5}.change-password-submit{background-color:#007bff;color:#fff}.change-password-submit:hover:not(:disabled){background-color:#0056b3}.change-password-cancel:disabled,.change-password-submit:disabled{opacity:.6;cursor:not-allowed}.sidebar{width:280px;height:100vh;background-color:#fff;border-right:1px solid #e5e5e5;display:flex;flex-direction:column;overflow-y:auto}.sidebar-header{padding:24px 20px;border-bottom:1px solid #e5e5e5}.sidebar-logo{font-size:20px;font-weight:600;color:#1a1a1a;margin:0;cursor:pointer;transition:color .2s;-webkit-user-select:none;user-select:none}.sidebar-logo:hover{color:#666}.sidebar-search{padding:16px 20px;border-bottom:1px solid #e5e5e5;position:relative}.search-input{width:100%;padding:8px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.search-input:focus{border-color:#888}.search-input::placeholder{color:#999}.sidebar-content{flex:1;padding:16px;overflow-y:auto}.sidebar-footer{padding:16px 20px;border-top:1px solid #e5e5e5;display:flex;flex-direction:column;gap:8px}.sidebar-user-button{padding:8px 12px;background:none;border:none;text-align:left;font-size:14px;font-weight:500;color:#333;cursor:pointer;border-radius:4px;transition:background-color .2s}.sidebar-user-button:hover{background-color:#f5f5f5}.sidebar-logout-button{padding:8px 12px;background:none;border:1px solid #ddd;text-align:center;font-size:14px;color:#666;cursor:pointer;border-radius:4px;transition:background-color .2s,border-color .2s}.sidebar-logout-button:hover{background-color:#fee;border-color:#fcc;color:#c33}@media(max-width:768px){.sidebar{position:fixed;top:0;left:0;z-index:1000;width:280px;transition:transform .3s ease-in-out;box-shadow:2px 0 8px #0000001a;transform:translate(-100%);touch-action:manipulation}.sidebar-header{padding:16px 20px}.sidebar-logo{font-size:18px}.sidebar-search{padding:12px 20px}.sidebar-content{padding:12px 16px}.sidebar-footer{padding:12px 20px}}@media(max-width:480px){.sidebar{width:100%}.sidebar-header{padding:12px 16px}.sidebar-logo{font-size:16px}.sidebar-search{padding:10px 16px}.sidebar-content{padding:10px 12px}.sidebar-footer{padding:10px 16px}}.note-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s;position:relative}.note-card:hover{box-shadow:0 2px 8px #0000001a;border-color:#d0d0d0}.note-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.note-card-title{font-size:16px;font-weight:600;color:#1a1a1a;margin:0;flex:1}.note-card-actions{display:flex;gap:8px;margin-left:12px}.note-action-btn{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:4px}.note-action-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.note-action-btn svg{width:16px;height:16px}.note-card-preview{font-size:14px;color:#666;margin-bottom:8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.note-card-meta{display:flex;align-items:center;gap:12px;margin-bottom:8px;flex-wrap:wrap}.note-card-meta-item{display:flex;align-items:center;gap:4px;color:#666;font-size:12px}.note-card-meta-icon{width:14px;height:14px;flex-shrink:0}.note-card-meta-count{font-size:12px;color:#666}.note-card-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.note-card-tag{padding:2px 8px;background-color:#f0f0f0;border-radius:4px;font-size:11px;color:#333;white-space:nowrap}.note-card-tag-more{padding:2px 8px;background-color:#e0e0e0;border-radius:4px;font-size:11px;color:#666;font-weight:500}.note-card-date{font-size:12px;color:#999}@media(max-width:768px){.note-card{padding:12px}.note-card-title{font-size:15px}.note-card-preview{font-size:13px}.note-card-meta{gap:8px}.note-card-actions{gap:6px}}@media(max-width:480px){.note-card{padding:10px}.note-card-title{font-size:14px}.note-card-preview{font-size:12px}.note-card-meta-item{font-size:11px}.note-card-tag{font-size:10px;padding:2px 6px}}.notes-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.notes-empty{text-align:center;padding:40px;color:#999;font-size:16px}@media(max-width:768px){.notes-list{grid-template-columns:1fr;gap:12px}}@media(max-width:480px){.notes-list{gap:10px}}.folder-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:12px 16px;cursor:pointer;display:flex;align-items:center;gap:12px;transition:all .2s}.folder-card:hover{box-shadow:0 2px 8px #0000001a;border-color:#d0d0d0}.folder-icon{width:24px;height:24px;color:#666;flex-shrink:0}.folder-info{display:flex;flex-direction:column;flex:1;min-width:0}.folder-name{font-size:14px;font-weight:500;color:#1a1a1a;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-count{font-size:12px;color:#999}.folders-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:24px}.notes-search{display:flex;align-items:center;gap:8px;margin-bottom:24px;position:relative}.search-icon{position:absolute;left:12px;width:18px;height:18px;color:#999;pointer-events:none}.notes-search .search-input{width:100%;padding:10px 12px 10px 38px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.notes-search .search-input:focus{border-color:#888}.notes-search .search-input::placeholder{color:#999}.tiptap-editor{width:100%;border:1px solid #d0d0d0;border-radius:6px;overflow:hidden;display:flex;flex-direction:column}.tiptap-loading{min-height:300px;padding:20px;text-align:center;color:#999}.tiptap-toolbar{display:flex;align-items:center;gap:4px;padding:8px;background-color:#f8f8f8;border-bottom:1px solid #d0d0d0;flex-wrap:wrap}.tiptap-toolbar button{padding:6px 10px;background:none;border:1px solid transparent;border-radius:4px;cursor:pointer;font-size:14px;color:#333;transition:all .2s;min-width:28px;height:28px;display:flex;align-items:center;justify-content:center}.tiptap-toolbar button:hover:not(:disabled){background-color:#e8e8e8;border-color:#d0d0d0}.tiptap-toolbar button.is-active{background-color:#e0e0e0;border-color:#999;color:#000}.tiptap-toolbar button:disabled{opacity:.5;cursor:not-allowed}.tiptap-toolbar-divider{width:1px;height:20px;background-color:#d0d0d0;margin:0 4px}:global(.ProseMirror){position:relative;height:300px;padding:4px}.tiptap-editor :global(.ProseMirror){font-size:16px;line-height:1.6;color:#333;outline:none;overflow-y:auto;box-sizing:border-box}.tiptap-editor :global(.ProseMirror) p{margin:.5em 0}.tiptap-editor :global(.ProseMirror) p:first-child{margin-top:0}.tiptap-editor :global(.ProseMirror) p:last-child{margin-bottom:0}.tiptap-editor :global(.ProseMirror) h1{font-size:2em;font-weight:600;margin:.8em 0 .4em;line-height:1.2}.tiptap-editor :global(.ProseMirror) h2{font-size:1.5em;font-weight:600;margin:.8em 0 .4em;line-height:1.3}.tiptap-editor :global(.ProseMirror) h3{font-size:1.25em;font-weight:600;margin:.8em 0 .4em;line-height:1.4}.tiptap-editor :global(.ProseMirror) ul{list-style-type:disc;padding-left:1.5em;margin:.5em 0}.tiptap-editor :global(.ProseMirror) ol{list-style-type:decimal;padding-left:1.5em;margin:.5em 0}.tiptap-editor :global(.ProseMirror) li{display:list-item;margin:.25em 0;padding-left:.5em}.tiptap-editor :global(.ProseMirror) blockquote{border-left:3px solid #d0d0d0;padding-left:1em;margin:1em 0;color:#666;font-style:italic}.tiptap-editor :global(.ProseMirror) code{background-color:#f5f5f5;padding:2px 6px;border-radius:3px;font-family:monospace;font-size:.9em}.tiptap-editor :global(.ProseMirror) pre{background-color:#f5f5f5;padding:12px;border-radius:6px;overflow-x:auto;margin:1em 0}.tiptap-editor :global(.ProseMirror) pre code{background:none;padding:0}.tiptap-editor :global(.ProseMirror) hr{border:none;border-top:1px solid #d0d0d0;margin:1.5em 0}.tiptap-editor-content[data-placeholder]:empty:before{content:attr(data-placeholder);color:#999;pointer-events:none;position:absolute}.note-editor{display:flex;flex-direction:column;gap:20px}.editor-field{display:flex;flex-direction:column;gap:8px}.editor-label{font-size:14px;font-weight:500;color:#333}.editor-input,.editor-select{padding:10px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.editor-input:focus,.editor-select:focus{border-color:#888}.editor-select{cursor:pointer}.tags-input-container{display:flex;gap:8px}.tags-input-container .editor-input{flex:1}.add-tag-btn{padding:10px 16px;background-color:#f0f0f0;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;cursor:pointer;transition:background-color .2s}.add-tag-btn:hover{background-color:#e0e0e0}.tags-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.tag{display:flex;align-items:center;gap:6px;padding:4px 10px;background-color:#f0f0f0;border-radius:4px;font-size:13px;color:#333}.tag-remove{background:none;border:none;cursor:pointer;color:#666;font-size:18px;line-height:1;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.tag-remove:hover{background-color:#d0d0d0}.editor-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.editor-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.save-btn:disabled{opacity:.6;cursor:not-allowed}.file-input{margin-top:8px}.upload-status{margin-top:8px;font-size:13px;color:#666}.files-list{margin-top:12px;display:flex;flex-direction:column;gap:8px}.file-item{display:flex;align-items:center;gap:12px;padding:8px 12px;background-color:#f5f5f5;border-radius:4px}.file-name{flex:1;font-size:13px;color:#1a1a1a;cursor:pointer;text-decoration:underline}.file-name:hover{color:#666}.file-size{font-size:12px;color:#999}.file-delete-btn{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:4px}.file-delete-btn:hover{color:#dc3545;background-color:#ffe0e0}.file-delete-btn svg{width:16px;height:16px}.password-form{display:flex;flex-direction:column;gap:20px}.password-field{display:flex;flex-direction:column;gap:8px}.password-label{font-size:14px;font-weight:500;color:#333}.password-input{padding:10px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.password-input:focus{border-color:#888}.password-error{color:#dc3545;font-size:13px}.password-actions{display:flex;justify-content:flex-end;gap:12px}.password-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.notes-module{width:100%}.notes-loading{text-align:center;padding:40px;color:#666}.notes-title{font-size:28px;font-weight:600;color:#1a1a1a;margin-bottom:24px}.notes-section{margin-bottom:32px}.notes-section-title{font-size:18px;font-weight:600;color:#333;margin-bottom:16px}@media(max-width:768px){.notes-title{font-size:24px;margin-bottom:20px}.notes-section{margin-bottom:24px}.notes-section-title{font-size:16px;margin-bottom:12px}}@media(max-width:480px){.notes-title{font-size:20px;margin-bottom:16px}.notes-section-title{font-size:15px}}.task-context-menu{position:fixed;background-color:#fff;border:1px solid #e5e5e5;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:200px;padding:8px;max-height:400px;overflow:visible}.task-context-menu-section{margin-bottom:8px;position:relative;overflow:visible}.task-context-menu-section-with-submenu{margin-bottom:0}.task-context-menu-label{font-size:11px;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.5px;padding:4px 8px;margin-bottom:4px}.task-context-menu-item{width:100%;padding:8px 12px;background:none;border:none;text-align:left;font-size:14px;color:#333;cursor:pointer;border-radius:4px;transition:background-color .2s;display:flex;align-items:center;justify-content:space-between}.task-context-menu-item-content{display:flex;align-items:center;gap:8px;flex:1}.task-context-menu-item-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.task-context-menu-item-icon svg{width:16px;height:16px}.task-context-menu-item-arrow{width:14px;height:14px;color:#999;flex-shrink:0}.task-context-menu-item-parent{position:relative}.task-context-menu-item:hover{background-color:#f0f0f0}.task-context-menu-item.active{background-color:#e5e5e5;font-weight:500}.task-context-menu-item.delete{color:#dc3545}.task-context-menu-item.delete:hover{background-color:#ffe0e0}.task-context-submenu{position:fixed;background-color:#fff;border:1px solid #e5e5e5;border-radius:6px;box-shadow:0 4px 12px #00000026;min-width:180px;padding:8px;z-index:1001}.task-context-submenu .task-context-menu-item{width:100%;padding:8px 12px}.task-context-menu-divider{height:1px;background-color:#e5e5e5;margin:8px 0}.task-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:6px;padding:12px;cursor:pointer;transition:all .2s}.task-card:hover{box-shadow:0 2px 8px #0000001a;border-color:#d0d0d0}.task-card.completed{opacity:.7}.task-card.dragging{cursor:grabbing}.task-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.task-card-title{font-size:14px;font-weight:600;color:#1a1a1a;margin:0;flex:1}.task-card-title.strikethrough{text-decoration:line-through;color:#999}.task-card-favorite-btn{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#999;transition:color .2s;border-radius:4px;flex-shrink:0}.task-card-favorite-btn:hover{color:#ffc107;background-color:#fff9e6}.task-card-favorite-btn svg{width:16px;height:16px}.task-card-meta{display:flex;gap:6px;margin-bottom:8px;flex-wrap:wrap}.task-card-priority{padding:2px 8px;border-radius:3px;font-size:11px;font-weight:500;color:#fff}.task-card-status{padding:2px 8px;background-color:#f0f0f0;border-radius:3px;font-size:11px;color:#666}.task-card-deadline{display:flex;align-items:center;gap:4px;padding:2px 8px;background-color:#fff3cd;border-radius:3px;font-size:11px;color:#856404}.task-card-assignee{display:flex;align-items:center;gap:4px;font-size:11px;color:#666;padding:2px 8px;background-color:#e7f3ff;border-radius:3px}.task-card-deadline svg{width:12px;height:12px}.task-card-info{display:flex;gap:12px;margin-top:8px}.task-card-info-item{display:flex;align-items:center;gap:4px;font-size:12px;color:#999}.task-card-info-item svg{width:14px;height:14px}.column-settings-form{display:flex;flex-direction:column;gap:20px}.column-settings-field{display:flex;flex-direction:column;gap:8px}.column-settings-label{font-size:14px;font-weight:500;color:#333}.column-settings-input{padding:10px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.column-settings-input:focus{border-color:#888}.column-settings-color-wrapper{display:flex;gap:8px;align-items:center}.column-settings-color-input{width:60px;height:40px;border:1px solid #d0d0d0;border-radius:6px;cursor:pointer}.column-settings-color-text{flex:1;padding:10px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s;font-family:monospace}.column-settings-color-text:focus{border-color:#888}.column-settings-actions{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.column-settings-actions-right{display:flex;gap:12px}.column-settings-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.delete-btn{background-color:#dc3545;color:#fff}.delete-btn:hover{background-color:#c82333}.task-form{display:flex;flex-direction:column;gap:20px}.task-form-field{display:flex;flex-direction:column;gap:8px}.task-form-label{font-size:14px;font-weight:500;color:#333}.task-form-input,.task-form-select{padding:10px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.task-form-input:focus,.task-form-select:focus{border-color:#888}.task-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.task-form-tags-input{display:flex;gap:8px}.task-form-add-tag-btn{padding:10px 16px;background-color:#f0f0f0;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;color:#333;cursor:pointer;transition:background-color .2s}.task-form-add-tag-btn:hover{background-color:#e0e0e0}.task-form-tags-list{display:flex;flex-wrap:wrap;gap:8px}.task-form-tag{padding:4px 12px;background-color:#e0e0e0;border-radius:4px;font-size:13px;color:#333;display:flex;align-items:center;gap:6px}.task-form-remove-tag-btn{background:none;border:none;cursor:pointer;color:#666;font-size:18px;line-height:1;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.task-form-remove-tag-btn:hover{color:#dc3545}.task-form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.task-form-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.save-btn:disabled{opacity:.5;cursor:not-allowed}.kanban-column{width:280px;background-color:#fff;border-radius:8px;display:flex;flex-direction:column;max-height:calc(100vh - 100px);flex-shrink:0}.kanban-column-header{padding:12px 16px;color:#fff;font-weight:600;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;align-items:center;cursor:grab}.kanban-column-header:active{cursor:grabbing}.kanban-column-title{margin:0;font-size:14px;font-weight:600;color:#fff}.kanban-column-actions{display:flex;gap:4px}.kanban-column-action-btn{background:#fff3;border:none;color:#fff;padding:4px 8px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.kanban-column-action-btn:hover{background:#ffffff4d}.kanban-column-action-btn svg{width:16px;height:16px}.kanban-column-content{flex:1;padding:12px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.kanban-column-add-task{width:100%;padding:10px;background-color:#f5f5f5;border:1px dashed #d0d0d0;border-radius:6px;color:#666;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.kanban-column-add-task:hover{background-color:#e5e5e5;border-color:#999}.kanban-column-add-task svg{width:16px;height:16px}.kanban-column-tasks{display:flex;flex-direction:column;gap:8px}.kanban-column.drag-over{background-color:#f0f8ff;border:2px dashed #1a1a1a}.tasks-search{display:flex;align-items:center;gap:12px;margin-bottom:24px;position:relative}.tasks-search-icon{position:absolute;left:12px;width:18px;height:18px;color:#999;pointer-events:none;z-index:1}.tasks-search-input{flex:1;padding:10px 12px 10px 38px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.tasks-search-input:focus{border-color:#888}.tasks-search-input::placeholder{color:#999}.tasks-search-filter-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;background-color:#f0f0f0;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;color:#333;cursor:pointer;transition:all .2s;white-space:nowrap}.tasks-search-filter-btn:hover{background-color:#e0e0e0;border-color:#999}.tasks-search-filter-btn svg{width:16px;height:16px}.tasks-filter-modal{display:flex;flex-direction:column;gap:24px;min-width:400px;max-width:500px}.tasks-filter-section{display:flex;flex-direction:column;gap:12px}.tasks-filter-section-title{font-size:16px;font-weight:600;color:#1a1a1a;margin:0;padding-bottom:8px;border-bottom:1px solid #e5e5e5}.tasks-filter-options{display:flex;flex-direction:column;gap:8px}.tasks-filter-option{display:flex;align-items:center;gap:8px;padding:8px;cursor:pointer;border-radius:4px;transition:background-color .2s}.tasks-filter-option:hover{background-color:#f5f5f5}.tasks-filter-option input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#1a1a1a}.tasks-filter-option span{font-size:14px;color:#333;-webkit-user-select:none;user-select:none}.tasks-filter-loading,.tasks-filter-empty{padding:16px;text-align:center;color:#999;font-size:14px}.tasks-filter-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:16px;border-top:1px solid #e5e5e5}.tasks-filter-reset-btn,.tasks-filter-apply-btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:1px solid #d0d0d0}.tasks-filter-reset-btn{background-color:#f0f0f0;color:#333}.tasks-filter-reset-btn:hover{background-color:#e0e0e0;border-color:#999}.tasks-filter-apply-btn{background-color:#1a1a1a;color:#fff;border-color:#1a1a1a}.tasks-filter-apply-btn:hover{background-color:#333}.tasks-filter-checkbox-label{display:flex;align-items:center;gap:8px;padding:8px;cursor:pointer;border-radius:4px;transition:background-color .2s}.tasks-filter-checkbox-label:hover{background-color:#f5f5f5}.tasks-filter-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#1a1a1a}.tasks-filter-checkbox-label span{font-size:14px;color:#333;-webkit-user-select:none;user-select:none}.tasks-filter-dropdown-wrapper{position:relative;width:100%}.tasks-filter-dropdown-btn{width:100%;padding:10px 12px;background-color:#fff;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;color:#333;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:border-color .2s}.tasks-filter-dropdown-btn:hover{border-color:#999}.tasks-filter-dropdown-arrow{width:16px;height:16px;transition:transform .2s;color:#666}.tasks-filter-dropdown-arrow.open{transform:rotate(180deg)}.tasks-filter-dropdown-menu{position:absolute;top:100%;left:0;right:0;margin-top:4px;background-color:#fff;border:1px solid #d0d0d0;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:10;max-height:200px;overflow-y:auto;padding:8px}.tasks-filter-dropdown-option{display:flex;align-items:center;gap:8px;padding:8px;cursor:pointer;border-radius:4px;transition:background-color .2s}.tasks-filter-dropdown-option:hover{background-color:#f5f5f5}.tasks-filter-dropdown-option input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#1a1a1a}.tasks-filter-dropdown-option span{font-size:14px;color:#333;-webkit-user-select:none;user-select:none}.tasks-filter-selected-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.tasks-filter-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background-color:#f0f0f0;border:1px solid #d0d0d0;border-radius:4px;font-size:13px;color:#333}.tasks-filter-tag-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;background:none;border:none;cursor:pointer;color:#666;transition:color .2s}.tasks-filter-tag-remove:hover{color:#1a1a1a}.tasks-filter-tag-remove svg{width:12px;height:12px}.tasks-filter-sort-controls{display:flex;gap:12px;align-items:center}.tasks-filter-sort-select,.tasks-filter-sort-order-select{flex:1;padding:10px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;color:#333;background-color:#fff;cursor:pointer;outline:none;transition:border-color .2s}.tasks-filter-sort-select:focus,.tasks-filter-sort-order-select:focus{border-color:#888}.tasks-filter-sort-order-select{flex:0 0 auto;min-width:150px}.tasks-filter-date-controls{display:flex;flex-direction:column;gap:12px}.tasks-filter-date-input-wrapper{display:flex;align-items:center;gap:8px}.tasks-filter-date-label{font-size:14px;color:#333;min-width:40px}.tasks-filter-date-input{flex:1;padding:8px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;color:#333;background-color:#fff;cursor:pointer;outline:none;transition:border-color .2s}.tasks-filter-date-input:focus{border-color:#888}.kanban-board{width:100%;height:100%;overflow-x:auto;overflow-y:hidden;background-color:#f5f5f5;padding:24px;display:flex;flex-direction:column}.kanban-board-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.kanban-board-title{font-size:24px;font-weight:600;color:#1a1a1a;margin:0}.kanban-board-add-column{padding:10px 20px;background-color:#1a1a1a;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.kanban-board-add-column:hover{background-color:#333}.kanban-loading{display:flex;align-items:center;justify-content:center;height:100%;font-size:16px;color:#666}.kanban-board-content{display:flex;gap:16px;flex:1;min-width:fit-content;overflow-x:auto;overflow-y:hidden;align-items:flex-start;justify-content:flex-start}.kanban-column-overlay{width:280px;background-color:#fff;border-radius:8px;border:2px solid #1a1a1a;box-shadow:0 4px 12px #00000026;opacity:.9}.kanban-column-header-overlay{padding:12px 16px;color:#fff;font-weight:600;border-radius:6px 6px 0 0}@media(max-width:768px){.kanban-board{padding:16px}.kanban-board-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:16px}.kanban-board-title{font-size:20px}.kanban-board-add-column{width:100%;padding:12px}.kanban-board-content{gap:12px}.kanban-column-overlay{width:260px;min-width:260px}}@media(max-width:480px){.kanban-board{padding:12px}.kanban-board-title{font-size:18px}.kanban-column-overlay{width:240px;min-width:240px}}.tasks-module{width:100%;height:100%;overflow:hidden}.debt-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s;position:relative;margin-bottom:16px}.debt-card:hover{box-shadow:0 2px 8px #0000001a;border-color:#d0d0d0}.debt-card.debt-lent{border-left:4px solid #22c55e}.debt-card.debt-borrowed{border-left:4px solid #f59e0b}.debt-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.debt-card-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0;flex:1}.debt-card-actions{display:flex;gap:8px;margin-left:12px}.debt-action-btn{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:4px}.debt-action-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.debt-action-btn svg{width:16px;height:16px}.debt-card-type{font-size:14px;color:#666;margin-bottom:12px;font-weight:500}.debt-card-amounts{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.debt-card-amount,.debt-card-remaining{display:flex;justify-content:space-between;align-items:center}.debt-label{font-size:14px;color:#666}.debt-value{font-size:16px;font-weight:600;color:#1a1a1a}.debt-card-progress{margin-top:12px}.debt-progress-bar-container{width:100%;height:8px;background-color:#e5e5e5;border-radius:4px;overflow:hidden;margin-bottom:4px}.debt-progress-bar{height:100%;border-radius:4px;transition:width .3s}.debt-progress-text{font-size:12px;color:#666;text-align:right;display:block}.debts-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.debts-list-empty{text-align:center;padding:60px 20px;color:#666}.debts-list-empty p{font-size:16px;margin:0}.debt-form{width:100%}.form-field{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:500;color:#1a1a1a;margin-bottom:8px}.form-input,.form-textarea{width:100%;padding:10px 12px;border:1px solid #e5e5e5;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s;box-sizing:border-box}.form-input:focus,.form-textarea:focus{outline:none;border-color:#1a1a1a}.form-input.error,.form-textarea.error{border-color:#dc2626}.form-error{display:block;font-size:12px;color:#dc2626;margin-top:4px}.form-textarea{resize:vertical;min-height:80px}.form-radio-group{display:flex;gap:20px}.form-radio{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px}.form-radio input[type=radio]{cursor:pointer}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e5e5e5}.form-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.form-btn:disabled{opacity:.5;cursor:not-allowed}.cancel-btn{background-color:#f0f0f0;color:#1a1a1a}.cancel-btn:hover:not(:disabled){background-color:#e0e0e0}.save-btn{background-color:#1a1a1a;color:#fff}.save-btn:hover:not(:disabled){background-color:#333}.debts-module{width:100%}.debts-loading{text-align:center;padding:40px;color:#666}.debts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.debts-title{font-size:28px;font-weight:600;color:#1a1a1a;margin:0}.debts-create-btn{background-color:#1a1a1a;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.debts-create-btn:hover{background-color:#333}.debts-filters{margin-bottom:20px;padding:12px;background-color:#f9f9f9;border-radius:6px;border:1px solid #e5e5e5}.debts-filter-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#1a1a1a;-webkit-user-select:none;user-select:none}.debts-filter-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px}.goal-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s;position:relative;margin-bottom:16px}.goal-card:hover{box-shadow:0 2px 8px #0000001a;border-color:#d0d0d0}.goal-card.goal-active{border-left:4px solid #2563eb}.goal-card.goal-completed{border-left:4px solid #6b7280;opacity:.8}.goal-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.goal-card-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0;flex:1}.goal-card-actions{display:flex;gap:8px;margin-left:12px}.goal-action-btn{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:4px}.goal-action-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.goal-action-btn svg{width:16px;height:16px}.goal-card-description{font-size:14px;color:#666;margin-bottom:12px;line-height:1.4}.goal-card-status{margin-bottom:12px}.goal-card-amounts{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.goal-card-amount,.goal-card-saved{display:flex;justify-content:space-between;align-items:center}.goal-label{font-size:14px;color:#666}.goal-value{font-size:16px;font-weight:600;color:#1a1a1a}.goal-card-progress{margin-top:12px}.goal-progress-bar-container{width:100%;height:8px;background-color:#e5e5e5;border-radius:4px;overflow:hidden;margin-bottom:4px}.goal-progress-bar{height:100%;border-radius:4px;transition:width .3s}.goal-progress-text{font-size:12px;color:#666;text-align:right;display:block}.goals-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.goals-list-empty{text-align:center;padding:60px 20px;color:#666}.goals-list-empty p{font-size:16px;margin:0}.goals-stats{display:flex;gap:24px;margin-bottom:24px;padding:16px;background-color:#f9f9f9;border-radius:8px;border:1px solid #e5e5e5}.goals-stat-item{display:flex;align-items:center;gap:8px}.goals-stat-label{font-size:14px;color:#666}.goals-stat-value{font-size:18px;font-weight:600;padding:4px 12px;border-radius:4px}.goals-stat-active{color:#2563eb;background-color:#dbeafe}.goals-stat-completed{color:#059669;background-color:#d1fae5}.goal-form{width:100%}.goal-form .form-field{margin-bottom:20px}.goal-form .form-label{display:block;font-size:14px;font-weight:500;color:#1a1a1a;margin-bottom:8px}.goal-form .form-input,.goal-form .form-textarea{width:100%;padding:10px 12px;border:1px solid #e5e5e5;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s;box-sizing:border-box}.goal-form .form-input:focus,.goal-form .form-textarea:focus{outline:none;border-color:#1a1a1a}.goal-form .form-input.error,.goal-form .form-textarea.error{border-color:#dc2626}.goal-form .form-error{display:block;font-size:12px;color:#dc2626;margin-top:4px}.goal-form .form-textarea{resize:vertical;min-height:80px}.goal-form .form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e5e5e5}.goal-form .form-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.goal-form .form-btn:disabled{opacity:.5;cursor:not-allowed}.goal-form .cancel-btn{background-color:#f0f0f0;color:#1a1a1a}.goal-form .cancel-btn:hover:not(:disabled){background-color:#e0e0e0}.goal-form .save-btn{background-color:#1a1a1a;color:#fff}.goal-form .save-btn:hover:not(:disabled){background-color:#333}.goals-module{width:100%}.goals-loading{text-align:center;padding:40px;color:#666}.goals-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.goals-title{font-size:28px;font-weight:600;color:#1a1a1a;margin:0}.goals-create-btn{background-color:#1a1a1a;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.goals-create-btn:hover{background-color:#333}.goals-filters{margin-bottom:20px;padding:12px;background-color:#f9f9f9;border-radius:6px;border:1px solid #e5e5e5}.goals-filter-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#1a1a1a;-webkit-user-select:none;user-select:none}.goals-filter-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px}.finance-module{width:100%}.finance-tabs{display:flex;gap:0;border-bottom:2px solid #e5e5e5;margin-bottom:24px}.finance-tab{background:none;border:none;padding:12px 24px;font-size:16px;font-weight:500;color:#666;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.finance-tab:hover{color:#1a1a1a;background-color:#f9f9f9}.finance-tab.active{color:#1a1a1a;border-bottom-color:#1a1a1a;font-weight:600}.finance-content{width:100%}.finance-placeholder{text-align:center;padding:40px;color:#666;font-size:16px}.favorite-note-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s;display:flex;gap:12px;align-items:flex-start}.favorite-note-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#d0d0d0;transform:translateY(-2px)}.favorite-card-icon{color:#4a90e2;flex-shrink:0;margin-top:2px}.favorite-card-preview{font-size:14px;color:#666;margin:0 0 8px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.favorite-card-date{font-size:12px;color:#999}.favorite-task-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s;display:flex;gap:12px;align-items:flex-start}.favorite-task-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#d0d0d0;transform:translateY(-2px)}.favorite-task-card.completed{opacity:.7}.favorite-card-icon{color:#28a745;flex-shrink:0;margin-top:2px}.favorite-card-title.strikethrough{text-decoration:line-through;color:#999}.favorite-card-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.favorite-card-priority{padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500;color:#fff}.favorite-card-status{padding:4px 8px;background-color:#f0f0f0;border-radius:4px;font-size:11px;color:#666}.favorite-card-deadline{display:flex;align-items:center;gap:4px;padding:4px 8px;background-color:#fff3cd;border-radius:4px;font-size:11px;color:#856404}.favorite-card-deadline svg{width:12px;height:12px}.favorite-goal-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s;display:flex;gap:12px;align-items:flex-start}.favorite-goal-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#d0d0d0;transform:translateY(-2px)}.favorite-goal-card.completed{opacity:.7}.favorite-card-icon{color:#9b59b6;flex-shrink:0;margin-top:2px}.favorite-card-title{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.favorite-goal-info{display:flex;gap:16px;margin-bottom:12px;flex-wrap:wrap}.favorite-goal-amount{font-size:14px;font-weight:600;color:#1a1a1a}.favorite-goal-saved{font-size:14px;color:#666}.favorite-goal-progress{display:flex;align-items:center;gap:8px}.favorite-progress-bar.progress-active{background-color:#9b59b6}.favorite-progress-bar.progress-completed{background-color:#28a745}.favorite-debt-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s;display:flex;gap:12px;align-items:flex-start}.favorite-debt-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#d0d0d0;transform:translateY(-2px)}.favorite-debt-card.debt-lent{border-left:3px solid #28a745}.favorite-debt-card.debt-borrowed{border-left:3px solid #dc3545}.favorite-card-icon{color:#e74c3c;flex-shrink:0;margin-top:2px}.favorite-card-icon svg{width:20px;height:20px}.favorite-card-content{flex:1;min-width:0}.favorite-card-title{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.favorite-debt-type{font-size:13px;color:#666;margin-bottom:12px}.favorite-debt-info{display:flex;gap:16px;margin-bottom:12px;flex-wrap:wrap}.favorite-debt-amount{font-size:14px;font-weight:600;color:#1a1a1a}.favorite-debt-paid{font-size:14px;color:#666}.favorite-debt-progress{display:flex;align-items:center;gap:8px}.favorite-progress-bar-container{flex:1;height:8px;background-color:#e5e5e5;border-radius:4px;overflow:hidden}.favorite-progress-bar{height:100%;border-radius:4px;transition:width .3s}.favorite-progress-bar.progress-lent{background-color:#28a745}.favorite-progress-bar.progress-borrowed{background-color:#dc3545}.favorite-progress-text{font-size:12px;color:#666;font-weight:500;min-width:40px;text-align:right}.favorites-section{margin-bottom:48px}.favorites-section-title{font-size:24px;font-weight:600;color:#1a1a1a;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #e5e5e5}.favorites-section-content{width:100%}.favorites-module{padding:24px;max-width:1200px;margin:0 auto}.favorites-title{font-size:32px;font-weight:600;color:#1a1a1a;margin-bottom:32px}.favorites-loading{padding:24px;text-align:center;font-size:16px;color:#666}.favorites-empty{padding:48px 24px;text-align:center}.favorites-empty p{font-size:18px;color:#999;margin:0}.favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-bottom:40px}@media(max-width:768px){.favorites-grid{grid-template-columns:1fr}}.user-list{display:flex;flex-direction:column;gap:16px}.user-list-empty{padding:40px;text-align:center;color:#666;font-size:16px}.user-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;transition:box-shadow .2s}.user-item:hover{box-shadow:0 2px 4px #0000001a}.user-item-info{flex:1}.user-item-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.user-item-login{font-size:16px;font-weight:500;color:#1a1a1a}.user-item-badge{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.user-item-badge.admin{background-color:#fef3c7;color:#92400e}.user-item-modules{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.user-item-label{font-size:14px;color:#666}.user-item-module{padding:4px 8px;background-color:#f5f5f5;border-radius:4px;font-size:12px;color:#333}.user-item-actions{display:flex;gap:8px}.user-item-edit,.user-item-delete{padding:6px 12px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.user-item-edit{background-color:#f5f5f5;color:#333}.user-item-edit:hover{background-color:#e5e5e5}.user-item-delete{background-color:#fee;color:#c33}.user-item-delete:hover{background-color:#fcc}@media(max-width:768px){.user-item{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.user-item-info{width:100%}.user-item-actions{width:100%;justify-content:flex-end}.user-item-edit,.user-item-delete{flex:1;padding:10px}.user-item-modules{gap:6px}.user-item-module{font-size:11px;padding:3px 6px}}@media(max-width:480px){.user-item{padding:12px;gap:10px}.user-item-login{font-size:15px}.user-item-label{font-size:13px}.user-item-module{font-size:10px;padding:2px 5px}.user-item-edit,.user-item-delete{padding:8px;font-size:13px}.user-item-badge{font-size:11px;padding:3px 6px}}.user-form{display:flex;flex-direction:column;gap:20px}.user-form-field{display:flex;flex-direction:column;gap:8px}.user-form-field label{font-size:14px;font-weight:500;color:#666}.user-form-field input[type=text],.user-form-field input[type=password]{padding:12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .2s}.user-form-field input[type=text]:focus,.user-form-field input[type=password]:focus{outline:none;border-color:#007bff}.user-form-field input:disabled{background-color:#f5f5f5;cursor:not-allowed}.user-form-label{margin-bottom:8px}.user-form-modules{display:flex;flex-direction:column;gap:12px;padding:12px;background-color:#f9f9f9;border-radius:4px}.user-form-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:400}.user-form-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.user-form-error{padding:12px;background-color:#fee;border:1px solid #fcc;border-radius:4px;color:#c33;font-size:14px}.user-form-actions{display:flex;gap:12px;justify-content:flex-end}.user-form-cancel,.user-form-submit{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.user-form-cancel{background-color:#f5f5f5;color:#333}.user-form-cancel:hover:not(:disabled){background-color:#e5e5e5}.user-form-submit{background-color:#007bff;color:#fff}.user-form-submit:hover:not(:disabled){background-color:#0056b3}.user-form-cancel:disabled,.user-form-submit:disabled{opacity:.6;cursor:not-allowed}.users{padding:24px 32px;height:100%;overflow-y:auto}.users-loading{padding:24px 32px;text-align:center;font-size:16px;color:#666}.users-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.users-title{font-size:28px;font-weight:600;color:#1a1a1a;margin:0}.users-create-button{padding:10px 20px;background-color:#007bff;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.users-create-button:hover{background-color:#0056b3}@media(max-width:768px){.users,.users-loading{padding:72px 16px 16px}.users-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:20px}.users-title{font-size:24px}.users-create-button{width:100%;padding:12px}}@media(max-width:480px){.users,.users-loading{padding:64px 12px 12px}.users-title{font-size:20px}.users-header{margin-bottom:16px}}.main-area{flex:1;height:100vh;background-color:#f5f5f5;overflow-y:auto}.main-area-content{padding:32px;max-width:1200px;margin:0 auto}.main-area-content.tasks-full-width{max-width:none;margin:0;padding:0}@media(max-width:768px){.main-area-content{padding:16px}}@media(max-width:480px){.main-area-content{padding:12px}}.checklist-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;margin-bottom:8px}.checklist-item.overdue{background-color:#fff3f3;padding:8px 12px;border-radius:4px;border-left:3px solid #dc3545}.checklist-item-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.checklist-item-checkbox{width:18px;height:18px;margin-top:2px;cursor:pointer;flex-shrink:0}.checklist-item-text{flex:1;font-size:14px;color:#333;line-height:1.5;transition:color .2s,text-decoration .2s}.checklist-item-text.checked{color:#999;text-decoration:line-through}.checklist-item-date-section{display:flex;align-items:center;gap:8px;flex-shrink:0;min-width:fit-content}.checklist-item-date{font-size:12px;color:#666;padding:4px 8px;background-color:#f0f0f0;border-radius:4px;white-space:nowrap;min-width:fit-content;display:inline-block;flex-shrink:0;overflow:visible}.checklist-item-date.overdue{color:#dc3545;background-color:#ffe0e0;font-weight:500}.checklist-item-date-input{font-size:12px;padding:4px 8px;border:1px solid #d0d0d0;border-radius:4px;outline:none}.checklist-item-date-btn{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:4px}.checklist-item-date-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.checklist-item-date-btn svg{width:16px;height:16px}.checklist{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:20px;margin-bottom:16px;min-width:0;overflow:visible}.checklist-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e5e5e5}.checklist-title-section{flex:1}.checklist-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 12px}.checklist-progress{display:flex;align-items:center;gap:12px}.checklist-progress-bar{flex:1;height:8px;background-color:#f0f0f0;border-radius:4px;overflow:hidden}.checklist-progress-fill{height:100%;background-color:#4caf50;transition:width .3s}.checklist-progress-text{font-size:12px;color:#666;min-width:50px;text-align:right}.checklist-actions{display:flex;gap:8px;margin-left:16px}.checklist-action-btn{background:none;border:none;cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:4px}.checklist-action-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.checklist-action-btn svg{width:18px;height:18px}.checklist-items{display:flex;flex-direction:column;gap:4px}.checklist-empty{color:#999;font-size:14px;font-style:italic;text-align:center;padding:16px}.checklist-list{display:flex;flex-direction:column}.checklist-form{display:flex;flex-direction:column;gap:20px}.checklist-form-field{display:flex;flex-direction:column;gap:8px}.checklist-form-label{font-size:14px;font-weight:500;color:#333}.checklist-form-input{padding:10px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.checklist-form-input:focus{border-color:#888}.checklist-form-items{display:flex;flex-direction:column;gap:8px}.checklist-form-item{display:flex;align-items:center;gap:8px}.checklist-form-item-date-wrapper{display:flex;align-items:center;gap:4px}.checklist-form-item-date-input{padding:8px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s;min-width:140px}.checklist-form-item-date-input:focus{border-color:#888}.checklist-form-item-date-clear{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#999;transition:color .2s;border-radius:4px}.checklist-form-item-date-clear:hover{color:#dc3545;background-color:#ffe0e0}.checklist-form-item-date-clear svg{width:14px;height:14px}.checklist-form-item-input{flex:1;padding:8px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.checklist-form-item-input:focus{border-color:#888}.checklist-form-item-remove{background:none;border:none;cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;color:#999;transition:color .2s;border-radius:4px}.checklist-form-item-remove:hover{color:#dc3545;background-color:#ffe0e0}.checklist-form-item-remove svg{width:18px;height:18px}.checklist-form-add-item{padding:8px 12px;background-color:#f0f0f0;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;color:#333;cursor:pointer;transition:background-color .2s}.checklist-form-add-item:hover{background-color:#e0e0e0}.checklist-form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.checklist-form-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.cancel-btn{background-color:#f0f0f0;color:#333}.cancel-btn:hover{background-color:#e0e0e0}.submit-btn{background-color:#1a1a1a;color:#fff}.submit-btn:hover{background-color:#333}.note-detail{width:100%;max-width:900px;margin:0 auto}.note-detail-page .note-detail{max-width:none;margin:0;padding:24px 32px;height:100%}.note-detail-loading,.note-detail-error{text-align:center;padding:40px;color:#666}.note-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e5e5e5}.note-detail-back{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:6px}.note-detail-back:hover{color:#1a1a1a;background-color:#f0f0f0}.note-detail-back svg{width:24px;height:24px}.note-detail-actions{display:flex;gap:8px}.note-detail-action-btn{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:6px}.note-detail-action-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.note-detail-action-btn svg{width:20px;height:20px}.note-detail-content{background-color:#fff;border-radius:8px;padding:32px;display:flex;gap:32px;align-items:flex-start}.note-detail-left{flex:0 0 70%;min-width:0}.note-detail-right{flex:0 0 30%;min-width:280px;max-height:calc(100vh - 200px);overflow-y:auto;position:sticky;top:0}.note-detail-title{font-size:32px;font-weight:600;color:#1a1a1a;margin-bottom:16px}.note-detail-meta{display:flex;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e5e5e5;flex-wrap:wrap}.note-detail-date{font-size:13px;color:#999}.note-detail-folder{font-size:13px;color:#666;font-weight:500}.note-detail-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.note-detail-tag{padding:4px 12px;background-color:#f0f0f0;border-radius:4px;font-size:13px;color:#333}.note-detail-body-section{margin-bottom:32px}.note-detail-body-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e5e5e5}.note-detail-body-header h3{font-size:18px;font-weight:600;color:#1a1a1a;margin:0}.note-detail-edit-content-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background-color:#f0f0f0;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;color:#333;cursor:pointer;transition:background-color .2s}.note-detail-edit-content-btn:hover{background-color:#e0e0e0}.note-detail-edit-content-btn svg{width:16px;height:16px}.note-detail-content-actions{display:flex;gap:8px}.note-detail-save-content-btn,.note-detail-cancel-content-btn{padding:6px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.note-detail-save-content-btn{background-color:#1a1a1a;color:#fff}.note-detail-save-content-btn:hover{background-color:#333}.note-detail-cancel-content-btn{background-color:#f0f0f0;color:#333}.note-detail-cancel-content-btn:hover{background-color:#e0e0e0}.note-detail-content-editor{width:100%;margin-bottom:40px}.note-detail-content-editor .ql-container{min-height:400px;font-size:16px;line-height:1.6;font-family:inherit}.note-detail-content-editor .ql-editor{min-height:400px}.note-detail-content-editor .ql-toolbar{border-top-left-radius:6px;border-top-right-radius:6px;border:1px solid #d0d0d0;border-bottom:none}.note-detail-content-editor .ql-container{border-bottom-left-radius:6px;border-bottom-right-radius:6px;border:1px solid #d0d0d0;border-top:none}.note-detail-content-editor .ql-editor:focus{outline:none}.note-detail-content-editor .ql-stroke{stroke:#333}.note-detail-content-editor .ql-fill{fill:#333}.note-detail-body{font-size:16px;line-height:1.6;color:#333;min-height:200px}.note-detail-body *{max-width:100%}.note-detail-body ol{list-style-type:decimal;padding-left:2em;margin:1em 0}.note-detail-body ol li{margin:.5em 0;padding-left:.5em;display:list-item}.note-detail-body ul{list-style-type:disc;padding-left:2em;margin:1em 0}.note-detail-body ul li{margin:.5em 0;padding-left:.5em;display:list-item}.note-detail-files{margin-top:32px;padding-top:24px;border-top:1px solid #e5e5e5}.note-detail-files h3{font-size:18px;font-weight:600;color:#1a1a1a;margin-bottom:16px}.note-detail-files-list{display:flex;flex-direction:column;gap:8px}.note-detail-file-item{display:flex;align-items:center;gap:12px;padding:12px;background-color:#f5f5f5;border-radius:6px;transition:background-color .2s}.note-detail-file-item:hover{background-color:#e5e5e5}.note-detail-file-name{flex:1;font-size:14px;color:#1a1a1a;cursor:pointer;text-decoration:underline}.note-detail-file-name:hover{color:#666}.note-detail-file-size{font-size:12px;color:#999}.note-detail-file-download{width:18px;height:18px;color:#666;cursor:pointer;transition:color .2s}.note-detail-file-download:hover{color:#1a1a1a}.note-detail-checklists{margin-top:0;padding-top:0;border-top:none;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e5e5e5}.note-detail-checklists-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.note-detail-checklists-header h3{font-size:18px;font-weight:600;color:#1a1a1a;margin:0}.note-detail-add-checklist-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background-color:#1a1a1a;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.note-detail-add-checklist-btn:hover{background-color:#333}.note-detail-add-checklist-btn svg{width:18px;height:18px}@media(max-width:768px){.note-detail-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:20px;padding-bottom:12px}.note-detail-actions{width:100%;justify-content:flex-end}.note-detail-content{flex-direction:column;padding:20px;gap:24px}.note-detail-left{flex:1;width:100%}.note-detail-right{flex:1;width:100%;min-width:0;position:static;max-height:none}.note-detail-title{font-size:24px;margin-bottom:12px}.note-detail-meta{gap:12px;margin-bottom:16px;padding-bottom:12px}.note-detail-body-section{margin-bottom:24px}.note-detail-body-header h3{font-size:16px}.note-detail-content-editor .ql-container{min-height:300px;font-size:14px}.note-detail-content-editor .ql-editor{min-height:300px}.note-detail-body{font-size:14px}}@media(max-width:480px){.note-detail-content{padding:16px;gap:20px}.note-detail-title{font-size:20px}.note-detail-header{margin-bottom:16px;padding-bottom:10px}.note-detail-meta{gap:8px;margin-bottom:12px;padding-bottom:10px}.note-detail-body-header h3{font-size:15px}.note-detail-content-editor .ql-container{min-height:250px;font-size:13px}.note-detail-content-editor .ql-editor{min-height:250px}.note-detail-body{font-size:13px}.note-detail-action-btn{padding:6px}.note-detail-action-btn svg{width:18px;height:18px}}.note-detail-page-container{flex:1;height:100vh;overflow-y:auto;padding:0;margin:0;background-color:#f5f5f5}.note-detail-page-container .note-detail{width:100%;max-width:none;margin:0;padding:24px 32px;height:100%;background-color:#fff}@media(max-width:768px){.note-detail-page-container .note-detail{padding:72px 16px 16px}}@media(max-width:480px){.note-detail-page-container .note-detail{padding:64px 12px 12px}}.task-comment-form{display:flex;flex-direction:column;gap:12px;padding:16px;background-color:#f5f5f5;border-radius:8px;margin-bottom:16px}.task-comment-form-textarea{width:100%;padding:12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;outline:none;transition:border-color .2s}.task-comment-form-textarea:focus{border-color:#888}.task-comment-form-files{display:flex;flex-direction:column;gap:8px}.task-comment-form-file{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background-color:#fff;border:1px solid #e5e5e5;border-radius:4px;font-size:13px}.task-comment-form-file-remove{background:none;border:none;cursor:pointer;color:#dc3545;padding:4px;display:flex;align-items:center;justify-content:center}.task-comment-form-file-remove:hover{background-color:#ffe0e0;border-radius:4px}.task-comment-form-actions{display:flex;justify-content:space-between;align-items:center}.task-comment-form-attach-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background-color:#fff;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;color:#666;cursor:pointer;transition:all .2s}.task-comment-form-attach-btn:hover{background-color:#f0f0f0;border-color:#999}.task-comment-form-buttons{display:flex;gap:8px}.task-comment-form-cancel-btn,.task-comment-form-submit-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.task-comment-form-cancel-btn{background-color:#f0f0f0;color:#333}.task-comment-form-cancel-btn:hover{background-color:#e0e0e0}.task-comment-form-submit-btn{background-color:#1a1a1a;color:#fff}.task-comment-form-submit-btn:hover:not(:disabled){background-color:#333}.task-comment-form-submit-btn:disabled{opacity:.5;cursor:not-allowed}.task-comment{background-color:#f9f9f9;border:1px solid #e5e5e5;border-radius:8px;padding:16px;margin-bottom:12px}.comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f0f0f0}.comment-meta{display:flex;align-items:center;gap:8px}.comment-author{font-size:13px;font-weight:600;color:#1a1a1a}.comment-date{font-size:12px;color:#999}.comment-actions{display:flex;gap:8px}.comment-action-btn{display:flex;align-items:center;gap:4px;background:none;border:none;cursor:pointer;padding:4px 8px;font-size:13px;color:#666;border-radius:4px;transition:background-color .2s,color .2s}.comment-action-btn:hover{background-color:#e0e0e0;color:#333}.comment-action-btn svg{width:14px;height:14px}.comment-action-btn.save-btn{background-color:#1a1a1a;color:#fff}.comment-action-btn.save-btn:hover{background-color:#333}.comment-action-btn.cancel-btn{background-color:#f0f0f0;color:#333}.comment-action-btn.cancel-btn:hover{background-color:#e0e0e0}.comment-action-btn.delete-btn{color:#dc3545}.comment-action-btn.delete-btn:hover{background-color:#ffe0e0}.comment-content{font-size:14px;line-height:1.6;color:#333;margin-bottom:12px;white-space:pre-wrap}.comment-edit-textarea{width:100%;padding:8px 10px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;resize:vertical;margin-bottom:12px;font-family:inherit}.comment-files{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;border-top:1px dashed #f0f0f0}.comment-file-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background-color:#f0f0f0;border-radius:6px}.comment-file-icon{width:16px;height:16px;color:#666;flex-shrink:0}.comment-file-name{flex:1;font-size:13px;color:#1a1a1a;cursor:pointer;text-decoration:underline}.comment-file-name:hover{color:#666}.comment-file-size{font-size:11px;color:#999;flex-shrink:0}.comment-file-download-icon,.comment-file-delete-icon{width:16px;height:16px;color:#666;cursor:pointer;transition:color .2s;flex-shrink:0}.comment-file-download-icon:hover{color:#1a1a1a}.comment-file-delete-icon:hover{color:#dc3545}.delegate-task-form{display:flex;flex-direction:column;gap:20px}.delegate-task-field{display:flex;flex-direction:column;gap:8px}.delegate-task-field label{font-size:14px;font-weight:500;color:#666}.delegate-task-select{padding:12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .2s}.delegate-task-select:focus{outline:none;border-color:#007bff}.delegate-task-actions{display:flex;gap:12px;justify-content:flex-end}.delegate-task-cancel,.delegate-task-submit{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.delegate-task-cancel{background-color:#f5f5f5;color:#333}.delegate-task-cancel:hover{background-color:#e5e5e5}.delegate-task-submit{background-color:#007bff;color:#fff}.delegate-task-submit:hover{background-color:#0056b3}.task-detail{padding:24px;background-color:#fff;border-radius:8px;max-width:900px;margin:0 auto;height:100%;overflow-y:auto}.task-detail-loading,.task-detail-error{text-align:center;padding:40px;color:#666}.task-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e5e5e5}.task-detail-back{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:6px}.task-detail-back:hover{color:#1a1a1a;background-color:#f0f0f0}.task-detail-actions{display:flex;gap:8px}.task-detail-action-btn{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;border-radius:6px}.task-detail-action-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.task-detail-title-section{display:flex;align-items:center;gap:12px;margin-bottom:16px}.task-detail-complete-checkbox{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:2px solid #d0d0d0;border-radius:4px;cursor:pointer;position:relative}.task-detail-complete-checkbox input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.task-detail-complete-checkbox svg{display:none;width:16px;height:16px;color:#fff}.task-detail-complete-checkbox input:checked+svg{display:block}.task-detail-complete-checkbox input:checked~*{background-color:#28a745;border-color:#28a745}.task-detail-title{font-size:32px;font-weight:600;color:#1a1a1a;margin:0}.task-detail-title.completed{text-decoration:line-through;color:#999}.task-detail-meta{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.task-detail-priority{padding:4px 12px;border-radius:4px;font-size:13px;font-weight:500;color:#fff}.task-detail-priority[data-priority=high]{background-color:#dc3545}.task-detail-priority[data-priority=medium]{background-color:#ffc107}.task-detail-priority[data-priority=low]{background-color:#28a745}.task-detail-status{padding:4px 12px;background-color:#f0f0f0;border-radius:4px;font-size:13px;color:#666}.task-detail-status-wrapper{position:relative}.task-detail-status-btn{padding:4px 12px;background-color:#f0f0f0;border:1px solid #d0d0d0;border-radius:4px;font-size:13px;color:#666;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s}.task-detail-status-btn:hover{background-color:#e0e0e0;border-color:#999}.task-detail-status-btn svg{width:14px;height:14px;transition:transform .2s}.task-detail-status-wrapper.open .task-detail-status-btn svg{transform:rotate(180deg)}.task-detail-status-dropdown{position:absolute;top:100%;left:0;margin-top:4px;background-color:#fff;border:1px solid #e5e5e5;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:100;min-width:150px;overflow:hidden}.task-detail-status-option{width:100%;padding:8px 12px;background:none;border:none;text-align:left;font-size:14px;color:#333;cursor:pointer;transition:background-color .2s}.task-detail-status-option:hover{background-color:#f0f0f0}.task-detail-status-option.active{background-color:#e5e5e5;font-weight:500}.task-detail-tags-section{margin-bottom:24px}.task-detail-tags-section h3{font-size:18px;font-weight:600;margin:0 0 12px}.task-detail-tags-list{display:flex;flex-wrap:wrap;gap:8px}.task-detail-tag{padding:4px 12px;background-color:#f0f0f0;border-radius:4px;font-size:13px;color:#333}.task-detail-deadline{font-size:13px;color:#666}.task-detail-assignee{display:flex;align-items:center;gap:6px;padding:6px 12px;background-color:#e7f3ff;border-radius:4px;font-size:13px;color:#06c}.task-detail-assign-control{display:flex;align-items:center;gap:8px}.task-detail-assign-control label{font-size:13px;font-weight:500;color:#666}.task-detail-assign-select{padding:6px 12px;border:1px solid #ddd;border-radius:4px;font-size:13px;background-color:#fff;cursor:pointer}.task-detail-assign-select:focus{outline:none;border-color:#007bff}.task-detail-assignee-actions{display:flex;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid #e5e5e5}.task-detail-complete-btn,.task-detail-delegate-btn{padding:8px 16px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:background-color .2s}.task-detail-complete-btn{background-color:#28a745;color:#fff}.task-detail-complete-btn:hover{background-color:#218838}.task-detail-delegate-btn{background-color:#007bff;color:#fff}.task-detail-delegate-btn:hover{background-color:#0056b3}.task-detail-description-section{margin-bottom:32px}.task-detail-description-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.task-detail-description-header h3{font-size:18px;font-weight:600;margin:0}.task-detail-edit-btn,.task-detail-save-btn,.task-detail-cancel-btn{padding:6px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;cursor:pointer;display:flex;align-items:center;gap:6px}.task-detail-save-btn{background-color:#1a1a1a;color:#fff;border-color:#1a1a1a}.task-detail-cancel-btn{background-color:#f0f0f0;color:#333}.task-detail-description{font-size:16px;line-height:1.6;color:#333}.task-detail-content{background-color:#fff;border-radius:8px;padding:32px;display:flex;gap:32px;align-items:flex-start}.task-detail-left{flex:0 0 70%;min-width:0}.task-detail-right{flex:0 0 30%;min-width:280px;max-height:calc(100vh - 200px);overflow-y:auto;position:sticky;top:0}.task-detail-checklists-section{margin-top:0}.task-detail-checklists-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.task-detail-checklists-header h3{font-size:18px;font-weight:600;margin:0}.task-detail-add-checklist-btn{padding:8px 16px;background-color:#1a1a1a;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer;display:flex;align-items:center;gap:6px}.star-filled{color:#ffc107}.star-empty{color:#999;opacity:.5}.task-detail-files-section{margin-top:32px;padding-top:24px;border-top:1px solid #e5e5e5}.task-detail-files-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.task-detail-files-header h3{font-size:18px;font-weight:600;margin:0}.task-detail-upload-files-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background-color:#f0f0f0;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;color:#333;cursor:pointer;transition:all .2s}.task-detail-upload-files-btn:hover{background-color:#e0e0e0;border-color:#999}.task-detail-files-list{display:flex;flex-direction:column;gap:8px}.task-detail-file-item{display:flex;align-items:center;gap:12px;padding:12px;background-color:#f5f5f5;border-radius:6px;transition:background-color .2s}.task-detail-file-item:hover{background-color:#e5e5e5}.task-detail-file-name{flex:1;font-size:14px;color:#1a1a1a;cursor:pointer;text-decoration:underline}.task-detail-file-name:hover{color:#666}.task-detail-file-size{font-size:12px;color:#999}.task-detail-file-download{width:18px;height:18px;color:#666;cursor:pointer;transition:color .2s}.task-detail-file-download:hover{color:#1a1a1a}.task-detail-file-delete{background:none;border:none;cursor:pointer;padding:4px;color:#dc3545;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.task-detail-file-delete:hover{background-color:#ffe0e0}.task-detail-comments-section{margin-top:32px;padding-top:24px;border-top:1px solid #e5e5e5}.task-detail-comments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.task-detail-comments-header h3{font-size:18px;font-weight:600;margin:0}.task-detail-add-comment-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background-color:#1a1a1a;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:background-color .2s}.task-detail-add-comment-btn:hover{background-color:#333}.task-detail-comments-list{display:flex;flex-direction:column;gap:16px}.task-detail-comment{padding:16px;background-color:#f5f5f5;border-radius:8px}.task-detail-comment-content{font-size:14px;line-height:1.6;color:#333;margin-bottom:12px;white-space:pre-wrap}.task-detail-comment-meta{display:flex;flex-direction:column;gap:8px}.task-detail-comment-date{font-size:12px;color:#999}.task-detail-comment-files{display:flex;flex-direction:column;gap:6px}.task-detail-comment-file{display:flex;align-items:center;gap:6px;font-size:12px;color:#666;cursor:pointer;text-decoration:underline}.task-detail-comment-file:hover{color:#1a1a1a}@media(max-width:768px){.task-detail-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:20px;padding-bottom:12px}.task-detail-actions{width:100%;justify-content:flex-end}.task-detail-title{font-size:24px}.task-detail-title-section{margin-bottom:12px}.task-detail-meta{gap:8px;margin-bottom:20px}.task-detail-content{flex-direction:column;padding:20px;gap:24px}.task-detail-left{flex:1;width:100%}.task-detail-right{flex:1;width:100%;min-width:0;position:static;max-height:none}.task-detail-description-section{margin-bottom:24px}.task-detail-description-header h3{font-size:16px}.task-detail-description{font-size:14px}.task-detail-checklists-header h3,.task-detail-files-header h3,.task-detail-comments-header h3{font-size:16px}}@media(max-width:480px){.task-detail-content{padding:16px;gap:20px}.task-detail-title{font-size:20px}.task-detail-header{margin-bottom:16px;padding-bottom:10px}.task-detail-meta{gap:6px;margin-bottom:16px}.task-detail-description-header h3{font-size:15px}.task-detail-description{font-size:13px}.task-detail-checklists-header h3,.task-detail-files-header h3,.task-detail-comments-header h3{font-size:15px}.task-detail-action-btn{padding:6px}.task-detail-action-btn svg{width:18px;height:18px}.task-detail-complete-btn,.task-detail-delegate-btn{padding:8px 12px;font-size:13px}}.task-detail-page{flex:1;height:100vh;overflow-y:auto;padding:0;margin:0;background-color:#f5f5f5}.task-detail-page .task-detail{max-width:none;margin:0;padding:24px 32px;height:100%;background-color:#fff;border-radius:0}@media(max-width:768px){.task-detail-page .task-detail{padding:72px 16px 16px}}@media(max-width:480px){.task-detail-page .task-detail{padding:64px 12px 12px}}.transaction-form{width:100%}.transaction-form .form-field{margin-bottom:20px}.transaction-form .form-label{display:block;font-size:14px;font-weight:500;color:#1a1a1a;margin-bottom:8px}.transaction-form .form-input,.transaction-form .form-textarea{width:100%;padding:10px 12px;border:1px solid #e5e5e5;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s;box-sizing:border-box}.transaction-form .form-input:focus,.transaction-form .form-textarea:focus{outline:none;border-color:#1a1a1a}.transaction-form .form-input.error,.transaction-form .form-textarea.error{border-color:#dc2626}.transaction-form .form-error{display:block;font-size:12px;color:#dc2626;margin-top:4px}.transaction-form .form-textarea{resize:vertical;min-height:60px}.transaction-form .form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e5e5e5}.transaction-form .form-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.transaction-form .form-btn:disabled{opacity:.5;cursor:not-allowed}.transaction-form .cancel-btn{background-color:#f0f0f0;color:#1a1a1a}.transaction-form .cancel-btn:hover:not(:disabled){background-color:#e0e0e0}.transaction-form .save-btn{background-color:#1a1a1a;color:#fff}.transaction-form .save-btn:hover:not(:disabled){background-color:#333}.transaction-list{display:flex;flex-direction:column;gap:12px;max-height:500px;overflow-y:auto;padding-right:4px}.transaction-list::-webkit-scrollbar{width:6px}.transaction-list::-webkit-scrollbar-track{background:#f9f9f9;border-radius:3px}.transaction-list::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:3px}.transaction-list::-webkit-scrollbar-thumb:hover{background:#b0b0b0}.transaction-list-empty{text-align:center;padding:40px 20px;color:#666;background-color:#f9f9f9;border-radius:8px;border:1px dashed #e5e5e5}.transaction-list-empty p{font-size:14px;margin:0}.transaction-item{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:16px;display:flex;justify-content:space-between;align-items:center;transition:all .2s}.transaction-item:hover{box-shadow:0 2px 8px #0000000d;border-color:#d0d0d0}.transaction-main{flex:1}.transaction-amount{font-size:18px;font-weight:600;color:#1a1a1a;margin-bottom:4px}.transaction-date{font-size:14px;color:#666;margin-bottom:4px}.transaction-note{font-size:13px;color:#999;margin-top:4px;font-style:italic}.transaction-actions{display:flex;gap:8px;margin-left:16px}.transaction-action-btn{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:#666;transition:all .2s;border-radius:4px}.transaction-action-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.transaction-action-btn svg{width:16px;height:16px}.debt-edit-form{width:100%}.debt-edit-form .form-field{margin-bottom:20px}.debt-edit-form .form-label{display:block;font-size:14px;font-weight:500;color:#1a1a1a;margin-bottom:8px}.debt-edit-form .form-input,.debt-edit-form .form-textarea{width:100%;padding:10px 12px;border:1px solid #e5e5e5;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s;box-sizing:border-box}.debt-edit-form .form-input:focus,.debt-edit-form .form-textarea:focus{outline:none;border-color:#1a1a1a}.debt-edit-form .form-textarea{resize:vertical;min-height:80px}.debt-edit-form .form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e5e5e5}.debt-edit-form .form-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.debt-edit-form .form-btn:disabled{opacity:.5;cursor:not-allowed}.debt-edit-form .cancel-btn{background-color:#f0f0f0;color:#1a1a1a}.debt-edit-form .cancel-btn:hover:not(:disabled){background-color:#e0e0e0}.debt-edit-form .save-btn{background-color:#1a1a1a;color:#fff}.debt-edit-form .save-btn:hover:not(:disabled){background-color:#333}.debt-detail{width:100%;max-width:800px;margin:0 auto}.debt-detail-page-container .debt-detail{max-width:none;margin:0;padding:24px 32px;height:100%}.debt-detail-loading,.debt-detail-error{text-align:center;padding:40px;color:#666;font-size:16px}.debt-detail-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.debt-detail-header h1{flex:1}.debt-detail-back{background:none;border:none;display:flex;align-items:center;gap:8px;color:#666;font-size:14px;cursor:pointer;padding:8px;border-radius:6px;transition:all .2s}.debt-detail-back:hover{background-color:#f0f0f0;color:#1a1a1a}.debt-detail-back svg{width:18px;height:18px}.debt-detail-title{font-size:28px;font-weight:600;color:#1a1a1a;margin:0;flex:1}.debt-detail-edit-btn{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:#666;transition:all .2s;border-radius:6px}.debt-detail-edit-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.debt-detail-edit-btn svg{width:20px;height:20px}.debt-detail-info{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:24px;margin-bottom:32px}.debt-detail-info.debt-lent{border-left:4px solid #22c55e}.debt-detail-info.debt-borrowed{border-left:4px solid #f59e0b}.debt-info-row{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 0;border-bottom:1px solid #f0f0f0}.debt-info-row:last-child{border-bottom:none}.debt-info-row.debt-note{flex-direction:column;gap:8px}.debt-info-label{font-size:14px;color:#666;font-weight:500}.debt-info-value{font-size:14px;color:#1a1a1a;text-align:right}.debt-amount{font-size:18px;font-weight:600;color:#1a1a1a}.debt-paid{font-size:16px;font-weight:600;color:#22c55e}.debt-remaining{font-size:16px;font-weight:600;color:#f59e0b}.debt-progress-section{margin-top:24px;padding-top:24px;border-top:1px solid #e5e5e5}.debt-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.debt-progress-label{font-size:14px;font-weight:500;color:#1a1a1a}.debt-progress-percentage{font-size:16px;font-weight:600;color:#1a1a1a}.debt-progress-bar-container{width:100%;height:12px;background-color:#e5e5e5;border-radius:6px;overflow:hidden}.debt-progress-bar{height:100%;border-radius:6px;transition:width .3s}.debt-progress-bar.progress-lent{background-color:#22c55e}.debt-progress-bar.progress-borrowed{background-color:#f59e0b}.debt-transactions-section{margin-top:32px}.debt-transactions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.debt-transactions-title{font-size:20px;font-weight:600;color:#1a1a1a;margin:0}.debt-add-transaction-btn{background-color:#1a1a1a;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.debt-add-transaction-btn:hover{background-color:#333}.debt-detail-page-container{flex:1;height:100vh;overflow-y:auto;padding:0;margin:0;background-color:#f5f5f5}.debt-detail-page-container .debt-detail{width:100%;max-width:none;margin:0;padding:24px 32px;height:100%;background-color:#fff}.contribution-form{width:100%}.contribution-form .form-field{margin-bottom:20px}.contribution-form .form-label{display:block;font-size:14px;font-weight:500;color:#1a1a1a;margin-bottom:8px}.contribution-form .form-input,.contribution-form .form-textarea{width:100%;padding:10px 12px;border:1px solid #e5e5e5;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s;box-sizing:border-box}.contribution-form .form-input:focus,.contribution-form .form-textarea:focus{outline:none;border-color:#1a1a1a}.contribution-form .form-input.error,.contribution-form .form-textarea.error{border-color:#dc2626}.contribution-form .form-error{display:block;font-size:12px;color:#dc2626;margin-top:4px}.contribution-form .form-textarea{resize:vertical;min-height:60px}.contribution-form .form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e5e5e5}.contribution-form .form-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.contribution-form .form-btn:disabled{opacity:.5;cursor:not-allowed}.contribution-form .cancel-btn{background-color:#f0f0f0;color:#1a1a1a}.contribution-form .cancel-btn:hover:not(:disabled){background-color:#e0e0e0}.contribution-form .save-btn{background-color:#1a1a1a;color:#fff}.contribution-form .save-btn:hover:not(:disabled){background-color:#333}.contribution-list{display:flex;flex-direction:column;gap:12px;max-height:500px;overflow-y:auto;padding-right:4px}.contribution-list::-webkit-scrollbar{width:6px}.contribution-list::-webkit-scrollbar-track{background:#f9f9f9;border-radius:3px}.contribution-list::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:3px}.contribution-list::-webkit-scrollbar-thumb:hover{background:#b0b0b0}.contribution-list-empty{text-align:center;padding:40px 20px;color:#666;background-color:#f9f9f9;border-radius:8px;border:1px dashed #e5e5e5}.contribution-list-empty p{font-size:14px;margin:0}.contribution-item{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:16px;display:flex;justify-content:space-between;align-items:center;transition:all .2s}.contribution-item:hover{box-shadow:0 2px 8px #0000000d;border-color:#d0d0d0}.contribution-main{flex:1}.contribution-amount{font-size:18px;font-weight:600;color:#1a1a1a;margin-bottom:4px}.contribution-date{font-size:14px;color:#666;margin-bottom:4px}.contribution-note{font-size:13px;color:#999;margin-top:4px;font-style:italic}.contribution-actions{display:flex;gap:8px;margin-left:16px}.contribution-action-btn{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:#666;transition:all .2s;border-radius:4px}.contribution-action-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.contribution-action-btn svg{width:16px;height:16px}.goal-edit-form{width:100%}.goal-edit-form .form-field{margin-bottom:20px}.goal-edit-form .form-label{display:block;font-size:14px;font-weight:500;color:#1a1a1a;margin-bottom:8px}.goal-edit-form .form-input,.goal-edit-form .form-textarea{width:100%;padding:10px 12px;border:1px solid #e5e5e5;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s;box-sizing:border-box}.goal-edit-form .form-input:focus,.goal-edit-form .form-textarea:focus{outline:none;border-color:#1a1a1a}.goal-edit-form .form-textarea{resize:vertical;min-height:80px}.goal-edit-form .form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e5e5e5}.goal-edit-form .form-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.goal-edit-form .form-btn:disabled{opacity:.5;cursor:not-allowed}.goal-edit-form .cancel-btn{background-color:#f0f0f0;color:#1a1a1a}.goal-edit-form .cancel-btn:hover:not(:disabled){background-color:#e0e0e0}.goal-edit-form .save-btn{background-color:#1a1a1a;color:#fff}.goal-edit-form .save-btn:hover:not(:disabled){background-color:#333}.goal-detail{width:100%;max-width:800px;margin:0 auto}.goal-detail-page-container .goal-detail{max-width:none;margin:0;padding:24px 32px;height:100%}.goal-detail-loading,.goal-detail-error{text-align:center;padding:40px;color:#666;font-size:16px}.goal-detail-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.goal-detail-header h1{flex:1}.goal-detail-back{background:none;border:none;display:flex;align-items:center;gap:8px;color:#666;font-size:14px;cursor:pointer;padding:8px;border-radius:6px;transition:all .2s}.goal-detail-back:hover{background-color:#f0f0f0;color:#1a1a1a}.goal-detail-back svg{width:18px;height:18px}.goal-detail-title{font-size:28px;font-weight:600;color:#1a1a1a;margin:0;flex:1}.goal-detail-edit-btn{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:#666;transition:all .2s;border-radius:6px}.goal-detail-edit-btn:hover{color:#1a1a1a;background-color:#f0f0f0}.goal-detail-edit-btn svg{width:20px;height:20px}.goal-detail-info{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:24px;margin-bottom:32px}.goal-detail-info.goal-active{border-left:4px solid #2563eb}.goal-detail-info.goal-completed{border-left:4px solid #6b7280}.goal-info-row{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 0;border-bottom:1px solid #f0f0f0}.goal-info-row:last-child{border-bottom:none}.goal-info-row.goal-description{flex-direction:column;gap:8px}.goal-info-label{font-size:14px;color:#666;font-weight:500}.goal-info-value{font-size:14px;color:#1a1a1a;text-align:right}.goal-amount{font-size:18px;font-weight:600;color:#1a1a1a}.goal-saved{font-size:16px;font-weight:600;color:#2563eb}.goal-status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.badge-active{background-color:#dbeafe;color:#2563eb}.badge-completed{background-color:#e5e7eb;color:#6b7280}.goal-progress-section{margin-top:24px;padding-top:24px;border-top:1px solid #e5e5e5}.goal-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.goal-progress-label{font-size:14px;font-weight:500;color:#1a1a1a}.goal-progress-percentage{font-size:16px;font-weight:600;color:#1a1a1a}.goal-progress-bar-container{width:100%;height:12px;background-color:#e5e5e5;border-radius:6px;overflow:hidden}.goal-progress-bar{height:100%;border-radius:6px;transition:width .3s}.goal-progress-bar.progress-active{background-color:#2563eb}.goal-progress-bar.progress-completed{background-color:#6b7280}.goal-contributions-section{margin-top:32px}.goal-contributions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.goal-contributions-title{font-size:20px;font-weight:600;color:#1a1a1a;margin:0}.goal-add-contribution-btn{background-color:#1a1a1a;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.goal-add-contribution-btn:hover{background-color:#333}.goal-detail-page-container{flex:1;height:100vh;overflow-y:auto;padding:0;margin:0;background-color:#f5f5f5}.goal-detail-page-container .goal-detail{width:100%;max-width:none;margin:0;padding:24px 32px;height:100%;background-color:#fff}.settings{padding:24px;background-color:#fff;border-radius:8px;max-width:600px;margin:0 auto}.settings-loading{text-align:center;padding:40px;color:#666}.settings-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e5e5e5}.settings-title{font-size:32px;font-weight:600;color:#1a1a1a;margin:0}.settings-form{display:flex;flex-direction:column;gap:20px}.settings-error{padding:12px;background-color:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:14px}.settings-success{padding:12px;background-color:#efe;border:1px solid #cfc;border-radius:6px;color:#3c3;font-size:14px}.settings-field{display:flex;flex-direction:column;gap:8px}.settings-field label{font-size:14px;font-weight:500;color:#333}.settings-input{padding:10px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.settings-input:focus{border-color:#888}.settings-input:disabled{background-color:#f5f5f5;cursor:not-allowed}.settings-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.settings-save-btn{padding:10px 24px;background-color:#1a1a1a;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.settings-save-btn:hover:not(:disabled){background-color:#333}.settings-save-btn:disabled{background-color:#ccc;cursor:not-allowed}.settings-section{margin-top:32px;padding-top:24px;border-top:1px solid #e5e5e5}.settings-section-title{font-size:20px;font-weight:600;color:#1a1a1a;margin:0 0 20px}.settings-icon-field{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.settings-icon-field label{font-size:14px;font-weight:500;color:#333}.settings-icon-upload{display:flex;align-items:center;gap:16px}.settings-icon-preview{width:64px;height:64px;object-fit:contain;border:1px solid #e5e5e5;border-radius:6px;background-color:#f5f5f5;padding:4px}.settings-icon-upload-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background-color:#f0f0f0;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;font-weight:500;color:#333;cursor:pointer;transition:all .2s}.settings-icon-upload-btn:hover:not(:disabled){background-color:#e0e0e0;border-color:#999}.settings-icon-upload-btn:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.settings-icon-upload-btn svg{width:16px;height:16px}.app{display:flex;height:100vh;width:100vw;overflow:hidden}.app.detail-page{overflow:visible}.app.detail-page>:last-child{flex:1;overflow-y:auto}.mobile-menu-button{display:none;position:fixed;top:0;left:0;z-index:1001;background-color:#fff;border:none;border-bottom:1px solid #e5e5e5;border-right:1px solid #e5e5e5;border-radius:0 0 8px;padding:12px 16px;cursor:pointer;box-shadow:0 2px 8px #0000001a;transition:background-color .2s;touch-action:manipulation}.mobile-menu-button:hover{background-color:#f5f5f5}.mobile-menu-button svg{width:24px;height:24px;color:#333}.sidebar-overlay{display:none;position:fixed;inset:0;background-color:#00000080;z-index:999;transition:opacity .3s;touch-action:manipulation}@media(max-width:768px){.mobile-menu-button,.sidebar-overlay{display:block}.app.sidebar-open .sidebar-overlay{opacity:1;pointer-events:auto}.app:not(.sidebar-open) .sidebar-overlay{opacity:0;pointer-events:none}.app.sidebar-open .sidebar{transform:translate(0)}.app:not(.sidebar-open) .sidebar{transform:translate(-100%)}.main-area{width:100%;position:relative;z-index:1}.app.detail-page>:last-child{padding-top:56px}.main-area-content{padding-top:56px}.users{padding-top:72px!important}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100vh;overflow:hidden;touch-action:manipulation;-ms-touch-action:manipulation}#app{height:100vh;width:100vw;touch-action:manipulation;-ms-touch-action:manipulation}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@media(max-width:768px){body{font-size:14px}}@media(max-width:480px){body{font-size:13px}}
