code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.language-selector{position:relative}.lang-trigger{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:8px;cursor:pointer;display:flex;gap:4px;padding:6px 8px;touch-action:manipulation;transition:background .2s ease}.lang-trigger:hover{background:#f5f5f7}.lang-trigger:active{background:#e8e8ed}.lang-flag{font-size:1.1rem;line-height:1}.lang-code{color:#1d1d1f;font-size:.85rem;font-weight:600;letter-spacing:.02em}.lang-code-option{background:#e8f4fd;border-radius:4px;color:#0071e3;font-size:.8rem;font-weight:600;min-width:28px;padding:2px 6px;text-align:center}.lang-trigger.changing{opacity:.6;pointer-events:none}.lang-trigger.changing .lang-code{animation:pulse .5s ease-in-out infinite}.lang-arrow{color:#86868b;transition:transform .2s ease}.lang-arrow.open{transform:rotate(180deg)}.lang-dropdown{animation:dropdownFadeIn .2s ease;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background:#fffffffa;border-radius:12px;box-shadow:0 4px 20px #0000001f,0 0 0 1px #0000000d;margin-top:8px;min-width:140px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1010}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.lang-option{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;cursor:pointer;display:flex;gap:10px;padding:12px 14px;text-align:left;touch-action:manipulation;transition:background .15s ease;width:100%}.lang-option:hover{background:#f5f5f7}.lang-option:active{background:#e8e8ed}.lang-option.active{background:#e8f4fd}.lang-option .lang-flag{font-size:1rem}.lang-option .lang-code-option{flex-shrink:0}.lang-name{color:#1d1d1f;flex:1 1;font-size:.9rem}.lang-check{color:#0071e3;font-weight:600}@media (max-width:768px){.lang-dropdown{right:-.5rem}}.app-header{background-color:#fff;border-bottom:1px solid #e5e5e5;left:0;position:fixed;right:0;top:0;transition:background-color .3s ease,box-shadow .3s ease,border-color .3s ease;z-index:1000}.app-header.scrolled{box-shadow:0 1px 3px #d1d1d6}.app-header.dropdown-open,.app-header.scrolled{background-color:#fff}.nav-container{align-items:center;display:flex;height:44px;justify-content:space-between;margin:0 auto;max-width:980px;padding:0 22px}.logo{-webkit-tap-highlight-color:transparent;color:#1d1d1f;flex-shrink:0;font-size:1.25rem;font-weight:600;letter-spacing:-.02em;margin-right:auto;position:relative;text-decoration:none;touch-action:manipulation;transition:color .3s ease;z-index:1005}.logo:hover{color:#3b82f6}.logo:active{color:#2563eb}.logo-container{align-items:center;display:flex;flex-shrink:0;gap:8px;margin-right:auto;position:relative;z-index:1005}.logo.subdomain-logo{color:#3b82f6;color:var(--color-primary,#3b82f6);font-size:1.25rem;font-weight:700;margin-right:0}.logo-suffix{color:#86868b;font-size:.75rem;font-weight:400;text-decoration:none;transition:color .2s ease}.logo-suffix:hover{color:#1d1d1f}.main-nav{display:flex;flex:1 1;justify-content:center}.main-nav,.main-nav *,.nav-menu{opacity:1!important}.nav-menu{display:flex;gap:0;list-style:none;margin:0;padding:0}.nav-item{opacity:1!important;position:relative}.nav-link{align-items:center;background:none;border:none;color:#1d1d1f;cursor:pointer;display:flex;font-size:12px;font-weight:400;height:44px;line-height:44px;opacity:1!important;padding:0 12px;text-decoration:none;transition:none!important;white-space:nowrap}.nav-link:hover{color:#3b82f6;opacity:1!important}.nav-link.active{font-weight:500}.nav-actions{align-items:center;display:flex;gap:16px;z-index:1005}.nav-actions,.nav-item.has-dropdown{position:relative}.nav-item.has-dropdown:hover .nav-link{color:#3b82f6}.portal-container{left:0;pointer-events:none;position:fixed;top:0;z-index:99999}.portal-container *{pointer-events:auto}.portal-dropdown{animation:portalFadeIn .15s ease-out}.portal-dropdown-content{background:#fff;border:1px solid #d1d1d6;border-radius:14px;box-shadow:0 4px 24px #00000026,0 2px 8px #0000001a;min-width:200px;padding:8px}.portal-dropdown-item{align-items:center;border-radius:8px;color:#1d1d1f;display:flex;font-size:14px;gap:12px;padding:10px 12px;text-decoration:none;transition:background-color .2s ease}.portal-dropdown-item:hover{background-color:#f0f0f2}.portal-dropdown-item .dropdown-icon{align-items:center;display:inline-flex;font-size:16px;text-align:center;width:24px}@keyframes portalFadeIn{0%{opacity:0;transform:translateX(-50%) translateY(-4px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.mobile-submenu{display:none}.user-menu-dropdown{position:relative}.user-menu-trigger{-webkit-tap-highlight-color:transparent!important;align-items:center!important;background:#0000!important;background-color:initial!important;border:none!important;border-radius:980px!important;color:#1d1d1f!important;cursor:pointer!important;display:flex!important;gap:8px!important;opacity:1!important;padding:4px 10px!important;touch-action:manipulation!important;transition:none!important}.user-menu-trigger:hover{background:#f5f5f7!important;background-color:#f5f5f7!important;color:#1d1d1f!important;opacity:1!important}.user-menu-trigger:active{background:#ebebed!important;background-color:#ebebed!important;color:#1d1d1f!important;opacity:1!important}.user-avatar-small{align-items:center!important;background:linear-gradient(135deg,#3b82f6,#8b5cf6)!important;border-radius:50%!important;color:#fff!important;display:flex!important;font-weight:600!important;height:28px!important;justify-content:center!important;width:28px!important}.user-avatar-small,.user-name{font-size:12px!important;opacity:1!important}.user-name{color:#1d1d1f!important;font-weight:500!important}.dropdown-arrow{transition:transform .3s ease}.dropdown-arrow.open{transform:rotate(180deg)}.user-dropdown-menu{opacity:0;padding-top:8px;pointer-events:none;position:absolute;right:0;top:100%;transform:translateY(10px);transition:all .3s ease;visibility:hidden;z-index:1001}@media (min-width:834px){.user-menu-dropdown:hover .user-dropdown-menu{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}}.user-menu-dropdown.open .user-dropdown-menu{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}.user-dropdown-content{backdrop-filter:none;-webkit-backdrop-filter:none;background:#fff;border:1px solid #d1d1d6;border-radius:14px;box-shadow:0 4px 24px #c8c8cd,0 2px 8px #d8d8dd;min-width:280px;padding:8px}.user-dropdown-item{align-items:center;background:#0000;border:none;border-radius:8px;color:#1d1d1f;cursor:pointer;display:flex;font-size:14px;gap:12px;padding:10px 12px;text-decoration:none;transition:background-color .2s ease;width:100%}.user-dropdown-item:hover{background-color:#f0f0f2}.user-dropdown-item.logout{color:#ff3b30}.user-dropdown-item.logout:hover{background-color:#ffebea}.user-dropdown-item .dropdown-icon{font-size:16px;text-align:center;width:24px}.admin-user-info{padding:8px 12px}.user-info-header{gap:12px}.user-avatar,.user-info-header{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;color:#fff;flex-shrink:0;font-size:18px;font-weight:600;height:44px;justify-content:center;width:44px}.user-details{display:flex;flex-direction:column;gap:2px;min-width:0}.user-name-display{color:#1d1d1f;font-size:14px;font-weight:600}.user-email-display,.user-name-display{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email-display{color:#86868b;font-size:12px}.user-tier-badge{background:#eff6ff;border-radius:980px;color:#3b82f6;display:inline-block;font-size:11px;font-weight:500;margin-top:2px;padding:2px 8px;width:-webkit-fit-content;width:fit-content}.dropdown-divider{background:#ebebed;height:1px;margin:8px 0}.tier-simulation-section{padding:8px 12px}.tier-simulation-label{color:#86868b;display:block;font-size:11px;font-weight:600;letter-spacing:.02em;margin-bottom:8px;text-transform:uppercase}.tier-buttons{display:flex;flex-direction:column;gap:4px}.tier-btn{background:#fff;border:1px solid #e5e5e5;border-radius:8px;color:#1d1d1f;cursor:pointer;font-size:13px;font-weight:400;padding:8px 12px;text-align:left;transition:all .2s ease;width:100%}.tier-btn:hover{background:#f0f0f2;border-color:#d4d4d8}.tier-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff;font-weight:500}.viewing-as-indicator{animation:pulse 2s infinite;font-size:12px;margin-left:4px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.viewing-as-notice{background:#fff3cd;border-radius:8px;color:#856404;font-size:12px;margin-top:12px;padding:8px 12px;text-align:center}.viewing-as-notice strong{font-weight:600}.login-btn{-webkit-tap-highlight-color:transparent;background-color:#3b82f6;border-radius:980px;color:#fff;display:inline-block;font-size:12px;font-weight:500;padding:8px 16px;position:relative;text-decoration:none;touch-action:manipulation;transition:all .3s ease;z-index:1005}.login-btn:hover{background-color:#2563eb}.login-btn:active{background-color:#1d4ed8;transform:scale(.98)}.mobile-menu-btn,.mobile-nav-panel,.mobile-overlay{display:none}@media (max-width:833px){.app-header{z-index:9999}.nav-container{padding:0 16px}.main-nav{display:none!important}.mobile-overlay{-webkit-tap-highlight-color:transparent;animation:mobileOverlayFadeIn .2s ease;background:#0006;bottom:0;display:block;left:0;position:fixed;right:0;top:44px;z-index:10000}@keyframes mobileOverlayFadeIn{0%{opacity:0}to{opacity:1}}.mobile-menu-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;cursor:pointer;display:flex!important;flex-direction:column;gap:5px;height:44px;justify-content:center;padding:10px;touch-action:manipulation;width:44px}.mobile-menu-btn span{background-color:#1d1d1f;border-radius:1px;display:block;height:2px;transition:all .3s ease;width:20px}.mobile-menu-btn.active span:first-child{transform:rotate(45deg) translate(5px,5px)}.mobile-menu-btn.active span:nth-child(2){opacity:0}.mobile-menu-btn.active span:last-child{transform:rotate(-45deg) translate(5px,-5px)}.mobile-nav-panel{-webkit-overflow-scrolling:touch;background:#fff;box-shadow:-4px 0 20px #d8d8dd;display:block;height:calc(100vh - 44px);height:calc(100dvh - 44px);max-width:80%;overflow-y:auto;pointer-events:none;position:fixed;right:0;top:44px;transform:translateX(100%);transition:transform .3s ease;width:280px;z-index:10001}.mobile-nav-panel.open{pointer-events:auto;transform:translateX(0)}.mobile-nav-panel .nav-menu{display:flex;flex-direction:column;list-style:none;margin:0;padding:8px 0}.mobile-nav-panel .nav-item{border-bottom:none}.mobile-nav-panel .nav-link{-webkit-tap-highlight-color:transparent;align-items:center;background:none;border:none;color:#1d1d1f;cursor:pointer;display:flex;font-size:17px;font-weight:400;height:auto;justify-content:flex-start;line-height:1.3;padding:14px 24px;text-decoration:none;touch-action:manipulation;width:100%}.mobile-nav-panel .nav-link:active,.mobile-nav-panel .nav-link:hover{background:#f5f5f7;opacity:1}.mobile-nav-panel .nav-link.active{color:#3b82f6;font-weight:500}.mobile-nav-panel .nav-item.has-flyout .nav-link:after{border-bottom:2px solid #86868b;border-right:2px solid #86868b;content:"";height:8px;margin-left:auto;transform:rotate(45deg);transition:transform .3s ease;width:8px}.mobile-nav-panel .nav-item.has-flyout.flyout-open .nav-link:after{transform:rotate(-135deg)}.mobile-nav-panel .mobile-submenu{background:#f5f5f7;border-left:3px solid #3b82f6;display:none;margin-left:16px;max-height:0;overflow:hidden;transition:max-height .3s ease}.mobile-nav-panel .nav-item.has-flyout.flyout-open .mobile-submenu{display:block;max-height:200px}.mobile-nav-panel .mobile-submenu-link{-webkit-tap-highlight-color:transparent;border-bottom:1px solid #ebebed;color:#1d1d1f;display:block;font-size:15px;font-weight:400;padding:12px 24px 12px 20px;text-decoration:none;touch-action:manipulation}.mobile-nav-panel .mobile-submenu-link:last-child{border-bottom:none}.mobile-nav-panel .mobile-submenu-link:active{background:#f5f5f7}.logo{font-size:18px}.logo-container{gap:6px}.logo.subdomain-logo{font-size:18px}.logo-suffix{font-size:.65rem}.nav-actions{gap:4px}.user-name{display:none}.login-btn{font-size:13px;padding:8px 14px}.user-avatar-small{height:30px;width:30px}.user-menu-trigger{padding:4px 8px}.user-menu-trigger .dropdown-arrow{display:none}.user-dropdown-menu{left:8px;max-width:none;padding-top:8px;position:fixed;right:8px;top:44px;width:auto}.user-dropdown-content{border-radius:12px;max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px);overflow-y:auto}.tier-buttons{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr 1fr}.tier-btn{font-size:12px;padding:8px 10px}.language-selector{margin-right:0}}.notification-dropdown{position:relative}.notification-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:50%;cursor:pointer;display:flex;height:36px;justify-content:center;position:relative;touch-action:manipulation;transition:all .2s ease;width:36px}.notification-btn:hover{background:#f5f5f7}.notification-btn:active{background:#ebebed}.notification-icon{color:#1d1d1f;transition:color .2s ease}.notification-btn.has-unread .notification-icon{color:#3b82f6}.notification-badge{align-items:center;background:#ff3b30;border-radius:8px;color:#fff;display:flex;font-size:10px;font-weight:600;height:16px;justify-content:center;min-width:16px;padding:0 4px;position:absolute;right:4px;top:4px}.notification-panel{backdrop-filter:none;-webkit-backdrop-filter:none;background:#fff;border:1px solid #d1d1d6;border-radius:14px;box-shadow:0 4px 24px #c8c8cd,0 2px 8px #d8d8dd;display:flex;flex-direction:column;isolation:isolate;max-height:480px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);width:360px;z-index:1010}.notification-header{align-items:center;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;padding:16px 20px}.notification-header h3{color:#1d1d1f;font-size:14px;font-weight:600;margin:0}.mark-all-read{background:none;border:none;border-radius:6px;color:#3b82f6;cursor:pointer;font-size:12px;font-weight:500;padding:4px 8px;transition:background .2s ease}.mark-all-read:hover{background:#e8f0fe}.notification-list{flex:1 1;max-height:360px;overflow-y:auto}.notification-empty{align-items:center;color:#86868b;display:flex;flex-direction:column;justify-content:center;padding:48px 24px}.notification-empty .empty-icon{font-size:40px;margin-bottom:12px;opacity:.5}.notification-empty p{font-size:14px;margin:0}.notification-item{align-items:flex-start;border-bottom:1px solid #f0f0f2;cursor:pointer;display:flex;gap:12px;padding:14px 20px;position:relative;transition:background .2s ease}.notification-item:hover{background:#f5f5f7}.notification-item.unread{background:#eff6ff}.notification-item.unread:hover{background:#dbeafe}.notification-type-icon{align-items:center;background:#f0f0f2;border-radius:8px;display:flex;flex-shrink:0;font-size:16px;height:32px;justify-content:center;width:32px}.notification-item.unread .notification-type-icon{background:#3b82f6;color:#fff}.notification-content{flex:1 1;min-width:0}.notification-title{color:#1d1d1f;font-size:13px;font-weight:500;margin:0 0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-message{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6e6e73;display:-webkit-box;font-size:12px;margin:0 0 4px;overflow:hidden}.notification-time{color:#86868b;font-size:11px}.notification-delete{align-items:center;background:#0000;border:none;border-radius:50%;color:#86868b;cursor:pointer;display:flex;font-size:16px;height:20px;justify-content:center;opacity:0;position:absolute;right:12px;top:8px;transition:all .2s ease;width:20px}.notification-item:hover .notification-delete{opacity:1}.notification-delete:hover{background:#e5e5e7;color:#ff3b30}.notification-footer{border-top:1px solid #ebebed;padding:12px 20px;text-align:center}.notification-footer a{color:#3b82f6;font-size:13px;font-weight:500;text-decoration:none}.notification-footer a:hover{text-decoration:underline}@media (max-width:833px){.notification-panel{border-radius:0;border-bottom-left-radius:14px;border-bottom-right-radius:14px;left:0;max-height:calc(100vh - 44px);position:fixed;right:0;top:44px;width:100%}.notification-btn{height:32px;width:32px}.notification-badge{font-size:9px;height:14px;min-width:14px}.language-selector{margin-right:4px}}.community-container{margin:0 auto;max-width:1100px;padding:2rem}.community-layout{display:flex;gap:2rem}.community-main{flex:1 1;min-width:0;order:2}.community-header{margin-bottom:2rem}.community-header h1{font-size:2rem;font-weight:600;margin-bottom:.5rem}.community-header p{color:#666}.community-message{border-radius:8px;margin-bottom:1.5rem;padding:1rem;text-align:center}.community-message.success{background-color:#d1fae5;color:#065f46}.community-message.error{background-color:#fee2e2;color:#dc2626}.tabs{border-bottom:1px solid #e5e5e5;display:flex;gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem}.tab{-webkit-tap-highlight-color:transparent;background:none;border:none;border-radius:8px 8px 0 0;color:#666;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;touch-action:manipulation;transition:all .2s ease}.tab:hover{color:#333}.tab.active,.tab:hover{background-color:#f5f5f5}.tab.active{color:#1d1d1f}.write-btn{-webkit-tap-highlight-color:transparent;background-color:#1d1d1f;display:block;font-size:1rem;margin-bottom:1.5rem;padding:.75rem 1.5rem;touch-action:manipulation;transition:all .2s ease}.write-btn:hover{background-color:#333}.write-form{background-color:#fff;border:1px solid #e5e5e5;margin-bottom:1.5rem;padding:1.5rem}.write-form input,.write-form textarea{border:1px solid #e5e5e5;border-radius:8px;font-family:inherit;font-size:1rem;margin-bottom:1rem;padding:.875rem 1rem;transition:border-color .2s ease;width:100%}.write-form input:focus,.write-form textarea:focus{border-color:#333;outline:none}.write-form textarea{min-height:120px}.form-actions{gap:.75rem}.cancel-btn{-webkit-tap-highlight-color:transparent;background-color:initial;border:1px solid #e5e5e5;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;touch-action:manipulation;transition:all .2s ease}.cancel-btn:hover{background-color:#f5f5f5}.submit-btn{-webkit-tap-highlight-color:transparent;background-color:#1d1d1f;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;touch-action:manipulation;transition:background-color .2s ease}.submit-btn:hover{background-color:#333}.posts-list{gap:1rem}.no-posts{color:#999;padding:3rem}.post-item{-webkit-tap-highlight-color:transparent;background-color:#fff;border:1px solid #e5e5e5;border-radius:12px;cursor:pointer;padding:1.25rem;transition:all .2s ease}.post-item:hover{border-color:#ccc;box-shadow:0 2px 8px #0000000a}.post-item-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.post-item-header h3{font-size:1.1rem;font-weight:500;margin:0}.post-badge{display:inline-block;padding:.25rem .5rem}.post-badge.announcement{background-color:#eff6ff;color:#2563eb}.post-item-meta{color:#666;display:flex;font-size:.85rem;gap:1rem}.back-btn{background:none;border:none;font-size:.95rem;margin-bottom:1.5rem;padding:.5rem 0;transition:color .2s ease}.post-detail{background-color:#fff;border:1px solid #e5e5e5;margin-bottom:2rem;padding:2rem}.post-header{border-bottom:1px solid #e5e5e5;margin-bottom:1.5rem;padding-bottom:1rem}.post-header h1{font-size:1.5rem;font-weight:600;margin:.5rem 0}.post-meta{font-size:.9rem;gap:1rem}.post-content{color:#333;line-height:1.8}.post-content p{margin-bottom:1rem}.post-actions{border-top:1px solid #e5e5e5;display:flex;gap:.5rem;margin-top:1.5rem;padding-top:1rem}.delete-btn{background-color:#fee2e2;border:none;color:#dc2626;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.delete-btn:hover{background-color:#fecaca}.comments-section{background-color:#fff;border:1px solid #e5e5e5;padding:1.5rem}.comments-section h2{font-size:1.1rem;margin-bottom:1rem}.comment-form{margin-bottom:1.5rem}.comment-form textarea{border:1px solid #e5e5e5;font-family:inherit;font-size:.95rem;margin-bottom:.75rem;padding:.875rem 1rem;transition:border-color .2s ease}.comment-form textarea:focus{border-color:#333}.comment-form button{background-color:#1d1d1f;border-radius:6px;font-size:.9rem;padding:.625rem 1.25rem;transition:background-color .2s ease}.comment-form button:hover:not(:disabled){background-color:#333}.comment-form button:disabled{background-color:#999}.comments-list{gap:1rem}.no-comments{color:#999;padding:1rem}.comment-item{background-color:#f9f9f9;padding:1rem}.comment-header{font-size:.85rem;gap:.75rem;margin-bottom:.5rem}.comment-author{color:#333}.comment-date{color:#999}.comment-content{color:#555;line-height:1.5}.comment-delete-btn{background:none;color:#dc2626;font-size:.8rem;margin-top:.5rem;padding:.25rem .5rem}.category-sidebar{flex-shrink:0;order:1;width:220px}.category-sidebar h3{color:#666;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin-bottom:1rem;text-transform:uppercase}.category-list{list-style:none;margin:0;padding:0}.category-item{-webkit-tap-highlight-color:transparent;align-items:center;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:.25rem;padding:.75rem 1rem;touch-action:manipulation;transition:all .2s ease}.category-item:hover{background-color:#f5f5f5}.category-item.active{background-color:#1d1d1f;color:#fff}.category-item.active .category-count{background-color:#fff3;color:#fff}.category-count{background-color:#e5e5e5;border-radius:10px;color:#666;font-size:.8rem;padding:.2rem .5rem}.category-select{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;cursor:pointer;font-family:inherit;font-size:1rem;margin-bottom:1rem;padding:.875rem 1rem;width:100%}.category-select:focus{border-color:#333;outline:none}.post-badges{gap:.5rem;margin-bottom:.5rem}.post-badge.category-general{background-color:#e5e5e5;color:#666}.post-badge.category-question{background-color:#fef3c7;color:#b45309}.post-badge.category-discussion{background-color:#eff6ff;color:#2563eb}.post-badge.category-showcase{background-color:#d1fae5;color:#065f46}.post-badge.category-tip{background-color:#ede9fe;color:#6d28d9}.report-btn{background-color:#fff7ed;border:none;border-radius:6px;color:#c2410c;cursor:pointer;font-size:.85rem;font-weight:500;margin-left:.5rem;padding:.5rem 1rem;transition:all .2s ease}.report-btn:hover{background-color:#ffedd5}.comment-actions{display:flex;gap:.5rem;margin-top:.5rem}.comment-report-btn{background:none;border:none;color:#c2410c;cursor:pointer;font-size:.8rem;padding:.25rem .5rem}.comment-report-btn:hover{text-decoration:underline}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background-color:#fff;border-radius:12px;max-width:500px;padding:2rem;width:90%}.modal-content h3{font-size:1.25rem;font-weight:600;margin:0 0 1rem}.modal-content textarea{border:1px solid #e5e5e5;border-radius:8px;font-family:inherit;font-size:1rem;margin-bottom:1rem;padding:.875rem 1rem;resize:vertical;width:100%}.modal-content textarea:focus{border-color:#333;outline:none}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.form-group{margin:1rem 0}.form-group label{display:block;font-weight:500;margin-bottom:.5rem}.attachments-preview{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.attachment-chip{align-items:center;background-color:#f0f0f0;border-radius:16px;display:flex;font-size:.85rem;padding:.25rem .75rem}.attachment-chip span{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-chip button{background:none;border:none;color:#999;cursor:pointer;font-size:1.25rem;line-height:1;margin-left:.5rem}.attachment-chip button:hover{color:#333}.post-attachments{border-top:1px solid #e5e5e5;margin-top:1.5rem;padding-top:1.5rem}.post-attachments h4{font-weight:600;margin:0 0 1rem}.attachment-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.attachment-preview-image{border-radius:8px;height:100px;object-fit:cover;width:100%}.attachment-file{background-color:#f9f9f9;border-radius:8px;color:#333;display:block;font-size:.9rem;padding:1rem;text-align:center;text-decoration:none;word-break:break-all}.attachment-file:hover{background-color:#f0f0f0}@media (max-width:768px){.community-container{padding:1rem}.community-layout{flex-direction:column}.category-sidebar{margin-bottom:1rem;order:-1;width:100%}.category-list{display:flex;flex-wrap:wrap;gap:.5rem}.category-item{margin-bottom:0;padding:.5rem .75rem}.post-detail{padding:1.25rem}.post-item-meta{flex-wrap:wrap;gap:.5rem}}.youtube-trends{background:#f8fafc;margin:0 auto;max-width:1200px;min-height:100vh;padding:24px}.yt-header{align-items:flex-start;background:#1d1d1f;border-radius:12px;color:#fff;display:flex;justify-content:space-between;margin-bottom:24px;padding:24px}.yt-header-content{flex:1 1}.yt-title{color:#fff;font-size:1.5rem;font-weight:600;margin:0 0 8px}.yt-subtitle{color:#ffffffd9;font-size:.95rem;margin:0}.yt-status{background:#ffffff26;border-radius:8px;display:flex;gap:24px;padding:12px 20px}.status-item{align-items:center;display:flex;flex-direction:column;gap:4px}.status-label{color:#ffffffd9;font-size:12px;font-weight:500;text-transform:uppercase}.status-value{color:#fff;font-size:15px;font-weight:700}.yt-datetime-selector{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000f;display:flex;flex-direction:column;gap:12px;margin-bottom:16px;padding:16px}.yt-date-picker{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.date-label{color:#666;flex-shrink:0;font-size:.9rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.date-quick-buttons{display:flex;flex-wrap:wrap;gap:6px}.date-quick-btn{background:#0000;border:1px solid #e5e5e5;border-radius:8px;color:#666;cursor:pointer;font-size:.85rem;font-weight:500;min-height:36px;padding:.5rem .75rem;transition:all .2s ease}.date-quick-btn:hover{background:#f5f5f5;color:#333}.date-quick-btn.active{background:#1d1d1f;border-color:#1d1d1f;color:#fff}.date-input{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#1a1a1a;cursor:pointer;font-size:13px;min-height:36px;padding:8px 12px;transition:all .2s}.date-input:focus,.date-input:hover{border-color:#3b82f6}.date-input:focus{background:#fff;outline:none}.today-btn{background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;color:#666;cursor:pointer;font-size:15px;font-weight:500;min-height:44px;padding:10px 16px;transition:all .2s}.today-btn:hover{background:#eff6ff;border-color:#3b82f6;color:#3b82f6}.today-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.yt-time-slots{align-items:center;display:flex;gap:12px}.time-slot-label{color:#666;font-size:.9rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.time-slot-buttons{display:flex;flex-wrap:wrap;gap:8px}.time-slot-btn{background:#0000;border:1px solid #e5e5e5;border-radius:8px;color:#666;cursor:pointer;font-size:.95rem;font-weight:500;min-height:44px;padding:.75rem 1rem;position:relative;transition:all .2s ease}.time-slot-btn:hover{background:#f5f5f5;color:#333}.time-slot-btn.active{background:#1d1d1f;border-color:#1d1d1f;color:#fff}.time-slot-btn.current{border-color:#10b981}.current-badge{border-radius:4px;color:#fff;font-size:12px;font-weight:700;padding:2px 6px;right:-8px;top:-8px}.current-badge,.data-dot{background:#10b981;position:absolute}.data-dot{border-radius:50%;bottom:4px;height:6px;right:4px;width:6px}.yt-tabs{border-bottom:1px solid #e5e5e5;display:flex;gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem}.yt-tab{-webkit-tap-highlight-color:transparent;background:none;border:none;border-radius:8px 8px 0 0;color:#666;cursor:pointer;font-size:1rem;font-weight:500;min-height:44px;padding:.75rem 1.5rem;transition:all .2s ease}.yt-tab:hover{background-color:#f5f5f5;color:#333}.yt-tab.active{background-color:#f5f5f5;color:#1d1d1f}.yt-tab:focus{outline:2px solid #1d1d1f;outline-offset:2px}.yt-tab:disabled{background:#f8fafc;color:#9ca3af;cursor:not-allowed}.yt-admin-controls{background:#f5f5f5;border:1px solid #e5e5e5;border-radius:8px;display:flex;gap:.75rem;margin-bottom:1rem;padding:1rem}.admin-btn{background:#1d1d1f;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;min-height:44px;padding:.75rem 1.5rem;transition:all .2s ease}.admin-btn:hover{background:#333}.admin-btn:active{background:#444}.admin-btn:disabled{background:#999;color:#ccc;cursor:not-allowed}.yt-content{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000f;padding:24px}.yt-loading{color:#666;padding:48px}.yt-error,.yt-loading{font-size:15px;text-align:center}.yt-error{background:#fee2e2;border-radius:8px;color:#dc2626;padding:24px}.yt-empty{color:#666;padding:48px;text-align:center}.yt-empty p{font-size:15px;margin:0 0 8px}.yt-empty-hint{color:#767676;font-size:12px}.yt-empty-inline{color:#666;font-size:15px;margin:0}.section-header h2{color:#1a1a1a;font-size:24px;font-weight:700;margin:0 0 8px}.section-desc{color:#666;font-size:15px;margin:0}.slot-trend-summary{background:#eff6ff;border-left:4px solid #3b82f6;border-radius:8px;margin-top:12px;padding:16px}.slot-trend-summary p{color:#1a1a1a;font-size:15px;line-height:1.6;margin:0 0 8px}.hot-video-list{display:flex;flex-direction:column;gap:12px}.hot-video-card{align-items:center;background:#f8fafc;border:2px solid #0000;border-radius:8px;display:flex;gap:16px;padding:16px;transition:all .2s}.hot-video-card:hover{background:#eff6ff;border-color:#3b82f6}.hot-video-card.is-hot{background:#fee2e2;border-color:#ef4444}.hot-rank{align-items:center;background:#3b82f6;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:15px;font-weight:700;height:32px;justify-content:center;width:32px}.hot-video-card.is-hot .hot-rank{background:#ef4444;color:#fff}.hot-video-info{flex:1 1;min-width:0}.hot-video-title{color:#1a1a1a;display:block;font-size:15px;font-weight:600;line-height:1.5;margin-bottom:8px;overflow:hidden;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.hot-video-title:hover{color:#3b82f6}.hot-video-meta{align-items:center;color:#666;display:flex;font-size:15px;gap:16px}.hot-channel{color:#666}.hot-stats{align-items:center;display:flex;gap:8px}.change-rate{border-radius:4px;font-size:12px;font-weight:600;padding:2px 6px}.change-rate.positive{background:#dcfce7;color:#16a34a}.change-rate.negative{background:#fee2e2;color:#dc2626}.hot-score-badge{align-items:center;background:#f5f5f5;border:1px solid #e5e5e5;border-radius:8px;display:flex;flex-direction:column;gap:4px;min-width:60px;padding:8px 12px}.hot-score-badge.ultra{background:#1d1d1f;border-color:#1d1d1f}.hot-score-badge.ultra .hot-label,.hot-score-badge.ultra .hot-score{color:#fff}.hot-score-badge.hot{background:#fee2e2;border-color:#ef4444}.hot-score-badge.rising{background:#dcfce7;border-color:#10b981}.hot-label{color:#666;font-size:.7rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.hot-score-badge.hot .hot-label{color:#ef4444}.hot-score-badge.rising .hot-label{color:#10b981}.hot-score{color:#1d1d1f;font-size:1rem;font-weight:700}.hot-score-badge.hot .hot-score{color:#ef4444}.hot-score-badge.rising .hot-score{color:#10b981}.trending-video-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.trending-video-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px;transition:transform .2s,box-shadow .2s}.trending-video-card:hover{box-shadow:0 8px 24px #0000001a;transform:translateY(-4px)}.trending-video-card.is-hot{background:#fee2e2;border-color:#ef4444}.trending-video-card.is-rising{background:#d1fae5;border-color:#10b981}.trending-video-card a{color:inherit;text-decoration:none}.trending-video-header{display:flex;gap:8px;margin-bottom:8px}.hot-badge{background:#1d1d1f}.hot-badge,.rising-badge{border-radius:4px;color:#fff;display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.5px;padding:.25rem .5rem;text-transform:uppercase}.rising-badge{background:#10b981}.trending-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#1a1a1a;display:-webkit-box;font-size:15px;font-weight:600;line-height:1.5;margin:0 0 8px;overflow:hidden}.trending-channel{color:#666;font-size:15px;margin:0 0 12px}.trending-stats{color:#666;display:flex;font-size:.8rem;gap:12px;margin-bottom:8px}.trending-stats .stat-item{align-items:center;display:flex;gap:4px}.trending-stats .stat-label{color:#999;font-weight:500}.change-indicator{align-items:center;background:#d1fae5;border-radius:8px;display:flex;gap:8px;margin-bottom:8px;padding:8px}.change-label{color:#666;font-size:12px}.extracted-keywords{display:flex;flex-wrap:wrap;gap:4px}.keywords-section{margin-bottom:32px}.keywords-section h3{color:#1a1a1a;font-size:24px;font-weight:600;margin:0 0 16px}.auto-keywords-cloud{background:#f8fafc;border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;padding:16px}.auto-keyword-tag{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:inline-flex;flex-direction:column;font-size:15px;padding:8px 16px;transition:all .2s}.auto-keyword-tag:hover{background:#eff6ff;border-color:#3b82f6}.auto-keyword-tag.hot{background:#fee2e2;border-color:#ef4444;color:#1a1a1a}.auto-keyword-tag small{color:#666;font-size:12px;margin-top:4px}.keyword-stats-list{display:flex;flex-direction:column;gap:8px}.keyword-stat-item{align-items:center;background:#f8fafc;border-radius:8px;display:flex;gap:16px;padding:12px 16px;transition:all .2s}.keyword-stat-item:hover{background:#eff6ff}.keyword-stat-item.is-hot{background:#fee2e2;border:1px solid #ef4444}.keyword-rank{background:#3b82f6;border-radius:50%;color:#fff;font-size:12px;font-weight:700;height:28px;justify-content:center;width:28px}.keyword-name,.keyword-rank{align-items:center;display:flex}.keyword-name{color:#1a1a1a;flex:1 1;font-size:15px;font-weight:500;gap:6px}.hot-indicator{background:#1d1d1f;border-radius:3px;color:#fff;font-size:.65rem;font-weight:600;padding:2px 4px;text-transform:uppercase}.keyword-videos{color:#666;font-size:15px}.keyword-views{color:#3b82f6;font-size:15px;min-width:80px}.keyword-change,.keyword-views{font-weight:600;text-align:right}.keyword-change{font-size:12px;min-width:70px}.keyword-change.up{color:#16a34a}.keyword-change.down{color:#dc2626}.keyword-change.stable{color:#666}.keyword-hot-score{align-items:center;display:flex;gap:8px;width:100px}.hot-bar{background:linear-gradient(90deg,#3b82f6,#ef4444);border-radius:4px;flex:1 1;height:8px}.keyword-hot-score span{color:#666;font-size:12px;font-weight:600;min-width:24px}.keyword-source{border-radius:4px;font-size:.65rem;font-weight:600;letter-spacing:.3px;min-width:32px;padding:2px 6px;text-align:center;text-transform:uppercase}.keyword-source.auto{background:#eff6ff;color:#2563eb}.keyword-source.user{background:#f5f5f5;color:#666}.keyword-stat-item.is-auto{background:#f0fdf4;border-left:3px solid #22c55e}.keyword-stat-item.is-auto:hover{background:#dcfce7}.keyword-rank.top3{background:linear-gradient(135deg,#f59e0b,#ef4444);font-size:14px;height:32px;width:32px}.keyword-legend{border-top:1px solid #e5e5e5;display:flex;gap:24px;justify-content:center;margin-top:24px;padding-top:16px}.legend-item{align-items:center;color:#666;display:flex;font-size:.85rem;gap:8px}.legend-badge{border-radius:4px;font-size:.65rem;font-weight:600;padding:2px 6px;text-transform:uppercase}.legend-badge.user{background:#f5f5f5;color:#666}.legend-badge.auto{background:#eff6ff;color:#2563eb}.active-keywords{display:flex;flex-wrap:wrap;gap:8px}.keyword-tag{align-items:center;background:#eff6ff;border-radius:20px;color:#3b82f6;display:inline-flex;font-size:15px;gap:4px;padding:6px 12px}.keyword-tag small{color:#666;font-size:12px}.report-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:24px}.period-selector{display:flex;gap:8px}.generate-report-btn{background:#1d1d1f;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;min-height:44px;padding:.75rem 1.5rem;transition:all .2s ease}.generate-report-btn:hover{background:#333}.generate-report-btn:active{background:#444}.period-btn{background:#0000;border:1px solid #e5e5e5;border-radius:8px;color:#666;cursor:pointer;font-size:.95rem;font-weight:500;min-height:44px;padding:.75rem 1.5rem;transition:all .2s ease}.period-btn:hover{background:#f5f5f5;color:#333}.period-btn.active{background:#1d1d1f;border-color:#1d1d1f;color:#fff}.trend-summary{background:#f8fafc;border-radius:8px;padding:24px}.trend-date{border-bottom:1px solid #e2e8f0;color:#666;font-size:12px;margin-bottom:16px;padding-bottom:12px}.trend-content{color:#1a1a1a;font-size:15px;line-height:1.6}.trend-content p{margin:0 0 12px}.overall-insight{background:#1d1d1f;border-radius:12px;color:#fff;margin-bottom:1.5rem;padding:1.5rem}.overall-insight h3{color:#fff;font-size:1.25rem;font-weight:600;margin:0 0 12px}.overall-insight p{color:#ffffffe6;font-size:.95rem;line-height:1.6;margin:0}.recommendations-list{display:flex;flex-direction:column;gap:16px}.recommendation-card{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:8px;padding:24px}.rec-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.rec-topic{color:#1a1a1a;font-size:24px;font-weight:600;margin:0}.rec-interest{border-radius:20px;font-size:.75rem;font-weight:500;padding:.35rem .75rem}.rec-interest.interest-high{background:#1d1d1f;color:#fff}.rec-interest.interest-medium{background:#f5f5f5;color:#666}.rec-interest.interest-low{background:#e5e5e5;color:#999}.rec-reason{color:#666;font-size:15px;line-height:1.6;margin:0 0 12px}.rec-keywords{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.rec-keyword{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#666;font-size:12px;padding:6px 12px}.rec-tips{color:#1a1a1a;font-size:15px;margin:0;padding-left:24px}.rec-tips li{line-height:1.6;margin-bottom:8px}@media (max-width:768px){.youtube-trends{padding:16px}.yt-header{flex-direction:column;gap:16px}.yt-status{justify-content:space-around;width:100%}.yt-time-slots{align-items:flex-start;flex-direction:column}.time-slot-buttons{justify-content:space-between;width:100%}.yt-tabs{flex-wrap:wrap}.yt-tab{flex:1 1 45%;font-size:15px;min-height:44px;padding:12px}.hot-video-card,.hot-video-meta{align-items:flex-start;flex-direction:column}.hot-video-meta{gap:8px}.hot-score-badge{align-self:flex-end}.trending-video-grid{grid-template-columns:1fr}.keyword-stat-item{flex-wrap:wrap}.keyword-change,.keyword-hot-score,.keyword-views{min-width:auto;width:auto}.rec-header{align-items:flex-start;flex-direction:column;gap:8px}.keywords-section h3,.rec-topic,.section-header h2,.yt-title{font-size:24px}}.sidebar{background:#fff;border-right:1px solid #e5e5e5;border-right:1px solid var(--color-border,#e5e5e5);display:flex;flex-direction:column;flex-shrink:0;height:100%;transition:width .2s ease-in-out;width:240px}.sidebar.collapsed{width:56px}.sidebar-header{border-bottom:1px solid #e5e5e5;border-bottom:1px solid var(--color-border,#e5e5e5);justify-content:space-between;min-height:56px;padding:16px}.sidebar-brand,.sidebar-header{align-items:center;display:flex}.brand-title{color:#1d1d1f;color:var(--color-text-primary,#1d1d1f);font-size:.9375rem;font-weight:600;letter-spacing:-.01em;text-decoration:none}.brand-title:hover{color:#3b82f6;color:var(--color-primary,#3b82f6)}.sidebar-toggle{align-items:center;background:#0000;border:none;border-radius:6px;color:#86868b;color:var(--color-text-tertiary,#86868b);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s ease;width:28px}.sidebar-toggle:hover{background:#f5f5f7;background:var(--color-surface,#f5f5f7);color:#1d1d1f;color:var(--color-text-primary,#1d1d1f)}.sidebar.collapsed .sidebar-toggle{transform:rotate(180deg)}.sidebar-nav{flex:1 1;overflow-y:auto;padding:12px 8px}.nav-item{align-items:center;background:#0000;border:none;border-radius:8px;color:#666;color:var(--color-text-secondary,#666);cursor:pointer;display:flex;font-size:.875rem;font-weight:450;gap:10px;padding:10px 12px;text-align:left;text-decoration:none;transition:all .15s ease;width:100%}.nav-item:hover{background:#f5f5f7;background:var(--color-surface,#f5f5f7);color:#1d1d1f;color:var(--color-text-primary,#1d1d1f)}.nav-item.active{background:#3b82f614}.nav-item.active,.nav-item.active .nav-icon{color:#3b82f6;color:var(--color-primary,#3b82f6)}.nav-icon{align-items:center;color:#86868b;color:var(--color-text-tertiary,#86868b);display:flex;flex-shrink:0;height:20px;justify-content:center;transition:color .15s ease;width:20px}.nav-item:hover .nav-icon{color:#1d1d1f;color:var(--color-text-primary,#1d1d1f)}.nav-label{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-chevron{align-items:center;color:#86868b;color:var(--color-text-tertiary,#86868b);display:flex;justify-content:center;transition:transform .2s ease}.nav-chevron.expanded{transform:rotate(90deg)}.nav-group{margin-bottom:4px}.nav-group-header{margin-bottom:2px}.nav-submenu{border-left:1px solid #e5e5e5;border-left:1px solid var(--color-border,#e5e5e5);margin-left:10px;padding-left:20px}.nav-subitem{align-items:center;border-radius:6px;color:#666;color:var(--color-text-secondary,#666);display:flex;font-size:.8125rem;font-weight:400;gap:8px;padding:8px 10px;text-decoration:none;transition:all .15s ease}.nav-subitem:hover{background:#f5f5f7;background:var(--color-surface,#f5f5f7);color:#1d1d1f;color:var(--color-text-primary,#1d1d1f)}.nav-subitem.active{background:#3b82f614;color:#3b82f6;color:var(--color-primary,#3b82f6)}.nav-subitem .nav-icon{height:16px;width:16px}.nav-badge{border-radius:4px;font-size:.625rem;font-weight:500;letter-spacing:.02em;padding:2px 6px;text-transform:uppercase}.nav-badge.private{background:#ff95001f;color:#c70}.sidebar-spacer{flex:1 1}.sidebar-footer{border-top:1px solid #e5e5e5;border-top:1px solid var(--color-border,#e5e5e5);padding:12px}.back-link{border-radius:6px;color:#86868b;color:var(--color-text-tertiary,#86868b);display:block;font-size:.8125rem;padding:8px 12px;text-align:center;text-decoration:none;transition:all .15s ease}.back-link:hover{background:#f5f5f7;background:var(--color-surface,#f5f5f7);color:#666;color:var(--color-text-secondary,#666)}.sidebar.collapsed .nav-item{justify-content:center;padding:10px}.sidebar.collapsed .nav-icon{margin:0}.sidebar.collapsed .nav-group{margin-bottom:0}.sidebar.collapsed .sidebar-header{justify-content:center;padding:14px}.nav-subgroup{margin-bottom:4px}.nav-categories{display:flex;flex-wrap:wrap;gap:4px;padding:8px 0 8px 26px}.nav-category{align-items:center;background:#0000;border:1px solid #e5e5e5;border:1px solid var(--color-border,#e5e5e5);border-radius:12px;color:#666;color:var(--color-text-secondary,#666);cursor:pointer;display:inline-flex;font-size:.75rem;padding:4px 10px;transition:all .15s ease}.nav-category:hover{border-color:#666;border-color:var(--color-text-secondary,#666)}.nav-category.active{background:#1d1d1f;border-color:#1d1d1f;color:#fff}@media (max-width:768px){.sidebar{bottom:0;box-shadow:2px 0 8px #0000001a;left:0;position:fixed;top:44px;transform:translateX(-100%);z-index:50}.sidebar.open{transform:translateX(0)}.sidebar.collapsed{width:240px}}.test-page-layout{display:flex;min-height:calc(100vh - 44px)}.test-page-content,.test-page-layout{background:#fff;background:var(--color-background,#fff)}.test-page-content{flex:1 1;overflow-y:auto}.section-container{margin:0;max-width:100%;padding:24px 32px}.section-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border,#e2e8f0);margin-bottom:24px;padding-bottom:16px}.section-header h1{color:#1d1d1f;color:var(--color-text-primary,#1d1d1f);font-size:1.5rem;font-weight:600;margin:0 0 8px}.section-header p{color:#666;color:var(--color-text-secondary,#666);font-size:.875rem;margin:0}.message{border-radius:8px;font-size:.875rem;margin-bottom:16px;padding:12px 16px}.message.success{background:#34c7591a;border:1px solid #34c75933;color:#34c759}.message.error{background:#ff3b301a;border:1px solid #ff3b3033;color:#ff3b30}.write-btn{align-items:center;background:#3b82f6;background:var(--color-primary,#3b82f6);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:8px;margin-bottom:24px;padding:10px 20px;transition:background-color .2s}.write-btn:hover{background:#2563eb;background:var(--color-primary-hover,#2563eb)}.write-form{background:#f5f5f7;background:var(--color-surface,#f5f5f7);border-radius:12px;margin-bottom:24px;padding:20px}.write-form input,.write-form select,.write-form textarea{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--color-border,#e2e8f0);border-radius:8px;color:#1d1d1f;color:var(--color-text-primary,#1d1d1f);font-size:.875rem;margin-bottom:12px;padding:12px 16px;width:100%}.write-form input:focus,.write-form select:focus,.write-form textarea:focus{border-color:#3b82f6;border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 3px #3b82f61a;outline:none}.write-form textarea{min-height:150px;resize:vertical}.category-select{max-width:200px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.cancel-btn,.submit-btn{border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;padding:10px 20px;transition:all .2s}.cancel-btn{background:#0000;border:1px solid #e2e8f0;border:1px solid var(--color-border,#e2e8f0);color:#666;color:var(--color-text-secondary,#666)}.cancel-btn:hover{background:#f5f5f7;background:var(--color-surface,#f5f5f7)}.submit-btn{background:#3b82f6;background:var(--color-primary,#3b82f6);border:none;color:#fff}.submit-btn:hover{background:#2563eb;background:var(--color-primary-hover,#2563eb)}.category-tabs{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border,#e2e8f0);display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding-bottom:16px}.category-tab{align-items:center;background:#0000;border:1px solid #e2e8f0;border:1px solid var(--color-border,#e2e8f0);border-radius:20px;color:#666;color:var(--color-text-secondary,#666);cursor:pointer;display:inline-flex;font-size:.875rem;gap:6px;padding:8px 14px;transition:all .2s}.category-tab:hover{border-color:#666;border-color:var(--color-text-secondary,#666)}.category-tab.active{background:#1d1d1f;border-color:#1d1d1f;color:#fff}.category-tab .count{background:#00000014;border-radius:10px;font-size:.75rem;padding:2px 6px}.category-tab.active .count{background:#fff3}.posts-list{display:flex;flex-direction:column;gap:12px}.no-posts{color:#767676;color:var(--color-text-tertiary,#767676);padding:48px 0;text-align:center}.post-card{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--color-border,#e2e8f0);border-radius:12px;cursor:pointer;padding:16px 20px;transition:all .2s}.post-card:hover{border-color:#3b82f6;border-color:var(--color-primary,#3b82f6);box-shadow:0 2px 8px #0000000d}.post-card-header{align-items:center;display:flex;gap:10px;margin-bottom:8px}.post-card-header h3{color:#1d1d1f;color:var(--color-text-primary,#1d1d1f);flex:1 1;font-size:1rem;font-weight:500;margin:0}.post-badge{border-radius:4px;flex-shrink:0;font-size:.75rem;font-weight:500;padding:4px 8px}.post-badge.announcement{background:#ff950026;color:#ff9500}.post-badge.category-general{background:#3b82f61a;color:#3b82f6}.post-badge.category-question{background:#8b5cf61a;color:#8b5cf6}.post-badge.category-info{background:#34c7591a;color:#34c759}.post-badge.category-chat{background:#ff3b301a;color:#ff3b30}.post-card-meta{align-items:center;color:#666;color:var(--color-text-secondary,#666);display:flex;font-size:.8125rem;gap:12px}.post-card-meta .author{font-weight:500}.back-btn{align-items:center;background:#0000;border:1px solid #e2e8f0;border:1px solid var(--color-border,#e2e8f0);border-radius:8px;color:#666;color:var(--color-text-secondary,#666);cursor:pointer;display:inline-flex;font-size:.875rem;gap:4px;margin-bottom:24px;padding:8px 16px;transition:all .2s}.back-btn:hover{background:#f5f5f7;background:var(--color-surface,#f5f5f7);color:#1d1d1f;color:var(--color-text-primary,#1d1d1f)}.post-detail{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--color-border,#e2e8f0);border-radius:12px;margin-bottom:24px;padding:24px}.post-detail-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border,#e2e8f0);margin-bottom:20px;padding-bottom:16px}.post-badges{display:flex;gap:8px;margin-bottom:12px}.post-detail-header h1{color:#1d1d1f;color:var(--color-text-primary,#1d1d1f);font-size:1.25rem;font-weight:600;margin:0 0 12px}.post-meta{align-items:center;color:#666;color:var(--color-text-secondary,#666);display:flex;font-size:.875rem;gap:12px}.post-meta .author{font-weight:500}.post-content{color:#1d1d1f;color:var(--color-text-primary,#1d1d1f);line-height:1.7}.post-content p{margin:0 0 12px}.post-content p:last-child{margin-bottom:0}.post-actions{border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border,#e2e8f0);margin-top:20px;padding-top:16px}.delete-btn{background:#0000;border:1px solid #ff3b30;border-radius:6px;color:#ff3b30;cursor:pointer;font-size:.8125rem;padding:8px 16px;transition:all .2s}.delete-btn:hover{background:#ff3b301a}.comments-section{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--color-border,#e2e8f0);border-radius:12px;padding:24px}.comments-section h2{color:#1d1d1f;color:var(--color-text-primary,#1d1d1f);font-size:1rem;font-weight:600;margin:0 0 20px}.comment-form{margin-bottom:20px}.comment-form textarea{border:1px solid #e2e8f0;border:1px solid var(--color-border,#e2e8f0);border-radius:8px;font-size:.875rem;margin-bottom:12px;min-height:80px;padding:12px 16px;resize:vertical;width:100%}.comment-form textarea:focus{border-color:#3b82f6;border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 3px #3b82f61a;outline:none}.comment-form button{background:#3b82f6;background:var(--color-primary,#3b82f6);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:10px 20px;transition:background-color .2s}.comment-form button:hover:not(:disabled){background:#2563eb;background:var(--color-primary-hover,#2563eb)}.comment-form button:disabled{cursor:not-allowed;opacity:.5}.comments-list{display:flex;flex-direction:column;gap:16px}.no-comments{color:#767676;color:var(--color-text-tertiary,#767676);margin:0;padding:24px 0;text-align:center}.comment-item{background:#f5f5f7;background:var(--color-surface,#f5f5f7);border-radius:8px;padding:16px}.comment-header{align-items:center;display:flex;gap:12px;margin-bottom:8px}.comment-author{color:#1d1d1f;color:var(--color-text-primary,#1d1d1f);font-size:.875rem;font-weight:500}.comment-date{color:#767676;color:var(--color-text-tertiary,#767676);font-size:.75rem}.comment-content{color:#1d1d1f;color:var(--color-text-primary,#1d1d1f);font-size:.875rem;line-height:1.6;margin:0}.comment-delete-btn{background:#0000;border:none;color:#ff3b30;cursor:pointer;font-size:.75rem;margin-top:8px;padding:4px 8px}.comment-delete-btn:hover{text-decoration:underline}.access-denied,.coming-soon{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:80px 20px;text-align:center}.access-denied .icon,.coming-soon .icon{font-size:4rem;margin-bottom:20px}.access-denied h2,.coming-soon h2{color:#1d1d1f;color:var(--color-text-primary,#1d1d1f);font-size:1.5rem;font-weight:600;margin:0 0 12px}.access-denied p,.coming-soon p{color:#666;color:var(--color-text-secondary,#666);font-size:.875rem;margin:0}@media (max-width:768px){.test-page-layout{flex-direction:column}.section-container{padding:16px}.post-card{padding:14px 16px}.comments-section,.post-detail{padding:20px}}:root{--font-size-title:24px;--font-size-body:15px;--font-size-caption:12px;--line-height-body:1.6;--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-text-primary:#1a1a1a;--color-text-secondary:#666;--color-text-tertiary:#767676;--color-background:#fff;--color-surface:#f8fafc;--color-border:#e2e8f0;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--button-height-md:44px;--border-radius-sm:6px;--border-radius-md:8px;--border-radius-lg:12px}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:var(--color-background);color:#1a1a1a;color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;line-height:var(--line-height-body);margin:0}.app{min-height:100vh}.app-content{padding-top:44px}a{color:#3b82f6;color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font-family:inherit}
/*# sourceMappingURL=main.ebbbfabb.css.map*/