/* Main Content Area */ .content { flex: 1; overflow-y: auto; padding: 2rem 3rem; display: flex; flex-direction: column; align-items: center; } /* Top Navigation Bar */ .topbar { width: 100%; display: flex; justify-content: space-between; margin-bottom: 2.5rem; } .search-bar { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); border-radius: 12px; padding: 0.8rem 1.2rem; display: flex; align-items: center; gap: 0.5rem; width: 400px; } .search-bar input { background: transparent; border: none; outline: none; color: white; width: 100%; font-family: var(--font); } /* Glass Panels & Modals Base */ .glass-panel { background: var(--card); backdrop-filter: blur(16px); border: 1px solid rgba(255,255,255,0.1); border-radius: 16px; padding: 1.2rem; box-shadow: 0 10px 30px -10px rgba(0,0,0,0.5); } .modal { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.6); backdrop-filter: blur(5px); z-index: 1000; justify-content: center; align-items: center; } .modal.active { display: flex; } .modal-content { width: 90%; max-width: 800px; max-height: 85vh; overflow-y: auto; background: var(--bg); } /* UI Utility Components */ .spinner { width: 40px; height: 40px; border: 4px solid rgba(255,255,255,0.1); border-top: 4px solid var(--accent); border-radius: 50%; animation: spin 1s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .primary-btn { background: var(--accent); color: #0f172a; font-weight: 700; border: none; padding: 0.5rem 1.2rem; border-radius: 8px; cursor: pointer; transition: background 0.2s; } .primary-btn:hover { background: var(--accent-hover); } .action-btn { background: rgba(0,0,0,0.4); border: none; border-radius: 4px; padding: 5px 10px; cursor: pointer; color: white; transition: background 0.2s; font-weight: bold; } .action-btn:hover { background: rgba(184, 59, 94, 0.8); } .btn-label { display: none; } .ai-btn:hover { background: var(--ai-accent); color: white; } /* Memo Footer Metadata Styling */ .memo-metadata-footer { margin-top: 20px; padding-top: 15px; border-top: 1px dashed rgba(255, 255, 255, 0.1); color: var(--muted); font-size: 0.85rem; opacity: 0.7; } .memo-metadata-footer p { margin: 5px 0; } /* === Composer Category Chips === */ #composerCategoryBar { display: flex; align-items: center; gap: 8px; margin-top: 15px; padding-top: 12px; border-top: 1px solid rgba(255, 255, 255, 0.05); flex-wrap: wrap; } .cat-chip { padding: 6px 14px; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 20px; font-size: 0.8rem; cursor: pointer; white-space: nowrap; transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); color: var(--text-dim); display: flex; align-items: center; gap: 6px; user-select: none; } .cat-chip:hover { background: rgba(255, 255, 255, 0.08); border-color: var(--accent-light); transform: translateY(-1px); color: white; } .cat-chip.active { background: var(--accent-light); color: white; border-color: var(--accent-light); box-shadow: 0 4px 12px rgba(56, 189, 248, 0.3); font-weight: 600; } .cat-chip.done-chip.active { background: #10b981; /* Success Green */ border-color: #10b981; box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3); } /* ๐Ÿ’ก ์™ธ๋ถ€ ์นดํ…Œ๊ณ ๋ฆฌ ๊ฐ•์กฐ์นฉ (ํ•€์— ์—†์ง€๋งŒ ์ง€์ •๋œ ๊ฒฝ์šฐ) */ .cat-chip.external-active { border: 1px dashed #ff4d4d !important; background: rgba(255, 77, 77, 0.05); color: #ff4d4d !important; } .cat-chip.external-active:hover { background: rgba(255, 77, 77, 0.12); } .cat-chip kbd { font-size: 10px; opacity: 0.6; margin-left: 4px; background: rgba(0, 0, 0, 0.2); padding: 1px 4px; border-radius: 3px; } /* Category Management List */ .cat-item { display: flex; align-items: center; justify-content: space-between; padding: 8px 14px; background: rgba(255, 255, 255, 0.02); border: 1px solid rgba(255, 255, 255, 0.05); border-radius: 10px; margin-bottom: 6px; transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); } .cat-item:hover { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.15); transform: translateY(-1px); } .cat-item .cat-name { flex: 1; font-weight: 500; color: rgba(255, 255, 255, 0.9); } .cat-actions { display: flex; gap: 15px; } .cat-action-btn { background: transparent; border: none; cursor: pointer; font-size: 1.1rem; padding: 2px; opacity: 0.4; transition: all 0.2s; } .cat-action-btn:hover { opacity: 1; transform: scale(1.2); } .cat-action-btn.pin.active { opacity: 1; color: var(--accent); filter: drop-shadow(0 0 5px var(--accent)); } .cat-action-btn.delete:hover { color: #f87171; } /* Custom Scrollbar for Category List */ #categoryListContainer::-webkit-scrollbar { width: 6px; } #categoryListContainer::-webkit-scrollbar-track { background: transparent; } #categoryListContainer::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.1); border-radius: 10px; } #categoryListContainer::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, 0.2); }