:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-primary-light: #f0f7ff;--color-primary: #4a90e2;--color-primary-dark: #2c5aa0;--color-accent-light: #fff4e6;--color-accent: #ff8c42;--color-accent-dark: #e67233;--color-white: #ffffff;--color-light-gray: #f5f5f5;--color-gray: #9e9e9e;--color-dark-gray: #616161;--color-black: #212121;--color-success: #4caf50;--color-warning: #ff9800;--color-error: #f44336;--color-info: #2196f3;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-round: 50%;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .12);--shadow-md: 0 2px 8px rgba(0, 0, 0, .15);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .18);--shadow-fab: 0 6px 20px rgba(255, 140, 66, .4);--transition-fast: .15s ease-in-out;--transition-normal: .25s ease-in-out;--transition-slow: .35s ease-in-out;--z-base: 1;--z-dropdown: 1000;--z-sticky: 1100;--z-fixed: 1200;--z-modal-backdrop: 1300;--z-modal: 1400;--z-fab: 1500;--z-tooltip: 1600;--ui-element-height: 28px;--ui-element-padding-y: 4px;--ui-element-padding-x: 12px;--ui-element-font-size: 14px;--ui-element-radius: 6px;--color-surface: #f3f4f6;--color-surface-hover: #e5e7eb;--color-border: #e5e7eb;--color-text-primary: #374151;--color-text-secondary: #6b7280;--color-text-muted: #9ca3af}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:block;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:0;font-size:inherit;line-height:1;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{max-width:1280px;margin:0 auto;text-align:left}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.embed-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;max-width:100%}.embed-container iframe{position:absolute;top:0;left:0;width:100%;height:100%}.media-embed{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;max-width:100%;background:#000}.media-embed iframe,.media-embed object,.media-embed embed{position:absolute;top:0;left:0;width:100%;height:100%}.app-layout{max-width:900px;margin:0 auto;padding:8px 12px}.app-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:12px}.app-header__welcome{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.app-header__welcome h3{margin:0}.app-header__actions{display:flex;gap:6px;flex-wrap:wrap}.app-action-row{display:flex;gap:var(--spacing-sm);margin-bottom:12px;flex-wrap:wrap}.header-btn{display:inline-flex;align-items:center;gap:4px;padding:var(--ui-element-padding-y) var(--ui-element-padding-x);font-size:var(--ui-element-font-size);line-height:1;font-weight:600;border:none;border-radius:var(--ui-element-radius);cursor:pointer;color:#fff;transition:var(--transition-fast);white-space:nowrap}.header-btn--admin{background:#ef4444}.header-btn--admin:hover{background:#dc2626}.header-btn--neutral{background:#6b7280}.header-btn--neutral:hover{background:#4b5563}.header-btn--purple{background:#8b5cf6}.header-btn--purple:hover{background:#7c3aed}.ProseMirror{min-height:200px;padding:12px;outline:none}.ProseMirror p{margin:.5em 0}.ProseMirror h1,.ProseMirror h2,.ProseMirror h3{margin-top:1em;margin-bottom:.5em}.ProseMirror ul,.ProseMirror ol{padding-left:24px;margin:.5em 0}.ProseMirror img{max-width:100%;height:auto;border-radius:8px;margin:8px 0}.ProseMirror a{color:#4f46e5;text-decoration:underline}.ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:#9ca3af;pointer-events:none;height:0}.file-attachment-wrapper{margin:12px 0}.file-attachment-container{position:relative;display:flex;align-items:center;width:100%}.file-attachment{flex:1;display:inline-flex;align-items:center;gap:12px;padding:12px 16px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;text-decoration:none;color:#374151;transition:all .2s ease}.file-attachment:hover{background:#e5e7eb;border-color:#d1d5db;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.delete-file-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:#dc3545e6;color:#fff;border:none;border-radius:4px;padding:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;z-index:10}.file-attachment-container:hover .delete-file-btn{opacity:1}.delete-file-btn:hover{background:#dc3545}.file-icon-container{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff;border-radius:6px;flex-shrink:0}.file-icon{width:24px;height:24px;color:#6366f1}.file-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.file-name{font-weight:500;font-size:14px;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-size{font-size:12px;color:#6b7280}details.family-beta{margin-top:24px;padding:12px;border:1px solid #eee;border-radius:8px}details.family-beta summary{font-weight:600;font-size:16px;cursor:pointer}.family-beta__grid{margin-top:12px;display:grid;gap:12px}.family-beta__section{border-top:1px solid #eee;padding-top:12px}.family-beta__section h4{margin:0}.family-beta__form-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.family-beta__input--md{min-width:180px}.family-beta__input--lg{min-width:240px}.family-beta__debug-pre{background:#fafafa;padding:12px;border-radius:6px;overflow:auto;margin-top:8px}.family-beta__tree-container{margin-top:12px}.family-beta__tree-list{padding-left:16px;list-style:disc}.family-node{margin-top:6px}.family-node__spouse{margin-left:8px;opacity:.85}.image-node-wrapper{position:relative;display:inline-block;margin:8px 0}.image-container{position:relative;display:inline-block}.image-container img{max-width:100%;height:auto;border-radius:8px;display:block}.delete-image-btn{position:absolute;top:8px;right:8px;background:#dc3545e6;color:#fff;border:none;border-radius:4px;padding:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;z-index:10}.image-container:hover .delete-image-btn{opacity:1}.delete-image-btn:hover{background:#dc3545}.memory-card{border:1px solid light-dark(#ddd,#444);border-radius:12px;margin-bottom:16px;overflow:hidden;box-shadow:var(--shadow-sm);position:relative;background-color:light-dark(#ffffff,#1e1e1e)}.memory-card--expanded{margin-bottom:80px;overflow:visible}.memory-card__header{padding:12px 16px;background:light-dark(#ffffff,#1e1e1e);cursor:pointer}.memory-card__header--expanded{background:light-dark(#f9fafb,#2a2a2a);border-bottom:1px solid light-dark(#e5e7eb,#444)}.memory-card__title{margin:0 0 6px;font-size:18px;font-weight:600;color:light-dark(#111,#eee);line-height:1.3}.memory-card__meta-row{display:flex;align-items:center;justify-content:space-between;gap:6px}.memory-card__meta{color:light-dark(#6b7280,#aaa);font-size:13px;display:flex;align-items:center;gap:4px;flex-wrap:wrap}.memory-card__meta-sep{margin:0 2px}.memory-card__group-badge{display:inline-flex;align-items:center;gap:3px;padding:1px 6px;border-radius:10px;font-size:12px;font-weight:600;color:#fff}.memory-card__badges{display:flex;align-items:center;gap:6px;flex-shrink:0}.memory-card__visibility-badge{display:inline-block;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:600;color:#fff}.memory-card__new-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:#10b981;animation:memory-pulse 1.5s ease-in-out infinite}.memory-card__mute-btn{cursor:pointer;font-size:16px;transition:opacity var(--transition-fast);opacity:.7}.memory-card__mute-btn:hover{opacity:1}.memory-card__expand-arrow{font-size:14px;color:#9ca3af}.memory-card__body{padding:16px;background-color:light-dark(#ffffff,#1e1e1e)}.memory-card__description{margin:6px 0 16px;color:light-dark(#333,#ddd)}.memory-card__description img{max-width:100%;height:auto;border-radius:8px;margin:8px 0}.memory-card__description p{margin:.5em 0}.memory-card__description ul,.memory-card__description ol{margin:.5em 0;padding-left:1.5em}.memory-card__description a{color:#4f46e5;text-decoration:none}.memory-card__description a:hover{text-decoration:underline}.memory-card__date-meta{font-size:12px;opacity:.8;margin-bottom:8px;color:light-dark(#666,#aaa)}.memory-card__media{margin:10px 0 14px}.memory-card__video-wrapper{position:relative;width:100%;padding-top:56.25%;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #00000014}.memory-card__video-frame{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.memory-card__embed-wrapper{border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #00000014}.memory-card__album-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.memory-card__album-thumb{display:block;border-radius:8px;overflow:hidden;background:#f7f7f7;border:1px solid #eee}.memory-card__album-img{width:100%;height:84px;object-fit:cover;display:block}.memory-card__album-info{margin-top:8px;font-size:12px;color:#6b7280}.memory-card__album-caption{margin-bottom:4px}.memory-card__album-caption strong{text-transform:capitalize}.memory-card__album-note{font-size:11px;color:#9ca3af;margin-bottom:6px;font-style:italic}.memory-card__album-link{display:inline-block;padding:6px 12px;background:#4f46e5;color:#fff;border-radius:6px;text-decoration:none;font-size:12px;font-weight:500}.memory-card__album-link:hover{background:#4338ca;color:#fff}.memory-card__edit-btn{margin-bottom:12px}.memory-card__contributors{margin-top:8px}.memory-card__contributors-toggle{cursor:pointer;display:flex;align-items:center;gap:8px;padding:8px 0;-webkit-user-select:none;user-select:none}.memory-card__contributors-arrow{font-size:14px;color:var(--color-dark-gray);transition:transform var(--transition-fast);display:inline-block}.memory-card__contributors-arrow--expanded{transform:rotate(90deg)}.memory-card__contributors-count{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;background:var(--color-primary-light);color:var(--color-primary-dark)}.memory-card__contributors-list{margin-top:8px;padding-left:24px;max-height:400px;overflow:auto;transition:all var(--transition-normal)}.memory-card__contributors-empty{color:var(--color-gray);font-size:var(--ui-element-font-size);font-style:italic}.memory-card__contributor-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.memory-card__contributor-item{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:var(--color-light-gray);border-radius:var(--radius-md);font-size:var(--ui-element-font-size)}.memory-card__contributor-name{font-weight:500}.memory-card__contributor-role{margin-left:8px;color:var(--color-dark-gray);font-style:italic}.memory-card__contributor-creator{margin-left:8px;padding:2px 6px;border-radius:4px;font-size:10px;font-weight:600;background:var(--color-primary);color:var(--color-white)}.memory-card__contributor-remove{padding:4px 10px;background:var(--color-error);color:var(--color-white);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.75rem;font-weight:600;transition:all var(--transition-fast)}.memory-card__contributor-remove:hover{opacity:.8}.memory-card__add-contributor{display:flex;gap:8px;align-items:center;margin-top:12px;flex-wrap:wrap;padding-left:0;transition:padding-left var(--transition-fast)}.memory-card__add-contributor--indented{padding-left:24px}.memory-card__user-select-wrap{flex:1 1 auto;min-width:0}.memory-card__role-select{padding:var(--spacing-sm);border:1px solid var(--color-gray);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit}.memory-card__add-btn{padding:var(--ui-element-padding-y) var(--ui-element-padding-x);background:var(--color-primary);color:var(--color-white);border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:var(--ui-element-font-size);transition:all var(--transition-fast);flex-shrink:0;white-space:nowrap}.memory-card__add-btn:hover{background:var(--color-primary-dark)}.memory-card__contributions{margin-top:16px}.memory-card__contribution-list{margin-top:6px}.memory-card__contribution-timestamp{opacity:.7}.memory-card__input-row{display:flex;gap:8px;margin-top:8px;align-items:flex-start;position:relative}.memory-card__input{flex:1;min-width:0;padding:var(--spacing-sm);border:1px solid var(--color-gray);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;transition:border-color var(--transition-fast)}.memory-card__input:focus{border-color:var(--color-primary);outline:none}.memory-card__emoji-wrap{position:relative;flex-shrink:0}.memory-card__emoji-btn{border:1px solid var(--color-gray);background:light-dark(#fff,#2a2a2a);color:light-dark(#333,#eee);border-radius:var(--radius-md);padding:8px 12px;cursor:pointer;transition:all var(--transition-fast)}.memory-card__emoji-btn:hover{border-color:var(--color-primary)}.memory-card__submit-btn{padding:var(--ui-element-padding-y) var(--ui-element-padding-x);background:#4f46e5;color:#fff;border:none;border-radius:var(--ui-element-radius);cursor:pointer;font-weight:600;font-size:var(--ui-element-font-size);flex-shrink:0}.memory-card__submit-btn:hover{background:#4338ca}@keyframes memory-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.feed-contrib-badge{font-size:11px;color:var(--color-text-muted);font-weight:500}@media(max-width:480px){.memory-card__header{padding:8px 12px}.memory-card__title{font-size:16px}.memory-card__body{padding:8px}}.connection-status{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--ui-element-padding-y) var(--ui-element-padding-x);background-color:var(--color-surface);border-radius:var(--ui-element-radius);font-size:var(--ui-element-font-size);white-space:nowrap}.connection-status__dot{width:8px;height:8px;border-radius:var(--radius-round);flex-shrink:0}.connection-status__dot--pulsing{animation:connection-pulse 2s infinite}.connection-status__label{font-weight:500;color:var(--color-text-primary)}.connection-status__count{margin-left:4px;color:var(--color-text-secondary)}@keyframes connection-pulse{0%,to{opacity:1}50%{opacity:.5}}.gtm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.gtm-panel{background:light-dark(white,#1f2937);border-radius:12px;padding:24px;max-width:700px;width:90%;max-height:90vh;overflow:auto;box-shadow:0 10px 40px #0003;color:light-dark(#212121,#e2e8f0)}.gtm-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.gtm-title{margin:0;color:light-dark(#212121,#e2e8f0)}.gtm-close-btn{padding:8px 16px;background:light-dark(#e5e7eb,#374151);color:light-dark(#212121,#e2e8f0);border:none;border-radius:6px;cursor:pointer}.gtm-form{background:light-dark(#f9fafb,#111827);padding:16px;border-radius:8px;margin-bottom:20px}.gtm-form__heading{margin-top:0;color:light-dark(#212121,#e2e8f0)}.gtm-form__label{display:block;margin-bottom:4px;font-weight:600;color:light-dark(#212121,#e2e8f0)}.gtm-form__input{width:100%;margin-bottom:12px;padding:8px;border-radius:6px;border:1px solid light-dark(#d1d5db,#4b5563);background:light-dark(white,#1f2937);color:light-dark(#212121,#e2e8f0);box-sizing:border-box}.gtm-form__textarea{width:100%;margin-bottom:12px;padding:8px;border-radius:6px;border:1px solid light-dark(#d1d5db,#4b5563);resize:vertical;background:light-dark(white,#1f2937);color:light-dark(#212121,#e2e8f0);box-sizing:border-box}.gtm-color-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.gtm-color-swatch{width:40px;height:40px;border-radius:8px;cursor:pointer}.gtm-icon-section{margin-bottom:12px;position:relative}.gtm-icon-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.gtm-icon-preview{font-size:32px;padding:8px;border:2px solid light-dark(#ddd,#4b5563);border-radius:8px;background:light-dark(#f9fafb,#111827);min-width:50px;min-height:50px;display:flex;align-items:center;justify-content:center}.gtm-emoji-btn{padding:10px 16px;background:#6366f1;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600}.gtm-clear-btn{padding:10px 16px;background:#6b7280;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.gtm-shared-label{display:flex;align-items:center;gap:8px;margin-bottom:12px}.gtm-form__actions{display:flex;gap:8px}.gtm-btn-submit{padding:10px 20px;background:#10b981;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600}.gtm-btn-cancel{padding:10px 20px;background:#e5e7eb;border:none;border-radius:8px;cursor:pointer}.gtm-create-btn{padding:10px 20px;background:#4f46e5;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;margin-bottom:20px}.gtm-empty{color:#6b7280;font-style:italic}.gtm-list-grid{display:grid;gap:12px}.gtm-item{padding:12px;border:1px solid #e5e7eb;border-radius:8px;display:flex;align-items:center;gap:12px}.gtm-item__icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.gtm-item__body{flex:1;min-width:0}.gtm-item__name{font-weight:600;margin-bottom:2px}.gtm-item__shared{margin-left:8px;font-size:12px;color:#6b7280}.gtm-item__desc{font-size:14px;color:#6b7280}.gtm-item__actions{display:flex;gap:8px;flex-shrink:0}.gtm-btn-edit{padding:6px 12px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;cursor:pointer}.gtm-btn-delete{padding:6px 12px;background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;cursor:pointer;color:#dc2626}.rm-root{margin-top:8px}.rm-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.rm-heading{margin:0;font-size:15px;font-weight:600;color:light-dark(#212121,#e2e8f0)}.rm-form{background:light-dark(#f9fafb,#111827);border:1px solid light-dark(#e5e7eb,#374151);border-radius:8px;padding:16px;margin-bottom:16px}.rm-form__row{margin-bottom:10px}.rm-form__row--check{display:flex;align-items:center}.rm-label{display:block;font-size:13px;font-weight:600;color:light-dark(#374151,#d1d5db);margin-bottom:4px}.rm-input,.rm-select,.rm-textarea{width:100%;padding:7px 10px;border-radius:6px;border:1px solid light-dark(#d1d5db,#4b5563);background:light-dark(white,#1f2937);color:light-dark(#212121,#e2e8f0);font-size:14px;box-sizing:border-box}.rm-textarea{resize:vertical}.rm-check-label{display:flex;align-items:center;gap:6px;font-size:14px;cursor:pointer;color:light-dark(#374151,#d1d5db)}.rm-form__actions{display:flex;gap:8px;margin-top:12px}.rm-message--error{color:#dc2626;font-size:13px;margin:4px 0}.rm-empty{color:light-dark(#6b7280,#9ca3af);font-size:14px;text-align:center;padding:16px 0}.rm-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.rm-item{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 12px;background:light-dark(#f9fafb,#1f2937);border:1px solid light-dark(#e5e7eb,#374151);border-radius:8px;flex-wrap:wrap}.rm-item--inactive{opacity:.55}.rm-item__info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.rm-item__type{font-size:11px;font-weight:700;text-transform:uppercase;color:light-dark(#6b7280,#9ca3af);letter-spacing:.05em}.rm-item__title{font-weight:600;font-size:14px;color:light-dark(#111827,#f3f4f6)}.rm-item__date{font-size:12px;color:light-dark(#6b7280,#9ca3af)}.rm-item__notes{font-size:12px;color:light-dark(#6b7280,#9ca3af);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rm-item__actions{display:flex;gap:4px;flex-shrink:0;align-items:center;flex-wrap:wrap}.rm-btn{padding:5px 10px;border:none;border-radius:5px;cursor:pointer;font-size:12px;font-weight:600;line-height:1}.rm-btn--add{background:light-dark(#4f46e5,#6366f1);color:#fff;padding:6px 14px}.rm-btn--save{background:#10b981;color:#fff}.rm-btn--cancel{background:light-dark(#e5e7eb,#374151);color:light-dark(#374151,#d1d5db)}.rm-btn--edit{background:light-dark(#dbeafe,#1e3a8a);color:light-dark(#1e40af,#93c5fd)}.rm-btn--delete{background:light-dark(#fee2e2,#7f1d1d);color:light-dark(#991b1b,#fca5a5)}.rm-btn--active{background:light-dark(#d1fae5,#064e3b);color:light-dark(#065f46,#6ee7b7)}.rm-btn--paused{background:light-dark(#f3f4f6,#374151);color:light-dark(#6b7280,#9ca3af)}.us-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal, 1000)}.us-panel{background:light-dark(white,#1f2937);border-radius:12px;padding:24px;max-width:600px;width:90%;max-height:90vh;overflow:auto;box-shadow:0 10px 40px #0003;color:light-dark(#212121,#e2e8f0)}.us-panel__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.us-title{margin:0;font-size:20px;color:light-dark(#212121,#e2e8f0)}.us-close-btn{padding:8px 16px;background:light-dark(#e5e7eb,#374151);color:light-dark(#212121,#e2e8f0);border:none;border-radius:6px;cursor:pointer}.us-tabs{display:flex;gap:4px;border-bottom:2px solid light-dark(#e5e7eb,#4b5563);margin-bottom:20px;flex-wrap:wrap}.us-tab{padding:10px 20px;background:transparent;color:light-dark(#6b7280,#9ca3af);border:none;border-radius:8px 8px 0 0;cursor:pointer;font-weight:600;text-transform:capitalize}.us-tab--active{background:#4f46e5;color:#fff}.us-section-h3{color:light-dark(#212121,#e2e8f0);margin-top:0;margin-bottom:16px}.us-section-h4{margin-top:0;margin-bottom:12px;font-size:16px;font-weight:600;color:light-dark(#212121,#e2e8f0)}.us-info-card{background:light-dark(#f9fafb,#111827);padding:12px;border-radius:8px;margin-bottom:20px;border:1px solid light-dark(#e5e7eb,#4b5563)}.us-info-card__label{font-size:14px;color:light-dark(#6b7280,#9ca3af);margin-bottom:4px}.us-info-card__value{font-weight:600;color:light-dark(#212121,#e2e8f0)}.us-warning{background:light-dark(#fef3c7,#78350f);border:1px solid light-dark(#fbbf24,#92400e);border-radius:6px;padding:12px;margin-bottom:12px;font-size:13px;color:light-dark(#92400e,#fef3c7)}.us-form{margin-bottom:28px}.us-field-label{display:block;margin-bottom:4px;font-weight:600;color:light-dark(#212121,#e2e8f0)}.us-input{width:100%;padding:8px;border-radius:6px;border:1px solid light-dark(#d1d5db,#4b5563);background:light-dark(white,#111827);color:light-dark(#212121,#e2e8f0);font-size:14px;box-sizing:border-box;margin-bottom:12px}.us-section{margin-bottom:20px}.us-section__header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:8px 0;border-bottom:1px solid light-dark(#e5e7eb,#374151);margin-bottom:12px;-webkit-user-select:none;user-select:none}.us-section__title{font-size:15px;font-weight:600;color:light-dark(#212121,#e2e8f0);margin:0}.us-section__toggle{font-size:12px;color:light-dark(#6b7280,#9ca3af)}.us-row{margin-bottom:12px}.us-row .us-input{margin-bottom:0}.us-label{display:block;margin-bottom:4px;font-size:13px;font-weight:600;color:light-dark(#374151,#d1d5db)}.us-check-row{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:14px;color:light-dark(#374151,#d1d5db);cursor:pointer}.us-alert{border-radius:6px}.us-alert--form{padding:10px;margin-bottom:12px;font-size:14px}.us-alert--section{padding:8px 12px;margin-bottom:10px;font-size:13px}.us-alert--update{padding:10px;margin-top:12px;font-size:14px}.us-alert--success{background:#d1fae5;color:#065f46}.us-alert--error{background:#fee2e2;color:#991b1b}.us-btn{padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;line-height:1}.us-btn--primary{background:#10b981;color:#fff}.us-btn--primary:hover{background:#059669}.us-save-btn{padding:8px 18px;background:#10b981;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;line-height:1}.us-save-btn:hover{background:#059669}.us-btn--purple{background:#4f46e5;color:#fff;border-radius:6px;transition:background .2s}.us-btn--purple:hover{background:#4338ca}.us-btn--danger{background:#dc2626;color:#fff;border-radius:6px;transition:background .2s}.us-btn--danger:hover{background:#b91c1c}.us-info-box{margin-top:16px;padding:10px;background:light-dark(#eff6ff,#1e3a8a);border-radius:6px;font-size:14px;color:light-dark(#1e40af,#bfdbfe)}.us-pref-section{margin-bottom:24px}.us-pref-card{padding:16px;background:light-dark(#f9fafb,#111827);border-radius:8px;border:1px solid light-dark(#e5e7eb,#4b5563)}.us-version-card{margin-bottom:16px;padding:12px;background:light-dark(#eff6ff,#1e3a8a);border-radius:6px;border:1px solid light-dark(#bfdbfe,#3b82f6)}.us-version-label{font-size:12px;color:light-dark(#64748b,#93c5fd);margin-bottom:4px;font-weight:500}.us-version-number{font-size:20px;font-weight:700;color:light-dark(#1e40af,#60a5fa)}.us-version-build{font-size:11px;color:light-dark(#94a3b8,#7dd3fc);margin-top:4px}.us-pref-body{margin-bottom:12px;color:light-dark(#4b5563,#9ca3af);font-size:14px}.us-pref-actions{display:flex;gap:8px;flex-wrap:wrap}.us-coming-soon{padding:20px;background:light-dark(#f9fafb,#111827);border-radius:8px;text-align:center;color:light-dark(#6b7280,#9ca3af);border:1px solid light-dark(#e5e7eb,#4b5563)}.us-coming-soon p+p{margin-top:12px;font-size:14px}.admin-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.admin-panel{background:light-dark(white,#1f2937);border-radius:12px;width:90%;max-width:1200px;max-height:90vh;overflow:auto;box-shadow:0 4px 20px #0003;color:light-dark(#212121,#e2e8f0)}.admin-panel__header{padding:16px 24px;border-bottom:1px solid light-dark(#e5e7eb,#4b5563);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:light-dark(white,#1f2937);z-index:10}.admin-panel__title{margin:0;font-size:24px;font-weight:700;color:light-dark(#212121,#e2e8f0)}.admin-panel__close{background:#ef4444;color:#fff;border:none;border-radius:8px;padding:8px 16px;cursor:pointer;font-weight:600}.admin-panel__close:hover{background:#dc2626}.admin-tabs{display:flex;gap:8px;padding:16px 24px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.admin-tab{padding:8px 16px;border:none;border-radius:8px;background:#fff;color:#374151;cursor:pointer;font-weight:600;text-transform:capitalize}.admin-tab--active{background:#3b82f6;color:#fff}.admin-tab:hover:not(.admin-tab--active){background:#e5e7eb}.admin-message{margin:16px 24px;padding:12px;border-radius:8px;font-weight:500}.admin-message--error{background:#fee2e2;color:#991b1b}.admin-message--success{background:#d1fae5;color:#065f46}.admin-panel__content{padding:24px}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.admin-stat-card{padding:20px;border-radius:12px;color:#fff;box-shadow:0 2px 8px #0000001a}.admin-stat-card__label{font-size:14px;opacity:.9;margin-bottom:8px}.admin-stat-card__value{font-size:32px;font-weight:700}.admin-toolbar{margin-bottom:16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.admin-toolbar--between{justify-content:space-between}.admin-toolbar__label{display:flex;align-items:center;gap:6px}.admin-result-count{font-size:14px;color:#6b7280;margin-bottom:12px}.admin-form{background:#f9fafb;padding:16px;border-radius:8px;margin-bottom:16px}.admin-form h3{margin-top:0}.admin-form__grid{display:grid;gap:12px}.admin-form__field-label{display:block;margin-bottom:4px;font-weight:600}.admin-form__checkbox-label{display:flex;align-items:center;gap:8px}.admin-form__input{width:100%;padding:8px;border-radius:6px;border:1px solid #d1d5db;box-sizing:border-box}.admin-search-input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;width:200px}.admin-filter-select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px}.admin-btn{border:none;cursor:pointer;font-weight:600;color:#fff;border-radius:6px}.admin-btn--sm{padding:6px 12px;font-size:12px}.admin-btn--md{padding:8px 16px}.admin-btn--lg{padding:10px 20px;border-radius:8px}.admin-btn--flex{flex:1}.admin-btn--indigo{background:#4f46e5}.admin-btn--indigo:hover{background:#4338ca}.admin-btn--blue{background:#3b82f6}.admin-btn--blue:hover{background:#2563eb}.admin-btn--green{background:#10b981}.admin-btn--green:hover{background:#059669}.admin-btn--amber{background:#f59e0b}.admin-btn--amber:hover{background:#d97706}.admin-btn--red{background:#ef4444}.admin-btn--red:hover{background:#dc2626}.admin-btn--cancel{background:#e5e7eb;color:#374151}.admin-btn--cancel:hover{background:#d1d5db}.admin-table{width:100%;border-collapse:collapse}.admin-table thead tr{background:#f9fafb;text-align:left}.admin-table th{padding:12px;border-bottom:2px solid #e5e7eb}.admin-table tbody tr{border-bottom:1px solid #e5e7eb}.admin-table td{padding:12px}.admin-table__td-bold{font-weight:600}.admin-table__actions{display:flex;gap:8px}.admin-status--active{color:#10b981;font-weight:600}.admin-status--deleted{color:#ef4444;font-weight:600}.admin-chat__private-label{color:#9ca3af;font-style:italic}.admin-chat__type-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600}.admin-chat__type-badge--group{background:#dbeafe;color:#1d4ed8}.admin-chat__type-badge--private{background:#f3e8ff;color:#6b21a8}.admin-chat-detail{display:flex;flex-direction:column;gap:20px}.admin-chat-detail__header{display:flex;justify-content:space-between;align-items:center}.admin-chat-detail__rename{background:#f9fafb;padding:12px;border-radius:8px}.admin-chat-detail__rename-row{display:flex;gap:8px;margin-top:4px}.admin-chat-detail__rename-input{flex:1}.admin-chat-detail__meta{display:flex;gap:16px;font-size:14px;color:#6b7280;flex-wrap:wrap}.admin-chat-detail__section{border-top:1px solid #e5e7eb;padding-top:16px}.admin-chat-detail__section-title{margin:0 0 12px;font-size:16px;font-weight:600;color:light-dark(#212121,#e2e8f0)}.admin-chat-members{display:flex;flex-direction:column;gap:8px}.admin-chat-member{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:light-dark(#f9fafb,#374151);border-radius:6px}.admin-chat-member__name{display:flex;align-items:center;gap:8px;font-weight:500}.admin-chat-member__badge{display:inline-block;padding:2px 6px;background:#fef3c7;color:#92400e;border-radius:4px;font-size:11px;font-weight:600}.admin-chat-messages{display:flex;flex-direction:column;gap:4px;max-height:420px;overflow-y:auto;border:1px solid light-dark(#e5e7eb,#4b5563);border-radius:8px;padding:8px}.admin-chat-msg{padding:8px;border-radius:6px;background:light-dark(#f9fafb,#374151)}.admin-chat-msg--deleted{opacity:.5;font-style:italic}.admin-chat-msg__meta{display:flex;gap:8px;margin-bottom:4px;font-size:12px;color:#6b7280}.admin-chat-msg__author{font-weight:600;color:light-dark(#374151,#e2e8f0)}.admin-chat-msg__body{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.admin-chat-msg__text{flex:1;font-size:14px;word-break:break-word;color:light-dark(#111827,#d1d5db)}.admin-chat-msg__delete{flex-shrink:0}.admin-reset-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.admin-reset-panel{background:#fff;border-radius:12px;padding:24px;max-width:400px;width:90%}.admin-reset-panel h3{margin-top:0}.admin-reset-panel__form{display:grid;gap:12px}.admin-reset-panel__actions{display:flex;gap:8px;margin-top:8px}.toggle-bar{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);flex-wrap:wrap;align-items:center}.toggle-bar__view-group{display:flex;gap:4px;background:light-dark(#f5f5f5,#374151);border-radius:var(--radius-md);padding:4px}.toggle-bar__view-btn{display:flex;align-items:center;gap:6px;padding:var(--ui-element-padding-y) var(--ui-element-padding-x);font-size:var(--ui-element-font-size);line-height:1;font-weight:600;border:none;border-radius:var(--radius-sm);background:transparent;color:light-dark(#616161,#f5f5f5);cursor:pointer;transition:var(--transition-fast);white-space:nowrap}.toggle-bar__view-btn--active{background:var(--color-primary);color:#fff}.toggle-bar__filter-btn{position:relative;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--ui-element-padding-y) var(--ui-element-padding-x);font-size:var(--ui-element-font-size);line-height:1;font-weight:600;border:2px solid var(--color-primary);border-radius:var(--ui-element-radius);background:transparent;color:var(--color-primary);cursor:pointer;transition:var(--transition-fast);white-space:nowrap}.toggle-bar__filter-btn:not(.toggle-bar__filter-btn--active):hover{background:var(--color-primary-light)}.toggle-bar__filter-btn--active{background:var(--color-primary);color:#fff}.toggle-bar__filter-icon{font-size:18px;line-height:1}.toggle-bar__filter-badge{position:absolute;top:-8px;right:-8px;min-width:20px;height:20px;padding:0 6px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;background:var(--color-accent);color:#fff;border-radius:10px;border:2px solid light-dark(#ffffff,#1f2937);box-shadow:var(--shadow-sm)}@media(max-width:480px){.toggle-bar{gap:4px}.toggle-bar__view-btn,.toggle-bar__filter-btn,.toggle-bar .header-btn{padding:var(--ui-element-padding-y) 8px}}.feed-whats-new-btn{display:inline-flex;align-items:center;gap:4px;padding:var(--ui-element-padding-y) var(--ui-element-padding-x);font-size:var(--ui-element-font-size);line-height:1;font-weight:600;border:2px solid var(--color-accent);border-radius:var(--ui-element-radius);background:transparent;color:var(--color-accent);cursor:pointer;transition:var(--transition-fast);white-space:nowrap}.feed-whats-new-btn:hover:not(.feed-whats-new-btn--active){background:var(--color-accent-light)}.feed-whats-new-btn--active{background:var(--color-accent);color:#fff}@media(max-width:480px){.feed-btn-label{display:none}.feed-whats-new-btn{padding:var(--ui-element-padding-y) 8px}}.chat-button{position:relative;display:flex;align-items:center;justify-content:center;width:44px;background:transparent;border:none;border-radius:8px;color:var(--text-color, #333);line-height:1;transition:all .2s ease}.chat-button:hover{background:var(--hover-bg, rgba(0, 0, 0, .05))}.chat-button:active{transform:scale(.95)}.chat-button-badge{position:absolute;top:6px;right:6px;min-width:18px;height:18px;padding:0 5px;display:flex;align-items:center;justify-content:center;background:#f44;color:#fff;font-size:11px;font-weight:600;border-radius:9px;box-shadow:0 2px 4px #0003;pointer-events:none}@media(prefers-color-scheme:dark){.chat-button{color:var(--text-color-dark, #e0e0e0)}.chat-button:hover{background:var(--hover-bg-dark, rgba(255, 255, 255, .1))}}.chat-room-list{display:flex;flex-direction:column;height:100%;background:var(--bg-color, white)}.chat-room-list-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--border-color, #e0e0e0)}.chat-room-list-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-color, #333)}.new-chat-btn{width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--primary-color, #2196f3);border:none;border-radius:8px;color:#fff;cursor:pointer;transition:all .2s ease}.new-chat-btn:hover{background:var(--primary-hover, #1976d2);transform:scale(1.05)}.chat-room-list-items{flex:1;overflow-y:auto}.chat-room-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:all .2s ease;border-bottom:1px solid var(--border-color, #f0f0f0)}.chat-room-item:hover{background:var(--hover-bg, #f5f5f5)}.chat-room-item.has-unread{background:var(--unread-bg, #f0f7ff)}.chat-room-item-avatar{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--avatar-bg, #e3f2fd);border-radius:50%;color:var(--primary-color, #2196f3)}.chat-room-item-content{flex:1;min-width:0}.chat-room-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.chat-room-item-title{font-weight:600;font-size:15px;color:var(--text-color, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-room-item-time{font-size:12px;color:var(--text-secondary, #666);flex-shrink:0;margin-left:8px}.chat-room-item-preview{font-size:14px;color:var(--text-secondary, #666);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-room-item.has-unread .chat-room-item-preview{font-weight:500;color:var(--text-color, #333)}.chat-room-item-badge{flex-shrink:0;min-width:20px;height:20px;padding:0 6px;display:flex;align-items:center;justify-content:center;background:var(--primary-color, #2196f3);color:#fff;font-size:11px;font-weight:600;border-radius:10px}.chat-room-list-empty{display:flex;align-items:center;justify-content:center;height:100%;padding:32px}.empty-state{text-align:center;max-width:300px}.empty-state svg{color:var(--text-secondary, #999);margin-bottom:16px}.empty-state h3{margin:0 0 8px;font-size:18px;color:var(--text-color, #333)}.empty-state p{margin:0 0 24px;color:var(--text-secondary, #666);font-size:14px}.btn-primary{padding:10px 20px;background:var(--primary-color, #2196f3);border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}@media(prefers-color-scheme:dark){.chat-room-list{background:var(--bg-color-dark, #1e1e1e)}.chat-room-list-header{border-color:var(--border-color-dark, #333)}.chat-room-list-header h3{color:var(--text-color-dark, #e0e0e0)}.chat-room-item{border-color:var(--border-color-dark, #2a2a2a)}.chat-room-item:hover{background:var(--hover-bg-dark, #2a2a2a)}.chat-room-item.has-unread{background:var(--unread-bg-dark, #1a2530)}.chat-room-item-avatar{background:var(--avatar-bg-dark, #1a3a52)}.chat-room-item-title{color:var(--text-color-dark, #e0e0e0)}.chat-room-item-time,.chat-room-item-preview{color:var(--text-secondary-dark, #999)}.chat-room-item.has-unread .chat-room-item-preview{color:var(--text-color-dark, #e0e0e0)}.empty-state svg{color:var(--text-secondary-dark, #666)}.empty-state h3{color:var(--text-color-dark, #e0e0e0)}.empty-state p{color:var(--text-secondary-dark, #999)}}.message-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px;align-items:center}.reaction-badge{display:flex;align-items:center;gap:4px;padding:2px 8px;background:var(--reaction-bg, #f0f0f0);border:1px solid var(--reaction-border, #ddd);border-radius:12px;font-size:14px;cursor:pointer;transition:all .2s ease}.reaction-badge:hover{background:var(--reaction-hover-bg, #e0e0e0);transform:scale(1.05)}.reaction-badge.reacted{background:var(--reaction-active-bg, #e3f2fd);border-color:var(--reaction-active-border, #2196f3)}.reaction-emoji{line-height:1}.reaction-count{font-size:11px;font-weight:600;color:var(--text-secondary, #666)}@media(prefers-color-scheme:dark){.reaction-badge{background:var(--reaction-bg-dark, #2a2a2a);border-color:var(--reaction-border-dark, #444)}.reaction-badge:hover{background:var(--reaction-hover-bg-dark, #333)}.reaction-badge.reacted{background:var(--reaction-active-bg-dark, #1a3a52);border-color:var(--reaction-active-border-dark, #2196f3)}}.message-bubble-container{display:flex;align-items:flex-end;gap:4px;margin-bottom:12px;padding:0 16px}.message-bubble-container.own-message{justify-content:flex-end}.message-bubble-container.other-message{justify-content:flex-start}.message-bubble{position:relative;max-width:85%;min-width:120px;padding:8px 12px;background:var(--message-bg, #f0f0f0);border-radius:12px;word-wrap:break-word}.own-message .message-bubble{background:var(--message-own-bg, #2196f3);color:#fff}.message-header{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:12px;color:var(--text-secondary, #666)}.own-message .message-header{color:#fffc}.message-username{font-weight:600}.message-time{font-size:11px;opacity:.8}.message-edited{font-style:italic}.message-content{position:relative}.message-text{margin:0;font-size:14px;line-height:1.4;white-space:pre-wrap}.message-deleted{font-style:italic;opacity:.6;font-size:13px}.message-memory-ref{display:flex;align-items:center;gap:6px;margin-top:6px;padding:6px 10px;background:#0000001a;border-radius:8px;font-size:13px;cursor:pointer;transition:all .2s ease}.message-memory-ref:hover{background:#00000026}.own-message .message-memory-ref{background:#fff3}.own-message .message-memory-ref:hover{background:#ffffff4d}.message-menu{position:absolute;top:4px;right:4px}.message-menu-btn{width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:4px;color:inherit;cursor:pointer;opacity:.6;transition:all .2s ease}.message-menu-btn:hover{opacity:1;background:#0000001a}.message-menu-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid var(--border-color, #ddd);border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden;z-index:10}.message-menu-dropdown button{display:block;width:100%;padding:8px 16px;background:transparent;border:none;text-align:left;font-size:14px;cursor:pointer;transition:background .2s ease}.message-menu-dropdown button:hover{background:var(--hover-bg, #f5f5f5)}.message-edit-container{margin-top:4px}.message-edit-input{width:100%;padding:8px;border:1px solid var(--border-color, #ddd);border-radius:8px;font-family:inherit;font-size:14px;resize:vertical;min-height:60px}.message-edit-actions{display:flex;gap:8px;margin-top:8px;justify-content:flex-end}.btn-save,.btn-cancel{padding:6px 12px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-save{background:#2196f3;color:#fff}.btn-save:hover{background:#1976d2}.btn-cancel{background:var(--hover-bg, #f0f0f0);color:var(--text-color, #333)}.btn-cancel:hover{background:var(--border-color, #ddd)}@media(max-width:375px){.message-bubble{max-width:88%}}.reaction-trigger{position:relative;display:flex;align-items:flex-end;padding-bottom:6px;flex-shrink:0;opacity:0;pointer-events:none;transition:opacity .15s ease}.reaction-trigger.visible{opacity:1;pointer-events:auto}@media(hover:none){.reaction-trigger{opacity:1;pointer-events:auto}}.reaction-trigger-btn{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--hover-bg, #f0f0f0);border:1px solid var(--border-color, #ddd);border-radius:50%;color:var(--text-secondary, #666);cursor:pointer;transition:all .2s ease}.reaction-trigger-btn:hover{background:var(--border-color, #ddd);color:var(--text-color, #333);transform:scale(1.1)}.reaction-picker-popup{position:absolute;bottom:calc(100% + 6px);display:flex;align-items:center;gap:2px;padding:6px 8px;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:24px;box-shadow:0 4px 16px #00000026;z-index:20;white-space:nowrap}.own-message .reaction-picker-popup{left:0}.other-message .reaction-picker-popup{right:0}.reaction-picker-emoji{width:34px;height:34px;padding:0;background:transparent;border:none;border-radius:8px;font-size:20px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.reaction-picker-emoji:hover{background:var(--hover-bg, #f0f0f0);transform:scale(1.2)}.reaction-picker-more-btn{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--hover-bg, #f0f0f0);border:1px solid var(--border-color, #ddd);border-radius:50%;font-size:16px;font-weight:600;color:var(--text-secondary, #666);cursor:pointer;transition:all .2s ease;flex-shrink:0;margin-left:2px}.reaction-picker-more-btn:hover{background:var(--border-color, #ddd);color:var(--text-color, #333)}@media(prefers-color-scheme:dark){.message-bubble{background:var(--message-bg-dark, #2a2a2a);color:var(--text-color-dark, #e0e0e0)}.own-message .message-bubble{background:var(--message-own-bg-dark, #1976d2)}.message-header{color:var(--text-secondary-dark, #999)}.message-edit-input{background:var(--bg-dark, #1e1e1e);border-color:var(--border-color-dark, #444);color:var(--text-color-dark, #e0e0e0)}.message-menu-dropdown{background:var(--bg-dark, #1e1e1e);border-color:var(--border-color-dark, #444)}.message-menu-dropdown button{color:var(--text-color-dark, #e0e0e0)}.message-menu-dropdown button:hover{background:var(--hover-bg-dark, #2a2a2a)}.btn-cancel{background:var(--hover-bg-dark, #2a2a2a);color:var(--text-color-dark, #e0e0e0)}.btn-cancel:hover{background:var(--border-color-dark, #444)}.reaction-trigger-btn{background:var(--hover-bg-dark, #2a2a2a);border-color:var(--border-color-dark, #444);color:var(--text-secondary-dark, #999)}.reaction-trigger-btn:hover{background:var(--border-color-dark, #444);color:var(--text-color-dark, #e0e0e0)}.reaction-picker-popup{background:var(--bg-dark, #1e1e1e);border-color:var(--border-color-dark, #444)}.reaction-picker-emoji:hover{background:var(--hover-bg-dark, #2a2a2a)}.reaction-picker-more-btn{background:var(--hover-bg-dark, #2a2a2a);border-color:var(--border-color-dark, #444);color:var(--text-secondary-dark, #999)}.reaction-picker-more-btn:hover{background:var(--border-color-dark, #444);color:var(--text-color-dark, #e0e0e0)}}.chat-input-container{border-top:1px solid var(--border-color, #e0e0e0);background:var(--bg-color, white)}.chat-input-memory-option{padding:8px 16px;border-bottom:1px solid var(--border-color, #e0e0e0);font-size:13px}.chat-input-memory-option label{display:flex;align-items:center;gap:8px;cursor:pointer}.chat-input-memory-option input[type=checkbox]{cursor:pointer}.chat-input{display:flex;align-items:flex-end;gap:8px;padding:12px 16px}.chat-input-textarea{flex:1;min-height:40px;max-height:120px;padding:10px 12px;border:1px solid var(--border-color, #e0e0e0);border-radius:20px;font-family:inherit;font-size:14px;line-height:1.4;resize:none;overflow-y:auto;background:var(--input-bg, #f5f5f5);color:var(--text-color, #333);transition:all .2s ease}.chat-input-textarea:focus{outline:none;border-color:var(--primary-color, #2196f3);background:var(--input-focus-bg, white)}.chat-input-textarea:disabled{opacity:.5;cursor:not-allowed}.chat-input-picker-wrap{position:relative;flex-shrink:0}.chat-emoji-btn{width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;color:var(--text-secondary, #666);cursor:pointer;transition:all .2s ease}.chat-emoji-btn:hover:not(:disabled){background:var(--hover-bg, #f0f0f0);color:var(--text-color, #333)}.chat-emoji-btn:disabled{opacity:.4;cursor:not-allowed}.chat-send-btn{flex-shrink:0;width:40px;height:40px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--primary-color, #2196f3);border:none;border-radius:50%;color:#fff;cursor:pointer;transition:all .2s ease}.chat-send-btn:hover:not(:disabled){background:var(--primary-hover, #1976d2);transform:scale(1.05)}.chat-send-btn:active:not(:disabled){transform:scale(.95)}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}@media(prefers-color-scheme:dark){.chat-input-container{border-color:var(--border-color-dark, #333);background:var(--bg-color-dark, #1e1e1e)}.chat-input-memory-option{border-color:var(--border-color-dark, #333);color:var(--text-color-dark, #e0e0e0)}.chat-input-textarea{border-color:var(--border-color-dark, #444);background:var(--input-bg-dark, #2a2a2a);color:var(--text-color-dark, #e0e0e0)}.chat-input-textarea:focus{background:var(--input-focus-bg-dark, #333)}.chat-emoji-btn{color:var(--text-secondary-dark, #999)}.chat-emoji-btn:hover:not(:disabled){background:var(--hover-bg-dark, #2a2a2a);color:var(--text-color-dark, #e0e0e0)}}.typing-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:13px;color:var(--text-secondary, #666);font-style:italic}.typing-text{flex-shrink:0}.typing-dots{display:flex;gap:4px;align-items:center}.typing-dot{width:6px;height:6px;border-radius:50%;background:var(--text-secondary, #666);animation:typing-bounce 1.4s infinite ease-in-out both}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typing-bounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}@media(prefers-color-scheme:dark){.typing-indicator{color:var(--text-secondary-dark, #999)}.typing-dot{background:var(--text-secondary-dark, #999)}}.chat-room{display:flex;flex-direction:column;height:100%;background:var(--bg-color, white)}.chat-room-header{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-color, #e0e0e0);background:var(--header-bg, white);flex-shrink:0}.back-btn{width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:8px;font-size:24px;cursor:pointer;color:var(--text-color, #333);transition:all .2s ease}.back-btn:hover{background:var(--hover-bg, #f0f0f0)}.chat-room-info{flex:1}.chat-room-info h3{margin:0;font-size:16px;font-weight:600;color:var(--text-color, #333)}.chat-room-members{font-size:12px;color:var(--text-secondary, #666)}.chat-settings-btn{width:36px;height:36px;padding:0;background:transparent;border:none;border-radius:8px;font-size:20px;cursor:pointer;color:var(--text-color, #333);transition:all .2s ease}.chat-settings-btn:hover{background:var(--hover-bg, #f0f0f0)}.chat-messages{flex:1;overflow-y:auto;padding:16px 0;display:flex;flex-direction:column}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb, #ccc);border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover, #999)}@media(prefers-color-scheme:dark){.chat-room{background:var(--bg-color-dark, #1e1e1e)}.chat-room-header{border-color:var(--border-color-dark, #333);background:var(--header-bg-dark, #1e1e1e)}.back-btn,.chat-settings-btn{color:var(--text-color-dark, #e0e0e0)}.back-btn:hover,.chat-settings-btn:hover{background:var(--hover-bg-dark, #2a2a2a)}.chat-room-info h3{color:var(--text-color-dark, #e0e0e0)}.chat-room-members{color:var(--text-secondary-dark, #999)}.chat-messages::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb-dark, #444)}.chat-messages::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover-dark, #666)}}.cr-menu-wrap{position:relative}.cr-menu-dropdown{position:absolute;top:calc(100% + 4px);right:0;background:var(--bg-color, white);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;box-shadow:0 4px 16px #0000001f;min-width:180px;z-index:100;overflow:hidden}.cr-menu-item{display:block;width:100%;padding:10px 16px;text-align:left;background:none;border:none;font-size:14px;color:var(--text-color, #333);cursor:pointer;transition:background .15s ease}.cr-menu-item:hover{background:var(--hover-bg, #f5f5f5)}.cr-menu-item--danger{color:#e53e3e}.cr-menu-item--danger:hover{background:#fff5f5}.cr-member-panel{display:flex;flex-direction:column;width:240px;max-height:320px}.cr-member-panel-header{display:flex;align-items:center;gap:8px;padding:10px 12px;font-size:13px;font-weight:600;border-bottom:1px solid var(--border-color, #e0e0e0);color:var(--text-color, #333)}.cr-back-btn{background:none;border:none;cursor:pointer;font-size:16px;color:var(--text-secondary, #666);padding:0 4px;line-height:1}.cr-back-btn:hover{color:var(--text-color, #333)}.cr-member-search{margin:8px;padding:6px 10px;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:13px;background:var(--input-bg, #f5f5f5);color:var(--text-color, #333);outline:none}.cr-member-search:focus{border-color:var(--primary-color, #2196f3)}.cr-member-list{overflow-y:auto;max-height:200px;padding:4px 0}.cr-member-row{display:flex;align-items:center;gap:8px;padding:7px 12px;cursor:pointer;transition:background .15s ease}.cr-member-row:hover{background:var(--hover-bg, #f5f5f5)}.cr-member-row.selected{background:#e3f2fd}.cr-member-row--removable{cursor:default}.cr-member-row--removable:hover{background:none}.cr-member-avatar{width:28px;height:28px;border-radius:50%;background:var(--primary-color, #2196f3);color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cr-member-name{flex:1;font-size:13px;color:var(--text-color, #333)}.cr-member-check{color:var(--primary-color, #2196f3);font-weight:700;font-size:13px}.cr-remove-btn{background:none;border:none;cursor:pointer;color:var(--text-secondary, #999);font-size:14px;padding:2px 6px;border-radius:4px;transition:all .15s}.cr-remove-btn:hover{background:#fee2e2;color:#e53e3e}.cr-add-btn{margin:8px;padding:7px 12px;background:var(--primary-color, #2196f3);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.cr-add-btn:hover:not(:disabled){background:var(--primary-hover, #1976d2)}.cr-add-btn:disabled{opacity:.4;cursor:not-allowed}@media(prefers-color-scheme:dark){.cr-menu-dropdown{background:var(--bg-color-dark, #1e1e1e);border-color:var(--border-color-dark, #333);box-shadow:0 4px 16px #0006}.cr-menu-item{color:var(--text-color-dark, #e0e0e0)}.cr-menu-item:hover{background:var(--hover-bg-dark, #2a2a2a)}.cr-menu-item--danger:hover{background:#e53e3e26}.cr-member-panel-header{border-color:var(--border-color-dark, #333);color:var(--text-color-dark, #e0e0e0)}.cr-back-btn{color:var(--text-secondary-dark, #999)}.cr-back-btn:hover{color:var(--text-color-dark, #e0e0e0)}.cr-member-search{border-color:var(--border-color-dark, #444);background:var(--input-bg-dark, #2a2a2a);color:var(--text-color-dark, #e0e0e0)}.cr-member-row:hover{background:var(--hover-bg-dark, #2a2a2a)}.cr-member-row.selected{background:#2196f326}.cr-member-name{color:var(--text-color-dark, #e0e0e0)}.cr-remove-btn:hover{background:#e53e3e33;color:#fc8181}}.dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1502;padding:16px}.dialog-content{background:var(--bg-color, white);border-radius:12px;box-shadow:0 8px 32px #0003;max-width:500px;width:100%;max-height:90vh;display:flex;flex-direction:column}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color, #e0e0e0)}.dialog-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-color, #333)}.dialog-close{width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:6px;font-size:20px;color:var(--text-secondary, #666);cursor:pointer;transition:all .2s ease}.dialog-close:hover{background:var(--hover-bg, #f0f0f0);color:var(--text-color, #333)}.dialog-body{flex:1;overflow-y:auto;padding:20px}.chat-type-selector{display:flex;gap:8px;margin-bottom:20px}.chat-type-btn{flex:1;padding:10px;background:var(--bg-secondary, #f5f5f5);border:2px solid transparent;border-radius:8px;font-size:14px;font-weight:500;color:var(--text-color, #333);cursor:pointer;transition:all .2s ease}.chat-type-btn:hover{background:var(--hover-bg, #e0e0e0)}.chat-type-btn.active{background:var(--primary-color, #2196f3);border-color:var(--primary-color, #2196f3);color:#fff}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:var(--text-color, #333)}.form-input{width:100%;padding:10px 12px;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;font-family:inherit;font-size:14px;color:var(--text-color, #333);transition:all .2s ease}.form-input:focus{outline:none;border-color:var(--primary-color, #2196f3)}.user-list{max-height:300px;overflow-y:auto;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;margin-top:8px}.user-item{display:flex;align-items:center;gap:12px;padding:12px;cursor:pointer;transition:all .2s ease;border-bottom:1px solid var(--border-color, #f0f0f0)}.user-item:last-child{border-bottom:none}.user-item:hover{background:var(--hover-bg, #f5f5f5)}.user-item.selected{background:var(--selected-bg, #e3f2fd)}.user-avatar{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--avatar-bg, #2196f3);color:#fff;border-radius:50%;font-weight:600;font-size:16px}.user-name{flex:1;font-size:14px;color:var(--text-color, #333)}.check-icon{color:var(--primary-color, #2196f3)}.dialog-footer{display:flex;gap:12px;padding:16px 20px;border-top:1px solid var(--border-color, #e0e0e0);justify-content:flex-end}.btn-secondary,.btn-primary{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-secondary{background:var(--bg-secondary, #f0f0f0);color:var(--text-color, #333)}.btn-secondary:hover{background:var(--hover-bg, #e0e0e0)}.btn-primary{background:var(--primary-color, #2196f3);color:#fff}.btn-primary:hover{background:var(--primary-hover, #1976d2)}.ncd-chip-strip{display:flex;flex-wrap:wrap;gap:6px;padding:0 0 12px}.ncd-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 6px 3px 4px;background:var(--selected-bg, #e3f2fd);border:1px solid var(--primary-color, #2196f3);border-radius:20px;max-width:160px}.ncd-chip-avatar{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:var(--avatar-bg, #2196f3);color:#fff;border-radius:50%;font-size:10px;font-weight:600;flex-shrink:0}.ncd-chip-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--text-color, #333)}.ncd-chip-remove{width:18px;height:18px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;font-size:10px;color:var(--text-secondary, #666);cursor:pointer;transition:all .15s ease;flex-shrink:0}.ncd-chip-remove:hover{background:#2196f333;color:var(--text-color, #333)}@media(prefers-color-scheme:dark){.dialog-content{background:var(--bg-color-dark, #1e1e1e)}.dialog-header{border-color:var(--border-color-dark, #333)}.dialog-header h3{color:var(--text-color-dark, #e0e0e0)}.dialog-close{color:var(--text-secondary-dark, #999)}.dialog-close:hover{background:var(--hover-bg-dark, #2a2a2a);color:var(--text-color-dark, #e0e0e0)}.chat-type-btn{background:var(--bg-secondary-dark, #2a2a2a);color:var(--text-color-dark, #e0e0e0)}.chat-type-btn:hover{background:var(--hover-bg-dark, #333)}.form-group label{color:var(--text-color-dark, #e0e0e0)}.form-input{background:var(--bg-secondary-dark, #2a2a2a);border-color:var(--border-color-dark, #444);color:var(--text-color-dark, #e0e0e0)}.user-list{border-color:var(--border-color-dark, #444)}.user-item{border-color:var(--border-color-dark, #2a2a2a)}.user-item:hover{background:var(--hover-bg-dark, #2a2a2a)}.user-item.selected{background:var(--selected-bg-dark, #1a3a52)}.user-name{color:var(--text-color-dark, #e0e0e0)}.dialog-footer{border-color:var(--border-color-dark, #333)}.btn-secondary{background:var(--bg-secondary-dark, #2a2a2a);color:var(--text-color-dark, #e0e0e0)}.btn-secondary:hover{background:var(--hover-bg-dark, #333)}.ncd-chip{background:var(--selected-bg-dark, #1a3a52);border-color:var(--primary-color, #2196f3)}.ncd-chip-name{color:var(--text-color-dark, #e0e0e0)}.ncd-chip-remove{color:var(--text-secondary-dark, #999)}.ncd-chip-remove:hover{color:var(--text-color-dark, #e0e0e0)}}.chat-panel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1499;opacity:0;pointer-events:none;transition:opacity .3s ease}.chat-panel-overlay.open{opacity:1;pointer-events:auto}.chat-panel{position:fixed;top:0;right:-100%;bottom:0;width:400px;max-width:100%;background:var(--bg-color, white);box-shadow:-2px 0 12px #0000001a;z-index:1501;display:flex;flex-direction:column;transition:right .3s ease}.chat-panel.open{right:0}.chat-panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color, #e0e0e0);background:var(--header-bg, white)}.chat-panel-header h2{margin:0;font-size:20px;font-weight:600;color:var(--text-color, #333)}.chat-panel-close{width:36px;height:36px;padding:0;background:transparent;border:none;border-radius:8px;font-size:24px;color:var(--text-secondary, #666);cursor:pointer;transition:all .2s ease}.chat-panel-close:hover{background:var(--hover-bg, #f0f0f0);color:var(--text-color, #333)}.chat-panel-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.chat-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--text-secondary, #666)}.chat-loading-spinner{width:40px;height:40px;border:3px solid var(--border-color, #e0e0e0);border-top-color:var(--primary-color, #2196f3);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.chat-panel{width:100%;right:-100%}.chat-panel.open{right:0}}@media(prefers-color-scheme:dark){.chat-panel{background:var(--bg-color-dark, #1e1e1e)}.chat-panel-header{border-color:var(--border-color-dark, #333);background:var(--header-bg-dark, #1e1e1e)}.chat-panel-header h2{color:var(--text-color-dark, #e0e0e0)}.chat-panel-close{color:var(--text-secondary-dark, #999)}.chat-panel-close:hover{background:var(--hover-bg-dark, #2a2a2a);color:var(--text-color-dark, #e0e0e0)}.chat-loading{color:var(--text-secondary-dark, #999)}.chat-loading-spinner{border-color:var(--border-color-dark, #444);border-top-color:var(--primary-color, #2196f3)}}.bb-stack{display:flex;flex-direction:column;gap:4px}.bb-banner{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;padding:7px 12px;background:light-dark(#f0edff,#1a1730);border-left:3px solid var(--color-primary);font-size:13px;color:light-dark(var(--color-text-primary),rgba(255,255,255,.87))}.bb-icon{font-size:15px;flex-shrink:0}.bb-text{flex:1;min-width:0}.bb-actions{display:flex;gap:6px;align-items:center;flex-shrink:0}@media(max-width:480px){.bb-banner{padding:7px 10px}.bb-actions{flex-basis:100%;flex-wrap:wrap}}.bb-btn{padding:3px 9px;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;line-height:1}.bb-btn--wish{background:light-dark(#4f46e5,#6366f1);color:#fff}.bb-btn--memory{background:light-dark(#10b981,#059669);color:#fff}.bb-btn--dismiss{background:transparent;color:light-dark(var(--color-text-secondary),rgba(255,255,255,.55));border:1px solid light-dark(var(--color-border),rgba(255,255,255,.2));padding:3px 7px}.feed-view{display:flex;flex-direction:column;gap:var(--spacing-md)}.feed-loading,.feed-error,.feed-empty{text-align:center;padding:var(--spacing-lg);color:var(--color-text-secondary);font-size:var(--ui-element-font-size)}.feed-error{color:var(--color-error)}.feed-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.feed-section__heading{margin:0 0 var(--spacing-xs) 0;font-size:15px;font-weight:700;color:light-dark(#374151,#d1d5db)}.feed-card .memory-card{margin-bottom:0}.feed-card--activity .memory-card{border-left:3px solid #f97316}.feed-card--new .memory-card{border-left:3px solid #22c55e}.feed-activity-strip{padding:var(--spacing-xs) var(--spacing-md);font-size:12px;font-style:italic;color:var(--color-text-secondary);background:light-dark(#fff7ed,#2d1f0e);border-top:1px solid #fed7aa}.feed-card-actions{display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:light-dark(#f9fafb,#1e1e1e);border-top:1px solid light-dark(#e5e7eb,#444);border-radius:0 0 var(--radius-lg) var(--radius-lg);margin-bottom:var(--spacing-md)}.feed-btn-mark-seen{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--ui-element-font-size);font-weight:600;border:2px solid var(--color-primary);border-radius:var(--ui-element-radius);background:transparent;color:var(--color-primary);cursor:pointer;transition:var(--transition-fast)}.feed-btn-mark-seen:hover{background:var(--color-primary-light)}.feed-btn-view{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--ui-element-font-size);font-weight:600;border:none;border-radius:var(--ui-element-radius);background:var(--color-primary);color:#fff;cursor:pointer;transition:var(--transition-fast)}.feed-btn-view:hover{background:var(--color-primary-dark)}.feed-all-toggle{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--ui-element-font-size);font-weight:600;border:1px solid light-dark(#e5e7eb,#444);border-radius:var(--radius-md);background:light-dark(#f9fafb,#2a2a2a);color:light-dark(#374151,#d1d5db);cursor:pointer;transition:var(--transition-fast);text-align:left}.feed-all-toggle:hover{background:light-dark(#f3f4f6,#374151);border-color:var(--color-primary)}.feed-all-list{margin-top:var(--spacing-sm)}.feed-pagination{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-md) 0;flex-wrap:wrap}.feed-pagination__btn{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--ui-element-font-size);font-weight:600;border:2px solid var(--color-primary);border-radius:var(--ui-element-radius);background:transparent;color:var(--color-primary);cursor:pointer;transition:var(--transition-fast)}.feed-pagination__btn:hover:not(:disabled){background:var(--color-primary-light)}.feed-pagination__btn:disabled{opacity:.35;cursor:default}.feed-pagination__info{font-size:var(--ui-element-font-size);color:var(--color-text-secondary);white-space:nowrap}.tiptap-toolbar-divider{display:inline-block;width:1px;height:24px;background:#d1d5db;margin:0 4px;align-self:center;flex-shrink:0}.tiptap-source-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:var(--z-modal, 1000);display:flex;align-items:center;justify-content:center}.tiptap-source-panel{background:light-dark(#ffffff,#1f2937);border-radius:8px;box-shadow:0 10px 40px #0003;max-width:500px;width:90%;max-height:70vh;display:flex;flex-direction:column;overflow:hidden}.tiptap-source-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid light-dark(#e5e7eb,#374151);font-weight:600;font-size:.875rem;flex-shrink:0}.tiptap-source-close{background:none;border:none;cursor:pointer;font-size:1rem;padding:2px 6px;border-radius:4px;color:light-dark(#374151,#e2e8f0)}.tiptap-source-close:hover{background:light-dark(#f3f4f6,#374151)}.tiptap-source-code{flex:1;overflow-y:auto;overflow-x:auto;white-space:pre-wrap;word-break:break-all;font-family:Courier New,Courier,monospace;font-size:12px;background:light-dark(#f8f9fa,#111827);color:light-dark(#212121,#e2e8f0);margin:0;padding:12px 16px}.tiptap-source-copy{flex-shrink:0;margin:12px 16px;padding:8px 16px;background:var(--color-primary, #4a90e2);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500}.tiptap-source-copy:hover{opacity:.9}.memory-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal, 1000)}.memory-modal-panel{background:light-dark(white,#1f2937);border-radius:12px;padding:24px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003;color:light-dark(#212121,#e2e8f0)}@media(max-width:480px){.memory-modal-overlay{align-items:flex-start}.memory-modal-panel{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0;padding:8px}}
