:root{--font-display: "Space Grotesk", sans-serif;--font-body: "Sora", sans-serif;--bg-body: #fef6e4;--bg-page-gradient: radial-gradient(circle at top, #fef6e4 0%, #f6efe1 45%, #e9dcc8 100%);--text-main: #1f2933;--text-muted: rgba(31, 41, 51, .6);--border-light: rgba(31, 41, 51, .08);--glass-bg: rgba(255, 255, 255, .6);--card-bg: #fdf9ef;--card-shadow: rgba(31, 41, 51, .2);--sidebar-bg: rgba(255, 255, 255, .68);--modal-backdrop: rgba(17, 24, 39, .46);--modal-bg: #f7f7f6;--input-bg: #ffffff;--input-border: rgba(31, 41, 51, .18);--accent-color: #1f2933;--accent-text: #fef6e4;--brand-gradient-start: #ffb347;--brand-gradient-end: #f6654a}body.dark-mode{--bg-body: #0d1117;--bg-page-gradient: radial-gradient(circle at top, #161b22 0%, #0d1117 60%, #010409 100%);--text-main: #e6edf3;--text-muted: rgba(240, 246, 252, .6);--border-light: rgba(240, 246, 252, .1);--glass-bg: rgba(22, 27, 34, .7);--card-bg: #161b22;--card-shadow: rgba(0, 0, 0, .5);--sidebar-bg: rgba(22, 27, 34, .75);--modal-backdrop: rgba(0, 0, 0, .7);--modal-bg: #0d1117;--input-bg: #010409;--input-border: rgba(240, 246, 252, .15);--accent-color: #e6edf3;--accent-text: #0d1117;--brand-gradient-start: #ffb347;--brand-gradient-end: #f6654a}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0;font-family:var(--font-body);background:var(--bg-body);color:var(--text-main);overflow-x:hidden;transition:background .3s ease,color .3s ease}button,input{font-family:inherit}app-root .home-layout{width:100%}app-root .home-sidebar{position:fixed;top:92px;left:14px;z-index:5;width:68px;display:flex;flex-direction:column;gap:.6rem;padding:.55rem;border-radius:18px;background:var(--sidebar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-light);box-shadow:0 14px 34px var(--card-shadow);transition:width .24s ease,background .3s ease;overflow:hidden}app-root .home-sidebar:hover,app-root .home-sidebar:focus-within{width:210px}app-root .home-side-action{border:none;background:transparent;color:var(--text-main);opacity:.82;border-radius:12px;display:flex;align-items:center;gap:.65rem;width:100%;min-height:42px;padding:.5rem .55rem;cursor:pointer;text-align:left;font-family:var(--font-display);transition:background .2s ease,color .2s ease}app-root .home-side-action .side-icon{width:28px;min-width:28px;height:28px;border-radius:9px;background:#1f293314;display:grid;place-items:center}app-root .home-side-action .side-icon svg{width:16px;height:16px;fill:currentcolor}app-root .home-side-action .side-label{white-space:nowrap;max-width:0;opacity:0;overflow:hidden;transition:max-width .24s ease,opacity .2s ease}app-root .home-sidebar:hover .home-side-action .side-label,app-root .home-sidebar:focus-within .home-side-action .side-label{max-width:130px;opacity:1}app-root .home-side-action.active,app-root .home-side-action:hover:not(:disabled){background:#1f29331c}app-root .home-side-action:disabled{opacity:.65;cursor:not-allowed}app-root .home-side-new .side-icon{background:#f6654a2e;color:#c24a37}app-root .upload-modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:var(--modal-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}app-root .upload-modal{width:min(92vw,460px);border-radius:16px;border:1px solid var(--border-light);background:var(--modal-bg);box-shadow:0 20px 46px var(--card-shadow);padding:.95rem;display:grid;gap:.55rem}app-root .upload-modal-header{display:flex;justify-content:space-between;align-items:center}app-root .upload-modal-header h3{margin:0;font-size:1rem;font-family:var(--font-display)}app-root .upload-modal-close{border:1px solid var(--border-light);border-radius:8px;background:var(--input-bg);padding:.25rem .55rem;font-size:.74rem;cursor:pointer;color:var(--text-main)}app-root .upload-modal label{font-size:.78rem;font-family:var(--font-display);color:var(--text-muted)}app-root .upload-modal textarea{width:100%;min-height:120px;border-radius:10px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-main);resize:vertical;padding:.42rem .48rem;font-size:.82rem;font-family:var(--font-body)}app-root .upload-modal-counter{font-size:.7rem;color:var(--text-muted);text-align:right}app-root .upload-modal-preview{width:100%;border:1px solid var(--border-light);border-radius:10px;background:var(--input-bg);padding:.35rem}app-root .upload-modal-preview img,app-root .upload-modal-preview video{width:100%;max-height:220px;border-radius:8px;object-fit:contain;display:block}app-root .upload-modal-preview audio{width:100%;display:block}app-root .upload-modal-preview-fallback{margin:0;font-size:.76rem;color:var(--text-muted)}app-root .upload-modal-selected-name{font-size:.72rem;color:var(--text-muted);word-break:break-word}app-root .upload-modal-action{border:none;border-radius:10px;padding:.56rem .7rem;font-family:var(--font-display);background:var(--accent-color);color:var(--accent-text);cursor:pointer}app-root .upload-modal-action:disabled{opacity:.6;cursor:not-allowed}app-root .card-text-block-list{width:100%;display:flex;flex-direction:column;gap:0;min-height:0}app-root .card-text-block-container{width:100%;border-radius:0;border:none;background:transparent;padding:0;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;min-width:0;max-height:none;height:100%;overflow:hidden}app-root .card-text-block-container .card-text-block-list{flex:1 1 auto;min-height:0;max-height:100%;overflow-y:auto;padding-right:.1rem}app-root .card-text-block-item{border:none;border-bottom:1px solid var(--border-light);border-radius:0;width:100%;text-align:left;background:transparent;padding:.55rem .2rem;cursor:pointer;display:grid;gap:.3rem;transition:opacity .2s ease}app-root .card-text-block-item:last-child{border-bottom:none}app-root .card-text-block-item:hover{opacity:.78;background:transparent}app-root .card-text-block-item.is-expanded{background:transparent;border-radius:0;opacity:1}app-root .card-text-block-item.is-expanded .card-text-block-summary{display:none}app-root .card-text-block-summary{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;font-size:.92rem;font-family:var(--font-body);color:var(--text-main);line-height:1.5;white-space:normal}app-root .expand-indicator{display:inline;font-size:.6rem;color:var(--text-muted);opacity:.6;transition:transform .2s ease,opacity .2s ease;margin-left:.3rem;vertical-align:middle}app-root .card-text-block-item:hover .expand-indicator{opacity:1}app-root .card-text-block-item.is-expanded .expand-indicator{transform:rotate(180deg);opacity:.5}app-root .card-text-block-full{display:block;font-size:.92rem;font-family:var(--font-body);color:var(--text-main);line-height:1.55;overflow-wrap:anywhere;word-break:break-word;animation:text-expand .25s ease}@keyframes text-expand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}app-root .card-insert-text-block{display:inline-flex;align-items:center;width:fit-content;max-width:100%;gap:.34rem;padding:.22rem .26rem;border-radius:8px;border:1px solid var(--border-light);background:var(--btn-secondary-bg, #f2f2f1);color:var(--text-main);cursor:pointer}app-root .insert-text-icon{width:24px;min-width:24px;height:24px;border-radius:7px;background:var(--accent-color);color:var(--accent-text);display:grid;place-items:center}app-root .insert-text-icon svg{width:14px;height:14px;fill:currentcolor}app-root .insert-text-label{max-width:0;opacity:0;overflow:hidden;white-space:nowrap;font-size:.7rem;transition:max-width .2s ease,opacity .2s ease}app-root .card-insert-text-block:hover .insert-text-label,app-root .card-insert-text-block:focus-visible .insert-text-label,app-root .card-insert-text-block.is-open .insert-text-label{max-width:145px;opacity:1}app-root .card-insert-text-compose{width:100%;border-radius:10px;border:1px solid var(--border-light);background:var(--modal-bg);padding:.45rem;display:grid;gap:.35rem}app-root .card-insert-text-compose textarea{width:100%;resize:vertical;min-height:62px;border-radius:8px;border:1px solid var(--input-border);padding:.42rem .52rem;font-family:var(--font-body);font-size:.79rem;background:var(--input-bg);color:var(--text-main)}app-root .card-insert-text-compose-footer{display:flex;justify-content:space-between;align-items:center;gap:.35rem;font-size:.68rem;color:var(--text-muted)}app-root .card-insert-text-submit{border:none;border-radius:8px;padding:.32rem .56rem;background:var(--accent-color);color:var(--accent-text);font-size:.72rem;cursor:pointer}app-root .card-insert-text-submit:disabled{opacity:.55;cursor:not-allowed}app-root .home-main{width:100%;padding-left:90px;min-height:calc(100dvh - 170px);display:flex;flex-direction:column;justify-content:flex-start}@media(max-width:720px){app-root .home-layout{width:100%}app-root .home-sidebar,app-root .home-sidebar:hover,app-root .home-sidebar:focus-within{display:none}app-root .home-main{width:100%;padding-left:0;min-height:auto}app-root .upload-modal{width:min(94vw,400px)}app-root .card-text-block-container{min-height:0}app-root .comments-sidebar{width:min(100%,320px)}app-root .home-quick-badge{font-size:.64rem}app-root .mobile-desc-btn{border:1px solid rgba(31,41,51,.22);border-radius:10px;padding:.42rem .7rem;font-family:var(--font-display);font-size:.78rem;background:#f7f7f6f5;color:#1f2933;cursor:pointer;width:fit-content;transition:background .2s ease}app-root .mobile-desc-btn:hover{background:#1f293314}app-root .mobile-first-block-preview{width:100%}app-root .mobile-preview-text{width:100%;border:none;border-radius:0;padding:.45rem .15rem;font-family:var(--font-body);font-size:.92rem;background:transparent;color:var(--text-main);cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:.3rem;transition:opacity .2s ease}app-root .mobile-preview-text:active{opacity:.7}app-root .mobile-preview-content{line-height:1.5;overflow-wrap:anywhere;word-break:break-word;transition:all .3s ease}app-root .mobile-preview-content.truncated{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}app-root .mobile-expand-hint{font-size:.76rem;color:var(--text-muted);font-family:var(--font-body);font-weight:600;align-self:flex-start;transition:opacity .2s ease,transform .2s ease}app-root .mobile-expand-hint.hidden{opacity:0;transform:translateY(-4px);pointer-events:none}app-root .mobile-additional-blocks{display:flex;flex-direction:column;gap:0;margin-top:0;padding:0;border-radius:0;background:transparent;animation:slide-down .3s ease}@keyframes slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}app-root .mobile-desc-content{display:flex;flex-direction:column;gap:.5rem;width:100%;margin-top:.5rem}}app-root .comments-sidebar{position:relative;left:auto;top:auto;width:var(--comments-width);flex:0 0 var(--comments-width);display:flex;flex-direction:column;align-items:flex-end;gap:.42rem}app-root .comments-panel{position:static;transform:none;width:100%;align-self:center;background:#f7f7f6;border:1px solid rgba(17,24,39,.12);border-radius:16px;padding:.7rem;box-shadow:0 10px 22px #11182714;display:flex;flex-direction:column;gap:.55rem;min-height:340px;max-height:min(62vh,calc(100dvh - 240px));overflow:hidden}app-root .home-quick-badge{max-width:100%;padding:.26rem .56rem;border-radius:999px;border:1px solid transparent;font-family:var(--font-display);font-size:.68rem;line-height:1.2;color:#111827;background:#11182714;box-shadow:0 6px 14px #11182729;animation:feedback-pulse .18s ease}app-root .home-quick-badge.ok{background:#2e7d322e;border-color:#2e7d324d;color:#1f6a23}app-root .home-quick-badge.error{background:#c6282829;border-color:#c6282847;color:#9c1d1d}app-root .comments-scroll-content{min-height:0;overflow-y:auto;display:grid;gap:.55rem;padding-right:.12rem}app-root .comments-panel-header{display:flex;justify-content:space-between;align-items:center;gap:.6rem}app-root .comments-panel-header h3{margin:0;font-family:var(--font-display);font-size:.98rem;letter-spacing:.02em;color:#161d26}app-root .comments-badge{padding:.18rem .48rem;border-radius:999px;background:#e5e7eb;color:#111827;font-size:.72rem;font-family:var(--font-display)}app-root .comments-post-owner{margin:0;color:#111827a8;font-size:.75rem}app-root .comment-compose{border-radius:12px;background:#fff;border:1px solid rgba(17,24,39,.12);padding:.52rem;display:grid;gap:.45rem}app-root .comment-compose textarea,app-root .reply-compose textarea{resize:vertical;min-height:66px;border:1px solid rgba(17,24,39,.16);border-radius:10px;padding:.5rem .62rem;font-family:var(--font-body);font-size:.86rem;background:#fff;color:#111827}app-root .comment-compose-footer{display:flex;justify-content:space-between;align-items:center;gap:.5rem}app-root .comment-author-chip{font-size:.68rem;background:#eceff1;color:#111827c7;border-radius:999px;padding:.22rem .48rem}app-root .comment-action-button{border:1px solid transparent;border-radius:10px;padding:.42rem .72rem;font-family:var(--font-display);background:#1f2933;color:#f9fafb;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}app-root .comment-action-button.reply{justify-self:end}app-root .comment-action-button:disabled{opacity:.56;cursor:not-allowed}app-root .comment-submit-pill{display:inline-flex;align-items:center;justify-content:flex-start;width:fit-content;gap:.4rem;padding:.22rem .28rem;border-color:#11182729;background:#f2f4f6;color:#1f2933}app-root .comment-submit-pill .comment-submit-icon{width:26px;height:26px;border-radius:8px;background:#1f2933;color:#f8fafc;display:grid;place-items:center}app-root .comment-submit-pill .comment-submit-icon svg{width:15px;height:15px;fill:currentcolor}app-root .comment-submit-pill .comment-submit-label{max-width:0;opacity:0;overflow:hidden;white-space:nowrap;font-size:.72rem;transition:max-width .24s ease,opacity .2s ease}app-root .comment-submit-pill:hover .comment-submit-label,app-root .comment-submit-pill:focus-visible .comment-submit-label{max-width:148px;opacity:1}app-root .comment-submit-pill:hover:not(:disabled),app-root .comment-submit-pill:focus-visible:not(:disabled){border-color:#1118275c}app-root .comment-submit-pill.is-open{gap:.24rem;padding:.12rem .18rem;border-radius:8px;background:#eef1f4}app-root .comment-submit-pill.is-open .comment-submit-icon{width:20px;height:20px;border-radius:6px;background:#6b7280}app-root .comment-submit-pill.is-open .comment-submit-icon svg{width:12px;height:12px}app-root .comment-submit-pill.is-open .comment-submit-label{max-width:64px;opacity:1;font-size:.64rem}app-root .comments-highlight-list,app-root .comments-all-list{display:grid;gap:.46rem}app-root .comments-highlight-list{min-height:auto}app-root .comments-empty{margin:0;text-align:left;color:#11182794;font-size:.8rem}app-root .comment-item{border-radius:12px;border:1px solid rgba(17,24,39,.12);background:#fff;padding:.52rem;display:grid;gap:.44rem}app-root .comment-item.highlight{border:1px solid rgba(17,24,39,.2);background:#fbfbfa;box-shadow:none}app-root .comment-main{display:grid;gap:.35rem}app-root .comment-main p{margin:0;text-align:left;color:#1f2933;font-size:.84rem;line-height:1.28;overflow-wrap:anywhere;word-break:break-word}app-root .comment-main-header{display:flex;justify-content:space-between;align-items:center;gap:.4rem}app-root .comment-main-header strong{font-size:.8rem;color:#111827}app-root .comment-count-pill{font-size:.66rem;border-radius:999px;padding:.15rem .4rem;background:#eceff1;color:#111827d6}app-root .comment-main-actions{display:flex;flex-wrap:wrap;gap:.5rem}app-root .comment-text-button{border:none;background:transparent;color:#4b5563;font-size:.74rem;font-family:var(--font-display);padding:0;cursor:pointer;text-decoration:underline;text-decoration-thickness:1px}app-root .reply-compose{border-left:2px solid rgba(17,24,39,.18);padding-left:.44rem;display:grid;gap:.42rem}app-root .reply-compose textarea{min-height:56px}app-root .replies-list{margin-left:.3rem;border-left:2px solid rgba(17,24,39,.18);padding-left:.45rem;display:grid;gap:.35rem}app-root .reply-item{border-radius:8px;background:#f9fafb;border:1px solid rgba(17,24,39,.12);padding:.38rem .42rem;display:grid;gap:.2rem}app-root .reply-item strong{font-size:.72rem;color:#111827d6;text-align:left}app-root .reply-item p{margin:0;font-size:.76rem;text-align:left;color:#111827d1;overflow-wrap:anywhere;word-break:break-word}app-root .comment-expand-button{border:1px solid rgba(17,24,39,.15);border-radius:10px;padding:.42rem .64rem;font-family:var(--font-display);font-size:.74rem;background:#fff;color:#111827;cursor:pointer}@media(max-width:1180px){app-root .comments-sidebar{position:static;justify-self:center;width:min(100%,340px)}}body.dark-mode app-root .home-side-action .side-icon{background:#f0f6fc1a}body.dark-mode app-root .home-side-action.active,body.dark-mode app-root .home-side-action:hover:not(:disabled){background:#f0f6fc14}body.dark-mode app-root .home-side-new .side-icon{background:#f6654a38;color:#f6654a}body.dark-mode app-root .card-insert-text-block{background:var(--glass-bg);border-color:var(--border-light)}body.dark-mode app-root .comments-panel{background:#161b22;border-color:#f0f6fc1f;box-shadow:0 10px 22px #00000059}body.dark-mode app-root .comments-panel-header h3{color:#e6edf3}body.dark-mode app-root .comments-badge{background:#2d333b;color:#e6edf3}body.dark-mode app-root .comments-post-owner{color:#f0f6fc99}body.dark-mode app-root .comments-empty{color:#f0f6fc80}body.dark-mode app-root .comment-compose{background:#0d1117;border-color:#f0f6fc1f}body.dark-mode app-root .comment-compose textarea,body.dark-mode app-root .reply-compose textarea{background:#010409;color:#e6edf3;border-color:#f0f6fc26}body.dark-mode app-root .comment-author-chip{background:#21262d;color:#c9d1d9}body.dark-mode app-root .comment-action-button{background:#c9d1d9;color:#0d1117}body.dark-mode app-root .comment-submit-pill{background:#1c2128;color:#c9d1d9;border-color:#f0f6fc1f}body.dark-mode app-root .comment-submit-pill .comment-submit-icon{background:#c9d1d9;color:#0d1117}body.dark-mode app-root .comment-submit-pill:hover:not(:disabled),body.dark-mode app-root .comment-submit-pill:focus-visible:not(:disabled){border-color:#f0f6fc4d}body.dark-mode app-root .comment-submit-pill.is-open{background:#1c2128}body.dark-mode app-root .comment-submit-pill.is-open .comment-submit-icon{background:#484f58}body.dark-mode app-root .comment-item{background:#161b22;border-color:#f0f6fc1a}body.dark-mode app-root .comment-item.highlight{background:#1c2128;border-color:#f0f6fc24}body.dark-mode app-root .comment-main p{color:#e6edf3}body.dark-mode app-root .comment-main-header strong{color:#f0f6fc}body.dark-mode app-root .comment-count-pill{background:#21262d;color:#c9d1d9}body.dark-mode app-root .comment-text-button{color:#8b949e}body.dark-mode app-root .reply-compose{border-left-color:#f0f6fc26}body.dark-mode app-root .replies-list{border-left-color:#f0f6fc26}body.dark-mode app-root .reply-item{background:#1c2128;border-color:#f0f6fc1a}body.dark-mode app-root .reply-item strong{color:#c9d1d9}body.dark-mode app-root .reply-item p{color:#f0f6fccc}body.dark-mode app-root .comment-expand-button{background:#161b22;color:#e6edf3;border-color:#f0f6fc1f}body.dark-mode app-root .home-quick-badge{background:#f0f6fc14;color:#e6edf3;box-shadow:0 6px 14px #0000004d}body.dark-mode app-root .home-quick-badge.ok{background:#38d36429;border-color:#38d36447;color:#56d364}body.dark-mode app-root .home-quick-badge.error{background:#f8514929;border-color:#f8514947;color:#f85149}@media(max-width:720px){body.dark-mode app-root .mobile-desc-btn{border-color:#f0f6fc2e;background:#161b22eb;color:#e6edf3}body.dark-mode app-root .mobile-desc-btn:hover{background:#f0f6fc0f}}
