.card[data-v-538b573b]{background:var(--bg-surface);border:.5px solid var(--border);border-radius:10px;overflow:visible;position:relative;transition:border-color .15s;-webkit-user-select:none;user-select:none}.card[data-v-538b573b]:hover{border-color:var(--border-hover)}.tags[data-v-538b573b]{padding:7px 8px 6px;display:flex;flex-wrap:wrap;gap:4px;min-height:30px;overflow:hidden;border-radius:10px 10px 0 0}.tag[data-v-538b573b]{font-size:10px;padding:1px 6px;border-radius:100px;background:var(--purple-bg);color:var(--purple-light);border:.5px solid var(--purple-border);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.tag.emotion[data-v-538b573b]{background:var(--green-bg);color:var(--green-light);border-color:var(--green-border)}.img-wrap[data-v-538b573b]{overflow:hidden;position:relative;cursor:pointer}.img-wrap img[data-v-538b573b]{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--bg-elevated)}.img-overlay[data-v-538b573b]{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000;display:flex;align-items:center;justify-content:center;color:#fff;opacity:0;transition:opacity .15s,background .15s}.img-wrap:hover .img-overlay[data-v-538b573b]{opacity:1;background:#0000004d}.footer[data-v-538b573b]{padding:6px 8px;display:flex;align-items:center;justify-content:space-between;gap:4px}.date[data-v-538b573b]{font-size:10px;color:var(--text-muted);white-space:nowrap}.copy-btn[data-v-538b573b]{display:flex;align-items:center;gap:4px;font-size:11px;padding:4px 8px;border-radius:5px;border:.5px solid var(--border-hover);background:transparent;color:var(--text-secondary);transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.copy-btn[data-v-538b573b]:hover:not(:disabled){background:#ffffff0f;color:var(--text-primary)}.copy-btn.success[data-v-538b573b]{color:var(--green-light);border-color:var(--green-border)}.copy-btn.fail[data-v-538b573b]{color:var(--red-light);border-color:#e04b4a4d}.copy-btn[data-v-538b573b]:disabled{cursor:default}.ctx-menu[data-v-538b573b]{position:fixed;background:var(--bg-surface);border:.5px solid var(--border-hover);border-radius:10px;padding:6px;z-index:500;min-width:160px;box-shadow:0 4px 20px #0006}.ctx-item[data-v-538b573b]{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:13px;border-radius:6px;border:none;background:transparent;color:var(--text-secondary);text-align:left}.ctx-item[data-v-538b573b]:hover{background:#ffffff0f;color:var(--text-primary)}.ctx-item.danger[data-v-538b573b]{color:var(--red-light)}.ctx-item.danger[data-v-538b573b]:hover{background:var(--red-bg)}.ctx-overlay[data-v-538b573b]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:499}.overlay[data-v-7efa0caf]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px}.box[data-v-7efa0caf]{background:var(--bg-surface);border:.5px solid rgba(255,255,255,.1);border-radius:16px;padding:24px;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;position:relative}.close[data-v-7efa0caf]{position:absolute;top:14px;right:14px;background:transparent;border:none;color:var(--text-muted);padding:4px;border-radius:6px;transition:color .15s;line-height:0}.close[data-v-7efa0caf]:hover{color:var(--text-primary)}.title[data-v-58926b4e]{font-size:16px;font-weight:500;margin-bottom:6px}.subtitle[data-v-58926b4e]{font-size:13px;color:var(--text-muted);margin-bottom:20px}.field[data-v-58926b4e]{margin-bottom:12px}.field label[data-v-58926b4e]{display:block;font-size:12px;color:var(--text-muted);margin-bottom:5px}.field input[data-v-58926b4e]{width:100%;height:36px;background:var(--bg-base);border:.5px solid var(--border-hover);border-radius:8px;padding:0 12px;font-size:13px;color:var(--text-primary);outline:none}.field input[data-v-58926b4e]:focus{border-color:var(--purple-light)}.error[data-v-58926b4e]{font-size:12px;color:var(--red-light);margin-bottom:10px}.btn-primary[data-v-58926b4e]{width:100%;height:36px;background:var(--purple);border:none;border-radius:8px;font-size:13px;color:#eeedfe;margin-top:4px;transition:background .15s}.btn-primary[data-v-58926b4e]:hover{background:#5e54cc}.btn-primary[data-v-58926b4e]:disabled{opacity:.6}.title[data-v-bcbccfec]{font-size:16px;font-weight:500;margin-bottom:16px}.drop-zone[data-v-bcbccfec]{border:1px dashed var(--purple-border);border-radius:10px;padding:24px 16px;text-align:center;color:var(--text-muted);font-size:13px;cursor:pointer;margin-bottom:14px;display:flex;flex-direction:column;align-items:center;transition:border-color .15s,background .15s}.drop-zone[data-v-bcbccfec]:hover,.drop-zone.dragging[data-v-bcbccfec]{border-color:var(--purple-light);background:var(--purple-bg)}.file-list[data-v-bcbccfec]{margin-bottom:12px;display:flex;flex-direction:column;gap:4px}.file-item[data-v-bcbccfec]{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--text-secondary);background:var(--bg-elevated);border-radius:6px;padding:4px 10px}.file-name[data-v-bcbccfec]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.file-size[data-v-bcbccfec]{font-size:11px;color:var(--text-muted);white-space:nowrap;margin-left:6px}.file-remove[data-v-bcbccfec]{background:none;border:none;color:var(--text-muted);font-size:16px;line-height:1;padding:0 0 0 8px}.field[data-v-bcbccfec]{margin-bottom:14px}.field label[data-v-bcbccfec]{display:block;font-size:12px;color:var(--text-muted);margin-bottom:6px}.field input[type=text][data-v-bcbccfec]{width:100%;height:36px;background:var(--bg-base);border:.5px solid var(--border-hover);border-radius:8px;padding:0 12px;font-size:13px;color:var(--text-primary);outline:none}.field input[data-v-bcbccfec]:focus{border-color:var(--purple-light)}.tag-list[data-v-bcbccfec]{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.tag[data-v-bcbccfec]{display:flex;align-items:center;gap:4px;font-size:11px;padding:2px 8px;border-radius:100px;background:var(--purple-bg);color:var(--purple-light);border:.5px solid var(--purple-border)}.tag button[data-v-bcbccfec]{background:none;border:none;color:inherit;font-size:14px;line-height:1;padding:0;cursor:pointer;opacity:.7}.emotion-list[data-v-bcbccfec]{display:flex;flex-wrap:wrap;gap:8px}.emotion-check[data-v-bcbccfec]{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-secondary);cursor:pointer}.emotion-check input[data-v-bcbccfec]{accent-color:var(--purple-light)}.no-emotions[data-v-bcbccfec]{font-size:12px;color:var(--text-muted)}.error[data-v-bcbccfec]{font-size:12px;color:var(--red-light);margin-bottom:8px}.hint[data-v-bcbccfec]{font-size:11px;color:var(--text-muted);margin-bottom:12px}.btn-primary[data-v-bcbccfec]{width:100%;height:36px;background:var(--purple);border:none;border-radius:8px;font-size:13px;color:#eeedfe;transition:background .15s}.btn-primary[data-v-bcbccfec]:hover:not(:disabled){background:#5e54cc}.btn-primary[data-v-bcbccfec]:disabled{opacity:.5}.title[data-v-69df97cb]{font-size:16px;font-weight:500;margin-bottom:16px}.add-row[data-v-69df97cb]{display:flex;gap:8px;margin-bottom:10px}.add-row input[data-v-69df97cb]{flex:1;height:34px;background:var(--bg-base);border:.5px solid var(--border-hover);border-radius:8px;padding:0 12px;font-size:13px;color:var(--text-primary);outline:none}.add-row input[data-v-69df97cb]:focus{border-color:var(--purple-light)}.btn-add[data-v-69df97cb]{height:34px;padding:0 14px;background:var(--purple);border:none;border-radius:8px;font-size:13px;color:#eeedfe}.btn-add[data-v-69df97cb]:disabled{opacity:.5}.error[data-v-69df97cb]{font-size:12px;color:var(--red-light);margin-bottom:10px}.list[data-v-69df97cb]{display:flex;flex-direction:column;gap:6px;margin-top:12px}.item[data-v-69df97cb]{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--bg-elevated);border-radius:8px;padding:8px 12px;font-size:13px}.label[data-v-69df97cb]{color:var(--text-secondary)}.actions[data-v-69df97cb]{display:flex;gap:6px}.edit-input[data-v-69df97cb]{flex:1;height:28px;background:var(--bg-base);border:.5px solid var(--purple-light);border-radius:6px;padding:0 8px;font-size:12px;color:var(--text-primary);outline:none}.btn-sm[data-v-69df97cb]{font-size:11px;padding:3px 10px;border-radius:6px;border:.5px solid var(--border-hover);background:transparent;color:var(--text-secondary);transition:background .15s}.btn-sm[data-v-69df97cb]:hover{background:#ffffff0f}.btn-sm.save[data-v-69df97cb]{border-color:var(--purple-border);color:var(--purple-light)}.btn-sm.danger[data-v-69df97cb]{color:var(--red-light);border-color:#e04b4a4d}.btn-sm.danger[data-v-69df97cb]:hover{background:var(--red-bg)}.empty[data-v-69df97cb]{font-size:13px;color:var(--text-muted);padding:8px 0}.title[data-v-83352c3d]{font-size:16px;font-weight:500;margin-bottom:4px}.filename[data-v-83352c3d]{font-size:12px;color:var(--text-muted);margin-bottom:16px;overflow:hidden;text-overflow:ellipsis}.field[data-v-83352c3d]{margin-bottom:14px}.field label[data-v-83352c3d]{display:block;font-size:12px;color:var(--text-muted);margin-bottom:6px}.field input[type=text][data-v-83352c3d]{width:100%;height:36px;background:var(--bg-base);border:.5px solid var(--border-hover);border-radius:8px;padding:0 12px;font-size:13px;color:var(--text-primary);outline:none}.field input[data-v-83352c3d]:focus{border-color:var(--purple-light)}.tag-list[data-v-83352c3d]{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.tag[data-v-83352c3d]{display:flex;align-items:center;gap:4px;font-size:11px;padding:2px 8px;border-radius:100px;background:var(--purple-bg);color:var(--purple-light);border:.5px solid var(--purple-border)}.tag button[data-v-83352c3d]{background:none;border:none;color:inherit;font-size:14px;line-height:1;padding:0;cursor:pointer;opacity:.7}.emotion-list[data-v-83352c3d]{display:flex;flex-wrap:wrap;gap:8px}.emotion-check[data-v-83352c3d]{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-secondary);cursor:pointer}.emotion-check input[data-v-83352c3d]{accent-color:var(--purple-light)}.no-em[data-v-83352c3d]{font-size:12px;color:var(--text-muted)}.error[data-v-83352c3d]{font-size:12px;color:var(--red-light);margin-bottom:10px}.btns[data-v-83352c3d]{display:flex;gap:8px;margin-top:4px}.btn-cancel[data-v-83352c3d]{flex:1;height:36px;background:transparent;border:.5px solid var(--border-hover);border-radius:8px;font-size:13px;color:var(--text-secondary)}.btn-save[data-v-83352c3d]{flex:2;height:36px;background:var(--purple);border:none;border-radius:8px;font-size:13px;color:#eeedfe}.btn-save[data-v-83352c3d]:disabled{opacity:.5}.title[data-v-bc3f3e75]{font-size:16px;font-weight:500;margin-bottom:16px}.field[data-v-bc3f3e75]{margin-bottom:12px}.field label[data-v-bc3f3e75]{display:block;font-size:12px;color:var(--text-muted);margin-bottom:5px}.field input[data-v-bc3f3e75]{width:100%;height:36px;background:var(--bg-base);border:.5px solid var(--border-hover);border-radius:8px;padding:0 12px;font-size:13px;color:var(--text-primary);outline:none}.field input[data-v-bc3f3e75]:focus{border-color:var(--purple-light)}.error[data-v-bc3f3e75]{font-size:12px;color:var(--red-light);margin-bottom:10px}.success[data-v-bc3f3e75]{font-size:12px;color:var(--green-light);margin-bottom:10px}.btns[data-v-bc3f3e75]{display:flex;gap:8px;margin-top:4px}.btn-cancel[data-v-bc3f3e75]{flex:1;height:36px;background:transparent;border:.5px solid var(--border-hover);border-radius:8px;font-size:13px;color:var(--text-secondary)}.btn-save[data-v-bc3f3e75]{flex:2;height:36px;background:var(--purple);border:none;border-radius:8px;font-size:13px;color:#eeedfe}.btn-save[data-v-bc3f3e75]:disabled{opacity:.5}.lightbox[data-v-f8862ebe]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000eb;z-index:800;display:flex;flex-direction:column;align-items:center;justify-content:center}.close-btn[data-v-f8862ebe]{position:absolute;top:16px;right:16px;background:#ffffff14;border:none;color:#fff;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .15s}.close-btn[data-v-f8862ebe]:hover{background:#ffffff29}.img-container[data-v-f8862ebe]{flex:1;display:flex;align-items:center;justify-content:center;width:100%;padding:56px 16px 8px;overflow:hidden}.img-container img[data-v-f8862ebe]{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;cursor:default}.bar[data-v-f8862ebe]{width:100%;padding:10px 16px;background:#00000080;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.bar-tags[data-v-f8862ebe]{display:flex;flex-wrap:wrap;gap:4px;flex:1}.tag[data-v-f8862ebe]{font-size:11px;padding:2px 8px;border-radius:100px;background:var(--purple-bg);color:var(--purple-light);border:.5px solid var(--purple-border)}.tag.emotion[data-v-f8862ebe]{background:var(--green-bg);color:var(--green-light);border-color:var(--green-border)}.bar-actions[data-v-f8862ebe]{display:flex;gap:8px;align-items:center;flex-shrink:0}.action-btn[data-v-f8862ebe]{display:flex;align-items:center;gap:5px;font-size:12px;padding:6px 12px;border-radius:7px;border:.5px solid rgba(255,255,255,.15);background:#ffffff0f;color:#fffc;text-decoration:none;transition:background .15s;cursor:pointer}.action-btn[data-v-f8862ebe]:hover:not(:disabled){background:#ffffff1f;color:#fff}.action-btn.success[data-v-f8862ebe]{color:var(--green-light);border-color:var(--green-border)}.action-btn.fail[data-v-f8862ebe]{color:var(--red-light)}.action-btn[data-v-f8862ebe]:disabled{cursor:default}.app[data-v-13478b15]{display:flex;flex-direction:column;min-height:100vh}.topbar[data-v-13478b15]{background:var(--bg-surface);border-bottom:.5px solid var(--border);padding:0 12px;height:48px;display:flex;align-items:center;gap:10px;position:sticky;top:0;z-index:10}.logo[data-v-13478b15]{font-size:14px;font-weight:600;letter-spacing:-.2px;white-space:nowrap}.logo span[data-v-13478b15]{color:var(--purple-light)}.search-wrap[data-v-13478b15]{flex:1;position:relative}.search-icon[data-v-13478b15]{position:absolute;left:9px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.search-wrap input[data-v-13478b15]{width:100%;height:32px;background:var(--bg-base);border:.5px solid var(--border);border-radius:8px;padding:0 10px 0 30px;font-size:13px;color:var(--text-primary);outline:none}.search-wrap input[data-v-13478b15]:focus{border-color:var(--border-hover)}.search-wrap input[data-v-13478b15]::placeholder{color:var(--text-muted)}.admin-btn[data-v-13478b15]{display:flex;align-items:center;gap:5px;background:transparent;border:.5px solid var(--border-hover);border-radius:8px;padding:5px 10px;font-size:12px;color:var(--text-secondary);white-space:nowrap}.admin-btn[data-v-13478b15]:hover{background:#ffffff0d}.logged-bar[data-v-13478b15]{background:var(--purple-bg);border-bottom:.5px solid var(--purple-border);padding:6px 12px;font-size:12px;color:var(--purple-light);display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.logged-info[data-v-13478b15]{display:flex;align-items:center;gap:5px;font-size:11px}.logged-actions[data-v-13478b15]{display:flex;gap:2px;flex-wrap:wrap;align-items:center}.logged-actions button[data-v-13478b15]{display:flex;align-items:center;gap:4px;background:transparent;border:none;color:var(--purple-light);font-size:11px;padding:3px 8px;border-radius:5px}.logged-actions button[data-v-13478b15]:hover{background:#ffffff0f}.logged-actions .danger-btn[data-v-13478b15]{color:var(--red-light)}.logged-actions .danger-btn[data-v-13478b15]:hover{background:var(--red-bg)}.logged-actions .logout[data-v-13478b15]{color:var(--text-muted)}.grid[data-v-13478b15]{padding:12px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;align-items:start}@media (min-width: 600px){.grid[data-v-13478b15]{grid-template-columns:repeat(3,1fr);gap:12px;padding:16px}}@media (min-width: 900px){.grid[data-v-13478b15]{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1200px){.grid[data-v-13478b15]{grid-template-columns:repeat(5,1fr)}}.loading[data-v-13478b15]{grid-column:1 / -1;display:flex;justify-content:center;padding:20px}.spinner[data-v-13478b15]{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--purple-light);border-radius:50%;animation:spin-13478b15 .7s linear infinite}@keyframes spin-13478b15{to{transform:rotate(360deg)}}.empty[data-v-13478b15]{grid-column:1 / -1;text-align:center;color:var(--text-muted);padding:48px;font-size:14px}.sentinel[data-v-13478b15]{height:1px}.toast[data-v-13478b15]{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(10px);background:var(--green);color:#e1f5ee;font-size:13px;padding:8px 16px;border-radius:100px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;white-space:nowrap;z-index:1000}.toast.show[data-v-13478b15]{opacity:1;transform:translate(-50%) translateY(0)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-base: #111110;--bg-surface: #1a1a18;--bg-elevated: #222220;--border: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .18);--text-primary: #e8e6e0;--text-secondary: #b4b2a9;--text-muted: #5F5E5A;--purple: #534AB7;--purple-light: #AFA9EC;--purple-bg: rgba(127, 119, 221, .15);--purple-border: rgba(127, 119, 221, .25);--green: #1D9E75;--green-light: #5DCAA5;--green-bg: rgba(29, 158, 117, .15);--green-border: rgba(29, 158, 117, .25);--red-light: #F09595;--red-bg: rgba(224, 75, 74, .1)}html,body{background:var(--bg-base);color:var(--text-primary);font-family:system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.5;min-height:100vh}button{font-family:inherit;cursor:pointer}input,textarea{font-family:inherit}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}
