@medipha/feed 0.0.0-stage → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/dist/app/admin/newsfeed-admin-module.d.ts +3 -0
  2. package/dist/app/admin/newsfeed-admin-routes.d.ts +1 -0
  3. package/dist/app/header/feed-header.d.ts +1 -0
  4. package/dist/app/header/mentions-dropdown.d.ts +4 -0
  5. package/dist/app/newsfeed-module.d.ts +2 -0
  6. package/dist/app/newsfeed-module.types.d.ts +15 -0
  7. package/dist/app/newsfeed-routes.d.ts +1 -0
  8. package/dist/app/runtime/feed-runtime-context.d.ts +16 -0
  9. package/dist/app/runtime/feed-runtime-provider.d.ts +9 -0
  10. package/dist/app/runtime/feed-session.d.ts +11 -0
  11. package/dist/chunk-7ZGTUZFB-BT9LoQAb.cjs +1 -0
  12. package/dist/chunk-7ZGTUZFB-QFtA37kH.js +25972 -0
  13. package/dist/core/content.d.ts +19 -0
  14. package/dist/core/errors.d.ts +8 -0
  15. package/dist/core/feed-api.d.ts +134 -0
  16. package/dist/core/formatting.d.ts +55 -0
  17. package/dist/core/http.d.ts +18 -0
  18. package/dist/core/index.d.ts +16 -0
  19. package/dist/core/media-limits.d.ts +7 -0
  20. package/dist/core/mention.d.ts +10 -0
  21. package/dist/core/query-string.d.ts +3 -0
  22. package/dist/core/types.d.ts +208 -0
  23. package/dist/emojis-6L3GRBAP-Bdg3RGHz.js +5 -0
  24. package/dist/emojis-6L3GRBAP-DEEnjLJd.cjs +1 -0
  25. package/dist/features/comments/comment-composer.d.ts +10 -0
  26. package/dist/features/comments/comment-item.d.ts +12 -0
  27. package/dist/features/comments/comment-thread.d.ts +10 -0
  28. package/dist/features/comments/mention-box.d.ts +6 -0
  29. package/dist/features/comments/mention-filter.d.ts +8 -0
  30. package/dist/features/comments/mention-input.d.ts +4 -0
  31. package/dist/features/comments/mention-options.d.ts +3 -0
  32. package/dist/features/comments/post-comments-modal.d.ts +11 -0
  33. package/dist/features/comments/use-mention-search.d.ts +9 -0
  34. package/dist/features/composer/category-select.d.ts +8 -0
  35. package/dist/features/composer/composer-form.d.ts +19 -0
  36. package/dist/features/composer/create-post-button.d.ts +8 -0
  37. package/dist/features/composer/create-post-modal.d.ts +12 -0
  38. package/dist/features/composer/format-text.d.ts +26 -0
  39. package/dist/features/composer/format-toolbar.d.ts +21 -0
  40. package/dist/features/composer/media-picker.d.ts +18 -0
  41. package/dist/features/composer/post-preview-modal.d.ts +7 -0
  42. package/dist/features/feed/department-filter.d.ts +8 -0
  43. package/dist/features/feed/feed-page.d.ts +1 -0
  44. package/dist/features/feed/left-rail.d.ts +9 -0
  45. package/dist/features/feed/my-posts-page.d.ts +1 -0
  46. package/dist/features/feed/post-detail-page.d.ts +1 -0
  47. package/dist/features/feed/sidebar/category-nav.d.ts +9 -0
  48. package/dist/features/feed/sidebar/discussion-channels.d.ts +9 -0
  49. package/dist/features/feed/sidebar/feed-calendar.d.ts +12 -0
  50. package/dist/features/feed/sidebar/profile-card.d.ts +1 -0
  51. package/dist/features/feed/use-feed-filters.d.ts +15 -0
  52. package/dist/features/feed/widgets/birthdays-widget.d.ts +1 -0
  53. package/dist/features/feed/widgets/feed-footer.d.ts +1 -0
  54. package/dist/features/feed/widgets/mentions-widget.d.ts +1 -0
  55. package/dist/features/feed/widgets/post-detail-modal.d.ts +10 -0
  56. package/dist/features/feed/widgets/review-progress-widget.d.ts +3 -0
  57. package/dist/features/feed/widgets/top-contributors-widget.d.ts +1 -0
  58. package/dist/features/feed/widgets/trending-hashtags-widget.d.ts +8 -0
  59. package/dist/features/feed/widgets/weekly-highlight-widget.d.ts +1 -0
  60. package/dist/features/feed/widgets/widget-card.d.ts +9 -0
  61. package/dist/features/manage/categories/category-settings-page.d.ts +2 -0
  62. package/dist/features/manage/posts/author-select.d.ts +7 -0
  63. package/dist/features/manage/posts/manage-posts-page.d.ts +1 -0
  64. package/dist/features/manage/posts/post-summary-cell.d.ts +8 -0
  65. package/dist/features/manage/posts/review-drawer.d.ts +13 -0
  66. package/dist/features/manage/reports/overview-cards.d.ts +7 -0
  67. package/dist/features/manage/reports/period-switch.d.ts +8 -0
  68. package/dist/features/manage/reports/reports-page.d.ts +1 -0
  69. package/dist/features/manage/reports/top-posts-table.d.ts +8 -0
  70. package/dist/features/manage/reports/top-users-table.d.ts +5 -0
  71. package/dist/features/manage/reports/trend-chart.d.ts +4 -0
  72. package/dist/features/manage/settings/settings-page.d.ts +2 -0
  73. package/dist/features/post/card/confirm-delete-post.d.ts +2 -0
  74. package/dist/features/post/card/featured-tag.d.ts +2 -0
  75. package/dist/features/post/card/post-actions-menu.d.ts +7 -0
  76. package/dist/features/post/card/post-card.d.ts +15 -0
  77. package/dist/features/post/card/post-delete-button.d.ts +10 -0
  78. package/dist/features/post/card/post-header.d.ts +9 -0
  79. package/dist/features/post/card/post-status-tag.d.ts +5 -0
  80. package/dist/features/post/card/post-status.d.ts +13 -0
  81. package/dist/features/post/content/clamped-text.d.ts +11 -0
  82. package/dist/features/post/content/document-icon.d.ts +3 -0
  83. package/dist/features/post/content/document-preview-url.d.ts +7 -0
  84. package/dist/features/post/content/link-preview-card.d.ts +9 -0
  85. package/dist/features/post/content/mention-card.d.ts +8 -0
  86. package/dist/features/post/content/post-documents.d.ts +4 -0
  87. package/dist/features/post/content/post-images.d.ts +4 -0
  88. package/dist/features/post/content/post-videos.d.ts +4 -0
  89. package/dist/features/post/content/rich-content.d.ts +10 -0
  90. package/dist/features/post/content/use-link-preview.d.ts +15 -0
  91. package/dist/features/post/interactions/post-engagement-stats.d.ts +5 -0
  92. package/dist/features/post/interactions/post-reaction-bar.d.ts +11 -0
  93. package/dist/features/post/interactions/reaction-button.d.ts +11 -0
  94. package/dist/features/post/interactions/reaction-picker.d.ts +7 -0
  95. package/dist/features/post/interactions/reactors-modal.d.ts +8 -0
  96. package/dist/features/post/interactions/share-button.d.ts +11 -0
  97. package/dist/features/post/list/post-list.d.ts +10 -0
  98. package/dist/index.cjs +28 -0
  99. package/dist/index.d.ts +4 -0
  100. package/dist/index.js +11873 -0
  101. package/dist/shared/brand.d.ts +5 -0
  102. package/dist/shared/components/date-range-select.d.ts +8 -0
  103. package/dist/shared/components/emoji-picker.d.ts +6 -0
  104. package/dist/shared/components/page-header.d.ts +8 -0
  105. package/dist/shared/components/publisher-avatar.d.ts +3 -0
  106. package/dist/shared/components/typing-dots.d.ts +6 -0
  107. package/dist/shared/components/user-avatar.d.ts +7 -0
  108. package/dist/shared/hooks/use-async-data.d.ts +8 -0
  109. package/dist/shared/hooks/use-cursor-list.d.ts +18 -0
  110. package/dist/shared/hooks/use-in-view.d.ts +2 -0
  111. package/dist/shared/hooks/use-keyed-request.d.ts +8 -0
  112. package/dist/shared/hooks/use-optimistic-reaction.d.ts +10 -0
  113. package/dist/shared/utils/date-range.d.ts +7 -0
  114. package/dist/shared/utils/format.d.ts +7 -0
  115. package/dist/shared/utils/reactions.d.ts +8 -0
  116. package/dist/shared/utils/upload-error.d.ts +5 -0
  117. package/dist/styles.css +2 -0
  118. package/package.json +81 -3
  119. package/README.md +0 -3
