:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{min-height:100vh}.dashboard-page{min-height:100vh;padding:1.5rem;background-color:#e6eaef}.dashboard-container{max-width:100%;margin:0 auto}.dashboard-header{text-align:center;margin-bottom:1.5rem}.dashboard-title{font-size:1.875rem;font-weight:700;color:#111827;margin:0 0 .5rem}.dashboard-summary{margin-top:.5rem;font-size:.875rem;color:#374151}.dashboard-summary-link{background:none;border:none;padding:0;color:inherit;text-decoration:underline;cursor:pointer;font:inherit}.dashboard-summary-link:hover{color:#111827}.dashboard-loading,.dashboard-empty-state,.dashboard-empty-error{margin:1rem 0;color:#374151}.dashboard-empty-error{color:#dc2626}.approval-url-form label{display:block;font-size:.875rem;margin-bottom:.35rem;color:#374151}.approval-url-row{display:flex;gap:.5rem;align-items:center;max-width:560px;margin:0 auto}.approval-url-form input{flex:1;padding:.5rem .75rem;border-radius:.5rem;border:1px solid #d1d5db;background:#fff;color:#111827;font-size:.9rem}.approval-url-form input.input-error{border-color:#dc2626}.approval-url-form input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.approval-url-form button{flex-shrink:0;padding:.5rem 1rem;border-radius:.5rem;border:none;background:#3b82f6;color:#fff;font-weight:600;cursor:pointer}.approval-url-form button:hover:not(:disabled){background:#2563eb}.approval-url-form button:disabled{opacity:.6;cursor:not-allowed}.form-error{margin:.35rem 0 0;font-size:.875rem;color:#dc2626}.dashboard-main{display:flex;gap:1.5rem;align-items:flex-start}.dashboard-posts-column{flex:1;display:flex;flex-direction:column;gap:1.5rem;min-width:0}.dashboard-post-slot{scroll-snap-align:center}.content-card-wrapper{background:#fff;border-radius:1.5rem;box-shadow:0 25px 50px -12px #00000040;overflow:hidden}.content-card-inner{display:flex}.post-card{flex-shrink:0;background:#fff;position:relative;display:flex;flex-direction:column}.post-status-badge-wrapper{position:absolute;top:1rem;right:1rem;z-index:20}.post-status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;color:#fff;box-shadow:0 10px 15px -3px #0000001a}.post-status-badge-interactive{cursor:pointer;border:none;transition:filter .15s}.post-status-badge-interactive:hover{filter:brightness(1.1)}.post-status-badge-interactive:disabled{opacity:.7;cursor:wait}.post-status-caret{transition:transform .2s;opacity:.8}.post-status-caret-open{transform:rotate(180deg)}.post-status-menu{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border-radius:10px;box-shadow:0 8px 30px #00000026,0 0 0 1px #0000000d;overflow:hidden;z-index:50;min-width:230px;animation:status-menu-in .15s ease-out}@keyframes status-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.post-status-option{display:flex;align-items:flex-start;gap:.625rem;width:100%;padding:.625rem .875rem;border:none;background:none;cursor:pointer;text-align:left;font-size:.8125rem;color:#374151;transition:background .1s}.post-status-option:hover{background:#f3f4f6}.post-status-option svg{margin-top:2px;flex-shrink:0}.post-status-option-active{background:#f0fdf4}.post-status-option-active:hover{background:#dcfce7}.post-status-option-label{font-weight:600;line-height:1.3}.post-status-option-desc{font-size:.6875rem;color:#9ca3af;line-height:1.3;margin-top:1px}.post-status-approved{background:#22c55e}.post-status-pending{background:#6b7280}.post-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1rem .75rem}.post-avatar{width:2.5rem;height:2.5rem;border-radius:9999px;background:linear-gradient(135deg,#a855f7,#ec4899);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:600}.post-meta{flex:1;min-width:0}.post-username{font-weight:600;color:#111827}.post-time{font-size:.875rem;color:#6b7280}.post-media-area{padding:0 1rem;margin-bottom:.75rem}.post-media-single{border-radius:1rem;overflow:hidden;background:#f3f4f6}.post-media-img{width:100%;height:auto;display:block}.post-media-video{width:100%;height:auto;display:block;background:#000}.post-media-placeholder{aspect-ratio:16 / 9;border-radius:1rem;background:#f3f4f6;display:flex;align-items:center;justify-content:center}.post-media-placeholder-text{font-size:.875rem;color:#9ca3af}.post-media-grid{display:grid;gap:2px;border-radius:1rem;overflow:hidden;background:#f3f4f6;grid-template-columns:repeat(2,1fr)}.post-media-grid-item{overflow:hidden;background:#f3f4f6}.post-media-grid-img{width:100%;height:auto;display:block;object-fit:cover}.post-actions-row{display:flex;align-items:center;gap:1rem;padding:0 1rem .5rem}.post-action-icon{color:#1f2937;cursor:pointer}.post-caption-block{padding:0 1rem 1rem}.caption-cycle-row{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.5rem;padding:.25rem 0}.caption-cycle-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid #e5e7eb;background:#fff;color:#6b7280;cursor:pointer;padding:0;transition:all .15s}.caption-cycle-btn:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db;color:#374151}.caption-cycle-btn:disabled{opacity:.3;cursor:default}.caption-cycle-label{font-size:.6875rem;font-weight:500;color:#9ca3af;letter-spacing:.02em;-webkit-user-select:none;user-select:none}.post-caption-tabs{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:.5rem}.post-caption-tab{padding:.35rem .6rem;font-size:.75rem;font-weight:500;border-radius:.375rem;border:1px solid #e5e7eb;background:#fff;color:#6b7280;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.post-caption-tab:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.post-caption-tab-active{background:#eff6ff;border-color:#3b82f6;color:#1d4ed8}.post-caption-tab-single{font-size:.75rem;font-weight:600;color:#6b7280;margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.02em}.post-caption{font-size:.875rem;line-height:1.5;color:#111827;white-space:pre-wrap;word-break:break-word}.post-caption-username{font-weight:600}.post-caption-text{white-space:pre-wrap}.post-caption-empty{font-size:.875rem;color:#9ca3af;margin:0;font-style:italic}.comments-panel{flex:1;min-width:400px;padding:1.5rem;background:#f9fafb;display:flex;flex-direction:column;border-left:1px solid #e5e7eb}.comments-panel-header{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.5rem}.comment-filter-tabs{display:flex;gap:.25rem;margin-bottom:.75rem;border-bottom:1px solid #e5e7eb;padding-bottom:.5rem}.comment-filter-tab{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .6rem;font-size:.75rem;font-weight:500;background:none;border:1px solid transparent;border-radius:.375rem;color:#6b7280;cursor:pointer;transition:all .15s}.comment-filter-tab:hover{color:#374151;background:#f3f4f6}.comment-filter-tab-active{color:#374151;background:#f3f4f6;border-color:#d1d5db;font-weight:600}.comment-filter-tab-internal.comment-filter-tab-active{color:#b45309;background:#fffbeb;border-color:#fcd34d}.comment-filter-tab-public.comment-filter-tab-active{color:#047857;background:#ecfdf5;border-color:#6ee7b7}.comments-panel-icon{flex-shrink:0;color:#6b7280}.comments-panel-scroll{flex:1;overflow-y:auto;margin-bottom:1rem;max-height:calc(100vh - 380px)}.comments-list{display:flex;flex-direction:column;gap:.75rem}.comments-empty-state{text-align:center;padding:3rem 1.25rem;background:#fff;border-radius:.75rem;border:2px dashed #d1d5db}.comments-empty-icon{color:#d1d5db;margin:0 auto .5rem;display:block}.comments-empty-title{font-size:.875rem;color:#9ca3af;margin:0}.comments-empty-hint{font-size:.75rem;color:#9ca3af;margin:.25rem 0 0;padding:0 1rem}.comments-panel-footer{border-top:1px solid #e5e7eb;padding-top:1rem;background:#f9fafb}.comment-thread{display:flex;flex-direction:column;gap:.75rem}.comment-card{border-radius:.75rem;padding:.75rem 1rem;border:1px solid #e5e7eb;background:#fff;box-shadow:0 1px 2px #0000000d}.comment-card:hover{box-shadow:0 4px 6px -1px #0000001a}.comment-card-private{background:#fffbeb;border-color:#fde68a;border-left:3px solid #f59e0b}.comment-card-private:hover{box-shadow:0 4px 6px -1px #f59e0b26}.comment-private-badge{display:inline-flex;align-items:center;gap:.2rem;font-size:.625rem;font-weight:600;color:#b45309;background:#fef3c7;padding:.1rem .4rem;border-radius:.25rem;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.comment-card-reply{background:#f9fafb;border-color:#e5e7eb}.comment-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem}.comment-avatar{width:1.75rem;height:1.75rem;border-radius:9999px;overflow:hidden;flex-shrink:0;background:linear-gradient(135deg,#a855f7,#ec4899);display:flex;align-items:center;justify-content:center}.comment-avatar-img{width:100%;height:100%;object-fit:cover;display:block}.comment-avatar-fallback{font-size:.75rem;font-weight:600;color:#fff}.comment-card-header-text{display:flex;align-items:baseline;gap:.375rem;min-width:0;flex-wrap:wrap;flex:1}.comment-delete-btn{background:none;border:none;padding:.25rem;border-radius:.25rem;color:#9ca3af;cursor:pointer;opacity:0;transition:opacity .15s,color .15s;margin-left:auto;flex-shrink:0}.comment-card:hover .comment-delete-btn{opacity:1}.comment-delete-btn:hover{color:#ef4444;background:#ef444414}.comment-card-name{font-size:.8125rem;font-weight:600;color:#111827}.comment-card-time{font-size:.75rem;color:#9ca3af}.comment-card-text{font-size:.875rem;color:#374151;margin:0;line-height:1.5;white-space:pre-wrap;word-break:break-word}.comment-media{margin:.375rem 0;border-radius:.5rem;overflow:hidden;max-width:280px}.comment-media-clickable{cursor:pointer;transition:opacity .15s}.comment-media-clickable:hover{opacity:.85}.comment-media-img{display:block;width:100%;height:auto;max-height:200px;object-fit:cover;border-radius:.5rem}@keyframes comment-slide-in{0%{opacity:0;transform:translateY(12px);max-height:0}to{opacity:1;transform:translateY(0);max-height:600px}}.comment-card-enter{animation:comment-slide-in .35s ease-out forwards}.comment-replies{margin-top:.5rem}.reply-box{margin:0}.reply-box-row{display:flex;gap:.5rem}.reply-box-input{flex:1;padding:.625rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;background:#fff;color:#111827}.reply-box-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.reply-box-input::placeholder{color:#9ca3af}.reply-box-send{flex-shrink:0;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;border:none;border-radius:.5rem;background:#2563eb;color:#fff;cursor:pointer}.reply-box-send:hover:not(:disabled){background:#1d4ed8}.reply-box-send:disabled{opacity:.5;cursor:not-allowed}.reply-error{display:block;font-size:.8rem;color:#dc2626;margin-top:.35rem}.reply-visibility-row{display:flex;align-items:center;margin-top:.35rem}.reply-visibility-toggle{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .5rem;font-size:.7rem;font-weight:600;border:1px solid;border-radius:1rem;cursor:pointer;transition:all .15s}.reply-visibility-caret{margin-left:-.1rem;opacity:.6;transition:transform .15s,opacity .15s}.reply-visibility-caret-open{transform:rotate(180deg)}.reply-visibility-toggle:hover .reply-visibility-caret{opacity:1}.reply-visibility-dropdown-wrapper{position:relative}.reply-visibility-menu{position:absolute;bottom:calc(100% + .35rem);left:0;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 4px 12px #0000001f;padding:.25rem;min-width:200px;z-index:50;animation:visibility-menu-in .12s ease-out}@keyframes visibility-menu-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.reply-visibility-option{display:flex;align-items:flex-start;gap:.5rem;width:100%;padding:.5rem .6rem;border:none;background:none;border-radius:.375rem;cursor:pointer;text-align:left;color:#374151;transition:background .1s}.reply-visibility-option:hover{background:#f3f4f6}.reply-visibility-option-active{background:#f9fafb}.reply-visibility-option svg{flex-shrink:0;margin-top:.15rem}.reply-visibility-option-label{font-size:.8rem;font-weight:600;line-height:1.2}.reply-visibility-option-desc{font-size:.7rem;color:#9ca3af;line-height:1.3;margin-top:.1rem}.reply-visibility-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .5rem;font-size:.7rem;font-weight:600;border:1px solid;border-radius:1rem}.reply-visibility-public{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.reply-visibility-toggle.reply-visibility-public:hover{background:#d1fae5}.reply-visibility-private{color:#b45309;background:#fffbeb;border-color:#fde68a}.reply-visibility-toggle.reply-visibility-private:hover{background:#fef3c7}.reply-box-send-private{background:#f59e0b}.reply-box-send-private:hover:not(:disabled){background:#d97706}.dashboard-sidebar{width:18rem;flex-shrink:0;background:#fff;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;padding:1.5rem;position:sticky;top:1.5rem}.dashboard-sidebar-title{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0 0 1.25rem}.dashboard-sidebar-list{display:flex;flex-direction:column;gap:1rem}.dashboard-sidebar-item{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-radius:.5rem;border:2px solid transparent;background:#f9fafb;cursor:pointer;font:inherit;text-align:left;transition:background .15s,border-color .15s}.dashboard-sidebar-item:hover{background:#f3f4f6}.dashboard-sidebar-item-active{background:#ede9fe;border-color:#8b5cf6}.dashboard-sidebar-item-approved.dashboard-sidebar-item-active{background:#dcfce7;border-color:#22c55e}.dashboard-sidebar-item-pending.dashboard-sidebar-item-active{background:#f3f4f6;border-color:#6b7280}.dashboard-sidebar-label{font-size:.875rem;font-weight:500;color:#374151}.dashboard-sidebar-item-approved .dashboard-sidebar-label{color:#15803d}.dashboard-sidebar-item-pending .dashboard-sidebar-label{color:#4b5563}.dashboard-sidebar-count{font-size:1.125rem;font-weight:700;color:#111827}.dashboard-sidebar-item-approved .dashboard-sidebar-count{color:#15803d}.dashboard-sidebar-item-pending .dashboard-sidebar-count{color:#4b5563}.post-revise-row{padding:.5rem 1rem 1rem}.post-revise-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .875rem;border:1px solid #d1d5db;border-radius:.5rem;background:#fff;color:#374151;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.post-revise-btn:hover{background:#f3f0ff;border-color:#8b5cf6;color:#6d28d9}.revise-modal-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#00000080;padding:1rem}.revise-modal{background:#fff;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;width:100%;max-width:640px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.revise-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb;flex-shrink:0}.revise-modal-title{font-size:1.125rem;font-weight:700;color:#111827;margin:0}.revise-modal-close{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:.375rem;background:transparent;color:#6b7280;cursor:pointer;padding:0}.revise-modal-close:hover{background:#f3f4f6;color:#111827}.revise-modal-body{padding:1.25rem;overflow-y:auto;flex:1}.revise-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.375rem}.revise-textarea{width:100%;padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;font-family:inherit;color:#111827;resize:vertical;min-height:120px;line-height:1.5;background:#fff;box-sizing:border-box}.revise-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.revise-textarea::placeholder{color:#9ca3af}.revise-targets{display:flex;gap:1.25rem;margin:.75rem 0}.revise-checkbox-label{display:flex;align-items:center;gap:.375rem;font-size:.875rem;color:#374151;cursor:pointer}.revise-checkbox-label input[type=checkbox]{width:1rem;height:1rem;accent-color:#3b82f6;cursor:pointer}.revise-generate-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.625rem 1rem;border:none;border-radius:.5rem;background:#7c3aed;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s}.revise-generate-btn:hover:not(:disabled){background:#6d28d9}.revise-generate-btn:disabled{opacity:.55;cursor:not-allowed}.revise-spinner{animation:revise-spin .8s linear infinite}@keyframes revise-spin{to{transform:rotate(360deg)}}.revise-error{margin:.75rem 0 0;font-size:.8125rem;color:#dc2626}.revise-result{margin-top:1.25rem;display:flex;flex-direction:column;gap:1.25rem}.revise-result-section{border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;background:#f9fafb}.revise-result-heading{font-size:.875rem;font-weight:600;color:#374151;margin:0 0 .5rem}.revise-result-tabs{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:.5rem}.revise-result-heading-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.revise-result-heading-row .revise-result-heading{margin:0}.revise-result-include-label{display:flex;align-items:center;gap:.4rem;cursor:pointer}.revise-result-include-label input[type=checkbox]{width:1rem;height:1rem;accent-color:#6366f1;cursor:pointer}.revise-retry-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .6rem;font-size:.75rem;font-weight:600;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:.375rem;cursor:pointer;transition:background .15s;white-space:nowrap}.revise-retry-btn:hover:not(:disabled){background:#e5e7eb}.revise-retry-btn:disabled{opacity:.5;cursor:not-allowed}.revise-result-caption-edit{font-size:.875rem;line-height:1.6;color:#111827;white-space:pre-wrap;word-break:break-word;background:#fff;border:1px solid #d1d5db;border-radius:.5rem;padding:.75rem;width:100%;box-sizing:border-box;font-family:inherit;resize:vertical;transition:border-color .15s}.revise-result-caption-edit:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.revise-result-caption-edit:disabled{opacity:.5;cursor:not-allowed}.revise-platform-list{display:flex;flex-direction:column;gap:.75rem}.revise-platform-item{display:flex;flex-direction:column;gap:.35rem}.revise-platform-unchecked{opacity:.5}.revise-platform-header{display:flex;align-items:center;gap:.4rem;cursor:pointer;font-size:.8rem;font-weight:600;color:#374151}.revise-platform-header input[type=checkbox]{width:.9rem;height:.9rem;accent-color:#6366f1;cursor:pointer}.revise-platform-label{-webkit-user-select:none;user-select:none}.revise-result-image-wrapper{border-radius:.75rem;overflow:hidden;background:#f3f4f6;max-height:400px}.revise-result-image{width:100%;height:auto;display:block;object-fit:contain;max-height:400px}.revise-suggest-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem 1rem;margin-top:1rem;background:#059669;color:#fff;border:none;border-radius:.5rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s}.revise-suggest-btn:hover{background:#047857}.reply-media-preview{position:relative;display:inline-block;margin-bottom:.5rem;border-radius:.5rem;overflow:hidden;border:1px solid #e5e7eb}.reply-media-thumb{display:block;max-height:120px;max-width:200px;object-fit:cover;border-radius:.5rem}.reply-media-remove{position:absolute;top:4px;right:4px;background:#0009;color:#fff;border:none;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.reply-media-remove:hover{background:#000c}.reply-box-input{resize:none;font-family:inherit;line-height:1.4}@media(max-width:1024px){.content-card-inner{flex-direction:column}.post-card{width:100%!important;max-width:500px;margin:0 auto}.comments-panel{min-width:0;border-left:none;border-top:1px solid #e5e7eb}.comments-panel-scroll{max-height:320px}}.lightbox-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:lightbox-fade-in .2s ease-out}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.lightbox-close{position:absolute;top:1rem;right:1rem;background:#ffffff26;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:background .15s}.lightbox-close:hover{background:#ffffff4d}.lightbox-img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:.5rem;box-shadow:0 8px 32px #0006}@media(max-width:768px){.dashboard-page{padding:1rem}.dashboard-title{font-size:1.5rem}.dashboard-main{flex-direction:column}.dashboard-sidebar{width:100%;position:static}}
