.empty-state[data-v-c24232b4]{flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:2rem;display:flex}.empty-content[data-v-c24232b4]{text-align:center;flex-direction:column;align-items:center;max-width:400px;display:flex}.empty-icon[data-v-c24232b4]{width:80px;height:80px;color:var(--color-text-secondary);opacity:.7;margin-bottom:1.5rem}.empty-title[data-v-c24232b4]{color:var(--color-text-primary);margin:0 0 .75rem;font-size:1.25rem;font-weight:600}.empty-description[data-v-c24232b4]{color:var(--color-text-secondary);margin:0 0 1.5rem;font-size:1rem;line-height:1.5}.empty-action[data-v-c24232b4]{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}@media (width<=768px){.empty-state[data-v-c24232b4]{min-height:200px;padding:1.5rem}.empty-icon[data-v-c24232b4]{width:60px;height:60px;margin-bottom:1rem}.empty-title[data-v-c24232b4]{font-size:1.125rem}.empty-description[data-v-c24232b4]{font-size:.9rem}}@media (width>=1200px){.empty-state[data-v-c24232b4]{min-height:400px}}.brief-comment-wrapper[data-v-7352d41c]{flex-direction:column;width:100%;display:flex}.brief-comment-wrapper--soft[data-v-7352d41c]{background:var(--color-primary-bg);border:1px solid rgba(var(--color-primary-rgb), .14);border-radius:10px;padding:.375rem .625rem}.brief-comment-wrapper--quote[data-v-7352d41c]{background:var(--color-surface);border:1px solid var(--color-divider);border-left:3px solid var(--color-primary);border-radius:0 8px 8px 0;padding:.375rem .625rem .375rem .5rem}.brief-comment-wrapper--minimal[data-v-7352d41c]{background:0 0;border:none;padding:.125rem 0}.brief-comment-wrapper--inset[data-v-7352d41c]{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:10px;padding:.4375rem .625rem}.brief-comment-wrapper--pill[data-v-7352d41c]{background:var(--color-card);border:1px solid var(--color-divider);box-shadow:var(--shadow-sm);border-radius:999px;padding:.4375rem .75rem}.brief-comment-content[data-v-7352d41c]{flex-direction:column;gap:.3125rem;width:100%;min-width:0;display:flex}.brief-comment-wrapper:not(.brief-comment-wrapper--quote) .brief-comment-content[data-v-7352d41c]{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:.5rem}.brief-comment-text[data-v-7352d41c]{word-break:break-word;flex:1;align-items:flex-start;min-width:0;max-height:2.8em;line-height:1.4;display:flex;overflow:hidden}.brief-comment-text .quote-mark[data-v-7352d41c]{color:var(--color-primary);flex-shrink:0;font-size:1rem;font-weight:700;line-height:1.4}.brief-comment-text .comment-content[data-v-7352d41c]{color:var(--color-text-primary);word-break:break-word;-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;flex:0 auto;min-width:0;font-size:.8125rem;font-style:italic;font-weight:600;display:-webkit-box;overflow:hidden}.brief-comment-wrapper--minimal .brief-comment-text .comment-content[data-v-7352d41c]{color:var(--color-text-secondary);font-weight:500}.brief-comment-user[data-v-7352d41c]{color:var(--color-text-tertiary);flex-shrink:0;align-self:flex-end;align-items:center;gap:.375rem;min-width:0;font-size:.6875rem;display:flex}.brief-comment-wrapper:not(.brief-comment-wrapper--quote) .brief-comment-user[data-v-7352d41c]{align-self:flex-start}.brief-comment-user__avatar[data-v-7352d41c]{flex-shrink:0}.brief-comment-user .user-name[data-v-7352d41c]{white-space:nowrap;text-overflow:ellipsis;max-width:120px;color:var(--color-text-secondary);font-style:normal;font-weight:600;overflow:hidden}.rating-display-container[data-v-e47eded4]{width:100%;min-width:0}.rating-chips[data-v-e47eded4]{flex-wrap:nowrap;align-items:center;gap:.3125rem;min-width:0;display:flex;overflow:hidden}.rating-chip[data-v-e47eded4]{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:999px;flex-shrink:0;align-items:center;gap:.25rem;max-width:38%;padding:.125rem .375rem .125rem .125rem;display:inline-flex}.rating-chip--current[data-v-e47eded4]{background:var(--color-primary-bg);border-color:rgba(var(--color-primary-rgb), .2)}.rating-chip--douban[data-v-e47eded4]{background:#42bd5614;border-color:#42bd5638;max-width:none;padding-left:.3125rem}[data-theme=dark] .rating-chip--douban[data-v-e47eded4]{background:#42bd561f}.rating-chip__avatar[data-v-e47eded4]{flex-shrink:0}.rating-chip__douban[data-v-e47eded4]{flex-shrink:0;justify-content:center;align-items:center;display:flex}.rating-chip__douban .douban-icon[data-v-e47eded4] .douban-svg-icon{display:block}.rating-chip__score[data-v-e47eded4]{color:var(--color-text-primary);flex-shrink:0;font-size:.8125rem;font-weight:700;line-height:1}.rating-chip__score--douban[data-v-e47eded4]{color:#2d9a3e}[data-theme=dark] .rating-chip__score--douban[data-v-e47eded4]{color:#5ecf70}.no-ratings[data-v-e47eded4]{color:var(--color-text-tertiary);font-size:.8125rem;font-style:italic}@media (width>=768px){.rating-chips[data-v-e47eded4]{gap:.375rem}.rating-chip[data-v-e47eded4]{max-width:none;padding:.1875rem .4375rem .1875rem .1875rem}.rating-chip__score[data-v-e47eded4]{font-size:.875rem}}.share-button[data-v-f96cc4ee]{display:inline-block;position:relative}.share-button .svg-button[data-v-f96cc4ee]{border-radius:6px}.share-dropdown[data-v-f96cc4ee]{background-color:var(--color-card);box-shadow:var(--shadow-lg);border:1px solid var(--color-border);pointer-events:none;border-radius:12px;min-width:180px;overflow:hidden}.share-options[data-v-f96cc4ee]{pointer-events:auto;flex-direction:column;display:flex}.share-option[data-v-f96cc4ee]{color:var(--color-text-primary);cursor:pointer;transition:background-color var(--transition-fast);text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;width:100%;padding:.6rem .75rem;font-size:.85rem;display:flex}.share-option[data-v-f96cc4ee]:hover{background-color:var(--color-surface)}.share-option[data-v-f96cc4ee]:disabled{opacity:.6;cursor:not-allowed}.share-option svg[data-v-f96cc4ee]{width:14px;height:14px;color:var(--color-text-secondary);flex-shrink:0}.item-card[data-v-c45e85c8]{background-color:var(--color-card);border:1px solid var(--color-divider);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);cursor:pointer;width:100%;min-width:0;height:100%;min-height:280px;color:inherit;border-radius:14px;flex-direction:column;text-decoration:none;display:flex;position:relative;overflow:hidden}@media (hover:hover){.item-card[data-v-c45e85c8]:hover{box-shadow:var(--shadow-lg);border-color:var(--color-border-hover);transform:translateY(-3px)}}@media (width>=768px){.item-card[data-v-c45e85c8]{border-radius:16px;flex-direction:row;height:248px;min-height:248px}}.share-action[data-v-c45e85c8]{z-index:var(--z-index-floating);position:relative}.item-image[data-v-c45e85c8]{z-index:var(--z-index-base);background:var(--color-surface);height:200px;position:relative;overflow:hidden}@media (width>=768px){.item-image[data-v-c45e85c8]{width:168px;min-width:168px;height:100%}}.item-image .smart-image[data-v-c45e85c8]{width:100%;height:100%}.item-image .smart-image .image[data-v-c45e85c8]{transition:transform var(--transition-normal)}@media (hover:hover){.item-card:hover .item-image .smart-image .image[data-v-c45e85c8]{transform:scale(1.04)}}.item-image[data-v-c45e85c8]:after{content:"";pointer-events:none;opacity:.85;background:linear-gradient(#0000 55%,#00000059 100%);position:absolute;inset:0}.category-badge[data-v-c45e85c8]{color:var(--color-text-primary);z-index:var(--z-index-floating-above);pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border-radius:999px;padding:.2rem .5rem;font-size:.6875rem;font-weight:600;position:absolute;top:10px;right:10px}[data-theme=dark] .category-badge[data-v-c45e85c8]{color:var(--color-text-primary);background:#1c1c1ee0}.item-content[data-v-c45e85c8]{flex-direction:column;flex:1;gap:.5rem;min-width:0;padding:.875rem 1rem 1rem;display:flex}@media (width>=768px){.item-content[data-v-c45e85c8]{gap:.4375rem;padding:1rem 1.125rem}}.item-header[data-v-c45e85c8]{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.item-heading[data-v-c45e85c8]{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.item-title[data-v-c45e85c8]{color:var(--color-text-primary);letter-spacing:-.01em;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;margin:0;font-size:1.125rem;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}@media (width>=768px){.item-title[data-v-c45e85c8]{-webkit-line-clamp:2;font-size:1.1875rem}}.item-title-link[data-v-c45e85c8]{color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent;text-decoration:none}.item-title-link[data-v-c45e85c8]:after{content:"";z-index:var(--z-index-raised);border-radius:inherit;background:0 0;position:absolute;inset:0}.item-meta[data-v-c45e85c8]{color:var(--color-text-tertiary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.6875rem;line-height:1.35;overflow:hidden}@media (width>=768px){.item-meta[data-v-c45e85c8]{font-size:.75rem}}.item-ratings[data-v-c45e85c8]{margin:0}.item-description[data-v-c45e85c8]{color:var(--color-text-secondary);-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;min-width:0;margin:0;font-size:.75rem;line-height:1.45;display:-webkit-box;overflow:hidden}.item-description p[data-v-c45e85c8]{font-size:inherit;color:inherit;line-height:inherit;-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}@media (width>=768px){.item-description[data-v-c45e85c8]{-webkit-line-clamp:2;font-size:.8125rem}}.description-placeholder[data-v-c45e85c8]{color:var(--color-text-tertiary);margin:0;font-size:.75rem;font-style:italic;line-height:1.45}.item-footer[data-v-c45e85c8]{justify-content:space-between;align-items:center;gap:.5rem;margin-top:auto;padding-top:.25rem;display:flex}.extra-info-section[data-v-c45e85c8]{flex:1;min-width:0}.extra-info-section .extra-info-text[data-v-c45e85c8]{color:var(--color-text-tertiary);-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;font-size:.6875rem;line-height:1.35;display:-webkit-box;overflow:hidden}.bottom-right[data-v-c45e85c8]{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.user-id[data-v-c45e85c8]{color:var(--color-primary);font-size:.6875rem;font-weight:600}@media (width<=767px){.item-card[data-v-c45e85c8]{min-height:auto}.item-footer[data-v-c45e85c8]{flex-direction:row;align-items:flex-end}.extra-info-section .extra-info-text[data-v-c45e85c8]{font-size:.625rem}}.home-page[data-v-87ab133a]{padding-bottom:2rem}.hero-section[data-v-87ab133a]{text-align:center;margin-bottom:2rem}.hero-section h1[data-v-87ab133a]{margin-bottom:.5rem}@media (width>=768px){.hero-section h1[data-v-87ab133a]{font-size:2.5rem}}.hero-section p[data-v-87ab133a]{color:var(--color-text-secondary);max-width:600px;margin:0 auto 1rem;font-size:1rem}@media (width>=768px){.hero-section p[data-v-87ab133a]{font-size:1.125rem}}.hero-section .data-source-toggle[data-v-87ab133a]{margin-top:1rem}.hero-section .data-source-toggle .toggle-btn[data-v-87ab133a]{border:1px solid var(--color-border);background-color:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);border-radius:20px;padding:.5rem 1rem;font-size:.875rem}.hero-section .data-source-toggle .toggle-btn[data-v-87ab133a]:hover{background-color:var(--color-divider)}.hero-section .data-source-toggle .toggle-btn.mock-active[data-v-87ab133a]{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.filters-section[data-v-87ab133a]{margin-bottom:2rem}.filter-controls[data-v-87ab133a]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-top:1rem;display:flex}@media (width<=640px){.filter-controls[data-v-87ab133a]{flex-direction:column;align-items:stretch}.filter-controls .categories[data-v-87ab133a]{order:1}.filter-controls .display-mode-toggle[data-v-87ab133a]{order:2;align-self:flex-start}}.search-bar[data-v-87ab133a]{margin-bottom:.5rem;position:relative}.search-bar .search-icon[data-v-87ab133a]{color:var(--color-text-tertiary);pointer-events:none;transition:color var(--transition-fast);align-items:center;display:inline-flex;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.search-bar .search-icon[data-v-87ab133a] svg{width:18px;height:18px}.search-bar .search-input[data-v-87ab133a]{border:1px solid var(--color-border);background-color:var(--color-surface);width:100%;color:var(--color-text-primary);appearance:none;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:12px;padding:.75rem 1rem .75rem 2.5rem;font-size:1rem}.search-bar .search-input[data-v-87ab133a]:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus);outline:none}.search-bar .search-input:focus+.search-icon[data-v-87ab133a]{color:var(--color-primary)}.search-bar .search-input[data-v-87ab133a]::placeholder{color:var(--color-text-tertiary)}.categories[data-v-87ab133a]{flex-wrap:wrap;gap:.5rem;display:flex}.categories .category-btn[data-v-87ab133a]{border:1px solid var(--color-border);background-color:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);border-radius:20px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-family:inherit;font-size:.875rem;line-height:1;display:inline-flex}.categories .category-btn[data-v-87ab133a]:hover{background-color:var(--color-divider)}.categories .category-btn .category-icon[data-v-87ab133a]{align-items:center;display:inline-flex}.categories .category-btn .category-icon[data-v-87ab133a] svg{stroke-width:2px;width:16px;height:16px}.categories .category-btn.active[data-v-87ab133a]{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.categories .category-btn.active .category-icon[data-v-87ab133a]{color:#fff}.items-section[data-v-87ab133a]{min-height:300px}.items-grid[data-v-87ab133a]{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (width>=640px){.items-grid[data-v-87ab133a]{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.items-grid[data-v-87ab133a]{grid-template-columns:repeat(3,1fr)}}.item-wrapper[data-v-87ab133a]{height:100%}
