:root{--font-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;font-family:var(--font-base);font-weight:400;color:#1a1a1a;background-color:#fff;--base-size-2: .125rem;--base-size-4: .25rem;--base-size-6: .375rem;--base-size-8: .5rem;--base-size-12: .75rem;--base-size-14: .875rem;--base-size-16: 1rem;--base-size-20: 1.25rem;--base-size-24: 1.5rem;--base-size-28: 1.75rem;--base-size-32: 2rem;--base-size-36: 2.25rem;--base-size-40: 2.5rem;--base-size-44: 2.75rem;--base-size-48: 3rem;--base-size-64: 4rem;--base-size-80: 5rem;--base-size-96: 6rem;--base-size-112: 7rem;--base-size-128: 8rem;--color-bg: #ffffff;--color-bg-subtle: #fafafa;--color-border: #e2e5e8;--color-border-card: #d1d9e0;--color-border-strong: #d0d7de;--color-text: #1a1a1a;--color-muted: #545967;--header-height: 52px;--header-gap: 12px;--header-divider: rgba(15, 23, 42, .2);--color-primary: #1f5fa9;--color-primary-light: #4c82c0;--color-primary-dark: #124579;--color-secondary: #f4c64b;--color-secondary-light: #f9d979;--color-secondary-dark: #c79f37;--color-accent: #e45d33;--color-accent-light: #f28963;--color-accent-dark: #b34122;--info-bg: #d8f3dc;--info-border: #b8e2c7;--info-text: #1a7f3c;--info-subtle: rgba(0, 0, 0, .55);--btn-accent-bg: #7fc5b7;--btn-accent-bg-hover: #67b3a5;--btn-accent-bg-active: #a0d9cf;--btn-accent-bg-subtle: #dfeaef;--btn-accent-text: #fff;--btn-accent-border: #8dd0c3;--link: var(--color-primary);--link-hover: var(--color-primary-dark);--radius-lg: 6px;--radius-sm: 4px;--radius-cx: 10px;--page-bg: var(--color-bg);--panel-bg: var(--color-bg);--border-subtle: var(--color-border);--border-strong: var(--color-border-strong);--border: var(--color-border);--border-card: var(--color-border-card);--text-primary: var(--color-text);--text-muted: var(--color-muted);--text-main: var(--color-text);--accent: var(--color-primary);--accent-strong: var(--color-primary-dark);--accent-hover: var(--color-primary-dark);--danger: var(--color-accent);--header-bg: #f3f4f6;--panel: var(--panel-bg);--menu-min-w: 180px;--menu-max-w: 280px;--menu-radius: 10px;--menu-pad: 6px;--menu-item-h: 34px;--menu-item-pad-x: 10px;--menu-item-pad-y: 8px;--menu-item-radius: 8px;--menu-hover: rgba(76, 130, 192, .1);--menu-hover-danger: rgba(228, 93, 51, .12);--z-menu: 2000}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;overflow-y:scroll;background:var(--page-bg);color:var(--text-primary);font-family:var(--font-base);font-size:var(--base-size-16);line-height:1.5;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--link);text-decoration:none}a:hover{color:var(--link-hover);text-decoration:underline}img{max-width:100%;display:block}h1,h2,h3,h4,h5,h6{margin:0 0 .5rem;font-weight:600;color:var(--text-primary)}.app-shell{min-height:100vh;background:var(--page-bg);color:var(--text-primary);display:flex;flex-direction:column}.main{flex:1;width:100%;padding:16px}.layout-root{max-width:1020px;margin:0 auto;padding:0;display:grid;grid-template-columns:minmax(0,3fr) minmax(180px,1fr);gap:16px;align-items:start}.feed-column{min-width:0}@media(max-width:900px){.layout-root{grid-template-columns:1fr}.sidebar-right{display:none}.mobile-channels{display:flex;gap:8px;margin:8px 0 12px}.landing-main{grid-template-columns:none;gap:24px;margin-top:0}}.app-header{position:sticky;top:0;z-index:40;background:var(--header-bg);border-bottom:1px solid var(--border);height:var(--header-height);display:flex;align-items:center;--header-control-size: 40px}.app-header-inner{width:100%;max-width:1060px;margin:0 auto;padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:var(--header-gap, 8px);height:100%;position:relative}.app-header-left,.app-header-right{display:flex;align-items:center;gap:12px}.app-header-search{flex:1 1 auto;min-width:0;display:flex;justify-content:flex-end;position:relative;margin-right:0}.app-header-left{flex:0 0 auto}.app-header-right{flex:0 0 auto;margin-left:auto;justify-content:flex-end}.header-search{display:flex;align-items:center;position:relative;justify-content:flex-end;height:34px;min-width:34px}.header-search--desktop{flex:1 1 100%;min-width:260px;max-width:420px}.header-search--compact,.header-search--mobile{width:34px;flex:0 0 auto}.header-search--mobile .header-search-content{position:absolute;inset:0}.header-search-input-wrap,.header-search-input{min-width:0}.app-header.is-search-overlay .app-header-left,.app-header.is-search-overlay .app-header-right{opacity:0;pointer-events:none}.app-header.is-search-overlay .app-header-search{position:absolute;inset:0;flex:0 0 auto;width:100%;justify-content:stretch;z-index:5}.app-header.is-search-overlay .app-header-search{justify-content:center}.app-header.is-search-overlay .header-search--mobile{flex:1 1 auto;width:100%}.app-header.is-search-overlay .header-search{width:100%}.app-header.is-search-overlay .header-search-content{width:auto}.header-search-toggle{border:none;background:transparent;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;margin:0;flex:0 0 34px}.header-search-toggle img,.header-search-submit img{width:14px;height:14px;display:block}.header-search-submit{border:none;background:transparent;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;flex:0 0 34px;border-left:1px solid var(--border)}.header-search--mobile.is-open .header-search-toggle,.header-search.is-open .header-search-toggle{opacity:0;pointer-events:none}.header-search-toggle{border-radius:var(--radius-lg);border:1px solid var(--border);background:#f6f7f9;transition:background .2s ease,border-color .2s ease}.header-search-toggle:hover{background:#0f172a1f}.header-search-content{display:flex;align-items:center;gap:0;border-radius:var(--radius-lg);border:1px solid var(--border);background:#f6f7f9;overflow:hidden;height:34px}.header-search--desktop .header-search-content{width:100%;opacity:1;pointer-events:auto}.header-search--mobile .header-search-content{position:absolute;inset:6px 12px;border-radius:var(--radius-lg);padding:8px 12px;box-shadow:none;width:auto;opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .2s ease,transform .2s ease;display:flex;gap:8px;z-index:2;min-height:40px;height:auto;visibility:hidden}.header-search--mobile.is-open .header-search-content{opacity:1;pointer-events:auto;transform:translateY(0);gap:12px;visibility:visible}.header-search--compact.is-resizing .header-search-content,.header-search--mobile.is-resizing .header-search-content{transition:none}.header-search--mobile.is-open{flex:1 1 auto;width:100%}.header-search--compact .header-search-content{position:absolute;right:0;top:50%;transform:translateY(-50%) translate(8px);width:var(--hs-compact-width, 260px);opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;visibility:hidden;padding:0;z-index:1}.header-search--compact.is-open .header-search-content{opacity:1;pointer-events:auto;transform:translateY(-50%) translate(0);visibility:visible}.header-search-scope{border:none;background:transparent;padding:0 12px;min-width:92px;font-size:var(--base-size-14);font-weight:500;color:var(--text-primary);display:inline-flex;align-items:center;justify-content:space-between;cursor:pointer;height:100%;border-right:1px solid var(--border);white-space:nowrap}.header-search-input-wrap{flex:1;display:flex;align-items:center;position:relative;padding:0;height:100%;border-right:1px solid var(--border)}.header-search--mobile .header-search-input-wrap{border-right:none;margin:0;padding:0}.header-search--mobile .header-search-input-wrap{border-right:none}.header-search-input{flex:1;border:none;background:transparent;padding:0 32px 0 12px;font-size:var(--base-size-14);color:var(--text-primary);height:100%;line-height:1.2}.header-search-input::placeholder{color:var(--text-muted)}.header-search-input:focus{outline:none}.header-search-clear{position:absolute;right:6px;width:20px;height:20px;border-radius:50%;border:none;background:#0f172a33;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:.75rem;line-height:1}.header-search-clear:hover{background:#0f172a59}.header-search-close{border:none;background:transparent;color:var(--text-primary);font-weight:500;margin-left:12px;cursor:pointer}.app-header-menu-btn{position:relative;border-radius:var(--radius-lg);border:1px solid var(--border);background:#f6f7f9;transition:background .2s ease,border-color .2s ease}.app-header-menu-btn.btn-icon{width:var(--header-control-size);min-width:var(--header-control-size);height:34px}.app-header-menu-btn img{width:16px;height:16px;display:block}.btn.app-header-menu-btn{display:none}@media(max-width:899px){.btn.app-header-menu-btn{display:inline-flex}.app-header-right,.header-icons{gap:6px}.header-profile-btn{display:inline-flex;min-width:48px;width:48px;height:34px;padding:0;justify-content:center;gap:0}.header-profile-btn .header-profile-avatar{width:32px;height:32px}.header-profile-name,.header-profile-caret{display:none}.header-channel-add{display:none!important}}.app-header-brand{border:none;background:transparent;display:inline-flex;align-items:center;gap:6px;font:inherit;font-weight:600;font-size:var(--base-size-16);color:var(--text-primary);cursor:pointer}.app-header-logo{width:26px;height:26px;object-fit:contain;transform:scale(1.15)}.header-channel{position:relative;flex-shrink:0;display:flex;align-items:center}.header-channel-add{min-width:var(--header-control-size);width:var(--header-control-size);height:34px;flex-shrink:0;padding:0}.header-channel-add.btn-icon{width:var(--header-control-size);height:34px}.header-channel-add img{width:16px;height:16px;display:block}.header-channel-add{border-radius:var(--radius-lg);border:1px solid var(--border);background:#f6f8fa;transition:background .2s ease,border-color .2s ease}.header-channel-add:hover{background:#0f172a0f}.header-icons{display:flex;align-items:center;gap:8px;position:relative}.header-icon-btn{position:relative}.header-channel-chip{border:1px solid var(--border);border-radius:var(--radius-lg);background:#f6f8fa;color:var(--text-primary);font:inherit;padding:0;font-size:var(--base-size-14);height:34px;display:inline-flex;align-items:center;gap:4px;cursor:pointer;transition:background .2s ease,border-color .2s ease;width:var(--header-control-size);min-width:var(--header-control-size);flex-shrink:0;justify-content:center;white-space:nowrap}.header-channel-chip-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px}.header-channel-chip:hover{background:#0f172a0f}.header-channel-chip.is-active{gap:6px;width:auto;min-width:var(--header-control-size);padding:0 10px;justify-content:center;background:#1f5fa91f;border-color:var(--color-primary);color:#1f5fa9}.header-channel-chip-icon img{width:16px;height:16px;display:block}.header-channel-chip-clear{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#0f172a14}.header-profile-btn{padding:4px 10px;gap:6px;min-height:40px;font-size:var(--base-size-14);border-radius:var(--radius-lg);border:1px solid transparent;background:#0f172a0f;color:var(--text-primary);position:relative;display:inline-flex;align-items:center;cursor:pointer}.header-profile-btn:hover{background:#0f172a26}.btn.header-profile-btn.is-premium:hover{background:#f4c64b38;border-color:#f4c64bcc}.header-profile-btn.is-premium{border-color:var(--color-secondary);background:#f4c64b29}.header-profile-avatar{width:28px;height:28px;border-radius:50%;overflow:hidden;background:#f3f4f6;border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center}.header-profile-avatar-img{width:100%;height:100%;object-fit:cover}.header-profile-name{font-weight:600;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-profile-caret{font-size:12px;color:var(--text-muted)}.header-notify-dot{position:absolute;right:-6px;top:-6px;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--color-primary);color:#fff;font-size:11px;font-weight:700}.topbar{background:#f6f7f9;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:30}.topbar-inner{max-width:1050px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:8px}.topbar-left{display:flex;align-items:center;gap:12px}.topbar-menu-btn{display:none;align-items:center;justify-content:center;width:34px;height:34px;padding:4px;border-radius:var(--radius-lg);border:1px solid transparent;background:#0f172a0a;cursor:pointer}.topbar-menu-btn:hover{background:#0f172a14}.topbar-menu-btn img{width:20px;height:20px;object-fit:contain}.topbar-avatar-btn{display:none;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;border:1px solid var(--border);background:#f3f4f6;color:var(--text-primary);font-weight:700;cursor:pointer}.topbar-avatar-btn:hover{background:#0f172a14}.topbar-avatar-initial{font-size:14px}.topbar-user-label{display:none}@media(max-width:900px){.topbar-menu-btn,.topbar-avatar-btn{display:inline-flex}.topbar-user-label{display:inline-flex;align-items:center;font-weight:600;font-size:var(--base-size-14);color:var(--text-primary)}.topbar-user-btn.topbar-user-btn-mobile,.topbar-avatar-inline{display:inline-flex}}.topbar-logo{width:28px;height:28px;object-fit:contain;transform:scale(1.15);transform-origin:left center}.topbar-title{font-weight:600;font-size:var(--base-size-16);letter-spacing:.01em}.topbar-brand{position:relative;display:inline-flex;align-items:center}.topbar-right{display:flex;align-items:center;gap:8px;position:relative}.mobile-menu-drawer{position:fixed;top:0;right:0;left:auto;width:72vw;max-width:280px;height:100vh;background:#fff;box-shadow:-4px 0 20px #0000001f;z-index:60;padding:16px;display:flex;flex-direction:column;gap:12px}.mobile-menu-backdrop{position:fixed;inset:0;background:#0f172a59;z-index:50}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.mobile-menu-close{background:none;border:none;font-size:20px;cursor:pointer}.mobile-menu-title{font-weight:700;font-size:var(--base-size-16)}.mobile-menu-section{border-top:1px solid var(--border);padding-top:8px}.mobile-menu-section:first-of-type{border-top:none;padding-top:16px}.mobile-menu-profile{display:flex;align-items:center;gap:12px;padding:12px;background:#0f172a0a;border-radius:var(--radius-lg);margin-bottom:8px}.mobile-menu-profile-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;background:#f3f4f6;flex-shrink:0;display:flex;align-items:center;justify-content:center}.mobile-menu-profile-avatar-img{width:100%;height:100%;object-fit:cover}.mobile-menu-profile-info{flex:1;min-width:0}.mobile-menu-profile-name{font-weight:600;font-size:var(--base-size-14);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-menu-profile-badge{display:inline-block;margin-top:4px;padding:2px 8px;background:#f4c64b33;color:#b8860b;font-size:11px;font-weight:600;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.mobile-menu-list{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:6px}.mobile-menu-item{width:100%}.mobile-menu-item button{width:100%;text-align:left}.topbar-user{font-weight:600;font-size:var(--base-size-16);color:var(--text-primary)}.topbar-user-btn{border:1px solid transparent;background:#0f172a0a;padding:6px 10px;border-radius:var(--radius-lg);display:none;align-items:center;gap:6px;font:inherit;cursor:pointer;color:var(--text-primary)}.topbar-user-btn:hover{background:#0f172a14}.topbar-user-btn.is-premium{border-color:var(--color-secondary);background:#f4c64b2e}.topbar-user-caret{font-size:12px;color:var(--text-muted)}.topbar-avatar-inline{display:none;width:28px;height:28px;border-radius:999px;border:1px solid var(--border);background:#f3f4f6;overflow:hidden;object-fit:cover;position:relative}.topbar-avatar-inline-img{width:100%;height:100%;object-fit:cover}.topbar-display{position:relative;display:inline-flex;align-items:center;min-height:20px}.topbar-notify-dot.topbar-notify-dot-text{top:-8px;right:-12px}.sidebar-profile-name .topbar-notify-dot-text{top:-6px;right:-10px}.topbar-notify-dot{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 5px;border-radius:999px;background:var(--color-primary);color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #fff}@media(max-width:720px){.topbar-user-btn.topbar-user-btn-mobile,.topbar-avatar-inline{display:inline-flex}}.topbar-logout{border-color:transparent;background:transparent}.topbar-logout:hover:not(:disabled){background:#0f172a0f}.channel-actions-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:space-between;margin-top:4px;padding:6px 0}.channels-search{border:1px solid var(--border);border-radius:var(--radius-lg);padding:6px 10px;display:inline-flex;align-items:center;gap:8px;min-width:0;flex:1;max-width:360px;background:#fff}.channels-search-input{border:none;outline:none;flex:1;font:inherit;padding:0;background:transparent}.channels-search-icon{color:var(--text-muted)}.channels-search-clear{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px;display:inline-flex;align-items:center;justify-content:center}.channel-list{list-style:none;padding:0;margin:12px 0 0;color:inherit;max-height:min(600px,80vh);min-height:240px;overflow-y:auto}.channel-item+.channel-item{border-top:1px solid var(--border)}.channel-item:last-child{border-bottom:1px solid var(--border)}.channel-line{display:flex;align-items:center;gap:12px;padding:10px 4px;border-radius:var(--radius-lg);transition:background-color .15s ease,box-shadow .15s ease;position:relative}.channel-item.is-active .channel-line{background:#1f5fa914;box-shadow:inset 0 0 0 1px #1f5fa940}.channel-item:hover .channel-line{background:#0f172a08}.channel-item--inactive .channel-line{opacity:.65}.channel-avatar{width:36px;height:36px;border-radius:var(--radius-lg);background:var(--color-bg-subtle);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:var(--color-primary);flex-shrink:0}.channel-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}.channel-item__badge-disabled{margin-left:auto;font-size:11px;padding:2px 6px;border-radius:999px;background:#f4f4f6;color:#888;border:1px solid var(--border)}.channel-title-btn{display:flex;flex-direction:column;gap:4px;padding:0;margin:0;border:none;background:transparent;color:inherit;font:inherit;line-height:1.35;cursor:pointer;flex:1;min-width:0;text-align:left}.channel-title-btn:disabled{cursor:not-allowed}.channel-title{font-weight:700;font-size:var(--base-size-14);line-height:1.3;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-username{font-size:var(--base-size-12);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-menu-toggle{margin-left:auto;background:transparent;border:none;padding:6px;cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center}.channel-menu-toggle:hover{color:var(--text-primary);background:#0f172a0a}.channel-empty-state{margin:20px 0;padding:20px;text-align:center;border:1px dashed var(--border);border-radius:var(--radius-lg);color:var(--text-muted);display:grid;gap:10px;justify-items:center}.feed-shell{background:transparent;border:none;border-radius:0;padding:0}.feed-archive-info{margin-bottom:12px}.feed-empty-state-row{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.feed-toolbar{display:flex;align-items:center;gap:10px;padding:0;margin-bottom:8px;background:transparent;border:none;flex-wrap:wrap}.feed-toolbar-title{font-weight:600;font-size:var(--base-size-16);margin-right:auto}.feed-filter-btn{position:relative}.feed-toolbar-left,.feed-toolbar-right{display:flex;align-items:center;gap:8px}.feed-toolbar-left{flex:0 0 auto}.feed-toolbar-right{margin-left:auto;flex:0 0 auto}.feed-toolbar-search{display:flex;align-items:center;gap:6px}.toolbar-search{display:flex;align-items:center;gap:6px;margin:0}.toolbar-search-toggle{width:32px;height:32px;border-radius:var(--radius-cx);border:1px solid var(--border);background:#f6f8fa;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,transform .12s ease}.toolbar-search-toggle:hover{background:#f1f3f5;border-color:var(--color-border-strong)}.toolbar-search-toggle:active{transform:scale(.97)}.toolbar-search-toggle img{width:18px;height:18px;display:block}.toolbar-search-panel{display:flex;align-items:center;gap:6px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-cx);background:#fff;box-shadow:0 0 0 1px #00000005;min-width:220px;max-width:320px;width:clamp(220px,36vw,320px);flex:1 0 auto;height:32px}.toolbar-search-panel-icon{width:16px;height:16px;display:block;opacity:.6}.toolbar-search-input{flex:1 1 auto;min-width:0;border:none;background:transparent;font:inherit;color:var(--text-primary);outline:none;padding:0;height:100%}.toolbar-search-input:focus{outline:none}.toolbar-search-clear{width:28px;height:28px;border:none;background:transparent;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-size:16px;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.toolbar-search-clear:hover{background:#0f172a0d;color:var(--text-primary)}.toolbar-search-clear:focus-visible{outline:2px solid var(--color-primary-light);outline-offset:2px}.feed-toolbar-actions{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.feed-filter-inline{display:inline-flex;align-items:center;gap:10px;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-cx);background:#fff;box-shadow:0 4px 12px #0000000a}.feed-filter-inline__label{font-size:var(--base-size-13);color:var(--text-muted)}.feed-filter-inline__select{min-width:180px;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-cx);background:#f8fafc;font:inherit;color:var(--text-primary);transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.feed-filter-inline__select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1f5fa926;background:#fff}.feed-filter-inline__select option{color:var(--text-primary)}.feed-filter-wrapper{position:relative}.filter-badge{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--color-primary);color:#fff;font-size:var(--base-size-12);display:inline-flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 2px 6px #0000002e}.ctx-menu{position:fixed;background:var(--panel);border:1px solid var(--border);border-radius:var(--menu-radius);padding:var(--menu-pad);box-shadow:0 10px 30px #0000001a;min-width:var(--menu-min-w);max-width:var(--menu-max-w);width:max-content;z-index:var(--z-menu);display:flex;flex-direction:column;pointer-events:auto}.ctx-menu__item{height:var(--menu-item-h);min-height:var(--menu-item-h);border:none;background:transparent;border-radius:var(--menu-item-radius);padding:var(--menu-item-pad-y) var(--menu-item-pad-x);font:inherit;font-size:14px;color:var(--text-primary);display:flex;align-items:center;gap:8px;width:100%;text-align:left;cursor:pointer;text-decoration:none;-webkit-user-select:none;user-select:none}.ctx-menu__item:not(.ctx-menu__item--disabled):hover,.ctx-menu__item:not(.ctx-menu__item--disabled):focus-visible{background:var(--menu-hover)}.ctx-menu__item:focus-visible{outline:2px solid rgba(76,130,192,.45);outline:2px solid color-mix(in srgb,var(--color-primary) 55%,transparent);outline-offset:1px}.ctx-menu__icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);flex:0 0 auto}.ctx-menu__label{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ctx-menu__meta{flex:0 0 auto;font-size:12px;color:var(--text-muted);white-space:nowrap;margin-left:8px}.ctx-menu__sep{height:1px;background:var(--border);margin:6px 4px}.ctx-menu__item--disabled{opacity:.5;cursor:not-allowed}.ctx-menu__item--danger{color:var(--danger)}.ctx-menu__item--danger:not(.ctx-menu__item--disabled):hover,.ctx-menu__item--danger:not(.ctx-menu__item--disabled):focus-visible{background:var(--menu-hover-danger)}.ctx-menu__item--accent{color:var(--color-primary)}.ctx-menu__item.is-active{background:#4c82c01a}.ctx-menu__title{padding:6px 10px 4px;font-size:12px;color:var(--text-muted)}.ctx-menu__search{padding:6px 4px}.ctx-menu__scroll{max-height:360px;overflow:auto;padding-right:2px}.ctx-menu__check{font-weight:700;color:var(--color-primary);margin-left:8px;flex:0 0 auto}.ctx-menu__empty{padding:10px;font-size:13px;color:var(--text-muted)}@media(max-width:640px){.feed-filter-inline{width:100%;flex-wrap:wrap;gap:6px}.feed-filter-inline__select{flex:1 1 160px;min-width:0}}.filters-modal .base-modal__body{padding-top:8px}.filters-modal__content{display:flex;flex-direction:column;gap:12px}.filters-section{padding:2px 0 10px;border-bottom:1px solid rgba(0,0,0,.05)}.filters-section:last-of-type{border-bottom:none}.filters-section__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.filters-section__title{font-weight:600;font-size:var(--base-size-14);margin:0}.filters-section__body{padding:4px 0 0}.filters-options{display:flex;flex-direction:column;gap:6px}.filters-option{display:flex;gap:8px;align-items:center;font-size:var(--base-size-14)}.filters-option.inline{flex-direction:row}.filters-sort-row{display:flex;gap:12px;flex-wrap:wrap}.filters-channel-trigger-wrap{position:relative;max-width:280px}.filters-channel-trigger{width:100%;min-height:34px;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-cx);background:#fff;display:flex;align-items:center;justify-content:space-between;gap:8px;font:inherit;cursor:pointer}.filters-channel-trigger__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filters-channel-trigger__chevron{font-size:11px;color:var(--text-muted)}.filters-modal__footer{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}@media(max-width:640px){.feed-toolbar{flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.feed-toolbar-left{order:2;margin-left:auto}.feed-toolbar-right{order:1;margin-left:0}.feed-toolbar-search .toolbar-search-panel{width:100%;max-width:none;min-width:0}.feed-toolbar-actions{width:auto;justify-content:flex-start;gap:6px}}.feed-list{display:flex;flex-direction:column}.feed-loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px 0}.feed-loading-spinner .spinner{border-color:#0f172a26;border-top-color:var(--text-muted)}.feed-card{border-radius:var(--radius-lg);border:1px solid var(--border-card);overflow:hidden;background:#fff;transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease,background-color .2s ease}.feed-card.is-deleted{background:#fff3ea;border-color:var(--border-card);box-shadow:none}.feed-card.is-deleted .feed-card-header{border-bottom-color:transparent;border-bottom:none;background:transparent}.feed-card.is-deleted .feed-deleted-badge{background:#bb3e03;color:#fff;border:1px solid #7f2600}.feed-deleted-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:999px;font-size:var(--base-size-12, .75rem);font-weight:500;margin-bottom:10px}.feed-card-block.is-deleted{border-color:var(--border);background:#fff3ea;border:1px solid var(--border);border-radius:var(--radius-lg)}.feed-card-block.is-deleted .feed-card-body{background:transparent}.feed-card-block.is-deleted.with-divider{border-color:var(--border)}.feed-card.is-deleted .feed-media-img,.feed-card-block.is-deleted .feed-media-img{filter:saturate(.9) opacity(.95)}.feed-card-block.is-deleted .feed-deleted-badge{background:#bb3e03;color:#fff;border:1px solid #7f2600}.feed-card.is-deleted .feed-card-body,.feed-card.is-deleted .feed-card-footer{background:transparent}.feed-card+.feed-card{margin-top:12px}.feed-load-more{display:flex;justify-content:center;padding:12px 0 4px}.feed-saved-header{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.feed-saved-header h2,.feed-saved-header .text-muted{margin:0;font-size:var(--base-size-14, 1.1rem)}.feed-card-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 12px;border-bottom:1px solid #e3e7ec;background:transparent}.feed-header-main{flex:1;min-width:0}.feed-channel-trigger{display:flex;align-items:center;gap:8px;width:100%;border:none;background:transparent;padding:0;margin:0;min-width:0;cursor:pointer;border-radius:999px;transition:background .2s ease;color:inherit;font:inherit}.feed-channel-trigger:hover,.feed-channel-trigger:focus-visible{background:#0f172a0f}.feed-channel-trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.feed-header-text{display:flex;flex-direction:column;gap:2px;min-width:0;align-items:flex-start;text-align:left}.feed-channel-title-group{display:inline-flex;align-items:center}.feed-channel-badge{margin-left:6px;font-size:11px;line-height:1.2;color:var(--text-muted);border:1px solid var(--border-subtle);background:#0f172a0a;border-radius:999px;padding:2px 7px;pointer-events:none;white-space:nowrap}.feed-channel-title{font-size:13px;font-weight:500;color:var(--text-muted);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed-header-actions{flex:0 0 auto;display:flex;align-items:center}.feed-header-menu-btn{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--text-muted);font-size:20px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,border-color .2s ease}.feed-header-menu-btn:hover,.feed-header-menu-btn:focus-visible{background:#0f172a0d;border-color:#0f172a33}.feed-header-menu-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.feed-avatar--header{width:28px;height:28px}@media(max-width:640px){.feed-avatar--header{width:24px;height:24px}}.feed-avatar{width:24px;height:24px;border-radius:999px;background:#e5e7eb;display:inline-flex;align-items:center;justify-content:center;font-size:var(--base-size-12);color:#6b7280;object-fit:cover;border:1px solid var(--border);box-shadow:1px 2px 6px #0000001f,-1px 0 4px #00000014}.feed-channel-line{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.feed-channel{font-weight:600;font-size:var(--base-size-16);color:var(--text-primary)}.feed-channel-link{color:var(--text-primary);text-decoration:none}.feed-channel-link:hover{text-decoration:underline;color:var(--link-hover)}.feed-username{font-size:var(--base-size-12);color:var(--text-muted)}.feed-meta{margin-top:2px;font-size:var(--base-size-12);color:var(--text-muted)}.feed-card-body{padding:8px 10px}.feed-text{margin:0;font-size:var(--base-size-14);line-height:1.5;color:var(--text-primary);white-space:pre-wrap}.feed-media{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start}.feed-media img,.feed-media .feed-media-img{max-width:320px;max-height:320px;width:auto;height:auto;border-radius:var(--radius-lg);border:1px solid var(--border);background:#fff;object-fit:contain}.feed-media-link{display:block;flex:0 0 auto;max-width:min(100%,320px);padding:0;background:transparent;border:none;cursor:zoom-in}.feed-media-toggle{background:transparent;border:none;padding:0;margin-bottom:6px;color:var(--link);cursor:pointer;font:inherit;text-decoration:underline}.feed-media-toggle:hover{color:var(--link-hover)}.media-gallery{margin-top:8px}.media-gallery--hero{display:flex;justify-content:center}.media-hero{display:inline-flex;width:auto;justify-content:center}.media-hero,.media-tile{border:none;margin:0;padding:0;background:transparent;cursor:pointer;font:inherit;text-align:left}.media-hero--video,.media-tile--video{position:relative}.media-play{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.media-play:before{content:"";width:44px;height:44px;border-radius:50%;background:#0f172aa6;box-shadow:0 6px 16px #00000059}.media-play:after{content:"";position:absolute;margin-left:4px;width:0;height:0;border-left:14px solid #fff;border-top:9px solid transparent;border-bottom:9px solid transparent}.media-single{margin:8px 0;display:flex;justify-content:center;align-items:center}.media-single img,.media-single__image{display:block;max-width:min(520px,100%);max-height:360px;width:auto;height:auto;border-radius:12px;border:1px solid var(--color-border);background:transparent;object-fit:contain;margin:0 auto}.media-single.is-ultrawide img,.media-single.is-ultrawide .media-single__image{max-width:min(460px,100%);max-height:240px}.media-single.is-portrait img,.media-single.is-portrait .media-single__image{max-width:min(420px,86%);max-height:420px}.media-grid{display:grid;gap:6px}.layout-2 .media-grid,.layout-4 .media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-3 .media-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);grid-auto-rows:minmax(120px,1fr)}.layout-3 .media-tile:first-child{grid-row:span 2;aspect-ratio:3 / 4}.layout-6 .media-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(120px,1fr)}.layout-3 .media-tile{aspect-ratio:1 / 1}.media-tile{position:relative;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-subtle);overflow:hidden;min-height:120px}.media-tile__image{width:100%;height:100%;object-fit:cover;display:block}.media-placeholder{min-height:120px;display:flex;align-items:center;justify-content:center;padding:12px;color:var(--text-muted);font-size:var(--base-size-12, .75rem);background:var(--color-bg-subtle);border-radius:inherit}.media-more{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:600;background:#0f172aa6;color:#fff}@media(max-width:640px){.media-hero,.media-hero__image{max-height:420px}}.feed-card-footer{padding:6px 10px 8px;border-top:1px solid #e3e7ec;display:flex;align-items:center;justify-content:space-between;font-size:var(--base-size-12);color:var(--text-muted)}.lightbox{position:fixed;inset:0;z-index:200;display:grid;place-items:center;pointer-events:none}.lightbox__backdrop{position:absolute;inset:0;background:#000000a6;border:none;padding:0;margin:0;pointer-events:auto}.lightbox__content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center;pointer-events:auto}.lightbox__image-wrap{max-width:90vw;max-height:90vh;background:#fdfbfb;border-radius:10px;box-shadow:0 20px 50px #00000073}.lightbox__image{display:block;max-width:80vw;max-height:80vh;width:auto;height:auto;border-radius:8px}.lightbox__video{display:block;max-width:80vw;max-height:80vh;width:auto;height:auto;border-radius:8px;background:#0f172a}.lightbox__placeholder{color:#fff;padding:30px}.lightbox__close{position:absolute;top:-10px;right:-10px;z-index:2;border:none;background:#111827;color:#fff;border-radius:50%;width:32px;height:32px;cursor:pointer;font-size:16px;box-shadow:0 4px 12px #0000004d}.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);border:none;background:#000000a6;color:#fff;width:42px;height:42px;border-radius:50%;cursor:pointer;font-size:22px;display:grid;place-items:center}.lightbox__nav--prev{left:-52px}.lightbox__nav--next{right:-52px}.lightbox__counter{position:absolute;bottom:-28px;right:0;color:#fff;font-size:13px;background:#0000008c;padding:4px 8px;border-radius:6px}@media(max-width:640px){.lightbox__image,.lightbox__video{max-width:90vw;max-height:70vh}.lightbox__nav--prev{left:6px}.lightbox__nav--next{right:6px}}.feed-actions{display:flex;align-items:center}.feed-group-body{display:flex;flex-direction:column}.feed-card-block.with-divider{border-top:1px solid var(--border)}.feed-action-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid transparent;background:transparent;border-radius:var(--radius-lg);padding:6px;color:var(--text-muted);cursor:pointer}.feed-action-btn:hover:not(:disabled){background:#0f172a0d;border-color:transparent;color:var(--text-primary)}.feed-history-btn{border-color:#0f172a26;background:#0f172a0d;color:var(--text-primary);position:relative;overflow:visible;padding:6px}.feed-history-btn .feed-history-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#dc2626;color:#fff;font-size:11px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000026;line-height:1}.feed-save-btn.is-saved{color:var(--color-primary);background:#1f5fa91a}.feed-save-btn:not(.is-saved){border-color:transparent;background:transparent;color:var(--text-muted)}.feed-action-icon{width:16px;height:16px;display:inline-block;background-repeat:no-repeat;background-position:center;background-size:contain}.icon-open{background-image:url(/icons/open.svg)}.icon-copy{background-image:url(/icons/copy.svg)}.icon-save{background-image:url(/icons/bookmark.svg)}.icon-save.is-saved{background-image:url(/icons/bookmark_save.svg)}.feed-save-btn:disabled{opacity:.6;cursor:pointer}.feed-save-icon{width:16px;height:16px;display:inline-block;object-fit:contain}.feed-save-btn.is-saved .feed-save-icon{filter:none}.scroll-top-btn{position:fixed;right:14px;bottom:16px;border:1px solid var(--border);border-radius:var(--radius-cx);padding:10px;background:#f5f7fa;box-shadow:0 8px 24px #00000026;display:none;align-items:center;justify-content:center;cursor:pointer;z-index:90}.scroll-top-btn img{width:20px;height:20px;display:block}.scroll-top-btn:hover{background:#e9edf3}.scroll-top-btn:active{transform:translateY(1px)}.channels-back-link{border:none;background:none;padding:0;margin:0;font:inherit;color:var(--text-muted);cursor:pointer}.channels-back-link:hover{color:var(--text-primary)}.channels-subtitle{margin:4px 0 12px;font-size:var(--base-size-14);color:var(--text-primary);font-weight:600}.channel-search-add{background:#eaf2ff;color:#1c3f8f;border:1px solid #d2dff8;transition:background .15s ease,border-color .15s ease,color .15s ease}.channel-search-add:hover:not(:disabled){background:#dbe8ff;border-color:#c3d2f5}.channel-search-add.is-added{background:#e6f7e6;color:#2f6f31;border-color:#cdebcf}.channel-search-add.is-added:hover:not(:disabled){background:#d7f0d7;border-color:#bce3bf}.feed-settings{display:grid;gap:14px;padding:6px 0}.feed-settings-toast{padding:8px 12px;border-radius:var(--radius-sm);border:1px solid #d3ebcd;background:#f2f9ee;color:#2f6b2c;font-weight:400;animation:feed-toast 5s ease forwards;position:fixed;top:20px;left:50%;transform:translate(-50%);right:auto;z-index:9999}.feed-settings-toast.is-error{border-color:#f6d9dd;background:#fdf1f3;color:#b4434c}.feed-settings-inline-msg{min-height:0;line-height:1.2;font-size:var(--base-size-13);color:var(--text-muted);visibility:hidden;opacity:0;transform:translateY(-2px);transition:opacity .18s ease,transform .18s ease}.feed-settings-inline-msg.is-visible{visibility:visible;opacity:1;transform:translateY(0)}@keyframes feed-toast{0%{opacity:0;transform:translateY(-6px)}10%{opacity:1;transform:translateY(0)}85%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}.feed-setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-right:8px}.feed-setting-title{display:inline-flex;align-items:center;gap:10px}.feed-setting-icon{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.feed-setting-icon img{width:16px;height:16px}.feed-setting-row--stacked{align-items:flex-start;flex-direction:column;gap:8px}.feed-setting-options{display:grid;gap:6px}.feed-setting-options--toggles{width:100%;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.feed-setting-options--list{width:100%;display:grid;gap:6px}.feed-setting-select-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.feed-setting-inline-control{margin-left:auto;position:relative}.feed-setting-select{min-width:140px;padding:6px 12px 6px 10px;border:1px solid var(--border);border-radius:10px;background:#fff;font:inherit;color:var(--text-primary);font-size:var(--base-size-14);height:34px;transition:border-color .15s ease,box-shadow .15s ease;display:inline-flex;align-items:center;justify-content:space-between;gap:10px}.feed-setting-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1f5fa926}.feed-setting-caret{margin-left:auto;font-size:var(--base-size-12);color:var(--text-muted);padding-left:6px}.feed-setting-option{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0}.feed-setting-option__text{font-size:var(--base-size-14);color:var(--text-primary)}.toggle-switch--small{width:46px;height:22px}.toggle-switch--small .toggle-slider{height:100%}.toggle-label{margin-left:8px;font-size:var(--base-size-13);color:var(--text-primary)}.feed-setting-label{font-size:var(--base-size-14);color:var(--text-primary);text-align:left}.feed-settings-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:10px}.toggle-switch{position:relative;display:inline-flex;width:48px;height:26px;border-radius:999px;background:#dfe3ea;transition:background .2s ease;cursor:pointer;flex-shrink:0;align-items:center;padding:2px}.toggle-switch input{opacity:0;width:0;height:0;position:absolute;outline:none}.toggle-slider{position:relative;display:block;width:100%;height:100%;border-radius:inherit;background:#dfe3ea}.toggle-slider:after{content:"";position:absolute;left:2px;top:2px;width:18px;height:18px;border-radius:999px;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .2s ease}.toggle-switch input:checked+.toggle-slider{background:#4cd964}.toggle-switch input:checked+.toggle-slider:after{transform:translate(20px)}.toggle-switch:focus-within{outline:none}@media(max-width:720px){.scroll-top-btn{display:inline-flex}}.post-modal{max-width:640px}.post-modal .base-modal__body{padding-top:8px}.post-modal__header{display:flex;align-items:center;gap:10px}.feed-card{transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.feed-card.post-enter{opacity:0;transform:translateY(8px)}.feed-card.post-enter.post-enter-active{opacity:1;transform:translateY(0);transition:opacity .22s cubic-bezier(.2,.8,.2,1),transform .22s cubic-bezier(.2,.8,.2,1)}.feed-card.post-flash{animation:post-flash 1.05s ease-out}@keyframes post-flash{0%{box-shadow:0 0 #1f5fa929,0 8px 24px #0000000f;background:linear-gradient(180deg,#1f5fa90f,#fff)}to{box-shadow:0 0 #1f5fa900,0 4px 12px #00000008;background:#fff}}@media(prefers-reduced-motion:reduce){.feed-card{transition:none}.feed-card.post-enter,.feed-card.post-enter.post-enter-active{opacity:1;transform:none;transition:none}.feed-card.post-flash{animation:none}}.sidebar-right{font-size:var(--base-size-14);color:var(--text-primary)}.sidebar-section{padding:8px 0}.sidebar-section.profile{padding-bottom:10px;border-bottom:1px solid var(--border)}.profile-premium{border:1px solid var(--color-secondary);background:#f4c64b29;border-radius:12px;padding:10px}.sidebar-section-menu,.sidebar-section-tools{padding:10px 0;border-bottom:1px solid var(--border)}.sidebar-section-title{font-size:var(--base-size-14);font-weight:600;margin:0 0 6px;display:inline-flex;align-items:center;gap:6px}.sidebar-label{font-size:var(--base-size-12);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.sidebar-profile-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.profile-premium .sidebar-profile-avatar{border-color:var(--color-secondary-dark);box-shadow:0 0 0 2px #f4c64b66}.sidebar-profile-main{display:flex;align-items:center;gap:8px;margin-bottom:6px}.sidebar-profile-avatar{width:40px;height:40px;border-radius:999px;background:#f3f4f6;border:1px solid var(--border);background-image:url(/icons/profile.svg);background-repeat:no-repeat;background-position:center;background-size:cover;box-shadow:1px 2px 6px #0000001f,-1px 0 4px #00000014}.sidebar-profile-name{font-weight:600;font-size:.95rem;display:inline-flex;align-items:center;gap:6px;position:relative}.sidebar-profile-name-wrap{position:relative}.sidebar-profile-meta{font-size:var(--base-size-12);color:var(--text-muted)}.sidebar-profile-settings{flex-shrink:0;position:relative}.sidebar-profile-settings:hover{background:#0f172a0a;border-radius:var(--radius-lg)}.sidebar-menu{list-style:none;padding:0;margin:6px 0 0;display:grid;gap:4px}.sidebar-section-header{display:flex;align-items:center;gap:8px}.sidebar-actions{display:flex;gap:8px;margin-left:auto}.sidebar-action{background:none;border:none;font-size:var(--base-size-12);color:var(--color-muted);cursor:pointer;padding:0}.sidebar-action:hover{color:var(--color-primary)}.sidebar-menu-item{display:flex;align-items:center;gap:6px;padding:8px 10px;cursor:pointer;color:var(--text-primary);background:transparent;border:none;font:inherit;text-align:left;font-size:var(--base-size-14);border-radius:var(--radius-lg);transition:background-color .15s ease,color .15s ease,box-shadow .15s ease;width:100%}.sidebar-menu-item-icon{font-size:16px;color:#6b7280;width:16px;height:16px;object-fit:contain;flex-shrink:0}.sidebar-menu-item-label{flex:1}.sidebar-menu-badge{margin-left:auto;min-width:18px;height:18px;padding:0 6px;border-radius:999px;background:var(--color-primary);color:#fff;font-size:var(--base-size-12);display:inline-flex;align-items:center;justify-content:center;line-height:1}.sidebar-menu-item:hover{color:var(--color-primary);text-decoration:none;background:#1f5fa90f}.sidebar-menu-item:focus-visible{outline:2px solid var(--color-primary-light);outline-offset:2px}.sidebar-menu-item.is-active{background:#1f5fa91a;color:var(--color-primary);box-shadow:inset 0 0 0 1px #1f5fa94d}.info-panel{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:var(--radius-cx);background:var(--info-bg)}.info-panel__icon{flex:0 0 auto;width:20px;height:20px;line-height:20px;margin-top:1px;opacity:.9;display:inline-flex;align-items:center;justify-content:center}.info-panel__body{min-width:0}.info-panel__title{font-weight:600;margin:0 0 2px;color:var(--info-text);font-size:var(--base-size-14)}.info-panel__text{margin:0;color:var(--info-text);font-size:var(--base-size-14)}.info-panel__actions{margin-top:8px}.info-panel__hint{margin-top:6px;font-size:13px;color:var(--info-subtle)}.sidebar-menu-item--danger{color:#dc2626}.sidebar-menu-item--danger:hover{background:#dc262614;color:#dc2626}.sidebar-channels-list{list-style:none;padding:0;margin:4px 0 0}.sidebar-channels-item{padding:6px 8px;cursor:pointer;color:var(--text-primary);border-radius:var(--radius-sm);border:1px solid transparent}.sidebar-channels-item:hover{color:var(--text-primary);background:#0f172a0a;border-color:var(--border)}.panel{background:var(--panel-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 12px 16px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.panel-title h3{margin:0;font-size:var(--base-size-16);font-weight:600;display:flex;align-items:center;gap:6px}.panel-heading-channels{width:100%;padding-bottom:8px;border-bottom:1px solid var(--border)}.channels-panel{width:100%}.channels-body{padding-left:0}.panel-actions{display:flex;gap:8px;margin-bottom:8px}.link-button{display:inline-flex;align-items:center;gap:6px;background:#f6f8fa;border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);padding:6px 10px;cursor:pointer;font:inherit;font-weight:600;color:var(--text-primary);text-decoration:none}.link-button:hover{background:#eef1f4;color:var(--text-primary);text-decoration:none}.material-symbols-rounded{font-size:18px;line-height:1}.icon-inline{width:16px;height:16px;object-fit:contain;display:inline-block;vertical-align:middle}.collapsible{max-height:0;opacity:0;overflow:hidden;transition:max-height .2s ease,opacity .2s ease}.collapsible.open{max-height:240px;opacity:1;margin-bottom:8px}.input{width:100%;padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:#fff;font:inherit;font-size:var(--base-size-16);color:var(--text-primary)}.input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1f5fa926}.btn{border-radius:var(--radius-lg);border:1px solid var(--color-border-strong);padding:6px 10px;font-size:var(--base-size-14);font-weight:500;background:#f6f8fa;color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;gap:4px;line-height:1.3}.btn:hover:not(:disabled){background:#eef1f4}.btn-sm{padding:6px 12px;font-size:var(--base-size-14)}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.btn-secondary{background:#f6f8fa;border-color:var(--color-border-strong);color:var(--text-primary)}.btn-ghost{background:transparent;border-color:transparent}.btn-accent{background:var(--btn-accent-bg);border-color:var(--btn-accent-border);color:var(--btn-accent-text);font-weight:400}.btn-accent:not(:disabled):hover{background:var(--btn-accent-bg-hover);border-color:var(--btn-accent-border)}.btn-accent:not(:disabled):active{background:var(--btn-accent-bg-active);border-color:var(--btn-accent-border)}.btn-accent:disabled{background:var(--btn-accent-bg-subtle);border-color:var(--btn-accent-bg-subtle);color:var(--btn-accent-bg);cursor:not-allowed}.btn-accent.btn-ghost{background:transparent;border-color:var(--btn-accent-bg-subtle);color:var(--btn-accent-bg)}.btn-accent.btn-ghost:not(:disabled):hover{background:var(--btn-accent-bg-subtle)}.btn-ghost:hover:not(:disabled){background:#0f172a0a}.btn:focus-visible{outline:2px solid var(--color-primary-light);outline-offset:0}.input:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1f5fa926}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-icon{width:32px;height:32px;padding:0;justify-content:center}.muted,.text-muted{color:var(--text-muted)}.error-text{color:var(--danger);font-weight:600;margin:4px 0 0}.below-error{margin-top:0}.search-row{display:flex;gap:8px;align-items:center}.add-row{display:flex;flex-direction:column;gap:6px}.input-with-action{display:flex;gap:8px;align-items:center}.narrow-input{max-width:220px}.modal-backdrop{position:fixed;inset:0;background:#00000059;display:flex;align-items:flex-start;justify-content:center;padding:32px 16px;z-index:140;overflow-y:auto}.modal{background:#fff;border-radius:12px;border:1px solid var(--border);box-shadow:0 18px 48px #00000026;width:100%;max-width:480px;max-height:80vh;padding:18px;display:flex;flex-direction:column;overflow:hidden}.base-modal--sm{max-width:360px}.base-modal--md{max-width:520px}.base-modal--lg{max-width:640px}@media(max-width:640px){.modal{max-width:100%;width:100%;margin:0}.modal-backdrop{padding:20px 12px}}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.base-modal__header{padding-bottom:12px;border-bottom:1px solid #eee}.base-modal__title{margin:0;font-size:18px;font-weight:600;line-height:1.3;color:var(--text-primary);display:flex;align-items:center;gap:8px}.base-modal__close{border:none;background:transparent;width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-size:20px;line-height:1;color:var(--text-muted);cursor:pointer}.base-modal__close:hover{background:#0f172a0d;color:var(--text-primary)}.modal-body{flex:1;min-height:0;overflow-y:auto}.base-modal__body{padding:16px 0 6px}.base-modal__footer{display:flex;justify-content:flex-end;gap:10px;padding-top:12px;border-top:1px solid #eee;margin-top:8px;flex-wrap:wrap}.channels-modal-title-row{display:flex;align-items:center;gap:8px}.channels-modal-title-row h3{margin:0;font-size:1.1rem}.channels-modal-badge{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 10px;border-radius:999px;background:#f1f3f7;color:var(--text-primary);font-size:12px;font-weight:600;border:1px solid var(--border)}.auth-modal{padding:12px 12px 16px}.auth-modal .base-modal__body{padding:0}.auth-modal .base-modal__header{border-bottom:none}.auth-modal-body{padding:20px 24px 24px;background:linear-gradient(180deg,#f7faff,#fff 85%);border-radius:16px}.auth-form-wrapper{display:grid;gap:14px;border:none;box-shadow:none;background:transparent}.auth-tabs{display:inline-flex;gap:6px;padding:2px;background:#edf2ff;border-radius:9999px;margin-bottom:6px}.auth-tab{border:none;background:transparent;padding:6px 12px;font-size:14px;border-radius:9999px;cursor:pointer;color:var(--text-primary)}.auth-tab--active{background:#fff;box-shadow:0 0 0 1px #d0d7e2}.auth-form,.auth-reset-form{display:grid;gap:10px}.auth-submit{margin-top:6px;width:100%;justify-content:center}.auth-error{color:var(--danger);font-size:13px}.auth-inline-link{background:none;border:none;color:var(--text-muted);font-size:13px;text-decoration:underline;padding:0;cursor:pointer;width:fit-content}.auth-hint{color:var(--text-muted);font-size:13px;line-height:1.45}.auth-success{color:#0f5132;font-size:13px;line-height:1.45}.auth-reset-token{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;margin-top:6px;word-break:break-all}.auth-reset{display:grid;gap:12px}.channels-modal-subtitle{margin:6px 0 10px;color:var(--text-muted);font-size:.9rem;line-height:1.4}.channels-add-panel{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.channels-add-header{display:flex;justify-content:flex-start}.channels-add-form{width:100%}.channels-add-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.channels-add-input{flex:1;min-width:160px}.channels-add-actions{display:flex;gap:8px;flex-wrap:wrap}.channels-add-hint{margin:0;font-size:.85rem;color:var(--text-muted)}.channels-add-hint--warning{color:var(--text-primary);font-weight:600}.channels-add-hint--notice{color:var(--text-muted);font-style:italic}.btn-with-spinner{position:relative}.btn-with-spinner .btn-spinner{position:absolute;right:10px;width:14px;height:14px;border:2px solid rgba(255,255,255,.9);border-top-color:transparent;border-radius:50%;animation:btn-spinner .7s linear infinite;pointer-events:none}@keyframes btn-spinner{to{transform:rotate(360deg)}}.channels-panel-divider{margin:16px 0 12px;border-top:1px solid var(--border)}.channels-list-cta{margin-bottom:12px}.channels-search-panel{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.channels-remote-label{font-size:.92rem;font-weight:600;color:var(--text-primary);margin-bottom:6px}@media(max-width:640px){.channels-add-row{flex-direction:column;align-items:stretch}.channels-add-actions{width:100%;justify-content:flex-start}}.channels-modal-body{flex:1;min-height:0;overflow-y:auto;margin-top:8px;padding-right:4px}.channels-modal-body .channel-list{overflow:visible}.admin-modal{display:flex;flex-direction:column;gap:16px}.admin-modal__subtitle{font-size:13px;color:#666;margin:2px 0 10px}.admin-plan{border-radius:var(--radius-lg);border:1px solid var(--border);padding:14px 16px 12px;background:#fff;display:flex;flex-direction:column;gap:10px}.admin-plan__header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.admin-plan__label{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#888;margin-bottom:2px}.admin-plan__email{font-size:14px;font-weight:600}.admin-plan__meta{font-size:12px;color:#777;margin-top:2px}.admin-plan__badge{padding:3px 10px;border-radius:999px;font-size:12px;font-weight:500;border:1px solid rgba(0,0,0,.08)}.admin-plan__badge--premium{background:#e4f6e9;color:#1a7f3c;border-color:#b8e2c7}.admin-plan__badge--free{background:#f4f4f6;color:#555}.admin-plan__status-title{font-size:14px;font-weight:500}.admin-plan__status-meta{font-size:12px;color:#777;margin-top:2px}.admin-plan__actions{display:flex;gap:12px;justify-content:flex-start;flex-wrap:wrap;align-items:flex-end}.admin-plan__actions button{font-size:13px;padding:6px 12px}.admin-plan__premium-controls{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.admin-plan__premium-label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#555;line-height:1.2}.admin-plan__select{padding:6px 10px;border-radius:8px;border:1px solid var(--border);font:inherit;background:#fff;min-width:140px}.admin-divider{border-top:1px solid var(--border);margin:4px 0}.admin-nav{display:flex;gap:8px;margin:4px 0 8px;flex-wrap:wrap}.admin-nav__item{padding:8px 12px;border-radius:10px;border:1px solid var(--border);background:#fff;font:inherit;cursor:pointer;color:var(--text-primary);transition:all .15s ease}.admin-nav__item:hover{background:#1f5fa90f;border-color:#1f5fa926}.admin-nav__item.is-active{background:#1f5fa914;border-color:#1f5fa94d;color:#1f5fa9;box-shadow:0 6px 14px #1f5fa91f}.admin-section{display:flex;flex-direction:column;gap:10px}.admin-user-find{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-input{min-width:220px}.admin-plan__feedback{font-size:13px}.admin-plan-error{color:#c0392b}.admin-plan-success{color:#0f5132}.admin-plan__note{margin-top:4px;font-size:11px;color:#888}.notifications-modal__body{padding-top:8px}.notifications-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.notifications-item{border:1px solid var(--border);border-radius:10px;background:#fff;transition:border-color .16s ease,box-shadow .16s ease,transform .12s ease}.notifications-item.is-read{background:#fafbfd;opacity:.9}.notifications-item__button{width:100%;border:none;background:transparent;padding:12px 12px 10px;text-align:left;display:flex;flex-direction:column;gap:6px;cursor:pointer}.notifications-item__button:hover{background:#1f5fa90a}.notifications-item__header{display:flex;align-items:center;justify-content:space-between;gap:10px}.notifications-item__title{font-weight:600;color:var(--text-primary)}.notifications-item__snippet{color:var(--text-primary);font-size:14px;line-height:1.4}.notifications-item__meta{font-size:12px;color:var(--text-muted)}.notifications-item__badge{width:10px;height:10px;border-radius:999px;background:var(--color-primary);display:inline-block}.admin-notify{display:flex;flex-direction:column;gap:16px}.admin-notify__section{border:1px solid var(--border);border-radius:12px;padding:14px 16px;background:#fff;display:flex;flex-direction:column;gap:12px}.admin-notify__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.admin-notify__title{font-size:18px;font-weight:600}.admin-notify__subtitle{font-size:13px;color:var(--text-muted)}.admin-notify__form{display:flex;flex-direction:column;gap:10px}.admin-notify__row{display:flex;flex-direction:column;gap:6px}.admin-notify__label{font-size:13px;color:var(--text-muted)}.admin-notify__options{display:flex;gap:16px;flex-wrap:wrap}.admin-notify__option{display:inline-flex;align-items:center;gap:6px;font-size:14px}.admin-notify__textarea{min-height:120px;resize:vertical}.admin-notify__hint{font-size:12px;color:var(--text-muted)}.admin-notify__error{color:#c0392b;font-size:14px}.admin-notify__success{color:#0f5132;font-size:14px}.admin-notify__actions{display:flex;justify-content:flex-start;gap:10px}.admin-notify__table{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff}.admin-notify__table-head,.admin-notify__table-row{display:grid;grid-template-columns:1.1fr 2.1fr .8fr 1.4fr .9fr;gap:8px;padding:10px 12px;align-items:center;font-size:13px}.admin-notify__table-head{background:var(--color-bg-subtle);font-weight:600;font-size:14px;text-align:left}.admin-notify__table-body>.admin-notify__table-row:nth-child(odd){background:#fafbfc}.admin-notify__badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent}.admin-notify__badge--active{color:#1a7f3c;background:#e4f6e9;border-color:#b8e2c7}.admin-notify__badge--inactive{color:#a13a2a;background:#fbeae8;border-color:#f1c4bf}.admin-notify__checkbox{display:inline-flex;align-items:center;gap:8px;font-size:14px}.admin-notify__table .mono{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:13px}.settings-modal{display:flex;flex-direction:column;gap:16px}.settings-title{font-size:19px;font-weight:600;margin-bottom:6px}.settings-subtitle{font-size:13px;color:var(--text-muted)}.settings-content{display:flex;flex-direction:column;gap:14px}.settings-toast{padding:10px 12px;border-radius:var(--radius-lg);font-size:14px;border:1px solid var(--border);background:#f7fdf9;color:#0f5132;box-shadow:0 6px 18px #0000000f}.settings-section{display:flex;flex-direction:column;gap:10px}.settings-section-title{font-size:15px;font-weight:600;margin-bottom:4px;color:var(--text-primary)}.settings-section+.settings-section{border-top:1px solid var(--border);padding-top:12px}.settings-info{display:flex;flex-direction:column;gap:8px}.settings-info-row{display:flex;align-items:center;gap:12px;padding:6px 0}.settings-info-label{flex:0 0 160px;font-size:13px;color:var(--text-muted)}.settings-info-value{flex:1;font-size:14px;font-weight:500;color:var(--text-primary);text-align:right;word-break:break-word}@media(max-width:640px){.settings-info-row{flex-direction:column;align-items:flex-start}.settings-info-label{flex:0 0 auto}.settings-info-value{text-align:left}}.settings-stack{display:flex;flex-direction:column;gap:8px}.settings-field{display:flex;flex-direction:column;gap:6px}.settings-field-label{font-size:14px;color:var(--text-primary);font-weight:600}.settings-input{width:100%}.settings-hint{font-size:12px;color:var(--text-muted);line-height:1.5}.settings-message{font-size:13px}.settings-message.error{color:#c0392b}.settings-message.success{color:#0f5132}.settings-divider{border-top:1px solid var(--border);margin:4px 0}.settings-actions{display:flex;gap:8px}.settings-actions-list{display:flex;flex-direction:column;gap:8px}.settings-action-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border:none;border-radius:var(--radius-cx);background:transparent;cursor:pointer;min-height:44px;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease;text-align:left}.settings-action-row:hover{background:#1f5fa90f}.settings-action-row.is-active{background:#1f5fa914}.settings-action-main{display:inline-flex;align-items:center;gap:10px;flex:1}.settings-action-icon{width:32px;height:32px;border-radius:var(--radius-lg);background:#eef2f7;display:inline-flex;align-items:center;justify-content:center;font-size:15px}.settings-action-text{font-size:14px;font-weight:600;color:var(--text-primary)}.settings-action-chevron{color:var(--text-muted);font-size:14px}.settings-password{display:grid;gap:10px}.settings-field-error{font-size:13px;color:#d9534f;margin-top:4px}.input-error{border-color:#d9534f!important;background:#fff5f5!important}.password-requirements{margin-top:10px;padding:12px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.password-requirements-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.password-requirement{display:flex;align-items:center;gap:8px;font-size:13px;padding:4px 0;transition:color .2s ease}.password-requirement.valid{color:#27ae60}.password-requirement.invalid{color:var(--text-muted)}.password-requirement-icon{font-size:14px;font-weight:700;width:16px;flex-shrink:0}.settings-modal-body{padding:0!important}.settings-layout{display:grid;grid-template-columns:180px 1fr;min-height:400px;max-height:600px}.settings-nav{display:flex;flex-direction:column;gap:2px;padding:0 12px 16px 0;border-right:1px solid var(--border)}.settings-nav-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border:none;border-radius:6px;background:transparent;cursor:pointer;transition:all .15s ease;text-align:left;font-size:14px;font-weight:500;color:var(--text-primary);position:relative}.settings-nav-item:hover{background:#1f5fa90f}.settings-nav-item.is-active{background:#1f5fa91a;color:#1f5fa9}.settings-nav-item.is-active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:18px;background:#1f5fa9;border-radius:0 2px 2px 0}.settings-nav-icon{font-size:16px;line-height:1;flex-shrink:0}.settings-nav-icon-img{width:20px;height:20px;flex-shrink:0;opacity:.7;transition:opacity .15s ease}.settings-nav-item:hover .settings-nav-icon-img,.settings-nav-item.is-active .settings-nav-icon-img{opacity:1}.settings-nav-label{flex:1}.settings-content{overflow-y:auto;padding:0 24px 24px}.settings-panel{display:flex;flex-direction:column;gap:20px;animation:fadeIn .2s ease;max-width:500px}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.settings-panel-header{display:flex;flex-direction:column;gap:4px;padding-bottom:14px;border-bottom:1px solid var(--border)}.settings-panel-title{font-size:18px;font-weight:600;color:var(--text-primary);margin:0}.settings-panel-subtitle{font-size:13px;color:var(--text-muted);margin:0}.settings-group{display:flex;flex-direction:column;gap:12px}.settings-group-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.settings-info-grid{display:flex;flex-direction:column;gap:8px;padding:12px;background:#f8f9fa;border-radius:8px;border:1px solid var(--border)}.settings-info-item{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-info-item-label{font-size:13px;color:var(--text-muted);font-weight:500}.settings-info-item-value{font-size:14px;color:var(--text-primary);font-weight:500}@media(max-width:768px){.settings-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr}.settings-nav{flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid var(--border);padding:12px;background:#fff}.settings-nav-item{flex-shrink:0;min-width:120px}.settings-nav-item.is-active:before{left:50%;top:auto;bottom:0;transform:translate(-50%);width:20px;height:3px}.settings-content{padding:16px}.settings-panel-title{font-size:18px}}.admin-stats{display:flex;flex-direction:column;gap:12px}.admin-stats__header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.admin-stats__note{font-size:12px;color:#666}.admin-stats__status{min-height:18px;font-size:12px;color:#666}.admin-stats__section{display:flex;flex-direction:column;gap:8px}.admin-stats__subtitle{font-size:13px;font-weight:600;color:#2f3542}.admin-stats__table{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#fff}.admin-stats__row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;gap:10px}.admin-stats__row+.admin-stats__row{border-top:1px solid var(--border)}.admin-stats__label{font-size:13px;color:#444}.admin-stats__value{font-size:14px;font-weight:600;color:#1f5fa9}.landing-root{min-height:100vh;display:flex;flex-direction:column;background:var(--page-bg);padding-top:0}.landing-header{position:sticky;top:0;z-index:120;background:#fff;border-bottom:1px solid #e5e7eb}.landing-header-inner{max-width:1120px;margin:0 auto;padding:8px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.landing-header-nav{display:inline-flex;align-items:center;gap:12px}.landing-header-link{border:none;background:transparent;color:var(--text-primary);font:inherit;cursor:pointer;padding:8px 10px;border-radius:10px}.landing-header-link:hover{background:#0f172a0d}.landing-header-right{display:inline-flex;align-items:center;gap:8px}.landing-header-action{border:none;background:transparent;color:var(--text-primary);font:inherit;font-size:14px;padding:6px 10px;border-radius:10px;cursor:pointer;transition:background .15s ease,color .15s ease}.landing-header-action:hover{background:#0f172a0d}.landing-header-action--primary{border:1px solid var(--color-primary);background:var(--color-primary);color:#fff;padding:6px 14px;border-radius:999px;font-size:14px}.landing-header-action--primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.landing-main{flex:1;display:flex;flex-direction:column;gap:12px;margin-top:0}.landing-hero{font-family:var(--font-base);background:linear-gradient(180deg,#f7faff,#fff 75%);position:relative}.landing-hero-inner{position:relative;max-width:1100px;margin:0 auto;padding:32px 16px 56px;display:flex;align-items:center;justify-content:space-between;gap:36px}.landing-hero-content{flex:1.1;display:flex;flex-direction:column;gap:10px;max-width:560px}.landing-hero-auth{flex:1;display:flex;justify-content:center;align-items:stretch;min-width:300px;margin-left:0}.landing-hero-content,.landing-hero-auth{position:relative;z-index:2}.landing-hero-illustration{position:absolute;right:40px;top:80px;width:660px;height:400px;background-image:url(/hero-feed-illustration.svg);background-repeat:no-repeat;background-size:contain;background-position:right top;z-index:1;pointer-events:none}.landing-hero-logo{display:inline-flex;align-items:center;gap:14px;margin-bottom:6px}.landing-hero-logo-icon{width:40px;height:40px;object-fit:contain;display:block;transform:scale(1.2);transform-origin:left center}.landing-hero-logo-text{font-family:Source Code Pro,monospace;font-weight:800;font-size:var(--base-size-20);letter-spacing:.02em;color:var(--color-text)}.landing-hero-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:#1f5fa914;color:#0f274b;font-size:12px;font-weight:600;letter-spacing:.02em;width:fit-content}.landing-hero-title{font-size:40px;line-height:1.2;font-weight:700;font-family:var(--font-base);letter-spacing:-.02em;margin-top:6px;margin-bottom:6px}.landing-hero-subtitle{font-size:17px;color:#4b5563;line-height:1.5;margin:8px 0 6px;font-family:var(--font-base);max-width:500px}.landing-hero-list{list-style:none;margin:10px 0 14px;padding:0;font-size:var(--base-size-14);font-family:var(--font-base)}.landing-hero-list li{margin-bottom:8px;display:flex;align-items:flex-start;gap:8px}.landing-hero-list li:before{content:"";display:inline-block;width:6px;height:6px;margin-top:7px;border-radius:50%;background-color:var(--color-primary)}.landing-hero-note{font-size:var(--base-size-14);color:var(--text-muted);font-family:var(--font-base)}.landing-auth-inner{width:100%;max-width:320px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.landing-auth-card{width:100%;max-width:320px;background:#fff;border-radius:8px;border:1px solid var(--border-subtle);box-shadow:0 10px 25px #0f172a0f;padding:16px 16px 12px}.landing-auth-header{display:flex;justify-content:flex-start;margin-bottom:10px}.landing-auth-tabs{display:inline-flex;gap:4px;background:#f6f8fa;padding:2px;border-radius:999px}.landing-auth-tab{border-radius:999px;border:none;padding:2px 10px;font-size:var(--base-size-12);background:transparent;color:var(--color-muted);cursor:pointer}.landing-auth-tab.is-active{background:#fff;color:var(--color-text);box-shadow:0 0 0 1px var(--color-border)}.landing-auth-form{display:flex;flex-direction:column;gap:8px}.landing-auth-form label{font-size:var(--base-size-12);color:var(--text-muted)}.landing-auth-form input{width:100%}.landing-auth-submit{margin-top:8px;width:100%;justify-content:center}.landing-auth-note{margin-top:8px;margin-left:8px;font-size:var(--base-size-12);color:var(--text-muted);max-width:320px}.landing-footer{border-top:1px solid var(--border-subtle);padding:8px 16px 10px;font-size:var(--base-size-12);color:var(--text-muted);text-align:center}.landing-footer a{color:var(--text-muted)}.landing-footer a:hover{color:var(--link-hover);text-decoration:underline}.landing-section{padding:32px 0 12px}.landing-section-inner{max-width:1040px;margin:0 auto;padding:0 16px;display:flex;flex-direction:column;gap:14px;text-align:center}.landing-section-title{font-size:26px;font-weight:700;margin:0;letter-spacing:-.01em}.landing-section-subtitle{margin:0;font-size:15px;color:var(--text-muted)}.landing-section--features{margin:40px 0}.landing-features-grid{max-width:900px;margin:24px auto 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px 20px}@media(max-width:640px){.landing-features-grid{grid-template-columns:1fr;gap:12px}}.landing-feature{position:relative;overflow:hidden;background:#fff;border:1px solid #e4e7ec;border-radius:16px;padding:16px 16px 14px;box-shadow:0 6px 18px #0f172a08;display:flex;flex-direction:column;gap:8px;min-height:120px;text-align:left}.landing-feature:before{content:"";position:absolute;inset:0;background-image:linear-gradient(140deg,#0ea5e914,#3b82f600 40%),linear-gradient(60deg,#10b98112,#10b98100 50%);opacity:.9;pointer-events:none}.landing-feature>*{position:relative;z-index:1}.landing-feature-icon{width:32px;height:32px;border-radius:10px;background:#eef2f7;display:inline-flex;align-items:center;justify-content:center;font-size:16px}.landing-feature-title{font-weight:600;font-size:15px}.landing-feature-text{font-size:14px;color:#4b5563;line-height:1.5}.landing-plans{display:flex;flex-wrap:nowrap;justify-content:center;align-items:stretch;gap:32px;margin:40px auto 0;max-width:1000px}@media(min-width:900px){.landing-plans>article,.landing-plans>.landing-plan-premium-wrapper{flex:1 1 360px;max-width:360px;min-width:320px}}@media(max-width:900px){.landing-plans{flex-wrap:wrap}}.landing-section--plans{padding-top:24px;margin-top:32px}.landing-plan-premium-wrapper{display:flex;flex-direction:column;gap:8px;width:100%;max-width:360px;flex:1 1 320px;align-self:flex-start;align-items:stretch}.landing-plans-subtitle{margin:0 0 6px;font-size:15px;color:var(--text-muted)}.plan-card{background:#fff;border-radius:16px;border:1px solid #e4e7ec;box-shadow:0 6px 20px #0f172a0a;padding:24px 20px;flex:1 1 360px;max-width:360px;width:100%;display:grid;grid-template-rows:auto 1fr auto auto;gap:12px;text-align:left;height:100%;min-height:388px;position:relative}.plan-card--premium{background:linear-gradient(180deg,#f7f9ff,#fff 70%);border-color:#c9d8ff}.plan-card h3{margin:0 0 6px;font-size:20px;font-weight:600;text-align:center}.plan-badge{display:inline-block;margin-left:8px;background:#e8f0ff;color:#1e40af;padding:2px 8px;font-size:11px;border-radius:9999px}.plan-badge--promo{position:absolute;top:-16px;right:-10px;margin-left:0;width:88px;height:88px;padding:10px;border-radius:50%;background:#e53935;box-shadow:0 0 0 4px #fff,0 0 0 5px #e4e7ec;color:#fff;font-size:11px;font-weight:600;text-align:center;line-height:1.1;display:grid;place-items:center;z-index:1}.plan-list{list-style:none;margin:12px 0 18px;padding:0;display:grid;gap:6px;font-size:14px;color:var(--text-primary);min-height:136px}.plan-list li{position:relative;padding-left:18px}.plan-list li:before{content:"✔";position:absolute;left:0;top:0;color:#165fbf;font-size:12px;line-height:1.4}.plan-price{margin:8px 0 14px;font-size:18px;font-weight:600}.plan-button{padding:10px 16px;font-size:15px;border-radius:8px;align-self:flex-start;cursor:pointer;margin-top:auto}.plan-button--primary{background:#165fbf;color:#fff;border:none}.plan-button--secondary{border:1px solid #165fbf;color:#165fbf;background:transparent}@media(max-width:800px){.landing-plans{gap:20px;margin-top:28px}.plan-card{width:100%;max-width:360px;min-height:0}}.landing-section--features{padding-top:16px}@media(max-width:768px){.landing-section{padding:24px 0 8px}.landing-section-title{font-size:22px}.landing-section-inner{gap:12px}.landing-hero-inner{flex-direction:column;gap:24px;align-items:flex-start}.landing-hero-content{align-items:flex-start;width:100%}.landing-hero-auth{width:100%;max-width:380px;margin-top:24px}.landing-hero-illustration{display:none}.landing-hero-title{font-size:26px}.landing-header-nav{display:none}.landing-header-inner{padding:8px 14px}.landing-header-right{gap:6px}}@media(max-width:1100px){.landing-hero-illustration{width:500px;height:320px;right:20px;top:72px}}.history-modal__placeholder,.history-modal__error,.history-modal__empty{font-size:13px;color:var(--text-muted);padding:16px}.history-modal__error{color:#b91c1c}.history-modal__body{padding:0}.history-modal__summary{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 0;border-bottom:none;background:transparent}.history-modal__pill{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:var(--radius-lg);background:#3b82f614;border:1px solid rgba(59,130,246,.2);color:var(--text-primary);font-size:12px;font-weight:600}.history-modal__hint{font-size:13px;color:var(--text-muted)}.history-modal__accordion{display:flex;flex-direction:column;gap:10px;padding:12px 0 16px}.history-modal__accordion .history-modal__empty{padding:24px 0;text-align:center}.history-accordion-item{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#fff}.history-accordion-header{width:100%;padding:12px 14px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;background:transparent;border:none;cursor:pointer;text-align:left;color:var(--text-primary);transition:background .15s ease}.history-accordion-header:hover,.history-accordion-header.is-expanded{background:var(--color-bg-subtle)}.history-accordion-title{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.history-accordion-title__top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.history-accordion-name{font-weight:600;font-size:14px}.history-accordion-pill{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;background:#0f172a0f;border:1px solid rgba(15,23,42,.08);color:var(--text-muted);font-size:11px;font-weight:600}.history-accordion-time{font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.history-accordion-chevron{width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}.history-accordion-chevron:before{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s ease}.history-accordion-chevron.is-expanded:before{transform:rotate(45deg)}.history-accordion-content{padding:0;animation:slideDown .2s ease;background:var(--color-bg-subtle);border-top:1px solid var(--border)}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.history-accordion-text{font-size:14px;white-space:pre-wrap;color:var(--text-primary);line-height:1.5;padding:12px 14px}.spinner-block{display:inline-flex;flex-direction:column;align-items:center;gap:8px;font-size:13px;color:#111}.spinner{width:36px;height:36px;border:3px solid rgba(17,17,17,.2);border-top-color:#111;border-radius:50%;animation:spinner-rotate .9s linear infinite}.spinner-label{font-size:12px}.spinner-page{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#fffffff2;z-index:1050}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.admin-page{max-width:960px;margin:0 auto;padding:32px 16px 64px}.admin-page__header{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:32px}.admin-page__section{margin-bottom:32px}.admin-page__section-title{font-size:16px;font-weight:600;margin:0;text-transform:uppercase;letter-spacing:.04em}.admin-page__section-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left}.admin-page__section.is-open .admin-page__section-toggle{margin-bottom:16px}.admin-page__section-toggle:after{content:">";font-size:14px;line-height:1;transform:rotate(0);transition:transform .2s ease}.admin-page__section.is-open .admin-page__section-toggle:after{transform:rotate(90deg)}.admin-panel-card{background:#fff;border-radius:16px;padding:24px;border:1px solid rgba(0,0,0,.05);box-shadow:0 24px 40px #0f0f0f0d;display:flex;flex-direction:column;gap:20px}.admin-panel-card__subtitle{font-size:14px;color:#4f4f4f}.admin-referrals{display:flex;flex-direction:column;gap:16px}.admin-referrals__header{display:flex;align-items:center;justify-content:space-between}.admin-referrals__note{font-size:13px;color:#6b6b6b}.admin-referrals__filters{display:block}.admin-utm__filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.admin-utm__field{flex:0 1 220px}.admin-referrals__search{display:flex;gap:12px;align-items:flex-end}.admin-referrals__search-main{display:flex;flex-direction:column;gap:8px;flex:0 1 320px}.admin-referrals__search .admin-referrals__action{width:auto;white-space:nowrap;align-self:center}.admin-referrals__create{display:flex;flex-direction:column;gap:12px}.admin-referrals__row{display:flex;gap:12px;align-items:flex-end}.admin-referrals__row--code .admin-referrals__field--code{flex:0 1 260px}.admin-referrals__row .admin-referrals__action{min-height:30px;padding:8px 12px;align-self:center}.admin-referrals__field{display:flex;flex-direction:column;gap:6px;flex:1}.admin-referrals__label{font-size:13px;color:#5a5a5a}.admin-referrals__checkbox{display:flex;align-items:center;gap:8px;font-size:13px;color:#5a5a5a}.admin-referrals__action{align-self:flex-start}.admin-referrals__filters .admin-referrals__action{width:auto}.admin-referrals__textarea{min-height:80px;resize:vertical}.admin-referrals__table{display:flex;flex-direction:column;gap:8px;overflow-x:auto}.admin-referrals__table-head,.admin-referrals__table-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(120px,1fr);gap:12px;align-items:center}.admin-referrals__table-head{font-size:12px;color:#6b6b6b;text-transform:uppercase;letter-spacing:.04em}.admin-referrals__table-row{padding:12px 10px;border-radius:12px;background:#fbfbfb}.admin-referrals__table-body>.admin-referrals__table-row:nth-child(odd){background:#f4f5f6}.admin-referrals__status-active{color:#1f7a3a;font-weight:600}.admin-referrals__status-inactive{color:#9b2c2c;font-weight:600}.admin-referrals__actions{display:flex;gap:8px;flex-wrap:wrap}.admin-referrals__empty{padding:16px;text-align:center;color:#7a7a7a;background:#f7f7f7;border-radius:12px}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 16px;background:#f8fafc}.error-boundary__card{max-width:420px;width:100%;padding:32px;background:#fff;border-radius:16px;box-shadow:0 28px 60px #0f172a1a;text-align:center}.error-boundary__card h1{margin:0 0 12px;font-size:26px}.error-boundary__card p{margin:0 0 24px;color:#475569}.reset-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 16px;background:#f8fafc}.reset-password-card{width:min(420px,100%);padding:32px;background:#fff;border-radius:16px;border:1px solid rgba(15,23,42,.08);box-shadow:0 24px 60px #0f172a14}.reset-password-card h1{margin:0 0 10px;font-size:26px}.reset-password-subtitle{margin:0 0 20px;color:var(--text-muted);font-size:14px;line-height:1.4}.reset-password-form{display:grid;gap:12px}.reset-password-requirements{margin-bottom:8px}.reset-password-success{margin:0;font-size:16px;font-weight:600;color:#0f5132}.reset-password-actions{margin-top:18px;display:flex;justify-content:flex-start}.reset-password-submit{width:auto;padding:8px 16px}@media(max-width:640px){.reset-password-page{align-items:flex-start}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.channel-filter-banner{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;min-width:0;gap:10px;background:linear-gradient(135deg,#f7fbff,#eef5ff);border:1px solid var(--border);border-radius:var(--radius-cx);padding:2px 12px;margin-bottom:6px}.channel-filter-label{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--text-primary);min-width:0}.channel-filter-name{color:var(--text-primary);display:inline-block;max-width:min(60vw,260px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-filter-reset{border:none;background:none;color:var(--color-primary);font-weight:600;cursor:pointer;padding:4px 10px;border-radius:var(--radius-sm);transition:background-color .15s ease,color .15s ease;margin-left:auto}.channel-filter-reset:hover{background:#1f5fa914}.feed-filter{display:flex;align-items:center;gap:8px;background:var(--header-bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 8px;font-size:var(--base-size-14);color:var(--text-primary)}.feed-filter-text{font-weight:600}.mobile-channels{display:none}.mobile-channels-btn{font-size:var(--base-size-14);padding:6px 10px}.mobile-inline-panel{margin-bottom:12px}.overlay-body{background:transparent;overflow:hidden;margin:0}.overlay-html,.overlay-body,.overlay-body #root{width:100%;height:100%}.overlay-banner-root{display:flex;align-items:center;justify-content:flex-start;width:100%;height:100%;padding:0;margin:0;overflow:hidden}.overlay-banner{display:inline-flex;align-items:center;gap:var(--banner-gap, 16px);color:var(--banner-text, #111)}.overlay-banner.is-debug{box-shadow:inset 0 0 0 1px #11182773}.banner-logo{display:block;flex-shrink:0}.block-1 rect{fill:var(--banner-block-1, #c7efe3)}.block-2 rect{fill:var(--banner-block-2, #a7dbc8)}.block-3 rect{fill:var(--banner-block-3, #7fc5b7)}.banner-block{opacity:0;transform:translateY(-24px);transform-box:fill-box;transform-origin:center}.banner-text{font-size:var(--text-size, 56px);line-height:1;font-weight:600;opacity:0;transform:translate(-6px);color:var(--banner-text, #111);white-space:nowrap}.overlay-banner.is-animating .banner-block{animation:banner-drop var(--dropMs, .45s) ease-out forwards}.overlay-banner.is-animating .block-2{animation-delay:var(--staggerMs, .14s)}.overlay-banner.is-animating .block-3{animation-delay:calc(var(--staggerMs, .14s) * 2)}.overlay-banner.is-animating .banner-text{animation:banner-text-in var(--textInMs, .26s) ease-out forwards;animation-delay:var(--textDelayMs, .76s)}.overlay-banner.is-reduced .banner-block,.overlay-banner.is-reduced .banner-text{animation:none;opacity:1;transform:translate(0)}.overlay-banner[data-font=inter]{font-family:"Inter",var(--font-base)}.overlay-banner[data-font=pt_sans]{font-family:"PT Sans",var(--font-base)}.overlay-banner[data-font=system]{font-family:var(--font-base)}@keyframes banner-drop{0%{opacity:0;transform:translateY(-24px)}70%{opacity:1;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes banner-text-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}@media(prefers-reduced-motion:reduce){.overlay-banner .banner-block,.overlay-banner .banner-text{animation:none!important;opacity:1;transform:translate(0)}}.overlay-config-page{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:24px;padding:32px;align-items:start}.overlay-config-panel{border:1px solid var(--border-strong);border-radius:var(--radius-lg);padding:20px;background:var(--panel-bg);display:flex;flex-direction:column;gap:16px}.overlay-config-title{font-size:var(--base-size-28);margin:0}.overlay-config-subtitle{margin:0;color:var(--text-muted)}.overlay-config-group{display:flex;flex-direction:column;gap:6px}.overlay-config-label{font-size:var(--base-size-12);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.overlay-config-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.overlay-config-row--toggles{grid-template-columns:repeat(3,minmax(0,1fr))}.overlay-config-toggle{display:inline-flex;align-items:center;gap:8px;font-size:var(--base-size-14);color:var(--text-primary)}.overlay-config-warning{border:1px solid var(--info-border);background:var(--info-bg);color:var(--info-text);padding:10px 12px;border-radius:var(--radius-sm);font-size:var(--base-size-14)}.overlay-config-url{gap:10px}.overlay-config-url .btn{align-self:flex-start}.overlay-config-hint{font-size:var(--base-size-12);color:var(--text-muted)}.overlay-config-preview{display:flex;justify-content:center;align-items:flex-start}.overlay-preview-frame{padding:20px;border-radius:var(--radius-lg);border:1px dashed var(--border-strong);background:#f4f5f7;max-width:100%;overflow:auto}.overlay-preview-iframe{border:none;display:block;background:transparent}@media(max-width:960px){.overlay-config-page{grid-template-columns:1fr;padding:20px}.overlay-config-row,.overlay-config-row--toggles{grid-template-columns:1fr}}.toast-container{position:fixed;top:20px;left:50%;transform:translate(-50%);display:grid;gap:8px;z-index:9999;pointer-events:none}.toast-item{min-width:240px;max-width:420px;padding:10px 12px;border-radius:10px;background:#f3f7ff;color:#1b3a6f;border:1px solid #dbe7ff;box-shadow:0 12px 24px #00000014;font-size:14px;transform:translateY(-6px);opacity:0;animation:toast-in .2s ease forwards,toast-out .2s ease 2.3s forwards;pointer-events:auto}.toast-item.success{background:#f1f8f1;border-color:#d7ebd7;color:#2f6b2c}.toast-item.error{background:#fdf1f3;border-color:#f6d9dd;color:#b4434c}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{to{opacity:0;transform:translateY(-6px)}}