@@ -0,0 +1,5 @@
1
+ /** Every post is published under one voice: the company, never the account that typed it. */
2
+ export declare const PUBLISHER: {
3
+ readonly name: "Medic";
4
+ readonly logoUrl: string;
5
+ };
@@ -0,0 +1,8 @@
1
+ import { DateRangeChoice } from '../utils/date-range';
2
+ interface DateRangeSelectProps {
3
+ value: DateRangeChoice;
4
+ onChange: (choice: DateRangeChoice) => void;
5
+ }
6
+ /** A from–to calendar, always visible; the usual presets sit inside it as shortcuts. */
7
+ export declare function DateRangeSelect({ value, onChange }: DateRangeSelectProps): import('react/jsx-runtime').JSX.Element;
8
+ export {};
@@ -0,0 +1,6 @@
1
+ interface EmojiPickerPanelProps {
2
+ onPick: (emoji: string) => void;
3
+ }
4
+ /** The full emoji set with search and categories, drawn with the system's own emoji font. */
5
+ export declare function EmojiPickerPanel({ onPick }: EmojiPickerPanelProps): import('react/jsx-runtime').JSX.Element;
6
+ export {};
@@ -0,0 +1,8 @@
1
+ import { ReactNode } from 'react';
2
+ interface PageHeaderProps {
3
+ title: string;
4
+ description?: string;
5
+ extra?: ReactNode;
6
+ }
7
+ export declare function PageHeader({ title, description, extra }: PageHeaderProps): import('react/jsx-runtime').JSX.Element;
8
+ export {};
@@ -0,0 +1,3 @@
1
+ export declare function PublisherAvatar({ size }: {
2
+ size?: number;
3
+ }): import('react/jsx-runtime').JSX.Element;
@@ -0,0 +1,6 @@
1
+ /** Chat-style "someone is typing" dots, used while comments load. */
2
+ export declare function TypingDots({ label, centered, }: {
3
+ label?: string;
4
+ /** First load of a list: the dots sit in the middle of the empty area. */
5
+ centered?: boolean;
6
+ }): import('react/jsx-runtime').JSX.Element;
@@ -0,0 +1,7 @@
1
+ import { FeedUser } from '../../core';
2
+ interface UserAvatarProps {
3
+ user: Pick<FeedUser, 'id' | 'fullName' | 'avatarUrl'>;
4
+ size?: number;
5
+ }
6
+ export declare function UserAvatar({ user, size }: UserAvatarProps): import('react/jsx-runtime').JSX.Element;
7
+ export {};
@@ -0,0 +1,8 @@
1
+ export interface AsyncData<T> {
2
+ data: T | undefined;
3
+ error: unknown;
4
+ loading: boolean;
5
+ reload: () => void;
6
+ setData: (update: (current: T) => T) => void;
7
+ }
8
+ export declare function useAsyncData<T>(load: () => Promise<T>, key: string): AsyncData<T>;
@@ -0,0 +1,18 @@
1
+ import { CursorPage } from '../../core';
2
+ type LoadPage<T> = (cursor: string | null) => Promise<CursorPage<T>>;
3
+ export interface CursorList<T> {
4
+ items: T[];
5
+ loading: boolean;
6
+ loadingMore: boolean;
7
+ error: unknown;
8
+ hasMore: boolean;
9
+ loadMore: () => void;
10
+ reload: () => void;
11
+ updateItem: (id: string, update: (item: T) => T) => void;
12
+ removeItem: (id: string) => void;
13
+ prependItem: (item: T) => void;
14
+ }
15
+ export declare function useCursorList<T extends {
16
+ id: string;
17
+ }>(loadPage: LoadPage<T>, key: string): CursorList<T>;
18
+ export {};
@@ -0,0 +1,2 @@
1
+ /** True while at least `threshold` of the element is on screen; false where IntersectionObserver is missing. */
2
+ export declare function useInView<T extends Element>(threshold?: number): readonly [import('react').RefObject<T>, boolean];
@@ -0,0 +1,8 @@
1
+ export type RequestResult<T> = {
2
+ status: 'ready';
3
+ data: T;
4
+ } | {
5
+ status: 'error';
6
+ error: unknown;
7
+ };
8
+ export declare function useKeyedRequest<T>(requestKey: string, start: () => Promise<T>, onResult: (result: RequestResult<T>) => void): void;
@@ -0,0 +1,10 @@
1
+ import { ReactionSummary, ReactionType } from '../../core';
2
+ export declare function applyReaction(summary: ReactionSummary, nextReaction: ReactionType | null): ReactionSummary;
3
+ interface OptimisticReactionOptions {
4
+ summary: ReactionSummary;
5
+ onChange: (summary: ReactionSummary) => void;
6
+ setReaction: (type: ReactionType) => Promise<ReactionSummary>;
7
+ removeReaction: () => Promise<ReactionSummary>;
8
+ }
9
+ export declare function useOptimisticReaction({ summary, onChange, setReaction, removeReaction, }: OptimisticReactionOptions): (nextReaction: ReactionType | null) => void;
10
+ export {};
@@ -0,0 +1,7 @@
1
+ import { DateRangeParams } from '../../core';
2
+ export type DateRangePreset = '7d' | '30d' | '90d' | 'this-month' | 'this-year';
3
+ export declare const DATE_RANGE_LABELS: Record<DateRangePreset, string>;
4
+ /** A preset, or a custom from–to picked in the calendar (YYYY-MM-DD, inclusive). */
5
+ export type DateRangeChoice = DateRangePreset | DateRangeParams;
6
+ export declare function isCustomRange(choice: DateRangeChoice): choice is DateRangeParams;
7
+ export declare function resolveDateRange(choice: DateRangeChoice, today?: Date): DateRangeParams;
@@ -0,0 +1,7 @@
1
+ export declare function formatRelativeTime(iso: string, now?: Date): string;
2
+ export declare function formatDateTime(iso: string): string;
3
+ export declare function formatDate(iso: string): string;
4
+ export declare function formatCount(value: number): string;
5
+ export declare function firstNameOf(fullName: string): string;
6
+ export declare function formatDuration(totalSeconds: number): string;
7
+ export declare function formatFileSize(bytes: number): string;
@@ -0,0 +1,8 @@
1
+ import { ReactionType } from '../../core';
2
+ export interface ReactionMeta {
3
+ emoji: string;
4
+ label: string;
5
+ color: string;
6
+ background: string;
7
+ }
8
+ export declare const REACTION_META: Record<ReactionType, ReactionMeta>;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * What to tell the writer when an upload fails. A refusal from the backend (too big, wrong type)
3
+ * already says why in Vietnamese, so that text is shown; anything else gets the generic line.
4
+ */
5
+ export declare function uploadErrorText(error: unknown, fileName: string): string;
@@ -0,0 +1,2 @@
1
+ .med-feed-emoji-popover .ant-popover-inner{border-radius:12px;overflow:hidden}.med-feed-emoji-popover .epr-emoji-category>.epr-emoji-category-label{background:#fff}.med-feed-emoji-popover button.epr-emoji:hover>*{background:var(--feed-surface-low)}.med-feed-mention-dropdown .med-feed-mention-filter-row.ant-mentions-dropdown-menu-item{display:none}.med-feed-mention-filter-slot{background:var(--feed-surface-low,#f5f7fb);border-bottom:1px solid var(--feed-surface-container,#e6ebf3);border-radius:8px 8px 0 0;padding:10px 12px}.med-feed-mention-filter{gap:8px;display:flex}.med-feed-mention-filter .ant-select{flex:1;min-width:0;font-size:13px}.med-feed-mention-filter .ant-select .ant-select-selector{background:var(--feed-surface,#fff);height:32px;box-shadow:0 0 0 1px var(--feed-surface-container,#e5eeff);border-radius:999px;padding:0 14px;transition:box-shadow .15s,background .15s}.med-feed-mention-filter .ant-select .ant-select-selection-search-input,.med-feed-mention-filter .ant-select .ant-select-selection-item,.med-feed-mention-filter .ant-select .ant-select-selection-placeholder{line-height:32px}.med-feed-mention-filter .ant-select .ant-select-selection-placeholder{color:var(--feed-text-secondary,#434655)}.med-feed-mention-filter .ant-select:hover .ant-select-selector{box-shadow:0 0 0 1px var(--feed-primary,#2563eb)}.med-feed-mention-filter .ant-select-focused .ant-select-selector{box-shadow:0 0 0 2px #2563eb40!important}.med-feed-mention-filter .ant-select-has-value .ant-select-selector{background:var(--feed-surface-low,#eff4ff);box-shadow:0 0 0 1px var(--feed-primary,#2563eb)}.med-feed-mention-filter .ant-select-has-value .ant-select-selection-item{color:var(--feed-primary,#2563eb);font-weight:600}.med-feed-mention-filter .ant-select-arrow,.med-feed-mention-filter .ant-select-clear{right:12px}.med-feed-mention-filter__dropdown.ant-select-dropdown{border-radius:12px;padding:6px;box-shadow:0 8px 24px #0b1c301f}.med-feed-mention-filter__dropdown .ant-select-item{border-radius:8px}.med-feed-mention-filter__dropdown .ant-select-item-option-selected:not(.ant-select-item-option-disabled){color:var(--feed-primary,#2563eb);background:var(--feed-surface-low,#eff4ff)}.med-feed-comment-composer{align-items:flex-start;gap:8px;display:flex}.med-feed-comment-composer__card{background:var(--feed-surface);min-width:0;box-shadow:var(--feed-shadow-sm);border-radius:18px;flex-direction:row;flex:1;align-items:center;gap:4px;padding:4px 4px 4px 12px;display:flex}.med-feed-comment-composer__card--typing{border-radius:12px;flex-direction:column;align-items:stretch;padding:8px 8px 4px 12px}.med-feed-comment-composer__card .ant-mentions{flex:1;min-width:0}.med-feed-comment-composer__card .ant-mentions,.med-feed-comment-composer__card .ant-mentions-focused{box-shadow:none;border:0;font-size:14px;line-height:22px}.med-feed-comment-composer__card .ant-mentions>textarea{padding:0}.med-feed-comment-composer__footer{flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;display:flex}.med-feed-comment-composer__card--typing .med-feed-comment-composer__footer{justify-content:space-between}.med-feed-comment-composer__tools{align-items:center;gap:2px;display:inline-flex}.med-feed-comment-composer__tool.ant-btn{color:var(--feed-text-secondary);font-size:16px;font-weight:600}.med-feed-comment-composer__tool.ant-btn:hover{color:var(--feed-text);background:var(--feed-surface-low)}.med-feed-emoji-popover .ant-popover-inner-content{padding:0}.med-feed-comment-composer__send.ant-btn{color:var(--feed-primary);font-size:16px}.med-feed-comment-composer__send.ant-btn:disabled{color:var(--feed-outline);background:0 0}.med-feed-comment-composer__send.ant-btn:not(:disabled):hover{color:var(--feed-primary);background:var(--feed-surface-low)}.med-feed-mention-option{align-items:center;gap:8px;display:inline-flex}.med-feed-mention-option__department{color:var(--feed-text-secondary)}.med-feed-comment-composer__card .ant-mentions,.med-feed-comment-composer__card .ant-mentions>textarea{background:0 0}.med-feed-comment-composer__card{border:1px solid var(--feed-surface-container);transition:border-color .2s}.med-feed-comment-composer__card:focus-within{border-color:#2563eb73}.med-feed-clamped-text-wrap{align-items:baseline;gap:4px;display:flex}.med-feed-clamped-text-wrap--expanded,.med-feed-clamped-text-wrap--stack{display:block}.med-feed-clamped-text{-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;flex:0 auto;min-width:0;display:-webkit-box;overflow:hidden}.med-feed-clamped-text__toggle{color:var(--feed-primary);white-space:nowrap;background:var(--feed-surface-low);cursor:pointer;border:0;border-radius:999px;flex-shrink:0;align-items:center;padding:3px 12px;font-size:13px;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.med-feed-clamped-text-wrap--expanded .med-feed-clamped-text__toggle,.med-feed-clamped-text-wrap--stack .med-feed-clamped-text__toggle{margin-top:6px}.med-feed-clamped-text__toggle:hover{color:#1d4ed8;background:#dbe6ff;text-decoration:none}.med-feed-mention--clickable.ant-typography{cursor:pointer}.med-feed-mention-card-popover .ant-popover-inner{border-radius:12px}.med-feed-mention-card{align-items:center;gap:12px;min-width:220px;max-width:300px;display:flex}.med-feed-mention-card__info{flex-direction:column;gap:2px;min-width:0;display:flex}.med-feed-mention-card__name.ant-typography{color:var(--feed-text,#0b1c30);font-size:15px}.med-feed-mention-card__line{color:var(--feed-text-secondary,#434655);font-size:13px}.med-feed-rich-content{color:var(--feed-text);white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:21px}.med-feed-hashtag,.med-feed-hashtag:hover,.med-feed-mention.ant-typography{color:var(--feed-primary);font-weight:500}.med-feed-rich-content--formatted{white-space:normal}.med-feed-rich-content--formatted>*{margin:0 0 6px}.med-feed-rich-content--formatted>:last-child{margin-bottom:0}.med-feed-rich-content__paragraph{white-space:pre-wrap}.med-feed-rich-content__heading{color:var(--feed-text);font-size:18px;font-weight:700;line-height:24px}.med-feed-rich-content__quote{color:var(--feed-text-secondary);white-space:pre-wrap;border-left:3px solid var(--feed-surface-container);padding:2px 0 2px 12px}.med-feed-rich-content__list{padding-left:22px}.med-feed-rich-content__list li+li{margin-top:2px}.med-feed-rich-content--formatted>:has(+.med-feed-rich-content__toggle){margin-bottom:0}.med-feed-rich-content__toggle.ant-typography{color:var(--feed-primary);background:var(--feed-surface-low);border:0;border-radius:999px;align-items:center;margin:2px 0 0;padding:3px 12px;font-size:13px;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.med-feed-rich-content__toggle.ant-typography:hover{color:#1d4ed8;background:#dbe6ff;text-decoration:none}.med-feed-images{border-radius:12px;gap:2px;display:grid;overflow:hidden}.med-feed-images--1{grid-template-columns:1fr}.med-feed-images--2,.med-feed-images--3,.med-feed-images--4{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr}.med-feed-images--2 .med-feed-images__cell,.med-feed-images--3 .med-feed-images__cell,.med-feed-images--4 .med-feed-images__cell{aspect-ratio:1}.med-feed-images--3 .med-feed-images__cell:nth-child(3){aspect-ratio:2;grid-column:span 2}.med-feed-images__cell{background:var(--feed-surface-container);position:relative;overflow:hidden}.med-feed-images__cell .ant-image,.med-feed-images__cell .ant-image-img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.med-feed-images__cell:hover .ant-image-img{transform:scale(1.05)}.med-feed-images--1 .ant-image-img{max-height:420px}.med-feed-images__more{color:#fff;pointer-events:none;background:#0b1c308c;justify-content:center;align-items:center;font-size:28px;font-weight:700;display:flex;position:absolute;inset:0}.med-feed-reaction-button__emoji{background:var(--feed-surface-low);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;line-height:1;display:inline-flex}@keyframes med-feed-like-pop{0%{transform:scale(1)}35%{transform:scale(1.55)rotate(-10deg)}70%{transform:scale(.92)}to{transform:scale(1)}}.med-feed-like-btn--liked .anticon{transform-origin:50%;animation:.4s cubic-bezier(.34,1.56,.64,1) med-feed-like-pop}.med-feed-like-btn:active:not(:disabled){transition:transform 80ms;transform:scale(.94)}.med-feed-reaction-popover .ant-popover-inner{box-shadow:none;border-radius:999px}.med-feed-reaction-popover .ant-popover-arrow{display:none}.med-feed-reaction-popover .ant-popover-inner-content{padding:0}.med-feed-reaction-compact{color:var(--feed-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-weight:500;display:inline-flex}.med-feed-reaction-compact .anticon{font-size:16px}.med-feed-reaction-compact__emoji{background:var(--feed-surface-low);border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;line-height:1;display:inline-flex}.med-feed-reaction-compact:hover:not(:disabled){color:var(--feed-text)}.med-feed-reaction-compact:disabled{cursor:default}.med-feed-comment{align-items:flex-start;gap:8px;display:flex}.med-feed-comment--reply{margin-top:4px;padding-left:8px}.med-feed-comment__main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.med-feed-comment__pinned{color:var(--feed-primary);align-items:center;gap:4px;font-size:11px;font-weight:600;display:inline-flex}.med-feed-comment__bubble{padding:0}.med-feed-comment__head{align-items:baseline;gap:6px;display:flex}.med-feed-comment__author.ant-typography{color:var(--feed-text-secondary);font-size:13px;font-weight:600;line-height:20px}.med-feed-comment--reply .med-feed-comment__author.ant-typography{font-size:12px}.med-feed-comment__time{color:var(--feed-outline);flex-shrink:0;font-size:12px;line-height:16px}.med-feed-comment__content{margin-top:2px}.med-feed-comment__content .med-feed-rich-content{font-size:15px}.med-feed-comment__actions{color:var(--feed-text-secondary);align-items:center;gap:16px;margin-top:4px;font-size:13px;line-height:18px;display:flex}.med-feed-comment__action{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:500}.med-feed-comment__action:hover:not(:disabled){text-decoration:underline}.med-feed-comment__action--danger{color:#ba1a1a}.med-feed-comment__more{align-items:center;font-size:16px;display:inline-flex}.med-feed-comment__more:hover:not(:disabled){color:var(--feed-text);text-decoration:none}.med-feed-comment__reactions{align-items:center;gap:4px;font-size:12px;display:inline-flex}.med-feed-comment__reactions .med-feed-reaction-icons__item{width:18px;height:18px;font-size:15px}.med-feed-comment__images{max-width:320px;margin-top:6px}.med-feed-comment__images .med-feed-images--1 .ant-image-img{max-height:240px}.med-feed-typing{background:var(--feed-surface-container,#e5eeff);border-radius:18px;align-self:flex-start;align-items:center;gap:4px;padding:10px 14px;display:inline-flex}.med-feed-typing__dot{background:var(--feed-outline,#737686);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite med-feed-typing-bounce}.med-feed-typing__dot:nth-child(2){animation-delay:.15s}.med-feed-typing__dot:nth-child(3){animation-delay:.3s}@keyframes med-feed-typing-bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.med-feed-typing__dot{animation:none}}.med-feed-typing--centered{align-self:center;margin:24px auto}.med-feed-comments{background:var(--feed-surface-low);border-top:1px solid var(--feed-surface-container);flex-direction:column;gap:12px;padding:12px;display:flex}.med-feed-comments__more.ant-btn{align-self:flex-start;padding:0;font-size:12px;font-weight:600}.med-feed-comments__replies-toggle{color:var(--feed-text-secondary);cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:6px;margin-top:4px;padding:0;font-size:13px;font-weight:600;display:inline-flex}.med-feed-comments__replies-toggle .anticon{font-size:11px}.med-feed-comments__replies-toggle:hover{color:var(--feed-text)}.med-feed-comments-modal.med-feed-create-modal.ant-modal .ant-modal-body{flex-direction:column;max-height:calc(100vh - 140px);padding:0;display:flex;overflow:hidden}.med-feed-comments-modal__scroll{background:var(--feed-bg);flex:1;min-height:0;overflow:hidden auto}.med-feed-comments-modal__scroll::-webkit-scrollbar{width:6px}.med-feed-comments-modal__scroll::-webkit-scrollbar-thumb{background:#ced0d4;border-radius:6px}.med-feed-comments-modal__composer{background:var(--feed-surface);flex-shrink:0;box-shadow:0 -8px 24px #0b1c300f}.med-feed-comments-modal__composer:not(:empty){border-top:1px solid var(--feed-surface-container);padding:14px 20px}.med-feed-comments-modal .med-feed-post.ant-card{box-shadow:none;border:0;border-radius:0}.med-feed-comments-modal .med-feed-post,.med-feed-comments-modal .med-feed-post__body,.med-feed-comments-modal .med-feed-post__text{min-width:0;max-width:100%}.med-feed-comments-modal .med-feed-post__text{overflow-wrap:anywhere}.med-feed-comments-modal .med-feed-post__body img,.med-feed-comments-modal .med-feed-post__body video{max-width:100%}.med-feed-comments-modal .med-feed-comments{background:var(--feed-surface);border-top:1px solid var(--feed-surface-container)}.med-feed-comments-modal__composer .med-feed-comment-composer__card{background:var(--feed-surface-low);box-shadow:none}.med-feed-link-card__link{color:inherit;display:block}.med-feed-link-card.ant-card{background:var(--feed-surface-low);box-shadow:none;overflow:hidden}.med-feed-link-card__cover{aspect-ratio:16/9;background:var(--feed-border);max-height:340px;position:relative;overflow:hidden}.med-feed-link-card__cover img{object-fit:cover;width:100%;height:100%}.med-feed-link-card__frame{border:0;width:100%;height:100%}.med-feed-link-card__unmute{z-index:1;color:#fff;cursor:pointer;background:#0b1c30b8;border:0;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:13px;font-weight:600;display:inline-flex;position:absolute;top:10px;left:10px}.med-feed-link-card__unmute:hover{background:#0b1c30e6}.med-feed-link-card__thumb{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0;display:block}.med-feed-link-card__play{color:#fff;filter:drop-shadow(0 2px 8px #0006);font-size:56px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.med-feed-link-card__site{letter-spacing:.02em;font-size:11px}.med-feed-link-card__title.ant-typography{margin:4px 0 0}.med-feed-link-card__facebook{color:#1877f2;font-size:32px}.med-feed-link-card__skeleton.ant-skeleton-element{width:100%}.med-feed-link-card__wrap{position:relative}.med-feed-link-card__copy.ant-btn{color:var(--feed-text-secondary);background:var(--feed-surface);box-shadow:var(--feed-shadow-sm);position:absolute;bottom:12px;right:12px}.med-feed-link-card__wrap .med-feed-link-card.ant-card>.ant-card-body{padding-right:52px}.med-feed-link-card.ant-card{border:1px solid var(--feed-border);border-radius:12px}.med-feed-link-card.ant-card-small>.ant-card-body,.med-feed-link-card.ant-card>.ant-card-body{padding:14px 20px 18px}.med-feed-link-card .ant-card-cover img{border-radius:0}.med-feed-documents.ant-list{background:var(--feed-surface-low);border:0;border-radius:12px}.med-feed-documents .ant-list-item{border-bottom-color:var(--feed-surface-container)}.med-feed-documents .ant-list-item-meta-title{margin-bottom:0;font-size:13px;font-weight:600}.med-feed-documents .ant-list-item-meta-description{color:var(--feed-outline);font-size:11px}.med-feed-documents__icon{background:var(--feed-surface);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;display:inline-flex}.med-feed-documents__open{min-width:0;color:inherit;flex:1;display:block}.med-feed-documents__open:hover .ant-list-item-meta-title{color:var(--feed-primary)}.med-feed-documents .ant-list-footer{border-top:1px solid var(--feed-surface-container);padding:4px 8px}.med-feed-video{aspect-ratio:7/6;background:#000;border-radius:12px;max-height:560px;position:relative;overflow:hidden}.med-feed-video__player{object-fit:contain;cursor:pointer;background:#000;width:100%;height:100%;display:block}.med-feed-video:fullscreen{border-radius:0;max-height:none}.med-feed-video__controls{color:#fff;background:linear-gradient(#0000,#000000b3);align-items:center;gap:8px;padding:24px 10px 8px;display:flex;position:absolute;bottom:0;left:0;right:0}.med-feed-video__btn{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;transition:background .15s;display:flex}.med-feed-video__btn:hover{background:#ffffff2e}.med-feed-video__sound{font-size:22px}.med-feed-video__time{font-variant-numeric:tabular-nums;flex-shrink:0;font-size:12px}.med-feed-video__seek{accent-color:#fff;cursor:pointer;flex:1;min-width:0;height:4px}.med-feed-post__engagement{color:var(--feed-text-secondary);border-top:1px solid var(--feed-surface-container);align-items:center;gap:20px;margin-top:4px;padding:10px 16px;font-size:14px;display:flex}.med-feed-post__engagement>span{align-items:center;gap:6px;display:inline-flex}.med-feed-post__engagement .anticon{color:var(--feed-outline);font-size:15px}.med-feed-reactors-modal.ant-modal .ant-modal-body{max-height:70vh;padding:4px 16px 20px;overflow-y:auto}.med-feed-reactors-modal .ant-tabs-nav{z-index:1;background:var(--feed-surface);margin-bottom:8px;position:sticky;top:0}.med-feed-reactors-modal .ant-tabs-tab{font-weight:600}.med-feed-reactors-modal .ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--feed-primary)}.med-feed-reactors-modal .ant-tabs-ink-bar{background:var(--feed-primary);border-radius:2px}.med-feed-reactors__tab{font-weight:600}.med-feed-reactors__list .ant-list-item{border-bottom:0;border-radius:10px;justify-content:flex-start;gap:12px;padding:10px 8px;transition:background .15s}.med-feed-reactors__list .ant-list-item:hover{background:var(--feed-surface-low)}.med-feed-reactors__avatar{flex-shrink:0;display:inline-flex;position:relative}.med-feed-reactors__badge{background:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;display:inline-flex;position:absolute;bottom:-4px;right:-4px;box-shadow:0 0 0 2px #fff}.med-feed-reactors__text{flex-direction:column;min-width:0;display:flex}.med-feed-reactors__name{color:var(--feed-text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.med-feed-reactors__meta{color:var(--feed-outline);font-size:12px}.med-feed-share-menu.ant-dropdown-menu{background:#fff;border:1px solid #e4e6eb;border-radius:14px;min-width:252px;padding:8px;box-shadow:0 12px 32px #0f172a29,0 2px 6px #0f172a0f}.med-feed-share-menu.ant-dropdown-menu .ant-dropdown-menu-item{min-height:44px;color:var(--feed-text,#050505);border-radius:10px;align-items:center;gap:12px;margin:2px 0;padding:6px 12px;font-size:14px;font-weight:500;line-height:20px;display:flex}.med-feed-share-menu.ant-dropdown-menu .ant-dropdown-menu-item:hover,.med-feed-share-menu.ant-dropdown-menu .ant-dropdown-menu-item-active{color:var(--feed-primary,#2563eb);background:var(--feed-surface-low,#eff4ff)}.med-feed-share-menu.ant-dropdown-menu .ant-dropdown-menu-item .anticon{background:#f2f4f7;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:15px;display:inline-flex}.med-feed-share-menu.ant-dropdown-menu .ant-dropdown-menu-item-disabled{color:#98a2b3;cursor:not-allowed}.med-feed-share-menu.ant-dropdown-menu .ant-dropdown-menu-item-disabled:hover,.med-feed-share-menu.ant-dropdown-menu .ant-dropdown-menu-item-disabled.ant-dropdown-menu-item-active{color:#98a2b3;background:0 0}.med-feed-share-menu.ant-dropdown-menu .ant-dropdown-menu-item-disabled .anticon{background:#f2f4f7;color:#98a2b3!important}.med-feed-post__footer-row{flex-direction:column;margin-top:4px;display:flex}.med-feed-post__footer-stats{color:var(--feed-text-secondary);border-top:1px solid #f0f2f7;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 16px 6px;font-size:13px;display:flex}.med-feed-post__stats-counts{align-items:center;gap:8px;margin-left:auto;display:inline-flex}.med-feed-post__stat{background:var(--feed-surface-low);border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.med-feed-post__stat:hover{background:var(--feed-surface-container)}.med-feed-post__stat .anticon{color:var(--feed-outline);font-size:14px}.med-feed-post__reactors{color:var(--feed-text-secondary);background:var(--feed-surface);cursor:pointer;border:1px solid #dbe6ff;border-radius:999px;align-items:center;gap:7px;padding:3px 12px 3px 9px;font-size:13px;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex;box-shadow:0 1px 2px #0b1c300d}.med-feed-post__reactors:hover{background:#eff4ff;border-color:#bfdbfe;box-shadow:0 2px 6px #2563eb24}.med-feed-post__reactor-count{color:var(--feed-primary);font-weight:700}.med-feed-post__reactors-icon{color:var(--feed-primary);font-size:15px}.med-feed-post__reactor-avatars{align-items:center;display:inline-flex}.med-feed-post__reactor-avatars .ant-avatar{border:2px solid #fff;margin-left:-7px}.med-feed-post__reactor-avatars .ant-avatar:first-child{margin-left:0}.med-feed-post__footer-actions{border-top:1px solid #f0f2f7;align-items:center;gap:4px;padding:6px 16px 8px;display:flex}.med-feed-post__footer-actions>*{flex:1 1 0;min-width:0}.med-feed-post__footer-actions .ant-btn,.med-feed-post__footer-actions>*>.ant-btn{width:100%;min-width:0;height:36px;color:var(--feed-outline);border-radius:10px;flex:1 1 0;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:600;transition:color .15s,background .15s;display:inline-flex}.med-feed-post__footer-actions .ant-btn .anticon{font-size:17px}.med-feed-post__footer-actions .ant-btn>.anticon+span,.med-feed-post__footer-actions .ant-btn>span+span{margin-left:0}.med-feed-post__footer-actions .ant-btn>span{line-height:1}.med-feed-post__footer-actions .ant-btn:not(:disabled):hover{color:var(--feed-primary);background:#eff4ff}.med-feed-post__footer-actions .ant-btn:disabled{color:var(--feed-outline);cursor:default}.med-feed-post__footer-actions .ant-btn:disabled:hover,.med-feed-post__footer-actions .ant-btn:disabled:focus{color:var(--feed-primary);background:#eff4ff}.med-feed-publisher-avatar.ant-avatar{border:1px solid var(--feed-border,#e5eeff);background:#fff;flex-shrink:0;padding:3px}.med-feed-publisher-avatar.ant-avatar img{object-fit:contain}.med-feed-post__featured.ant-tag{color:#fff;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;background:linear-gradient(135deg,#ff512f 0%,#dd2476 100%);border:0;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;margin:0 0 0 8px;padding:2px 12px 2px 9px;font-size:12px;font-weight:700;line-height:20px;display:inline-flex;box-shadow:0 0 0 3px #ff512f2e,0 2px 8px #dd247666}.med-feed-post__featured.ant-tag .anticon{color:#fff;font-size:12px}.med-feed-status-pill{white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:2px 10px;font-size:11px;font-weight:600;line-height:16px;display:inline-flex}.med-feed-status-pill__dot{border-radius:50%;width:6px;height:6px}.med-feed-post__header{align-items:center;gap:10px;padding:14px 16px 6px;display:flex}.med-feed-post__header .ant-avatar{flex-shrink:0}.med-feed-post__author{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex;overflow:hidden}.med-feed-post__author-line{white-space:nowrap;flex-wrap:nowrap;align-items:center;gap:5px;display:flex;overflow:hidden}.med-feed-post__author-name.ant-typography{color:var(--feed-text);letter-spacing:-.01em;font-size:16px;font-weight:700;line-height:24px}.med-feed-post__verified{color:var(--feed-primary);font-size:15px}.med-feed-post__job-title{color:var(--feed-primary);background:var(--feed-surface-container);border-radius:999px;padding:0 8px;font-size:11px;font-weight:600;line-height:18px}.med-feed-post__meta{color:var(--feed-outline);white-space:nowrap;text-overflow:ellipsis;flex-wrap:nowrap;align-items:center;gap:6px;font-size:13px;line-height:20px;display:inline-flex;overflow:hidden}.med-feed-post__meta>[aria-hidden]{color:#c5c9d4;font-size:11px}.med-feed-post__meta a{color:inherit}.med-feed-post__meta a:hover{color:var(--feed-primary);text-decoration:none}.med-feed-post__category{color:var(--feed-primary);background:#eff4ff;border:0;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:1px 10px;font-weight:500;display:inline-flex}.med-feed-post__category .anticon{font-size:11px}.med-feed-post__header .ant-btn-text{color:var(--feed-outline)}.med-feed-post__header .med-feed-status-pill{flex-shrink:0}.med-feed-post{overflow:hidden}.med-feed-post.ant-card{background:var(--feed-surface);border:0;border-radius:16px;transition:box-shadow .2s,transform .2s;box-shadow:0 1px 2px #0b1c300a,0 4px 16px #0b1c300f}.med-feed-post.ant-card:hover{box-shadow:0 2px 4px #0b1c300d,0 8px 28px #0b1c301a}.med-feed-post.ant-card .ant-card-body{padding:0}.med-feed-post__header-actions{flex-shrink:0;align-items:center;gap:0;display:inline-flex}.med-feed-post__title{color:var(--feed-text);margin:0;font-size:20px;font-weight:700;line-height:28px}.med-feed-post__pending-note{color:var(--feed-outline);align-items:center;gap:6px;margin:0 16px 12px;font-size:12px;font-style:italic;line-height:16px;display:flex}.med-feed-post__pending-note .anticon{flex-shrink:0;line-height:1}.med-feed-post__body{flex-direction:column;gap:2px;padding:0 16px 12px;display:flex}.med-feed-post__text{min-width:0;margin-bottom:8px}.med-feed-post__text .med-feed-rich-content{font-family:Segoe UI,Inter,Roboto,sans-serif;font-size:.9375rem}.med-feed-post__text--large .med-feed-rich-content{font-size:20px;font-weight:500;line-height:28px}.med-feed-post__footer{justify-content:flex-end;padding:8px 20px 16px;display:flex}.med-feed-load-more.ant-btn{height:40px;color:var(--feed-primary);background:var(--feed-surface-low);border:1px dashed #c7d5f5;border-radius:999px;margin-top:4px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s}.med-feed-load-more.ant-btn:hover:not(:disabled){color:#1d4ed8;border-color:var(--feed-primary);background:#dbe6ff}.med-feed-load-more.ant-btn:disabled{color:var(--feed-outline);background:var(--feed-surface-low);border-color:#0000}.med-feed-profile-card .ant-card-body{align-items:center;gap:12px;padding:8px 10px;display:flex}.med-feed-profile-card__avatar{flex-shrink:0;position:relative}.med-feed-profile-card__info{min-width:0;display:flex}.med-feed-profile-card__name.ant-typography{color:var(--feed-text);font-size:15px;font-weight:600;line-height:22px}.med-feed-category-nav .ant-card-body,.med-feed-channels .ant-card-body{flex-direction:column;gap:2px;padding:4px 6px 8px;display:flex}.med-feed-sidebar-label{color:var(--feed-text-secondary);letter-spacing:.05em;text-transform:uppercase;padding:0 8px 6px;font-size:11px;font-weight:600}.med-feed-nav-item{width:100%;min-height:46px;color:var(--feed-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:14px;padding:10px 12px;font-size:15px;transition:background .15s;display:flex}.med-feed-nav-item:hover{background:var(--feed-surface-low)}.med-feed-nav-item.med-feed-nav-item--active,.med-feed-nav-item.med-feed-nav-item--active:hover{color:var(--feed-text);background:var(--feed-surface-container)}.med-feed-nav-item__icon{width:28px;color:var(--feed-text-secondary);flex-shrink:0;justify-content:center;font-size:26px;display:inline-flex}.med-feed-nav-item__label{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.med-feed-nav-item__chevron{width:28px;height:28px;color:var(--feed-text);background:var(--feed-surface-container);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;transition:transform .2s;display:inline-flex}.med-feed-nav-item__chevron--up{transform:rotate(180deg)}.med-feed-nav-item__badge{border-radius:999px;flex-shrink:0;padding:0 6px;font-size:11px;font-weight:600;line-height:18px}.med-feed-nav-item__badge--primary{color:#fff;background:var(--feed-primary)}.med-feed-nav-item__badge--danger{color:#93000a;background:#ffdad6}.med-feed-nav-item__badge--muted{color:var(--feed-text-secondary)}.med-feed-category-nav__head{color:var(--feed-text-secondary);letter-spacing:.05em;text-transform:uppercase;padding:4px 8px 8px;font-size:11px;font-weight:700}.med-feed-category-nav__divider{background:var(--feed-surface-container);height:1px;margin:6px 8px}.med-feed-layout{grid-template-columns:1fr;gap:20px;width:100%;max-width:1280px;min-height:calc(100vh - 40px);margin-inline:auto;display:grid}.med-feed-layout__left,.med-feed-layout__right{flex-direction:column;gap:16px;min-width:0;display:none}.med-feed-layout__main{flex-direction:column;gap:16px;width:100%;min-width:0;margin-inline:auto;display:flex}.med-feed-layout__toolbar{justify-content:space-between;align-items:center;min-height:24px;display:flex}.med-feed-layout__filter.ant-tag{color:var(--feed-primary);background:var(--feed-surface-container);border:0;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.med-feed-layout__category-tags{flex-wrap:wrap;gap:8px;display:flex}.med-feed-category-tag{color:var(--feed-text-secondary);background:var(--feed-surface-container-lowest);border:1px solid var(--feed-surface-container);cursor:pointer;border-radius:999px;padding:4px 14px;font-size:13px;font-weight:600;transition:color .15s,border-color .15s,background .15s}.med-feed-category-tag:hover{color:var(--feed-text);border-color:var(--feed-outline)}.med-feed-category-tag--active{background:var(--feed-surface-container);font-weight:700}@media (width>=1200px){.med-feed-layout{grid-template-columns:260px minmax(0,1fr) 320px}.med-feed-layout__left,.med-feed-layout__right{align-self:start;max-height:calc(100vh - 40px);display:flex;position:sticky;top:20px;overflow-y:auto}}@media (width>=900px) and (width<=1199px){.med-feed-layout{grid-template-columns:minmax(0,1fr) 280px}.med-feed-layout__right{align-self:start;max-height:calc(100vh - 40px);display:flex;position:sticky;top:20px;overflow-y:auto}}.med-feed-left-rail{flex-direction:column;gap:16px;display:flex}.med-feed-shortcuts .ant-card-body{flex-direction:column;gap:2px;padding:12px;display:flex}.med-feed-shortcuts__head{color:var(--feed-outline);letter-spacing:.04em;text-transform:uppercase;padding:4px 8px 8px;font-size:12px;font-weight:700}.med-feed-shortcuts__item{width:100%;color:var(--feed-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:8px;font-size:13px;font-weight:600;text-decoration:none;transition:background .15s;display:flex}.med-feed-shortcuts__item:hover{color:var(--feed-text);background:var(--feed-surface-low);text-decoration:none}.med-feed-shortcuts__icon{background:var(--feed-surface-low);border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:inline-flex}.med-feed-shortcuts__label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.med-feed-calendar .ant-card-body{padding:12px}.med-feed-calendar__head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.med-feed-calendar__nav{width:28px;height:28px;color:var(--feed-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;font-size:16px;font-weight:700;line-height:1;transition:background .15s;display:inline-flex}.med-feed-calendar__nav:hover{color:var(--feed-primary);background:var(--feed-surface-low)}.med-feed-calendar__label{color:var(--feed-text);font-size:13px;font-weight:700}.med-feed-calendar__range{color:var(--feed-primary);text-align:center;background:#2563eb14;border-radius:8px;margin-bottom:6px;padding:4px 8px;font-size:12px;font-weight:700}.med-feed-calendar__range--empty{color:var(--feed-outline);background:var(--feed-surface-low);font-weight:500}.med-feed-calendar__weekdays{grid-template-columns:repeat(7,1fr);margin-bottom:4px;display:grid}.med-feed-calendar__weekdays span{color:var(--feed-outline);text-align:center;text-transform:uppercase;font-size:10px;font-weight:700}.med-feed-calendar__grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.med-feed-calendar__day{aspect-ratio:1;color:var(--feed-text);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;font-size:12px;font-weight:500;transition:background .15s,color .15s;display:inline-flex}.med-feed-calendar__day:hover{background:var(--feed-surface-low)}.med-feed-calendar__day--range{color:var(--feed-primary);background:#2563eb1a;border-radius:0;font-weight:600}.med-feed-calendar__day--today{color:var(--feed-primary);font-weight:700}.med-feed-calendar__day--active{color:#fff;background:var(--feed-primary);font-weight:700;box-shadow:0 2px 8px #2563eb59}.med-feed-calendar__day--active:hover{background:var(--feed-primary)}.med-feed-calendar__day--disabled{color:#0003;cursor:not-allowed}.med-feed-calendar__day--disabled:hover{background:0 0}.med-feed-calendar__clear{width:100%;color:var(--feed-primary);cursor:pointer;background:0 0;border:0;border-radius:8px;margin-top:8px;padding:6px 0;font-size:12px;font-weight:600}.med-feed-calendar__clear:hover:not(:disabled){background:var(--feed-surface-low)}.med-feed-calendar__clear:disabled{color:#00000040;cursor:default}.med-feed-widget .ant-card-body{flex-direction:column;gap:8px;padding:12px;display:flex}.med-feed-widget__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.med-feed-widget__title{color:var(--feed-text);align-items:center;gap:6px;font-size:16px;font-weight:600;line-height:24px;display:inline-flex}.med-feed-widget__icon{color:var(--feed-primary);font-size:18px;display:inline-flex}.med-feed-widget__head .ant-btn-link,.med-feed-widget__head .ant-typography{padding:0;font-size:11px;font-weight:600}.med-feed-widget__empty{color:var(--feed-outline);font-size:12px}.med-feed-widget-row{color:inherit;border-radius:8px;align-items:flex-start;gap:8px;padding:4px;display:flex}.med-feed-widget-row:hover{color:inherit;background:var(--feed-surface-low)}.med-feed-widget-row__body{flex-direction:column;flex:1;min-width:0;display:flex}.med-feed-widget-row__title{color:var(--feed-text);font-size:12px;line-height:18px}.med-feed-widget-row__quote{color:var(--feed-text-secondary);font-size:12px;font-style:italic;line-height:18px}.med-feed-widget-row__meta{color:var(--feed-outline);font-size:11px;line-height:16px}.med-feed-birthday{background:var(--feed-surface-low);border-radius:12px;align-items:center;gap:8px;padding:8px;display:flex}.med-feed-birthday__action.ant-btn{border-radius:999px;font-size:11px;font-weight:600}.med-feed-trending{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:6px 4px;display:flex}.med-feed-trending:hover{color:inherit;background:var(--feed-surface-low)}.med-feed-trending__tag{color:var(--feed-primary);font-size:13px;font-weight:600}.med-feed-trending__chevron{color:var(--feed-outline);font-size:11px}.med-feed-review-item__title{color:var(--feed-text);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.med-feed-review-stats{grid-template-columns:1fr 1fr;gap:8px;display:grid}.med-feed-review-stats__label{padding:4px 0 0}.med-feed-review-stat{background:var(--feed-surface-low);border-radius:12px;flex-direction:column;padding:8px;display:flex}.med-feed-review-stat__label{color:var(--feed-text-secondary);font-size:11px}.med-feed-review-stat__value{font-size:28px;font-weight:700;line-height:36px}.med-feed-review-stat__value--danger{color:#ba1a1a}.med-feed-review-stat__value--success{color:var(--feed-secondary)}.med-feed-review-stat__hint{font-size:11px}.med-feed-review-stat__hint--danger{color:#ba1a1a}.med-feed-review-stat__hint--success{color:var(--feed-secondary)}.med-feed-review-item{background:var(--feed-surface-low);border-radius:8px;align-items:center;gap:8px;padding:8px;display:flex}.med-feed-review-item .ant-btn{border-radius:999px;font-size:11px;font-weight:600}.med-feed-highlight{width:100%;color:inherit;font:inherit;text-align:left;background:var(--feed-surface-low);border-radius:var(--feed-radius);cursor:pointer;border:0;flex-direction:column;gap:6px;padding:12px;transition:background .15s;display:flex}.med-feed-highlight:hover{color:inherit;background:#dbe6ff}.med-feed-highlight+.med-feed-highlight{margin-top:8px}.med-feed-highlight__eyebrow{color:var(--feed-primary);font-size:11px;font-weight:600}.med-feed-highlight__title{color:var(--feed-text);overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:700;line-height:20px;display:-webkit-box;overflow:hidden}.med-feed-highlight__meta{color:var(--feed-text-secondary);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.med-feed-highlight__stats{white-space:nowrap}.med-feed-highlight__more{color:var(--feed-primary);white-space:nowrap;font-weight:600}.med-feed-footer{color:var(--feed-outline);flex-wrap:wrap;gap:4px 12px;margin-top:auto;padding:0 4px;font-size:11px;display:flex}.med-feed-contributor{border-radius:10px;align-items:center;gap:10px;padding:6px 4px;transition:background .15s;display:flex}.med-feed-contributor:hover{background:var(--feed-surface-low)}.med-feed-contributor__rank{width:20px;height:20px;color:var(--feed-outline);background:var(--feed-surface-container);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.med-feed-contributor__rank--1{color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706)}.med-feed-contributor__rank--2{color:#fff;background:linear-gradient(135deg,#94a3b8,#64748b)}.med-feed-contributor__rank--3{color:#fff;background:linear-gradient(135deg,#d97706,#b45309)}.med-feed-contributor__info{flex-direction:column;flex:1;min-width:0;display:flex}.med-feed-contributor__name{color:var(--feed-text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.med-feed-contributor__meta{color:var(--feed-outline);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.med-feed-contributor__score{color:var(--feed-primary);flex-direction:column;flex-shrink:0;align-items:flex-end;font-size:13px;font-weight:700;line-height:16px;display:flex}.med-feed-contributor__score-label{color:var(--feed-outline);font-size:10px;font-weight:500}.med-feed-content{flex:1;padding:20px}@media (width<=576px){.med-feed-content{padding:12px 0}}.med-feed-root,.med-feed-portal{--feed-bg:#f8f9ff;--feed-surface:#fff;--feed-surface-low:#eff4ff;--feed-surface-container:#e5eeff;--feed-border:#e5eeff;--feed-text:#0b1c30;--feed-text-secondary:#434655;--feed-outline:#737686;--feed-primary:#2563eb;--feed-secondary:#006a61;--feed-shadow-sm:0 1px 2px #0b1c300f;--feed-radius:12px;--feed-gap:16px;--feed-shadow:0 1px 3px #0b1c300f, 0 1px 2px #0b1c300a}.med-feed-root{background:var(--feed-bg);min-height:100%;color:var(--feed-text);flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;display:flex}.med-feed-root .ant-card{border-radius:var(--feed-radius);box-shadow:var(--feed-shadow)}.med-feed-center{flex:1;justify-content:center;align-items:center;padding:48px 16px;display:flex}.med-feed-column{gap:var(--feed-gap);flex-direction:column;width:100%;max-width:680px;margin:0 auto;display:flex}.med-feed-wide{width:100%;max-width:1200px;margin:0 auto}.med-feed-stack{gap:var(--feed-gap);flex-direction:column;display:flex}.med-feed-root .ant-dropdown-menu{background:#fff;border:1px solid #e4e6eb;border-radius:8px;padding:8px 0;box-shadow:0 12px 28px #0003,0 2px 4px #0000001a}.med-feed-root .ant-dropdown-menu-item{color:#050505;border-radius:0;align-items:center;gap:12px;min-height:36px;padding:6px 16px;font-size:14px;line-height:20px;display:flex}.med-feed-root .ant-dropdown-menu-item:hover,.med-feed-root .ant-dropdown-menu-item-active,.med-feed-root .ant-dropdown-menu-item-selected{color:#050505;background:#f2f2f2}.med-feed-root .ant-dropdown-menu-item .anticon{color:#65676b;font-size:16px}.med-feed-root .ant-dropdown-menu-item-divider{background:#e4e6eb;margin:8px 0}.med-feed-format-bar{background:var(--feed-surface-low);border-radius:10px;flex-wrap:wrap;align-items:center;gap:2px;margin-bottom:8px;padding:4px 6px;display:flex}.med-feed-format-bar .ant-btn{width:32px;height:32px;color:var(--feed-text-secondary);border-radius:8px}.med-feed-format-bar .ant-btn:hover{color:var(--feed-text);background:var(--feed-surface)}.med-feed-format-bar__divider{background:var(--feed-surface-container);width:1px;height:20px;margin:0 6px}.med-feed-format-bar__quote{font-size:18px;line-height:1}.med-feed-format-bar .ant-btn.med-feed-format-bar__btn--active{color:var(--feed-primary,#0866ff);background:var(--feed-surface,#fff);box-shadow:inset 0 0 0 1px var(--feed-primary,#0866ff)}.med-feed-format-bar .ant-btn:disabled{color:#00000040;background:0 0}.med-feed-format-bar__size-icon{font-size:13px;font-weight:700;line-height:1}.med-feed-format-bar__sizes{flex-direction:column;gap:2px;min-width:120px;display:flex}.med-feed-format-bar__size{color:var(--feed-text);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:baseline;gap:10px;padding:4px 10px;font-weight:700;line-height:1.3;display:flex}.med-feed-format-bar__size:hover{background:var(--feed-surface-low)}.med-feed-format-bar__size--active{color:var(--feed-primary,#0866ff);background:var(--feed-surface-low)}.med-feed-format-bar__size-label{color:var(--feed-text-secondary);font-size:12px;font-weight:400}.med-feed-format-bar__colors{gap:6px;display:flex}.med-feed-format-bar__swatch{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:700;transition:border-color .15s,box-shadow .15s;display:inline-flex}.med-feed-format-bar__swatch:hover{border-color:currentColor}.med-feed-format-bar__swatch--active{box-shadow:inset 0 0 0 2px}.med-feed-picker-icon.ant-btn .anticon{font-size:22px}.med-feed-picker-icon.ant-btn:not(:disabled):hover{background:var(--feed-surface-low)}.med-feed-attached__images{flex-wrap:wrap;gap:8px;display:flex}.med-feed-attached__thumb{background:var(--feed-surface-low);border-radius:8px;justify-content:center;align-items:center;width:96px;height:96px;display:flex;position:relative;overflow:hidden}.med-feed-attached__thumb video,.med-feed-attached__thumb img{object-fit:cover;width:100%;height:100%}.med-feed-attached__play{color:#fff;filter:drop-shadow(0 1px 4px #00000080);font-size:28px;position:absolute}.med-feed-attached__remove{position:absolute;top:4px;right:4px}.med-feed-composer-form{flex-direction:column;gap:14px;font-family:Segoe UI,Helvetica,Arial,sans-serif;display:flex}.med-feed-composer-form__author{align-items:center;gap:10px;display:flex}.med-feed-composer-form__author-info{flex-direction:column;gap:4px;min-width:0;display:flex}.med-feed-composer-form__author-name{color:#050505;font-size:15px;font-weight:600;line-height:20px}.med-feed-composer-form__pills{flex-wrap:wrap;gap:6px;display:flex}.med-feed-composer-form__pills .ant-select{font-size:12px;font-weight:600}.med-feed-composer-form__pills .ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#e4e6eb;border:0;border-radius:6px;height:24px;min-height:24px;padding:0 8px}.med-feed-composer-form__pills .ant-select-selector:hover{background:#d8dade!important}.med-feed-composer-form__pills .ant-select-selection-placeholder,.med-feed-composer-form__pills .ant-select-selection-item{color:#050505;line-height:24px}.med-feed-composer-form__notice{color:#050505;background:#e7f3ff;border-radius:8px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:12px;line-height:16px;display:flex}.med-feed-composer-form__notice .anticon{color:#0064d1;margin-top:2px;font-size:14px}.med-feed-composer-form__body{flex-direction:column;gap:10px;max-height:52vh;padding-right:2px;display:flex;overflow-y:auto}.med-feed-composer-form__body::-webkit-scrollbar{width:6px}.med-feed-composer-form__body::-webkit-scrollbar-thumb{background:#ced0d4;border-radius:6px}.med-feed-composer-form__title.ant-input{color:#050505;padding:6px 0 2px;font-size:16px;font-weight:600;box-shadow:none!important;border:0!important}.med-feed-composer-form__text.ant-mentions,.med-feed-composer-form__text.ant-mentions>textarea{color:#050505;resize:none;background:0 0;padding:6px 0;font-size:15px;line-height:20px;box-shadow:none!important;border:0!important}.med-feed-composer-form__text--large.ant-mentions,.med-feed-composer-form__text--large.ant-mentions>textarea{font-size:24px!important;line-height:28px!important}.med-feed-composer-form__text.ant-mentions>textarea::placeholder,.med-feed-composer-form__title.ant-input::placeholder{color:#8a8d91}.med-feed-composer-form__toolbar{border-top:0;justify-content:space-between;align-items:center;margin-top:0;padding:8px 0 4px;display:flex}.med-feed-composer-form__toolbar-group{align-items:center;gap:4px;display:inline-flex}.med-feed-composer-form__toolbar-btn.ant-btn{color:#65676b;background:var(--feed-surface-container);width:36px;height:36px;box-shadow:none;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:15px;font-weight:500;display:inline-flex}.med-feed-composer-form__toolbar-btn.ant-btn:hover,.med-feed-composer-form__toolbar-btn.ant-btn:focus{color:#050505;background:#d7e5ff}.med-feed-composer-form__toolbar-btn.ant-btn:active{background:#c9dcff}.med-feed-composer-form__toolbar-btn .anticon{font-size:20px}.med-feed-composer-form__color-grid{grid-template-columns:repeat(4,36px);gap:10px;padding:6px;display:grid}.med-feed-composer-form__color-btn{cursor:pointer;border:2px solid #e4e6eb;border-radius:50%;width:36px;height:36px;transition:transform .12s,box-shadow .15s,border-color .15s;box-shadow:0 1px 2px #00000014,inset 0 0 0 1px #0000000a}.med-feed-composer-form__color-btn:hover{transform:scale(1.08);box-shadow:0 2px 6px #0000001f}.med-feed-composer-form__color-btn[style*=\#2563eb]{box-shadow:0 0 0 2px #fff,0 0 0 4px #0866ff}.med-feed-composer-form__location-tag{background:#e7f3ff;border:0;border-radius:12px;align-self:flex-start;margin:2px 0 0;padding:2px 8px;font-size:13px}.med-feed-composer-form__add{background:#fff;border:1px solid #ced0d4;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px 8px 16px;display:flex;box-shadow:0 1px 2px #0000000d}.med-feed-composer-form__add-label{color:#050505;font-size:15px;font-weight:600;line-height:20px}.med-feed-composer-form__add-actions{align-items:center;gap:2px;display:inline-flex}.med-feed-composer-form__actions{gap:8px;display:flex}.med-feed-composer-form__submit.ant-btn{height:40px;box-shadow:none;background:#0866ff;border:0;border-radius:6px;font-size:16px;font-weight:600}.med-feed-composer-form__submit.ant-btn:not(:disabled):hover{background:#075eec}.med-feed-composer-form__submit.ant-btn:disabled{color:#bcc0c4;background:#e4e6eb}.med-feed-composer-form__submit.ant-btn:not(:disabled):active{background:#0752d1;transform:scale(.99)}.med-feed-composer-form__toolbar-btn--active.ant-btn{color:var(--feed-primary);background:var(--feed-surface-low)}.med-feed-composer-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.med-feed-composer-split__preview{background:var(--feed-bg,#f8f9ff);border-radius:12px;max-height:calc(100vh - 200px);padding:12px;position:sticky;top:0;overflow-y:auto}.med-feed-composer-split__preview .med-feed-post.ant-card{box-shadow:var(--feed-shadow)}.med-feed-composer-split__empty{color:var(--feed-outline);text-align:center;padding:48px 16px}@media (width<=900px){.med-feed-composer-split{grid-template-columns:minmax(0,1fr)}}.med-feed-create-modal.ant-modal .ant-modal-content{background:var(--feed-surface);border:1px solid #0b1c300f;border-radius:20px;padding:0;overflow:hidden;box-shadow:0 24px 64px #0b1c3029,0 4px 16px #0b1c300f}.med-feed-create-modal.ant-modal .ant-modal-header{text-align:center;border-bottom:1px solid var(--feed-surface-container);background:linear-gradient(#fff 0%,#fbfcff 100%);margin:0;padding:18px 100px 18px 24px;position:relative}.med-feed-create-modal.ant-modal .ant-modal-title{color:var(--feed-text);letter-spacing:-.01em;font-size:18px;font-weight:700}.med-feed-create-modal.ant-modal .ant-modal-close{margin:0;top:14px;right:16px}.med-feed-create-modal.ant-modal .ant-modal-close-x{width:36px;height:36px;color:var(--feed-text-secondary);background:var(--feed-surface-container);border-radius:50%;justify-content:center;align-items:center;font-size:15px;line-height:1;transition:background .2s,color .2s,transform .15s;display:flex}.med-feed-create-modal.ant-modal .ant-modal-close-x:hover{color:var(--feed-text);background:#d7e5ff;transform:rotate(90deg)}.med-feed-create-modal.ant-modal .ant-modal-body{padding:20px 24px 24px}.med-feed-create-modal__title{line-height:1.3;display:block;position:static}.med-feed-create-modal__tools{align-items:center;gap:8px;display:inline-flex;position:absolute;top:14px;right:60px}.med-feed-create-modal__tools .ant-btn{width:36px;height:36px;color:var(--feed-text-secondary);background:var(--feed-surface-container);border:0;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,color .2s;display:inline-flex}.med-feed-create-modal__tools .ant-btn:hover{color:var(--feed-primary);background:#d7e5ff}.med-feed-create-modal__tools .med-feed-create-modal__tool--active.ant-btn{color:#fff;background:var(--feed-primary);box-shadow:0 4px 12px #2563eb59}.med-feed-create-modal--fullscreen.ant-modal .ant-modal-content{height:100vh;box-shadow:none;border:0;border-radius:0;flex-direction:column;display:flex}.med-feed-create-modal--fullscreen.ant-modal .ant-modal-body{flex:1;min-height:0;padding:20px 32px;overflow-y:auto}.med-feed-create-modal--fullscreen .med-feed-composer-split{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:32px;max-width:1600px;margin:0 auto}.med-feed-create-modal--fullscreen .med-feed-composer-split__preview{max-height:calc(100vh - 120px)}.med-feed-confirm-modal.ant-modal .ant-modal-content{background:var(--feed-surface);border:1px solid #0b1c300f;border-radius:16px;overflow:hidden;box-shadow:0 20px 48px #0b1c3024,0 4px 12px #0b1c300d}.med-feed-confirm-modal.ant-modal .ant-modal-header{background:0 0;border-bottom:none;padding:22px 56px 0 24px}.med-feed-confirm-modal.ant-modal .ant-modal-title{color:var(--feed-text);letter-spacing:-.01em;font-size:17px;font-weight:700;line-height:1.4}.med-feed-confirm-modal.ant-modal .ant-modal-close{color:var(--feed-text-secondary);top:16px;right:16px}.med-feed-confirm-modal.ant-modal .ant-modal-close-x{background:var(--feed-surface-container);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;line-height:1;transition:background .2s,color .2s;display:flex}.med-feed-confirm-modal.ant-modal .ant-modal-close:hover,.med-feed-confirm-modal.ant-modal .ant-modal-close:focus{color:var(--feed-text)}.med-feed-confirm-modal.ant-modal .ant-modal-close:hover .ant-modal-close-x{background:#d7e5ff}.med-feed-confirm-modal.ant-modal .ant-modal-body{padding:10px 24px 8px}.med-feed-confirm-modal.ant-modal .ant-modal-body p{color:var(--feed-text-secondary);margin:0;font-size:14px;line-height:1.6}.med-feed-confirm-modal.ant-modal .ant-modal-footer{border-top:none;padding:16px 24px 22px}.med-feed-confirm-modal.ant-modal .ant-modal-footer .ant-btn{height:40px;box-shadow:none;border-radius:10px;padding:0 20px;font-size:14px;font-weight:600;transition:background .2s,color .2s,border-color .2s}.med-feed-confirm-modal.ant-modal .ant-modal-footer .ant-btn+.ant-btn{margin-left:12px}.med-feed-confirm-modal.ant-modal .ant-modal-footer .ant-btn-text{color:var(--feed-text-secondary)}.med-feed-confirm-modal.ant-modal .ant-modal-footer .ant-btn-text:hover,.med-feed-confirm-modal.ant-modal .ant-modal-footer .ant-btn-text:focus{color:var(--feed-text);background:var(--feed-surface-low);border-color:#0000}.med-feed-confirm-modal.ant-modal .ant-modal-footer .ant-btn-text:active{color:var(--feed-text);background:var(--feed-surface-container);border-color:#0000}.med-feed-confirm-modal.ant-modal .ant-modal-footer .ant-btn-text:disabled{color:#00000040;background:0 0;border-color:#0000}.med-feed-confirm-modal.ant-modal .ant-modal-footer .ant-btn-primary{background:var(--feed-primary);border-color:var(--feed-primary)}.med-feed-confirm-modal.ant-modal .ant-modal-footer .ant-btn-primary:hover,.med-feed-confirm-modal.ant-modal .ant-modal-footer .ant-btn-primary:focus{background:#3b82f6;border-color:#3b82f6}.med-feed-confirm-modal.ant-modal .ant-modal-footer .ant-btn-primary:active{background:#1d4ed8;border-color:#1d4ed8}.med-feed-create-button.ant-btn{background:linear-gradient(135deg,#3b82f6 0%,#2563eb 55%,#1d4ed8 100%);border:0;border-radius:999px;align-items:center;gap:10px;height:40px;padding:0 20px 0 6px;font-weight:600;line-height:1;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 6px 16px #2563eb47}.med-feed-create-button.ant-btn:hover,.med-feed-create-button.ant-btn:focus{background:linear-gradient(135deg,#3b82f6 0%,#2563eb 55%,#1d4ed8 100%);transform:translateY(-1px);box-shadow:0 10px 22px #2563eb57}.med-feed-create-button.ant-btn:active{transform:translateY(0);box-shadow:0 4px 10px #2563eb47}.med-feed-create-button__icon{background:#ffffff38;border-radius:50%;flex-shrink:0;width:28px;height:28px;position:relative}.med-feed-create-button__icon:before,.med-feed-create-button__icon:after{content:"";background:#fff;border-radius:1px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.med-feed-create-button__icon:before{width:12px;height:2px}.med-feed-create-button__icon:after{width:2px;height:12px}.med-feed-page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.med-feed-page-header__title.ant-typography{margin:0}.med-feed-wide .med-feed-page-header{margin-bottom:var(--feed-gap)}@media (width<=576px){.med-feed-page-header{padding:0 12px}}.med-feed-date-range{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.med-feed-pill-fields .ant-input-affix-wrapper,.med-feed-pill-fields .ant-picker,.med-feed-pill-fields .ant-select:not(.ant-select-customize-input) .ant-select-selector{background:var(--feed-surface-low);height:38px;box-shadow:none;border-color:#0000;border-radius:999px;padding:0 14px;transition:background .15s,border-color .15s,box-shadow .15s}.med-feed-pill-fields .ant-select-single .ant-select-selector .ant-select-selection-item,.med-feed-pill-fields .ant-select-single .ant-select-selector .ant-select-selection-placeholder{line-height:36px}.med-feed-pill-fields .ant-select-single .ant-select-selector .ant-select-selection-search{left:14px;right:14px}.med-feed-pill-fields .ant-select-single .ant-select-selector .ant-select-selection-search-input{height:36px}.med-feed-pill-fields .ant-input-affix-wrapper>input.ant-input{background:0 0}.med-feed-pill-fields .ant-input-prefix,.med-feed-pill-fields .ant-select-arrow{color:var(--feed-outline)}.med-feed-pill-fields .ant-select-arrow{right:14px}.med-feed-pill-fields .ant-input-affix-wrapper:hover,.med-feed-pill-fields .ant-picker:hover,.med-feed-pill-fields .ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-color:var(--feed-surface-container)}.med-feed-pill-fields .ant-input-affix-wrapper-focused,.med-feed-pill-fields .ant-picker-focused,.med-feed-pill-fields .ant-select-focused:not(.ant-select-disabled) .ant-select-selector,.med-feed-pill-fields .ant-select-open .ant-select-selector{background:var(--feed-surface);border-color:#2563eb80!important;box-shadow:0 0 0 3px #2563eb1f!important}.med-feed-table-post{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0;display:flex}.med-feed-table-post img,.med-feed-table-post__placeholder{border-radius:10px;flex-shrink:0;width:52px;height:52px}.med-feed-table-post img{object-fit:cover}.med-feed-table-post__placeholder{color:var(--feed-primary);background:var(--feed-surface-container);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.med-feed-table-post__body{flex-direction:column;gap:2px;min-width:0;display:flex}.med-feed-table-post__text.ant-typography{color:var(--feed-text);margin:0;font-weight:600}.med-feed-table-post:hover .med-feed-table-post__text.ant-typography{color:var(--feed-primary)}.med-feed-table-post__meta{color:var(--feed-outline);font-size:12px}.med-feed-review-drawer .med-feed-post{box-shadow:none}.med-feed-manage{flex-direction:column;gap:20px;display:flex}.med-feed-manage .med-feed-page-header{margin-bottom:0}.med-feed-manage__tabs{border-bottom:1px solid var(--feed-border);scrollbar-width:none;gap:4px;padding:0 12px;display:flex;overflow:auto hidden}.med-feed-manage__tabs::-webkit-scrollbar{display:none}.med-feed-manage__tab{--tone:var(--feed-primary);height:48px;color:var(--feed-text-secondary);white-space:nowrap;cursor:pointer;background:0 0;border:0;flex-shrink:0;align-items:center;gap:8px;padding:0 12px;font-size:14px;font-weight:500;transition:color .15s;display:inline-flex;position:relative}.med-feed-manage__tab:after{content:"";background:0 0;border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:0;left:12px;right:12px}.med-feed-manage__tab:hover{color:var(--feed-text)}.med-feed-manage__tab--pending{--tone:#4f46e5}.med-feed-manage__tab--approved{--tone:#0f766e}.med-feed-manage__tab--published{--tone:#15803d}.med-feed-manage__tab--unpublished{--tone:#b45309}.med-feed-manage__tab--deleted{--tone:#6b7280}.med-feed-manage__tab--active{color:var(--feed-text);font-weight:600}.med-feed-manage__tab--active:after{background:var(--tone)}.med-feed-manage__tab-count{min-width:22px;color:var(--feed-text-secondary);text-align:center;background:var(--feed-surface-low);border-radius:999px;padding:0 7px;font-size:12px;font-weight:600;line-height:20px}.med-feed-manage__tab--active .med-feed-manage__tab-count{color:#fff;background:var(--tone)}.med-feed-manage__panel{background:var(--feed-surface);border:1px solid var(--feed-border);border-radius:var(--feed-radius);box-shadow:var(--feed-shadow);overflow:hidden}.med-feed-manage__toolbar{border-bottom:1px solid var(--feed-border);flex-wrap:wrap;align-items:center;gap:12px;padding:16px;display:flex}.med-feed-manage__search{flex:1;min-width:240px;max-width:420px}.med-feed-manage__clear.ant-btn{color:var(--feed-text-secondary);padding:0 4px}.med-feed-manage__clear.ant-btn:hover{color:#b91c1c}.med-feed-manage__bulk{color:#3730a3;background:#eef2ff;border-bottom:1px solid #c7d2fe;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.med-feed-manage-table .ant-table-thead>tr>th{color:var(--feed-text-secondary);letter-spacing:.05em;text-transform:uppercase;background:var(--feed-surface-low);font-size:11px;font-weight:600}.med-feed-manage-table .ant-table-tbody>tr>td{padding-top:14px;padding-bottom:14px}.med-feed-manage-table .ant-table-tbody>tr:hover>td{background:#eff4ff99}.med-feed-manage-table .ant-table-pagination.ant-pagination{margin:0;padding:14px 16px}.med-feed-table-date{color:var(--feed-outline);font-size:12px}.med-feed-table-author{align-items:center;gap:10px;display:flex}.med-feed-table-author>span:last-child{flex-direction:column;min-width:0;line-height:18px;display:flex}.med-feed-table-author strong{color:var(--feed-text);font-weight:600}.med-feed-table-author>span:last-child>span{color:var(--feed-outline);font-size:12px}.med-feed-table-engagement{color:var(--feed-text-secondary);white-space:nowrap;gap:12px;font-size:13px;display:inline-flex}.med-feed-table-engagement .anticon{color:var(--feed-outline)}.med-feed-manage__action.ant-btn{border-radius:8px;width:32px;height:32px}.med-feed-manage__action--primary.ant-btn{color:#fff;background:var(--feed-primary);border-color:var(--feed-primary)}.med-feed-manage__action--primary.ant-btn:hover{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.med-feed-manage__action--danger.ant-btn{color:#b91c1c;border-color:#fecaca}.med-feed-manage__action--danger.ant-btn:hover{color:#991b1b;background:#fef2f2;border-color:#fca5a5}@media (width<=640px){.med-feed-manage__search{max-width:none}}.med-feed-table-status{flex-direction:column;align-items:flex-start;gap:4px;display:inline-flex}.med-feed-table-status .ant-tag{margin:0}.med-feed-categories{flex-direction:column;gap:20px;display:flex}.med-feed-categories .med-feed-page-header{margin-bottom:0}.med-feed-categories__panel{background:var(--feed-surface);border:1px solid var(--feed-border);border-radius:var(--feed-radius);box-shadow:var(--feed-shadow);overflow:hidden}.med-feed-categories__head{border-bottom:1px solid var(--feed-border);justify-content:space-between;align-items:baseline;gap:12px;padding:16px 20px;display:flex}.med-feed-categories__title{color:var(--feed-text);margin:0;font-size:15px;font-weight:600}.med-feed-categories__hint{color:var(--feed-outline);font-size:13px}.med-feed-categories-table .ant-table-thead>tr>th{color:var(--feed-text-secondary);letter-spacing:.05em;text-transform:uppercase;background:var(--feed-surface-low);font-size:11px;font-weight:600}.med-feed-categories-table .ant-table-tbody>tr>td{padding-top:14px;padding-bottom:14px}.med-feed-categories-table .ant-table-tbody>tr:hover>td{background:#eff4ff99}.med-feed-categories-table .ant-table-tbody>tr.med-feed-categories__row--hidden>td{color:var(--feed-outline)}.med-feed-category-chip{--tone:var(--feed-primary);min-width:0;color:var(--feed-text);align-items:center;gap:10px;font-weight:600;display:inline-flex}.med-feed-category-chip__dot{background:var(--tone);width:12px;height:12px;box-shadow:0 0 0 3px color-mix(in srgb, var(--tone) 18%, transparent);border-radius:4px;flex-shrink:0}.med-feed-category-chip__name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.med-feed-categories__count{min-width:28px;color:var(--feed-text-secondary);text-align:center;background:var(--feed-surface-low);border-radius:999px;padding:1px 10px;font-size:12px;font-weight:600;display:inline-block}.med-feed-categories__action.ant-btn{border-radius:8px;width:32px;height:32px}.med-feed-categories__action--danger.ant-btn{color:#b91c1c;border-color:#fecaca}.med-feed-categories__action--danger.ant-btn:hover{color:#991b1b;background:#fef2f2;border-color:#fca5a5}.med-feed-category-color{align-items:center;gap:10px;display:flex}.med-feed-category-color input[type=color]{background:var(--feed-surface);cursor:pointer;border:1px solid #d9d9d9;border-radius:8px;flex-shrink:0;width:40px;height:32px;padding:2px}.med-feed-category-preview{color:var(--feed-outline);background:var(--feed-surface-low);border-radius:10px;align-items:center;gap:12px;margin-bottom:20px;padding:12px 14px;font-size:12px;display:flex}.med-feed-settings{flex-direction:column;gap:20px;display:flex}.med-feed-settings__tabs{border-bottom:1px solid var(--feed-border);gap:4px;display:flex}.med-feed-settings__tab{height:44px;color:var(--feed-text-secondary);align-items:center;padding:0 14px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex;position:relative}.med-feed-settings__tab:hover{color:var(--feed-text)}.med-feed-settings__tab--active{color:var(--feed-primary)}.med-feed-settings__tab--active:after{background:var(--feed-primary);content:"";border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:-1px;left:14px;right:14px}@media (width<=640px){.med-feed-categories__head{flex-direction:column;gap:4px}}.med-feed-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.med-feed-kpi{--tone:var(--feed-primary);--tone-soft:var(--feed-surface-low);background:var(--feed-surface);border:1px solid var(--feed-border);border-radius:var(--feed-radius);min-width:0;box-shadow:var(--feed-shadow);align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.med-feed-kpi--posts,.med-feed-kpi--reactions{--tone:#2563eb;--tone-soft:#eff6ff}.med-feed-kpi--comments{--tone:#0f766e;--tone-soft:#ecfdf5}.med-feed-kpi--shares{--tone:#7c3aed;--tone-soft:#f5f3ff}.med-feed-kpi__icon{width:40px;height:40px;color:var(--tone);background:var(--tone-soft);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.med-feed-kpi__body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.med-feed-kpi__title{color:var(--feed-text-secondary);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:600}.med-feed-kpi__row{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.med-feed-kpi__value{color:var(--feed-text);font-size:26px;font-weight:700;line-height:34px}.med-feed-kpi__change{border-radius:999px;align-items:center;gap:3px;padding:0 7px;font-size:12px;font-weight:600;line-height:20px;display:inline-flex}.med-feed-kpi__change .anticon{font-size:10px}.med-feed-kpi__change--up{color:#047857;background:#ecfdf5}.med-feed-kpi__change--down{color:#b91c1c;background:#fef2f2}.med-feed-kpi__change--none{color:var(--feed-outline);padding:0;font-weight:400}.med-feed-kpi__detail{color:var(--feed-outline);white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:18px;overflow:hidden}.med-feed-kpi__skeleton.ant-skeleton-element{width:100%;margin-top:6px}@media (width<=1200px){.med-feed-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=576px){.med-feed-kpis{grid-template-columns:minmax(0,1fr)}}.med-feed-report-panel{height:100%}.med-feed-reports-grid{gap:var(--feed-gap);grid-template-columns:minmax(0,2fr) minmax(0,3fr);display:grid}@media (width<=1100px){.med-feed-reports-grid{grid-template-columns:minmax(0,1fr)}}.med-feed-dept-list{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.med-feed-dept-list__head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.med-feed-dept-list__name{color:var(--feed-text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.med-feed-dept-list__value{color:var(--feed-text-secondary);flex-shrink:0;font-size:12px}.med-feed-dept-list__value strong{color:var(--feed-text)}.med-feed-dept-list .ant-progress{margin:2px 0 0}.med-feed-report-person{align-items:center;gap:8px;min-width:0;display:flex}.med-feed-report-person>span:last-child{flex-direction:column;min-width:0;line-height:16px;display:flex}.med-feed-report-person strong{color:var(--feed-text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.med-feed-report-person>span:last-child>span{color:var(--feed-outline);font-size:11px}.med-feed-segmented.ant-radio-group{background:var(--feed-surface-low);border-radius:999px;align-items:center;height:38px;padding:3px;display:inline-flex}.med-feed-segmented .ant-radio-button-wrapper{height:32px;color:var(--feed-text-secondary);background:0 0;border:0;padding:0 18px;font-weight:500;line-height:32px;border-radius:999px!important}.med-feed-segmented .ant-radio-button-wrapper:before{display:none}.med-feed-segmented .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){color:var(--feed-primary);background:var(--feed-surface);box-shadow:0 1px 3px #0b1c301f}.med-feed-segmented .ant-radio-button-wrapper:focus-within{box-shadow:none}.med-feed-report-panel .ant-card-head{border-bottom-color:var(--feed-surface-container)}.med-feed-report-panel .ant-card-head-title{font-weight:600}.med-feed-report-tabs .ant-card-body{padding-top:4px}.med-feed-report-tabs .ant-tabs-tab{font-weight:500}.med-feed-report-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{font-weight:600}.med-feed-report-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.med-feed-report-toolbar__search{flex:1;min-width:240px;max-width:420px}.med-feed-report-muted{color:var(--feed-outline);font-size:12px}.med-feed-inline-user{align-items:center;gap:8px;display:inline-flex}.med-feed-top-rank{width:26px;height:26px;color:var(--feed-text-secondary);background:var(--feed-surface-low);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.med-feed-top-rank--top{color:#fff;background:var(--feed-primary)}.med-feed-admin{background:var(--feed-bg);flex:1;grid-template-columns:248px minmax(0,1fr);min-height:100%;display:grid}.med-feed-admin__sidebar{background:var(--feed-surface);border-right:1px solid var(--feed-border);flex-direction:column;align-self:start;gap:4px;height:100vh;padding:20px 12px;display:flex;position:sticky;top:0}.med-feed-admin__brand{align-items:center;gap:10px;padding:0 8px 20px;display:flex}.med-feed-admin__logo{color:#fff;background:var(--feed-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:700;display:inline-flex}.med-feed-admin__brand-text,.med-feed-admin__me-text{flex-direction:column;min-width:0;line-height:18px;display:flex}.med-feed-admin__brand-text strong{color:var(--feed-primary);font-size:15px}.med-feed-admin__brand-text span,.med-feed-admin__me-text span{color:var(--feed-outline);letter-spacing:.02em;text-transform:uppercase;font-size:11px}.med-feed-admin__section{color:var(--feed-outline);letter-spacing:.06em;text-transform:uppercase;padding:0 12px 6px;font-size:11px;font-weight:600}.med-feed-admin__nav{flex-direction:column;gap:2px;display:flex}.med-feed-admin__nav-item{height:40px;color:var(--feed-text-secondary);border-radius:10px;align-items:center;gap:12px;padding:0 12px;font-weight:500;transition:background .15s,color .15s;display:flex}.med-feed-admin__nav-item:hover{color:var(--feed-text);background:var(--feed-surface-low)}.med-feed-admin__nav-item--active,.med-feed-admin__nav-item--active:hover{color:#fff;background:var(--feed-primary);box-shadow:0 4px 12px #2563eb40}.med-feed-admin__nav-icon{font-size:16px;display:inline-flex}.med-feed-admin__me{border-top:1px solid var(--feed-border);align-items:center;gap:10px;margin-top:auto;padding:12px 8px 0;display:flex}.med-feed-admin__me-text strong{color:var(--feed-text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.med-feed-admin__main{min-width:0;padding:24px 28px 32px}.med-feed-admin .med-feed-wide{max-width:none}@media (width<=900px){.med-feed-admin{grid-template-columns:minmax(0,1fr)}.med-feed-admin__sidebar{border-right:0;border-bottom:1px solid var(--feed-border);flex-flow:wrap;align-items:center;height:auto;padding:12px 16px;position:static}.med-feed-admin__brand{padding:0 12px 0 0}.med-feed-admin__section,.med-feed-admin__me{display:none}.med-feed-admin__nav{flex-direction:row;overflow-x:auto}.med-feed-admin__nav-item{white-space:nowrap}.med-feed-admin__main{padding:16px}}.med-feed-my-posts{width:100%;max-width:900px;margin:0 auto}.med-feed-my-posts .med-feed-page-header{background:radial-gradient(circle at 88% -30%,#2563eb29,#0000 42%),linear-gradient(135deg,#eff6ff 0%,#f8faff 60%,#eef2ff 100%);border:1px solid #e0e9ff;border-radius:16px;gap:16px;padding:22px 24px;box-shadow:0 1px 2px #0b1c300a}.med-feed-my-posts .med-feed-page-header__title.ant-typography{color:var(--feed-text);letter-spacing:-.01em;font-size:20px;font-weight:700}.med-feed-my-posts .med-feed-page-header .ant-typography[type=secondary]{color:var(--feed-text-secondary);font-size:13px}.med-feed-my-posts .ant-tabs-top>.ant-tabs-nav{background:var(--feed-surface-low);border:1px solid var(--feed-border);border-radius:12px;margin:0 0 16px;padding:4px}.med-feed-my-posts .ant-tabs-nav:before{display:none}.med-feed-my-posts .ant-tabs-nav-list{width:100%}.med-feed-my-posts .ant-tabs-tab{color:var(--feed-text-secondary);border-radius:9px;flex:1;justify-content:center;font-size:13px;font-weight:600;transition:color .16s,background .16s,box-shadow .16s;margin:0!important;padding:7px 14px!important}.med-feed-my-posts .ant-tabs-tab:hover{color:var(--feed-primary);background:#ffffffbf}.med-feed-my-posts .ant-tabs-tab.ant-tabs-tab-active{background:var(--feed-surface);box-shadow:0 1px 3px #0b1c301a}.med-feed-my-posts .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--feed-primary)}.med-feed-my-posts .ant-tabs-ink-bar{display:none}@media (width<=768px){.med-feed-my-posts .ant-tabs-top>.ant-tabs-nav{overflow-x:auto}.med-feed-my-posts .ant-tabs-tab{white-space:nowrap;flex:none}}.med-feed-my-posts__footer-actions.ant-space{gap:12px!important}.med-feed-my-posts__edit.ant-btn{height:40px;color:var(--feed-text);background:var(--feed-surface);box-shadow:var(--feed-shadow-sm);border:1px solid #e5eeff;border-radius:10px;padding:0 20px;font-size:15px;font-weight:600;transition:color .2s,background .2s,border-color .2s,box-shadow .2s}.med-feed-my-posts__edit.ant-btn:hover,.med-feed-my-posts__edit.ant-btn:focus{color:var(--feed-primary);background:#eff4ff;border-color:#bfdbfe;box-shadow:0 2px 8px #2563eb1f}.med-feed-my-posts__edit.ant-btn .anticon{color:var(--feed-primary)}.med-feed-my-posts__done.ant-btn{background:linear-gradient(135deg,#3b82f6 0%,#2563eb 55%,#1d4ed8 100%);border:0;border-radius:10px;height:40px;padding:0 22px;font-size:15px;font-weight:600;transition:box-shadow .2s,transform .15s;box-shadow:0 4px 14px #2563eb4d}.med-feed-my-posts__done.ant-btn:hover,.med-feed-my-posts__done.ant-btn:focus{background:linear-gradient(135deg,#3b82f6 0%,#2563eb 55%,#1d4ed8 100%);transform:translateY(-1px);box-shadow:0 6px 18px #2563eb61}.med-feed-my-posts__done.ant-btn:active{transform:translateY(0);box-shadow:0 2px 8px #2563eb47}
2
+ /*$vite$:1*/
package/package.json CHANGED
@@ -1,6 +1,84 @@
1
1
  {
2
2
  "name": "@medipha/feed",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
3
+ "version": "0.1.1",
4
+ "description": "Embeddable Medic-ERP newsfeed module for React applications.",
5
+ "license": "UNLICENSED",
6
+ "type": "module",
7
+ "main": "./dist/index.cjs",
8
+ "module": "./dist/index.js",
9
+ "types": "./dist/index.d.ts",
10
+ "publishConfig": {
11
+ "registry": "https://registry.npmjs.org/",
12
+ "access": "public"
13
+ },
14
+ "private": false,
15
+ "files": [
16
+ "dist",
17
+ "README.md"
18
+ ],
19
+ "exports": {
20
+ ".": {
21
+ "types": "./dist/index.d.ts",
22
+ "import": "./dist/index.js",
23
+ "require": "./dist/index.cjs"
24
+ },
25
+ "./styles.css": "./dist/styles.css"
26
+ },
27
+ "sideEffects": [
28
+ "**/*.css"
29
+ ],
30
+ "peerDependencies": {
31
+ "antd": "4.23.6",
32
+ "moment": "^2.29.4",
33
+ "react": "^18.2.0",
34
+ "react-dom": "^18.2.0",
35
+ "react-router-dom": ">=6.2.1 <7"
36
+ },
37
+ "dependencies": {
38
+ "@ant-design/icons": "^6.3.4",
39
+ "apexcharts": "^7.8.0",
40
+ "emoji-picker-react": "^5.0.0",
41
+ "react-apexcharts": "^2.1.1"
42
+ },
43
+ "devDependencies": {
44
+ "@eslint/js": "^10.0.1",
45
+ "@testing-library/dom": "^10.4.1",
46
+ "@testing-library/react": "^16.3.3",
47
+ "@types/node": "22.15.3",
48
+ "@types/react": "18.2.79",
49
+ "@types/react-dom": "18.2.25",
50
+ "@vitejs/plugin-react": "6.1.1",
51
+ "antd": "4.23.6",
52
+ "eslint": "^10.8.0",
53
+ "eslint-config-prettier": "^10.1.8",
54
+ "eslint-plugin-react-hooks": "^7.1.1",
55
+ "eslint-plugin-react-refresh": "^0.5.3",
56
+ "jsdom": "^30.1.2",
57
+ "moment": "^2.29.4",
58
+ "prettier": "^3.9.6",
59
+ "react": "18.2.0",
60
+ "react-dom": "18.2.0",
61
+ "react-router-dom": "6.2.1",
62
+ "rolldown": "1.2.1",
63
+ "typescript": "5.8.3",
64
+ "typescript-eslint": "^8.65.0",
65
+ "vite": "^8.2.0",
66
+ "vite-plugin-dts": "5.1.1",
67
+ "vitest": "^5.0.3"
68
+ },
69
+ "engines": {
70
+ "node": ">=20.19.0 || >=22.12.0"
71
+ },
72
+ "scripts": {
73
+ "dev": "vite",
74
+ "typecheck": "tsc --noEmit",
75
+ "build": "tsc -p tsconfig.build.json && vite build",
76
+ "test": "vitest run",
77
+ "pack:check": "npm pack --dry-run",
78
+ "lint": "eslint .",
79
+ "lint:fix": "eslint . --fix",
80
+ "format:check": "prettier . --check",
81
+ "format": "prettier . --write",
82
+ "publish_ui:npm": "npm login --registry=https://registry.npmjs.org/ --scope=@meditech && pnpm typecheck && pnpm build && pnpm publish --dry-run && pnpm publish"
83
+ }
6
84
  }
package/README.md DELETED
@@ -1,3 +0,0 @@
1
- # Temporary Holding Version
2
-
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.