.modal-overlay[data-v-810570d2]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content[data-v-810570d2]{background:var(--card-bg-2);border-radius:12px;padding:24px;min-width:400px;max-width:90vw;border:1px solid var(--border-color)}.pdf-export-modal h2[data-v-810570d2]{margin:0 0 20px;color:var(--text-heading);font-size:20px}.style-options[data-v-810570d2]{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.style-option[data-v-810570d2]{display:flex;align-items:center;gap:12px;padding:16px;background:var(--input-bg);border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s;color:var(--text-primary)}.style-option[data-v-810570d2]:hover{border-color:var(--accent-gold-1);background:var(--hover-bg)}.style-option.is-selected[data-v-810570d2]{border-color:var(--accent-gold-1);background:var(--accent-gold-1);color:#fff}.style-icon[data-v-810570d2]{font-size:24px}.style-name[data-v-810570d2]{font-size:16px;font-weight:500}.cancel-button[data-v-810570d2]{width:100%;padding:12px;background:var(--button-secondary-bg);border:1px solid var(--button-secondary-border);border-radius:6px;color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .2s}.cancel-button[data-v-810570d2]:hover{background:var(--button-secondary-hover)}:root[data-theme=dark]{--bg-gradient-1: #2a2a2a;--bg-gradient-2: #1a1a1a;--bg-primary: #2a2a2a;--text-primary: #d4c5b9;--text-secondary: #9a8575;--text-heading: #e8d4a0;--card-bg-1: rgba(40, 40, 40, .9);--card-bg-2: rgba(30, 30, 30, .95);--input-bg: rgba(30, 30, 30, .6);--input-border: #3a3a3a;--border-color: #3a3a3a;--button-secondary-bg: rgba(60, 60, 60, .6);--button-secondary-border: #4a4a4a;--button-secondary-hover: rgba(80, 80, 80, .8);--placeholder-color: #6a6a6a;--hover-bg: rgba(60, 60, 60, .4);--success-color: #4caf50}:root[data-theme=light]{--bg-gradient-1: #f5ebe0;--bg-gradient-2: #e8dcc8;--bg-primary: #f5ebe0;--text-primary: #3a2f26;--text-secondary: #6b5d4f;--text-heading: #8b6f47;--card-bg-1: rgba(255, 250, 240, .9);--card-bg-2: rgba(250, 245, 235, .95);--input-bg: rgba(255, 255, 255, .8);--input-border: #d4c5b9;--border-color: #d4c5b9;--button-secondary-bg: rgba(228, 218, 203, .8);--button-secondary-border: #c9b89a;--button-secondary-hover: rgba(212, 197, 185, .9);--placeholder-color: #9a8575;--hover-bg: rgba(228, 218, 203, .5);--success-color: #4caf50}:root{--accent-gold-1: #8b6f47;--accent-gold-2: #a88958;--accent-gold-3: #c9a66b;--danger: rgba(139, 69, 69, .9);--danger-light: rgba(139, 69, 69, .2)}*{margin:0;padding:0;box-sizing:border-box}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-col{display:flex;flex-direction:column}.flex-align-center{display:flex;align-items:center}.flex-align-baseline{display:flex;align-items:baseline}.flex-end{display:flex;justify-content:flex-end}.btn-circle{border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.btn-circle-sm{width:24px;height:24px}.btn-circle-md{width:30px;height:30px}.btn-circle-lg{width:40px;height:40px}body{font-family:Crimson Text,serif;background:linear-gradient(135deg,var(--bg-gradient-1) 0%,var(--bg-gradient-2) 50%,var(--bg-gradient-1) 100%);background-attachment:fixed;color:var(--text-primary);min-height:100vh;transition:color .15s ease}#app{min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:20px}h1,h2,h3,h4,h5,h6{font-family:Cinzel,serif;color:var(--text-heading);text-shadow:1px 1px 2px rgba(0,0,0,.3);transition:color .15s ease}.theme-toggle{background:var(--button-secondary-bg);border:2px solid var(--button-secondary-border);font-size:20px;padding:0;text-transform:none;letter-spacing:normal;transition:opacity .15s ease,transform .15s ease,border-color .15s ease}.theme-toggle:hover{background:var(--button-secondary-hover);border-color:var(--accent-gold-2);transform:scale(1.05)}button{cursor:pointer;border:2px solid transparent;padding:8px 16px;border-radius:4px;font-size:14px;font-weight:600;font-family:Cinzel,serif;transition:opacity .15s ease,transform .15s ease,background-color .15s ease,border-color .15s ease;text-transform:uppercase;letter-spacing:.5px}button.primary{background:linear-gradient(135deg,var(--accent-gold-1) 0%,#6b5435 100%);color:#f5e6d3;border-color:var(--accent-gold-2);box-shadow:0 2px 8px #8b6f474d}button.primary:hover{background:linear-gradient(135deg,#9d7d52,#7a5f3e);border-color:var(--accent-gold-3);box-shadow:0 4px 12px #8b6f4780;transform:translateY(-1px)}button.primary:disabled{opacity:.5;cursor:not-allowed;transform:none}button.secondary{background:var(--button-secondary-bg);color:var(--text-primary);border-color:var(--button-secondary-border)}button.secondary:hover{background:var(--button-secondary-hover);border-color:var(--accent-gold-2)}input,textarea,select{width:100%;padding:10px;border:2px solid var(--input-border);border-radius:4px;font-size:14px;font-family:Crimson Text,serif;background:var(--input-bg);color:var(--text-primary);transition:border-color .15s ease,box-shadow .15s ease}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent-gold-1);background:var(--input-bg);box-shadow:0 0 10px #8b6f474d}input::placeholder,textarea::placeholder{color:var(--placeholder-color)}.card{background:linear-gradient(145deg,var(--card-bg-1) 0%,var(--card-bg-2) 100%);border-radius:8px;border:1px solid rgba(139,111,71,.3);box-shadow:0 4px 12px #0003;padding:16px;margin-bottom:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.home{min-height:100vh}.header{background:linear-gradient(135deg,var(--card-bg-1) 0%,var(--card-bg-2) 100%);box-shadow:0 4px 12px #0000004d;border-bottom:2px solid rgba(139,111,71,.3);position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-content{max-width:1200px;margin:0 auto;padding:16px 20px}.header h1{font-size:28px;color:var(--text-heading);text-shadow:2px 2px 4px rgba(0,0,0,.3);flex-shrink:0}.user-info{gap:16px;color:var(--text-primary);margin-left:auto;flex-shrink:0}.user-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;border:2px solid var(--border-color);background:var(--input-bg);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .15s ease,transform .15s ease,border-color .15s ease}.user-avatar:hover{border-color:var(--accent-gold-2);transform:scale(1.05)}.user-avatar .avatar-image{width:100%;height:100%;object-fit:cover}.user-avatar .avatar-placeholder{font-size:18px;font-weight:700;color:var(--text-secondary)}.main-content{max-width:100%;margin:0 auto;padding:20px 40px;display:grid;grid-template-columns:minmax(300px,380px) minmax(500px,1fr) minmax(280px,300px);gap:20px;align-items:start;min-height:0}.campaign-info-column{gap:1rem;position:sticky;top:80px;align-self:start;max-height:calc(100vh - 100px);min-height:0;overflow-y:auto}.feed{max-width:600px;min-width:600px;margin:0 auto}.sort-controls{gap:8px;margin-bottom:16px;padding:12px;background:var(--card-bg-1);border-radius:8px;border:1px solid rgba(139,111,71,.2)}.sort-controls button{padding:6px 12px;font-size:12px}.sort-dropdown-wrapper{position:relative;min-width:120px;max-width:150px}.sort-dropdown-button{width:100%;padding:6px 12px;font-size:12px;border:2px solid var(--input-border);border-radius:4px;background:var(--card-bg-1);color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:border-color .15s ease,box-shadow .15s ease;font-family:Crimson Text,serif}.sort-dropdown-button:hover{border-color:var(--accent-gold-1)}.sort-dropdown-button.is-open{border-color:var(--accent-gold-1);box-shadow:0 0 10px #8b6f474d}.dropdown-arrow{margin-left:8px;font-size:10px;color:var(--text-secondary)}.sort-dropdown-menu{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--card-bg-1);border:2px solid var(--input-border);border-radius:4px;box-shadow:0 4px 12px #0003;z-index:1000;overflow:hidden}.sort-dropdown-item{padding:8px 12px;font-size:12px;color:var(--text-primary);cursor:pointer;transition:background-color .15s ease;font-family:Crimson Text,serif}.sort-dropdown-item:hover{background:var(--accent-gold-1);color:#f5e6d3}.sort-dropdown-item.is-selected{background:#8b6f474d;color:var(--accent-gold-1);font-weight:600}.search-input{flex:1;max-width:300px;padding:6px 12px;font-size:12px;border:1px solid rgba(139,111,71,.3);border-radius:4px;background:var(--card-bg-2);color:var(--text-primary);transition:border-color .15s ease,background-color .15s ease}.search-input:focus{outline:none;border-color:var(--primary-color);background:var(--card-bg-1)}.search-input::placeholder{color:var(--text-secondary);opacity:.7}.loading,.empty-state{text-align:center;padding:40px;color:var(--text-secondary);font-style:italic;font-size:16px}.load-more{text-align:center;margin-top:16px}.load-more button{width:100%}.post-card{scroll-margin-top:80px;position:relative}.post-header{position:relative}.post-header h3{margin-bottom:8px;font-size:20px;color:var(--text-heading)}.post-title-row{display:flex;align-items:center;justify-content:space-between}.post-title-row h3{margin:0}.delete-button{position:absolute;top:0;right:0;background:transparent;color:#f5e6d3;border:none;width:32px;height:32px;font-size:24px;line-height:1;transition:opacity .15s ease,transform .15s ease;text-transform:none;letter-spacing:normal;padding:0}.delete-button:hover{background:transparent;border:none;transform:scale(1.1)}.post-meta{gap:16px;font-size:12px;color:var(--text-secondary);margin-bottom:12px;font-style:italic}.post-images{margin-bottom:12px}.image-container{position:relative;background:var(--input-bg);border-radius:8px;overflow:hidden;border:1px solid rgba(139,111,71,.2)}.image-container img{width:100%;display:block}.nav-button{background:transparent;color:var(--text-heading);font-size:24px;padding:0 8px;border:none;text-transform:none;letter-spacing:normal}.nav-button:hover{background:#8b6f474d;transform:none}.image-counter{color:var(--text-primary);font-size:14px;font-family:Crimson Text,serif}.post-content{white-space:pre-wrap;line-height:1.6;color:var(--text-primary)}.post-title{cursor:pointer;transition:color .15s ease;margin:0;padding:0}.post-title:hover{color:#f5e6d3}.read-more{color:var(--accent-gold-2);cursor:pointer;font-weight:600;margin-left:4px}.read-more:hover{color:var(--accent-gold-3);text-decoration:underline}.modal-overlay,.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10020}.modal-overlay{padding:20px}.modal-content{background:linear-gradient(145deg,var(--card-bg-1) 0%,var(--card-bg-2) 100%);border-radius:8px;border:2px solid rgba(139,111,71,.4);max-width:800px;width:100%;max-height:90vh;overflow-y:auto;position:relative;padding:24px;box-shadow:0 8px 32px #0006}.close-btn{position:absolute;top:16px;right:16px;background:var(--button-secondary-bg);border:2px solid var(--button-secondary-border);font-size:24px;line-height:1;color:var(--text-primary);transition:opacity .15s ease,transform .15s ease,background-color .15s ease;cursor:pointer}.close-btn:hover{background:var(--button-secondary-hover);border-color:var(--accent-gold-2)}.modal-content h2{margin:0 40px 16px 0;font-size:24px;color:var(--text-heading)}.modal-title-row{display:flex;align-items:center;justify-content:space-between}.modal-title-row h2{margin:0 40px 16px 0}.modal-meta{gap:16px;font-size:12px;color:var(--text-secondary);margin-bottom:16px;flex-wrap:wrap;font-style:italic}.modal-images{margin-bottom:16px}.modal-body{white-space:pre-wrap;line-height:1.6;color:var(--text-primary);font-size:15px;flex:1;overflow-y:auto;padding:1.5rem}.post-creator{margin-bottom:16px}.form-group{margin-bottom:12px}.image-previews{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-bottom:12px}.image-preview{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;background:var(--input-bg);border:1px solid rgba(139,111,71,.2)}.image-preview img{width:100%;height:100%;object-fit:cover}.remove-image{position:absolute;top:4px;right:4px;background:var(--card-bg-1);color:var(--text-heading);border:1px solid rgba(139,111,71,.3);font-size:20px;line-height:1;transition:opacity .15s ease,transform .15s ease,background-color .15s ease;padding:0;text-transform:none;letter-spacing:normal}.remove-image:hover{background:#8b4545e6;transform:scale(1.1)}.actions{gap:12px}.image-upload-btn{gap:8px;padding:8px 16px;background:var(--button-secondary-bg);border:2px solid var(--button-secondary-border);border-radius:4px;cursor:pointer;transition:opacity .15s ease,background-color .15s ease,border-color .15s ease;font-size:14px;font-weight:600;font-family:Cinzel,serif;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.image-upload-btn:hover{background:var(--button-secondary-hover);border-color:var(--accent-gold-2)}.upload-icon{font-size:20px}.sidebar{background:linear-gradient(145deg,var(--card-bg-1) 0%,var(--card-bg-2) 100%);border-radius:8px;border:1px solid rgba(139,111,71,.3);padding:16px;max-height:calc(100vh - 100px);min-height:0;position:sticky;top:80px;box-shadow:0 4px 12px #0003;width:300px;min-width:300px;display:flex;flex-direction:column}.sidebar-header{margin-bottom:16px}.sidebar-header h2{font-size:18px;color:var(--text-heading)}.campaigns-tree{flex:1;min-height:0;overflow-y:auto}.campaigns-tree,.campaign-description-panel .panel-content,.campaign-info-column{scrollbar-width:none;-ms-overflow-style:none}.campaigns-tree::-webkit-scrollbar,.campaign-description-panel .panel-content::-webkit-scrollbar,.campaign-info-column::-webkit-scrollbar{display:none}.campaign-node{margin-bottom:0}.campaign-header{padding:8px;cursor:pointer;border-radius:4px;gap:.5rem;transition:background-color .15s ease}.campaign-header:hover{background-color:var(--hover-bg)}.campaign-header.active{background:linear-gradient(90deg,#8b6f474d,#8b6f471a);border-left:3px solid #a88958}.expand-icon{width:16px;color:var(--accent-gold-2)}.campaign-name{font-weight:600;font-family:Cinzel,serif;color:var(--text-heading)}.posts-list{margin-left:24px;margin-top:0;padding:0}.post-item{padding:12px 8px;margin:0;cursor:pointer;border-radius:4px;font-size:14px;color:var(--text-secondary);transition:background-color .15s ease,color .15s ease;line-height:1.3;height:auto;min-height:32px}.post-item:hover{background-color:var(--hover-bg);color:var(--text-primary)}.modal-actions{gap:8px;margin-bottom:16px}.edit-button,.save-button{background:linear-gradient(135deg,var(--accent-gold-1) 0%,#6b5435 100%);color:#f5e6d3;border-color:var(--accent-gold-2);box-shadow:0 2px 8px #8b6f474d}.edit-button{padding:8px 16px;font-size:14px}.edit-button:hover,.save-button:hover:not(:disabled){background:linear-gradient(135deg,#9d7d52,#7a5f3e);border-color:var(--accent-gold-3);box-shadow:0 4px 12px #8b6f4780;transform:translateY(-1px)}.delete-button-modal{background:#8b4545b3;color:#f5e6d3;border:2px solid rgba(139,69,69,.9);padding:8px 16px;font-size:14px}.delete-button-modal:hover{background:#8b4545e6;border-color:#b45a5a;transform:translateY(-1px)}.edit-title{width:100%;min-height:60px;font-size:24px;font-family:Cinzel,serif;font-weight:600;color:var(--text-heading);margin-bottom:16px;resize:vertical}.edit-content{width:100%;min-height:200px;font-size:15px;line-height:1.6;resize:vertical}.edit-actions{gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(139,111,71,.3)}.save-button:disabled{opacity:.5;cursor:not-allowed}.cancel-button,.upload-button{background:var(--button-secondary-bg);color:var(--text-primary);border-color:var(--button-secondary-border)}.upload-button{padding:10px 20px;margin-right:8px;margin-top:16px}.cancel-button:hover,.upload-button:hover{background:var(--button-secondary-hover);border-color:var(--accent-gold-2)}.remove-image-button{background:#8b4545cc;color:#f5e6d3;border:2px solid rgba(139,69,69,.9);padding:8px 16px;font-size:14px;margin-left:8px;margin-top:16px}.remove-image-button:hover{background:#8b4545f2;border-color:#b45a5a;transform:translateY(-2px)}.image-upload{margin-top:12px;text-align:center}.login-container{min-height:100vh}.login-card{background:linear-gradient(145deg,var(--card-bg-1) 0%,var(--card-bg-2) 100%);padding:40px;border-radius:8px;border:2px solid rgba(139,111,71,.4);box-shadow:0 8px 32px #0006;width:100%;max-width:400px;position:relative;z-index:2}.login-card h1{text-align:center;margin-bottom:30px;color:var(--text-heading);font-size:32px}.error{color:#d98989;font-size:14px;margin-bottom:16px;padding:8px;background-color:#8b45454d;border:1px solid rgba(139,69,69,.5);border-radius:4px}.login-card button[type=submit]{width:100%;padding:12px;font-size:16px}.toggle{margin-top:16px;text-align:center}.toggle button{width:100%}.login-wrapper .toggle{margin-top:50px}.login-wrapper .toggle button{font-size:10.5px;padding:6px 12px}.language-selector{padding:6px 12px;border:2px solid var(--input-border);border-radius:4px;font-size:14px;cursor:pointer;background:var(--input-bg);color:var(--text-primary);font-family:Crimson Text,serif;transition:border-color .15s ease;width:auto}.language-selector:focus{outline:none;border-color:var(--accent-gold-1)}.top-controls{position:absolute;top:20px;right:20px;gap:12px;z-index:10}.login-wrapper{min-height:100vh;padding:20px}.logo{max-width:500px;width:100%;height:auto;margin:0 0 -30px;z-index:1}.login-card input{background:#1e1e1ecc;color:#fff;border-color:#8b6f4766}.login-card input::placeholder{color:#ffffff80}.login-card input:focus{background:#1e1e1ee6;color:#fff}.notification-bell{position:relative}.bell-button{position:relative;background:var(--button-secondary-bg);border:1px solid var(--button-secondary-border);border-radius:50%;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .15s ease}.bell-button:hover{background:var(--button-secondary-hover)}.bell-button.has-notifications{animation:ring 2s ease-in-out infinite}@keyframes ring{0%,to{transform:rotate(0)}10%,30%{transform:rotate(-10deg)}20%,40%{transform:rotate(10deg)}}.bell-icon{font-size:20px}.badge{position:absolute;top:-5px;right:-5px;background:var(--accent-gold-1);color:#fff;border-radius:50%;width:18px;height:18px;font-size:12px;display:flex;align-items:center;justify-content:center}.notification-bell .dropdown{position:absolute;top:50px;right:0;width:350px;max-height:500px;overflow-y:auto;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #0000004d;z-index:1000}.notification-bell .dropdown-header{padding:16px;border-bottom:1px solid var(--border-color)}.notification-bell .dropdown-header h3{margin:0;color:var(--text-heading)}.notification-bell .close-btn{background:transparent;border:none;cursor:pointer;color:var(--text-secondary)}.notification-bell .loading,.notification-bell .empty-state{padding:32px;text-align:center;color:var(--text-secondary)}.notification-bell .notifications-list{max-height:400px;overflow-y:auto}.notification-bell .notification-item{padding:16px;border-bottom:1px solid var(--border-color);cursor:pointer;transition:background-color .15s ease}.notification-bell .notification-item:hover{background:var(--hover-bg)}.notification-bell .notification-type{font-weight:700;color:var(--text-heading);margin-bottom:4px}.notification-bell .notification-message{color:var(--text-primary);margin-bottom:8px}.notification-bell .notification-time{color:var(--text-secondary);font-size:12px}.notification-bell .invite-actions{margin-top:12px;gap:8px}.notification-bell .accept-btn{background:var(--accent-gold-1);color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px}.notification-bell .reject-btn{background:var(--danger);color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px}@media (max-width: 500px){.notification-bell .dropdown{width:calc(100vw - 40px);max-width:none;right:-10px}}.toast-container{position:fixed;bottom:20px;right:20px;z-index:9999;gap:10px;pointer-events:none}.toast{gap:12px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1rem;min-width:300px;max-width:400px;box-shadow:0 4px 12px #00000026;cursor:pointer;pointer-events:all;transition:transform .15s ease,box-shadow .15s ease}.toast:hover{transform:translate(-5px);box-shadow:0 6px 16px #0003}.toast-icon{font-size:1.5rem;flex-shrink:0}.toast-content{flex:1}.toast-title{font-weight:700;margin-bottom:.25rem;color:var(--text-primary)}.toast-message{font-size:.9rem;color:var(--text-secondary)}.toast-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);padding:0;border-radius:4px;flex-shrink:0}.toast-close:hover{background-color:#0000001a}.campaign-group{margin-bottom:1.5rem}.group-title{font-size:.9rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem;padding:0 .5rem}.modal-header{padding:1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h3{margin:0}.modal-header .close-btn{font-size:2rem;width:32px;height:32px}.instruction{margin-bottom:1rem;color:var(--text-secondary)}.users-list{gap:.5rem}.user-item{gap:1rem;padding:1rem;border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:background-color .15s ease}.user-item:hover{background-color:#0000000d}.user-item.selected{background-color:#4caf501a;border-color:#4caf50}.user-item input[type=checkbox]{cursor:pointer;width:18px;height:18px}.user-item .user-info{flex:1}.username{font-weight:500}.email{color:var(--text-secondary)}.modal-footer{gap:.75rem;padding:1.5rem;border-top:1px solid var(--border-color)}.modal-footer button{border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:opacity .15s ease,background-color .15s ease}.modal-footer button:disabled{opacity:.5;cursor:not-allowed}.modal-footer .primary{background-color:#4caf50;color:#fff}.modal-footer .primary:hover:not(:disabled){background-color:#45a049}.modal-footer .secondary{background-color:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.modal-footer .secondary:hover{background-color:#0000000d}.campaign-description-panel{height:fit-content;width:380px;min-width:380px}.campaign-description-panel .panel-header{margin-bottom:16px;padding-bottom:12px}.checkmark-icon{color:var(--success-color, #4caf50);font-weight:700;font-size:1.2em;cursor:default;margin:0;padding:0}.importance-indicator{color:#e74c3c;font-weight:700;margin-left:auto;margin-right:70px;font-size:1em}.comment-item.highlighted{background-color:var(--highlight-color, rgba(255, 193, 7, .3));animation:highlight-fade 3s ease-out}@keyframes highlight-fade{0%{background-color:var(--highlight-color, rgba(255, 193, 7, .6))}to{background-color:transparent}}.campaign-description-panel .panel-header{border-bottom:1px solid rgba(139,111,71,.3)}.campaign-description-panel .panel-header h3{color:var(--text-heading);margin:0}.campaign-description-panel .panel-content{padding-right:8px}.campaign-description-panel .description-text{white-space:pre-wrap;line-height:1.6;color:var(--text-primary);font-size:14px;margin:0}.campaign-description-panel .no-description{color:var(--text-secondary);font-style:italic;font-size:14px;margin:0}.campaign-description-panel .edit-description-textarea{width:100%;min-height:300px;font-size:14px;line-height:1.6;resize:vertical;font-family:Crimson Text,serif}.campaign-description-panel .no-campaign-selected{padding:20px 0;text-align:center}.comments-section{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.comments-header{cursor:pointer;-webkit-user-select:none;user-select:none;margin-bottom:1rem}.comments-header:hover h4{color:var(--accent-gold-1)}.comments-header h4{margin:0;color:var(--text-heading);font-weight:600;transition:color .15s ease}.toggle-icon{color:var(--text-secondary);transition:color .15s ease}.comments-header:hover .toggle-icon{color:var(--accent-gold-1)}.comments-list{margin-bottom:1rem}.comment-item{padding:.75rem;margin-bottom:.5rem;background:#f8f9fa00!important;background-image:none!important;border-radius:8px;transition:background-color .15s ease}.comment-item:hover{background:#f0f1f200!important;background-image:none!important}.comment-content{flex:1;min-width:0}.comment-header{gap:.75rem;margin-bottom:.5rem}.comment-info{gap:.75rem}.comment-author{font-weight:600;color:var(--text-heading)}.comment-date{color:var(--text-secondary)}.comment-text{margin:0;color:var(--text-primary);line-height:1.5;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.comment-edit-input{width:100%;min-height:60px;padding:.5rem;border:2px solid var(--input-border);border-radius:4px;font-family:inherit;resize:vertical;background:var(--input-bg);color:var(--text-primary);transition:border-color .15s ease,box-shadow .15s ease}.comment-actions{gap:.25rem;margin-left:auto;opacity:0;transition:opacity .15s ease;pointer-events:none}.comment-actions.visible{opacity:1;pointer-events:auto}.comment-action-btn{background:none;border:none;cursor:pointer;padding:.25rem .5rem;font-size:1rem;border-radius:4px;transition:background-color .15s ease}.comment-action-btn:hover{background-color:var(--hover-bg)}.comment-action-btn.edit-btn{color:var(--accent-gold-2)}.comment-action-btn.save-btn{color:var(--accent-gold-1)}.comment-action-btn.cancel-btn{color:var(--text-secondary)}.comment-action-btn.delete-btn{color:#8b4545e6;font-size:1.2rem}.comment-input-container{position:relative;gap:.5rem}.comment-input{flex:1;min-height:40px;max-height:120px;padding:.5rem;border:2px solid var(--input-border);border-radius:8px;font-family:inherit;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease;background:var(--input-bg);color:var(--text-primary)}.comment-input:focus{outline:none;border-color:var(--accent-gold-1);box-shadow:0 0 10px #8b6f474d}.comment-post-btn{cursor:pointer;font-size:18px;padding:6px 12px;transition:opacity .15s ease;-webkit-user-select:none;user-select:none}.comment-post-btn:hover:not(.disabled){opacity:.7}.comment-post-btn.disabled{opacity:.3;cursor:not-allowed}.campaign-players-panel{margin-bottom:1rem}.campaign-players-panel .panel-content{padding:1rem}.campaign-players-panel .loading{text-align:center;padding:1rem;color:var(--text-secondary)}.campaign-players-panel .players-section,.campaign-players-panel .invites-section{margin-bottom:1.5rem}.campaign-players-panel .invites-section{margin-bottom:0}.campaign-players-panel .section-label{font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.campaign-players-panel .empty-message{color:var(--text-secondary);font-style:italic}.campaign-players-panel .players-list{gap:.5rem}.campaign-players-panel .player-item{padding:.5rem .75rem;background:var(--hover-bg);border-radius:4px;transition:background-color .15s ease}.campaign-players-panel .player-item:hover{background:var(--hover-bg);opacity:.8}.campaign-players-panel .player-item.pending{opacity:.7}.campaign-players-panel .player-name{color:var(--text-primary)}.campaign-players-panel .player-name-row{display:flex;align-items:center;gap:.5rem}.campaign-players-panel .player-info{display:flex;flex-direction:column;gap:.5rem}.campaign-players-panel .reminder-btn{margin-top:.25rem}.campaign-players-panel .remove-btn{background:none;border:none;color:#f5e6d3;font-size:1.5rem;line-height:1;padding:0;border-radius:4px;transition:opacity .15s ease,transform .15s ease}.campaign-players-panel .remove-btn:hover{background:transparent;border:none;transform:scale(1.1)}.hidden-file-input{display:none}.confirm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10020;padding:20px}.confirm-modal-content{background:linear-gradient(145deg,var(--card-bg-1) 0%,var(--card-bg-2) 100%);border:2px solid rgba(139,111,71,.4);border-radius:8px;padding:2rem;max-width:500px;width:90%;box-shadow:0 8px 32px #0006}.confirm-modal-title{margin:0 0 1rem;color:var(--text-primary);text-align:center}.confirm-modal-message{margin:0 0 2rem;color:var(--text-secondary);text-align:center;line-height:1.5}.confirm-modal-actions{display:flex;justify-content:center;align-items:center;gap:2rem}.confirm-modal-btn{width:60px;height:60px;border-radius:50%;border:2px solid;background:transparent;cursor:pointer;transition:opacity .15s ease,transform .15s ease,background-color .15s ease;display:flex;align-items:center;justify-content:center}.confirm-btn{color:#4ade80;border-color:#4ade80}.confirm-btn:hover{background:#4ade80;color:var(--card-bg-1);transform:scale(1.1)}.cancel-btn{color:#ef4444;border-color:#ef4444}.cancel-btn:hover{background:#ef4444;color:var(--card-bg-1);transform:scale(1.1)}.campaign-players-panel .panel-header{padding:12px 16px;margin-bottom:0;border-bottom:1px solid rgba(139,111,71,.3);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s ease}.campaign-players-panel .panel-header:hover{background:var(--hover-bg)}.campaign-players-panel .panel-header:hover h3{color:var(--accent-gold-1)}.campaign-players-panel .panel-header h3{color:var(--text-heading);margin:0;transition:color .15s ease}.campaign-players-panel .toggle-icon{color:var(--text-secondary);transition:color .15s ease,transform .15s ease}.campaign-players-panel .panel-header:hover .toggle-icon{color:var(--accent-gold-1)}.campaign-players-panel .collapse-enter-active,.campaign-players-panel .collapse-leave-active{transition:opacity .15s ease,max-height .15s ease;overflow:hidden}.campaign-players-panel .collapse-enter-from,.campaign-players-panel .collapse-leave-to{opacity:0;max-height:0}.campaign-players-panel .collapse-enter-to,.campaign-players-panel .collapse-leave-from{opacity:1;max-height:1000px}.campaign-description-panel .campaign-description-menu-container .menu-toggle-btn{opacity:0;transition:opacity .15s ease}.campaign-description-panel .panel-header:hover .campaign-description-menu-container .menu-toggle-btn{opacity:1}.campaign-description-panel .panel-content.scrollable{max-height:400px;overflow-y:auto}.campaign-characters-panel .character-item{padding:12px;border-bottom:1px solid var(--border-color);cursor:pointer;transition:background-color .15s ease;gap:12px}.campaign-characters-panel .character-item:hover{background-color:var(--hover-bg)}.campaign-characters-panel .character-item:last-child{border-bottom:none}.campaign-characters-panel .character-portrait{width:60px;height:60px;flex-shrink:0;border-radius:4px;overflow:hidden;border:2px solid var(--border-color)}.campaign-characters-panel .character-portrait img{width:100%;height:100%;object-fit:cover;object-position:top}.campaign-characters-panel .character-portrait .no-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:var(--secondary-bg);font-size:24px;color:var(--text-secondary)}.campaign-characters-panel .character-info{flex:0 0 150px;gap:4px;align-items:flex-start;margin-left:10px}.campaign-characters-panel .character-name{font-weight:700}.campaign-characters-panel .character-race,.campaign-characters-panel .character-class{color:var(--text-secondary)}.campaign-characters-panel .character-actions{gap:8px;flex-shrink:0;margin-left:auto}.campaign-characters-panel .character-actions .menu-toggle-btn{opacity:0;transition:opacity .15s ease}.campaign-characters-panel .character-item:hover .character-actions .menu-toggle-btn{opacity:1}.campaign-characters-panel .character-actions button{background:none;border:none;cursor:pointer;font-size:18px;padding:4px;transition:opacity .15s ease,transform .15s ease}.campaign-characters-panel .character-actions button:hover{transform:scale(1.1)}.campaign-characters-panel .empty-message{text-align:center;color:var(--text-secondary)}.campaign-characters-panel .empty-message .hint{margin-top:.5rem}.character-detail-modal{max-width:600px;width:90%}.character-detail-modal .character-detail-content{display:flex;flex-direction:column;gap:1.5rem}.character-detail-modal .character-header{display:flex;gap:1.5rem;align-items:flex-start}.character-detail-modal .character-image{flex-shrink:0;width:200px;height:300px;border-radius:8px;overflow:hidden;border:3px solid var(--border-color)}.character-detail-modal .character-image img{width:100%;height:100%;object-fit:contain;background-color:var(--secondary-bg)}.character-detail-modal .character-title{flex:1}.character-detail-modal .character-title h2{margin:0 0 .5rem;font-size:24px;color:var(--text-primary)}.character-detail-modal .character-subtitle{display:flex;align-items:center;gap:.5rem;font-size:16px;color:var(--text-secondary)}.character-detail-modal .separator{color:var(--text-tertiary)}.character-detail-modal .character-description h4{margin:0 0 .75rem;font-size:16px;color:var(--text-primary)}.character-detail-modal .character-description p{margin:0;line-height:1.6;color:var(--text-secondary);white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;word-break:break-all}.character-detail-modal .no-description{text-align:center;padding:2rem;color:var(--text-secondary);font-style:italic}@media (max-width: 500px){.character-detail-modal .character-header{flex-direction:column;align-items:center}.character-detail-modal .character-image{width:150px;height:225px}.character-detail-modal .character-title{text-align:center}}.character-modal{max-width:600px;width:90%}.character-modal .character-form{display:flex;flex-direction:column;gap:1rem}.character-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.character-modal .form-group{display:flex;flex-direction:column;gap:.5rem}.character-modal .form-group label{font-weight:500}.character-modal .form-group input,.character-modal .form-group textarea{padding:.5rem;border:1px solid var(--border-color);border-radius:4px;font-family:inherit}.character-modal .form-group textarea{resize:vertical}.character-modal .image-upload-area{border:2px dashed var(--border-color);border-radius:4px;padding:1rem;text-align:center}.character-modal .image-preview{display:flex;flex-direction:column;align-items:center;gap:1rem}.character-modal .image-preview img{max-width:200px;max-height:200px;border-radius:4px;object-fit:cover}.character-modal .remove-image-btn{padding:.5rem 1rem;background-color:var(--danger-color, #dc3545);color:#fff;border:none;border-radius:4px;cursor:pointer}.character-modal .remove-image-btn:hover{opacity:.9}.character-modal .upload-placeholder{display:flex;flex-direction:column;align-items:center;gap:1rem}.character-modal .file-input{display:none}.character-modal .upload-btn{padding:.5rem 1rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer}.character-modal .upload-btn:hover{opacity:.9}.character-modal .modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}@media (max-width: 500px){.character-modal .form-row{grid-template-columns:1fr}.character-modal .image-preview{flex-direction:column}.character-modal .image-preview img{max-width:100%;max-height:200px}}.file-upload-area{margin:1rem 0}.file-input{display:none}.file-label{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem;border:2px dashed var(--border-color);border-radius:8px;cursor:pointer;transition:border-color .15s ease,background-color .15s ease;background:var(--input-bg)}.file-label:hover{border-color:var(--accent-gold-2);background:var(--hover-bg)}.file-icon{font-size:3rem}.file-name{font-weight:600;color:var(--text-primary);text-align:center;word-break:break-all}.file-placeholder{color:var(--text-secondary);font-style:italic}.campaign-menu-container{position:relative}.sidebar-header .campaign-menu-container{margin-left:0}.campaign-header .campaign-menu-container{margin-left:auto}.menu-toggle-btn{background:transparent;border:none;font-size:16px;cursor:pointer;padding:4px 8px;color:var(--text-primary);border-radius:4px;transition:opacity .15s ease,transform .15s ease,background-color .15s ease;text-transform:none;letter-spacing:normal;font-family:Crimson Text,serif}.campaign-header .menu-toggle-btn{opacity:0}.campaign-header:hover .menu-toggle-btn{opacity:1}.menu-toggle-btn:hover{background:var(--hover-bg);color:var(--text-heading);transform:scale(1.1)}.campaign-actions-menu,.post-actions-menu{position:fixed;background:linear-gradient(145deg,var(--card-bg-1) 0%,var(--card-bg-2) 100%);border:1px solid rgba(139,111,71,.3);border-radius:8px;box-shadow:0 4px 12px #0003;min-width:200px;z-index:10010;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.menu-item{width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;border:none;background:transparent;cursor:pointer;text-align:left;font-size:14px;font-family:Cinzel,serif;color:var(--text-primary);transition:background-color .15s ease;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.menu-item:hover{background:var(--hover-bg);color:var(--text-heading)}.menu-item:not(:last-child){border-bottom:1px solid rgba(139,111,71,.2)}.menu-icon{font-weight:700;width:20px;text-align:center;color:var(--accent-gold-2)}.hamburger-btn{background:transparent;border:none;cursor:pointer;padding:8px;display:flex;flex-direction:column;gap:4px;z-index:10002;transition:opacity .15s ease,transform .15s ease}.hamburger-btn span{display:block;width:25px;height:3px;background:var(--text-heading);border-radius:2px;transition:opacity .15s ease,transform .15s ease}.hamburger-btn.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.hamburger-btn.active span:nth-child(2){opacity:0}.hamburger-btn.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.hamburger-btn:hover span{background:var(--accent-gold-2)}.menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hamburger-menu{position:fixed;top:0;left:0;bottom:0;width:85%;max-width:400px;background:linear-gradient(145deg,var(--card-bg-1) 0%,var(--card-bg-2) 100%);box-shadow:4px 0 20px #0000004d;z-index:10001;overflow-y:auto;border-right:2px solid rgba(139,111,71,.3)}.menu-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:2px solid rgba(139,111,71,.3);position:sticky;top:0;background:linear-gradient(145deg,var(--card-bg-1) 0%,var(--card-bg-2) 100%);z-index:10}.menu-header h2{margin:0;font-size:24px;color:var(--text-heading)}.close-menu-btn{background:transparent;border:none;font-size:32px;color:var(--text-heading);cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:opacity .15s ease,transform .15s ease;text-transform:none;letter-spacing:normal}.close-menu-btn:hover{color:var(--accent-gold-2);transform:rotate(90deg)}.menu-content{padding:20px;display:flex;flex-direction:column;gap:20px}.menu-section{background:transparent;border-radius:8px;padding:0}.menu-section:has(.card){background:transparent;border:none;padding:0}.menu-controls{display:flex;flex-direction:column;gap:16px;background:linear-gradient(145deg,var(--card-bg-1) 0%,var(--card-bg-2) 100%);border-radius:8px;border:1px solid rgba(139,111,71,.3);padding:16px}.menu-controls h3{margin:0 0 8px;color:var(--text-heading)}.control-group{display:flex;flex-direction:column;gap:8px}.control-group label{font-weight:600;color:var(--text-primary);font-family:Cinzel,serif}.logout-btn{width:100%;margin-top:8px}.menu-slide-enter-active,.menu-slide-leave-active{transition:transform .15s ease}.menu-slide-enter-from,.menu-slide-leave-to{transform:translate(-100%)}.mobile-only{display:none}.desktop-only{display:flex}.mobile-campaigns-tree{display:none;max-width:680px;width:100%}@media (max-width: 1024px){.main-content{grid-template-columns:1fr;padding:20px}.campaign-info-column,.sidebar.desktop-only{display:none}.feed{max-width:100%;min-width:unset}}@media (max-width: 1200px){.mobile-only{display:flex}.desktop-only{display:none!important}.mobile-campaigns-tree{display:block;margin-bottom:20px;max-width:100%;width:100%;min-width:unset}.campaign-info-column .campaign-description-panel{display:none}.hamburger-menu .campaign-description-panel{display:flex}.main-content{grid-template-columns:1fr;padding:10px}.header-content{padding:12px 16px}.header h1{font-size:20px;margin-left:8px}.user-info{gap:12px}.username-label{font-size:14px}.feed{max-width:100%;min-width:unset;width:100%}.sort-controls{flex-wrap:wrap;gap:8px}.search-input{max-width:100%;width:100%}.sidebar{position:static}.hamburger-menu .sidebar{width:100%;min-width:unset;margin-bottom:0}.hamburger-menu .campaign-description-panel{width:100%;min-width:unset}.menu-section .card{margin-bottom:0}}.draggable-posts,.non-draggable-posts{display:flex;flex-direction:column;gap:0;padding:0;margin:0}.draggable-posts :deep(.sortable-ghost){opacity:.4;background:var(--color-background-secondary);margin:0}.draggable-posts :deep(.sortable-drag){opacity:.8;transform:scale(1.02);box-shadow:0 8px 16px #0003;margin:0}.draggable-posts :deep(.post-item),.non-draggable-posts .post-item{margin:0;padding:0 8px;display:block}.draggable-posts :deep(> div),.non-draggable-posts>div{margin:0;padding:0}.image-gallery{display:flex;flex-direction:column;gap:1rem}.image-gallery .image-container{position:relative;display:flex;justify-content:center;align-items:center}.image-gallery .nav-button{position:absolute;top:50%;transform:translateY(-50%);padding:.5rem 1rem;background:#00000080;color:#fff;border:none;border-radius:4px;cursor:pointer;z-index:10}.image-gallery .nav-button:hover{background:var(--border-color)}.image-gallery .nav-left{left:10px}.image-gallery .nav-right{right:10px}.image-gallery .modal-image{max-width:100%;max-height:800px;width:auto;height:auto;object-fit:contain;display:block}.image-description-panel{min-height:60px}.image-description-text{width:100%;min-height:60px;padding:.5rem;border:1px solid var(--border-color);border-radius:4px;background:var(--input-bg);color:var(--text-color);resize:vertical}.image-description-text-view{width:100%;padding:.5rem;color:var(--text-color);margin:0;white-space:pre-wrap}.image-edit-controls{display:flex;gap:.5rem;flex-wrap:wrap}@media (min-width: 768px){.image-gallery{flex-direction:row;align-items:flex-start}.image-gallery .image-container{flex:1;max-width:70%}.image-description-panel{flex:0 0 30%;max-width:30%}}.image-gallery .modal-image{max-width:100%;max-height:600px;width:auto;height:auto;object-fit:contain;display:block;margin:0 auto}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:var(--input-bg);border-radius:4px}.modal-content::-webkit-scrollbar-thumb{background:#8b6f4780;border-radius:4px}.modal-content::-webkit-scrollbar-thumb:hover{background:#8b6f47b3}.importance-selector{display:flex;gap:.25rem;flex-wrap:wrap}.importance-mark{font-size:1rem;cursor:pointer;color:var(--text-color);opacity:.3;transition:opacity .2s,color .2s;-webkit-user-select:none;user-select:none}.importance-mark:hover{opacity:.6}.importance-mark.active{color:#e74c3c;opacity:1}.notification-overlay{position:fixed;top:20px;right:20px;z-index:9999}.character-creation-notification{background-color:var(--card-bg-1);border-radius:8px;box-shadow:0 4px 12px #00000026;padding:1.5rem;max-width:400px;position:relative;animation:slideIn .3s ease-out;border:1px solid var(--border-color)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.dismiss-btn{position:absolute;top:.5rem;right:.5rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px}.dismiss-btn:hover{background-color:var(--hover-bg);color:var(--text-primary)}.notification-content h4{margin:0 0 .5rem;color:var(--text-primary)}.notification-content p{margin:0 0 1rem;color:var(--text-secondary);font-size:.9rem;line-height:1.4}.notification-actions{display:flex;gap:.5rem}.notification-actions button{flex:1;padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.notification-actions .primary{background-color:var(--success-color);color:#fff}.notification-actions .primary:hover{background-color:#45a049}.notification-actions .secondary{background-color:var(--button-secondary-bg);color:var(--text-primary);border:1px solid var(--button-secondary-border)}.notification-actions .secondary:hover{background-color:var(--button-secondary-hover)}.character-selection-modal{max-width:800px;max-height:80vh;overflow-y:auto}.characters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.character-card{border:2px solid var(--border-color);border-radius:8px;padding:1rem;cursor:pointer;transition:border-color .15s ease;background-color:var(--card-bg-1)}.character-card:hover{border-color:var(--accent-gold-2)}.character-card.selected{border-color:var(--success-color);background-color:#4caf501a}.character-card.assigned{opacity:.5;cursor:not-allowed}.character-image{width:100%;height:150px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:4px;margin-bottom:.5rem;background-color:var(--input-bg)}.character-info{display:flex;flex-direction:column;gap:.25rem}.character-name{font-weight:700;font-size:1.1rem;color:var(--text-primary)}.character-details{display:flex;gap:.5rem;font-size:.9rem;color:var(--text-secondary)}.character-description{font-size:.85rem;color:var(--text-secondary);margin-top:.25rem;max-height:200px;overflow-y:auto}.character-description::-webkit-scrollbar{width:6px}.character-description::-webkit-scrollbar-track{background:var(--input-bg);border-radius:4px}.character-description::-webkit-scrollbar-thumb{background:#8b6f4780;border-radius:4px}.character-description::-webkit-scrollbar-thumb:hover{background:#8b6f47b3}.character-assigned{font-size:.8rem;color:var(--text-secondary);margin-top:.25rem}.predefined-characters-manager{display:flex;flex-direction:column;gap:1rem}.manager-header{display:flex;justify-content:space-between;align-items:center}.manager-header h4{margin:0;color:var(--text-primary)}.characters-list{display:flex;flex-direction:column;gap:.75rem}.character-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid var(--border-color);border-radius:8px;background-color:var(--card-bg-1)}.character-info{display:flex;gap:1rem;align-items:center}.character-image{width:60px;height:60px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:4px;background-color:var(--input-bg)}.character-image img{max-width:100%;max-height:100%;object-fit:contain}.character-details{display:flex;flex-direction:column;gap:.25rem}.character-name{font-weight:700;color:var(--text-primary)}.character-meta{font-size:.9rem;color:var(--text-secondary)}.assigned-badge{display:inline-block;padding:.25rem .5rem;background-color:#2196f333;color:#1976d2;border-radius:4px;font-size:.8rem}.available-badge{display:inline-block;padding:.25rem .5rem;background-color:#4caf5033;color:var(--success-color);border-radius:4px;font-size:.8rem}.character-actions{display:flex;gap:.5rem}.btn-sm{padding:.25rem .75rem;font-size:.85rem}.reminder-btn{background-color:var(--accent-gold-2);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:opacity .15s ease,background-color .15s ease}.reminder-btn:hover{background-color:var(--accent-gold-3)}.mode-description{color:var(--text-secondary);font-size:.85rem;line-height:1.4;margin:0;padding:.5rem;background-color:var(--hover-bg);border-radius:4px;flex:1}.mode-group{display:flex;gap:1rem;align-items:flex-start}.mode-select-wrapper{flex:0 0 auto}.post-creator .importance-selector{display:flex;gap:.25rem;flex-wrap:wrap}.post-creator .importance-mark{font-size:1.5rem;cursor:pointer;color:var(--text-color);opacity:.3;transition:opacity .15s ease,color .15s ease;-webkit-user-select:none;user-select:none}.post-creator .importance-mark:hover{opacity:.6}.post-creator .importance-mark.active{color:#e74c3c;opacity:1}.post-creator .visibility-toggle{cursor:pointer;gap:.5rem}.post-creator .hidden-checkbox{display:none}.post-creator .eye-toggle{font-size:1.5rem;cursor:pointer;transition:transform .15s ease}.post-creator .eye-toggle:hover{transform:scale(1.1)}.post-card.hidden-post{filter:blur(1px);opacity:.6}.post-card.hidden-post:hover{filter:none;opacity:1}.post-card .hidden-indicator{margin-left:8px;font-size:1.2rem}.post-card .image-grid{display:grid;gap:4px;margin-bottom:1rem}.post-card .grid-1{grid-template-columns:1fr}.post-card .grid-2{grid-template-columns:1fr 1fr}.post-card .grid-3{grid-template-columns:1fr 1fr;grid-template-rows:auto auto}.post-card .grid-3 .grid-image:nth-child(3){grid-column:span 2}.post-card .grid-image{position:relative;aspect-ratio:16 / 9;overflow:hidden;border-radius:4px;cursor:pointer}.post-card .grid-image img{width:100%;height:100%;object-fit:cover}.post-card .more-images-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;font-weight:700}.post-item{padding:12px 8px;gap:8px;line-height:1.3;min-height:32px;margin:0;display:flex;align-items:center}.post-item span,.post-item button{margin:0;padding:0;line-height:1.3}.post-item .menu-toggle-btn{opacity:0;margin-left:auto}.post-item:hover .menu-toggle-btn{opacity:1}.post-item.hidden-post-item{filter:blur(1px);opacity:.6}.post-item.hidden-post-item:hover{filter:none;opacity:1}.lightbox-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10020;padding:20px}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.lightbox-image{max-width:90vw;max-height:90vh;object-fit:contain;display:block}.lightbox-controls{position:absolute;bottom:20px;left:50%;transform:translate(-50%);gap:16px;background:var(--card-bg-1);padding:8px 16px;border-radius:20px;border:1px solid rgba(139,111,71,.3)}.lightbox-nav-button{background:transparent;color:var(--text-heading);font-size:24px;padding:0 8px;border:none;text-transform:none;letter-spacing:normal}.lightbox-nav-button:hover{background:#8b6f474d;transform:none}.modal-content .importance-selector{display:flex;gap:.25rem;flex-wrap:wrap}.modal-content .importance-mark{font-size:1.5rem;cursor:pointer;color:var(--text-color);opacity:.3;transition:opacity .15s ease,color .15s ease;-webkit-user-select:none;user-select:none}.modal-content .importance-mark:hover{opacity:.6}.modal-content .importance-mark.active{color:#e74c3c;opacity:1}.modal-content .visibility-toggle{cursor:pointer;gap:.5rem}.modal-content .hidden-checkbox{display:none}.modal-content .eye-toggle{font-size:1.5rem;cursor:pointer;transition:transform .15s ease}.modal-content .eye-toggle:hover{transform:scale(1.1)}.post-thumbnail-tooltip{position:fixed;z-index:1000;background:var(--card-bg-1);border:1px solid var(--border-color);border-radius:8px;padding:12px;box-shadow:0 8px 24px #0006;max-width:300px;pointer-events:none}.post-thumbnail-tooltip .thumbnail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.post-thumbnail-tooltip .thumbnail-image{width:120px;height:120px;object-fit:cover;border-radius:4px;background:var(--input-bg);transition:opacity .15s ease}.post-thumbnail-tooltip .thumbnail-image.loading{opacity:.5}.post-thumbnail-tooltip .no-images-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px}.post-thumbnail-tooltip .no-images-placeholder span{font-size:14px;color:var(--text-secondary)}.user-profile-customization{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10030}.user-profile-customization .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;padding:20px}.user-profile-customization .modal-content{background:linear-gradient(145deg,var(--card-bg-1) 0%,var(--card-bg-2) 100%);border:2px solid var(--accent-gold-1);border-radius:8px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative;padding:24px;box-shadow:0 8px 32px #0006}.user-profile-customization .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.user-profile-customization .modal-header h2{margin:0;color:var(--text-heading)}.user-profile-customization .header-controls{display:flex;align-items:center;gap:12px}.user-profile-customization .close-btn{background:transparent;border:none;font-size:32px;line-height:1;color:var(--text-primary);cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:opacity .15s ease,transform .15s ease}.user-profile-customization .close-btn:hover{color:var(--accent-gold-2);transform:rotate(90deg)}.user-profile-customization .modal-body{margin-bottom:24px}.user-profile-customization .profile-section{margin-bottom:32px}.user-profile-customization .profile-section h3{margin:0 0 16px;color:var(--text-heading);font-size:16px;font-weight:600}.user-profile-customization .avatar-section{display:flex;align-items:center;gap:24px}.user-profile-customization .avatar-preview{width:120px;height:120px;border-radius:50%;overflow:hidden;border:3px solid var(--border-color);background:var(--input-bg);display:flex;align-items:center;justify-content:center}.user-profile-customization .avatar-image{width:100%;height:100%;object-fit:cover}.user-profile-customization .avatar-placeholder{font-size:48px;font-weight:700;color:var(--text-secondary)}.user-profile-customization .avatar-actions{display:flex;flex-direction:column;gap:8px}.user-profile-customization .profile-input,.user-profile-customization .profile-textarea{width:100%;padding:12px;border:2px solid var(--input-border);border-radius:4px;font-size:14px;font-family:Crimson Text,serif;background:var(--input-bg);color:var(--text-primary);transition:border-color .15s ease,box-shadow .15s ease}.user-profile-customization .profile-input:focus,.user-profile-customization .profile-textarea:focus{outline:none;border-color:var(--accent-gold-1);background:var(--input-bg);box-shadow:0 0 10px #8b6f474d}.user-profile-customization .profile-textarea{resize:vertical;min-height:100px}.user-profile-customization .password-fields{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.user-profile-customization .password-btn{align-self:flex-start}.user-profile-customization .modal-footer{display:flex;gap:12px;justify-content:flex-end;padding-top:16px;border-top:1px solid var(--border-color)}.user-profile-customization .error-message{margin-top:16px;padding:12px;background:var(--danger-light);border:1px solid var(--danger);border-radius:4px;color:var(--danger);font-size:14px}.user-profile-customization .hidden-file-input{display:none}.user-profile-customization .modal-content::-webkit-scrollbar{width:8px}.user-profile-customization .modal-content::-webkit-scrollbar-track{background:var(--input-bg);border-radius:4px}.user-profile-customization .modal-content::-webkit-scrollbar-thumb{background:var(--accent-gold-2);border-radius:4px}.user-profile-customization .modal-content::-webkit-scrollbar-thumb:hover{background:var(--accent-gold-3)}@media (max-width: 500px){.user-profile-customization .avatar-section{flex-direction:column;align-items:center;text-align:center}.user-profile-customization .avatar-actions{align-items:center}.user-profile-customization .modal-footer{flex-direction:column}.user-profile-customization .modal-footer button{width:100%}}.character-mention{display:inline-block;background-color:#e3f2fd;color:#1976d2;font-weight:500;cursor:pointer;text-decoration:none;padding:2px 8px;border-radius:12px;font-size:.9em;transition:background-color .15s ease,color .15s ease;white-space:nowrap}.character-mention:hover{background-color:#bbdefb;color:#0d47a1;text-decoration:none}.notification-container{position:fixed;bottom:20px;right:20px;z-index:10040}.notification{background:var(--card-bg-1);border:2px solid var(--border-color);border-radius:8px;padding:16px;min-width:300px;max-width:400px;box-shadow:0 8px 24px #0006;gap:12px}.notification.success{border-color:var(--success-color)}.notification.error{border-color:var(--danger)}.notification-icon{font-size:24px;font-weight:700;flex-shrink:0}.notification.success .notification-icon{color:var(--success-color)}.notification.error .notification-icon{color:var(--danger)}.notification-content{flex:1}.notification-message{font-size:14px;color:var(--text-primary)}.notification-close{background:transparent;border:none;font-size:24px;line-height:1;color:var(--text-secondary);cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;transition:opacity .15s ease,transform .15s ease}.notification-close:hover{color:var(--text-primary)}.notification-enter-active,.notification-leave-active{transition:opacity .15s ease,transform .15s ease}.notification-enter-from,.notification-leave-to{opacity:0;transform:translate(100%)}.mention-autocomplete{position:fixed;background:linear-gradient(145deg,var(--card-bg-1) 0%,var(--card-bg-2) 100%);border:2px solid rgba(139,111,71,.4);border-radius:8px;box-shadow:0 4px 12px #0000004d;max-height:200px;overflow-y:auto;z-index:1000;min-width:250px}.mention-item{display:flex;align-items:center;padding:8px 12px;cursor:pointer;transition:background-color .15s ease}.mention-item:hover,.mention-item.selected{background-color:var(--hover-bg)}.mention-item.no-results{color:var(--text-secondary);cursor:default}.mention-item.no-results:hover{background-color:transparent}.mention-autocomplete .character-avatar{width:32px;height:32px;border-radius:50%;overflow:hidden;margin-right:12px;flex-shrink:0}.mention-autocomplete .character-avatar img{width:100%;height:100%;object-fit:cover}.mention-autocomplete .character-avatar.placeholder{display:flex;align-items:center;justify-content:center;background-color:var(--accent-gold-1);color:#fff;font-weight:700;font-size:14px}.mention-autocomplete .character-info{flex:1;min-width:0}.mention-autocomplete .character-name{font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mention-autocomplete .character-details{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.btn-circle,button,input,textarea,select,.card,.modal-content,.sidebar,.menu-toggle-btn,.menu-item,.character-item,.post-item,.comment-item,.notification-item,.toast,.user-item,.character-card,.mention-item{transition:none!important}}@media (max-width: 768px) and (max-height: 1024px){.card,.modal-content,.sidebar,.header,.menu-overlay,.hamburger-menu,.notification-bell .notifications-list,.campaign-actions-menu,.post-actions-menu{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}body{background:var(--bg-gradient-1)!important}.card,.modal-content,.sidebar,.header,.hamburger-menu{background:var(--card-bg-1)!important}}@media (max-width: 480px){.card,.modal-content,.sidebar,.header,.notification,.toast{box-shadow:none!important}.card,.modal-content,.sidebar{border:1px solid var(--border-color)!important}}body.performance-mode *,body.performance-mode *:before,body.performance-mode *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}body.performance-mode .card,body.performance-mode .modal-content,body.performance-mode .sidebar,body.performance-mode .header,body.performance-mode .menu-overlay,body.performance-mode .hamburger-menu,body.performance-mode .notification-bell .notifications-list,body.performance-mode .campaign-actions-menu,body.performance-mode .post-actions-menu{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}body.performance-mode body{background:var(--bg-gradient-1)!important}body.performance-mode .card,body.performance-mode .modal-content,body.performance-mode .sidebar,body.performance-mode .header,body.performance-mode .hamburger-menu{background:var(--card-bg-1)!important}body.performance-mode .card,body.performance-mode .modal-content,body.performance-mode .sidebar,body.performance-mode .header,body.performance-mode .notification,body.performance-mode .toast{box-shadow:none!important}.performance-mode-toggle{gap:12px;padding:12px;background:var(--input-bg);border-radius:8px;border:1px solid var(--border-color)}.performance-checkbox{width:20px;height:20px;cursor:pointer;accent-color:var(--accent-gold-2)}.performance-label{cursor:pointer;color:var(--text-primary);font-size:14px;line-height:1.4}
