:root{--bg-primary:#0a0b10;--bg-secondary:#12141ebf;--bg-tertiary:#141622;--bg-card:#16192999;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#6b7280;--border-color:#ffffff14;--border-hover:#ffffff29;--border-focus:#6366f1;--accent-color:#8b5cf6;--accent-light:#a78bfa;--accent-rgb:139, 92, 246;--success-color:#10b981;--warning-color:#f59e0b;--danger-color:#ef4444;--shadow-sm:0 2px 8px #0003;--shadow-md:0 8px 30px #0000004d;--shadow-lg:0 16px 40px #0006;--glass-blur:blur(16px);--font-heading:"Outfit", sans-serif;--font-body:"Inter", sans-serif;--header-height:70px}.light-theme{--bg-primary:#f5f6fa;--bg-secondary:#ffffffbf;--bg-tertiary:#fff;--bg-card:#ffffffd9;--text-primary:#1f2937;--text-secondary:#4b5563;--text-muted:#9ca3af;--border-color:#00000014;--border-hover:#00000029;--border-focus:#4f46e5;--accent-color:#7c3aed;--accent-light:#8b5cf6;--accent-rgb:124, 58, 237;--success-color:#059669;--warning-color:#d97706;--danger-color:#dc2626;--shadow-sm:0 2px 8px #0000000d;--shadow-md:0 8px 24px #1f26870f;--shadow-lg:0 16px 36px #1f26871a}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;transition:background-color .3s,color .3s;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;font-weight:600}.app-container{flex-direction:column;min-height:100vh;display:flex}.app-header{height:var(--header-height);background:var(--bg-secondary);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--border-color);z-index:100;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;padding:0 2rem;display:flex;position:sticky;top:0}.logo-section{align-items:center;gap:.75rem;display:flex}.logo-section h1{background:linear-gradient(135deg, var(--accent-light), var(--accent-color));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.4rem;font-weight:800}.header-actions{align-items:center;gap:1rem;display:flex}.btn{font-family:var(--font-body);cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-size:.9rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--accent-light), var(--accent-color));color:#fff;box-shadow:0 4px 15px rgba(var(--accent-rgb), .3);border:none}.btn-primary:hover{box-shadow:0 6px 20px rgba(var(--accent-rgb), .4);transform:translateY(-1px)}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-tertiary);border-color:var(--border-hover)}.btn-danger{color:var(--danger-color);background:#ef444426;border:1px solid #ef44444d}.btn-danger:hover{border-color:var(--danger-color);background:#ef444440}.btn-icon{background:var(--bg-card);width:40px;height:40px;color:var(--text-primary);border:1px solid var(--border-color);border-radius:10px;padding:0}.btn-icon:hover{background:var(--bg-tertiary);border-color:var(--border-hover)}.user-profile{border-left:1px solid var(--border-color);align-items:center;gap:.75rem;padding-left:1rem;display:flex}.avatar{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.2rem;display:flex;overflow:hidden}.user-info{flex-direction:column;display:flex}.user-name{color:var(--text-primary);font-size:.85rem;font-weight:600}.user-role{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem}.main-content{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:2rem;animation:.4s ease-out fadeIn}.main-content.main-content-full{max-width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex;position:relative;overflow:hidden}.login-page:before{content:"";filter:blur(12px)brightness(.4);z-index:0;pointer-events:none;background-image:url(/assets/forest_house-B0nP8DXL.jpg);background-position:50%;background-size:cover;position:absolute;inset:-20px}.login-card{-webkit-backdrop-filter:blur(16px);z-index:10;text-align:center;background:#0d1a11a6;border:1px solid #ffffff14;border-radius:20px;width:100%;max-width:420px;padding:2.5rem;transition:transform .3s,border-color .3s;box-shadow:0 12px 40px #00000080}.login-card:hover{border-color:#10b98140;transform:translateY(-2px)}.login-page.forest-theme .btn-primary{color:#fff!important;background:linear-gradient(135deg,#a75d2b 0%,#6f3b19 100%)!important;border:1px solid #c27d4c!important;box-shadow:0 4px 14px #a75d2b40!important}.login-page.forest-theme .btn-primary:hover{background:linear-gradient(135deg,#c27d4c 0%,#8c4c22 100%)!important;box-shadow:0 6px 20px #a75d2b59!important}.login-page.forest-theme .form-label{font-weight:600;color:#ffffffb3!important}.login-page.forest-theme .form-input{color:#fff!important;background:#ffffff14!important;border:1px solid #ffffff26!important}.login-page.forest-theme .form-input::placeholder{color:#ffffff59!important}.login-page.forest-theme .form-input:focus{background:#ffffff1f!important;border-color:#c27d4c!important;box-shadow:0 0 0 3px #a75d2b40!important}.login-header{margin-bottom:2rem}.login-logo{margin-bottom:.5rem;font-size:3rem;animation:3s ease-in-out infinite float;display:inline-block}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.login-header h2{color:#fde047;text-shadow:0 0 12px #fde04766;margin-bottom:.5rem;font-size:1.8rem;font-weight:800}.login-header p{color:#ffffffb3;font-size:.9rem}.form-group{text-align:left;margin-bottom:1.25rem}.form-label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.85rem;font-weight:500;display:block}.form-input{background:var(--bg-tertiary);border:1px solid var(--border-color);width:100%;color:var(--text-primary);font-family:var(--font-body);border-radius:10px;padding:.75rem 1rem;font-size:.95rem;transition:all .2s}.form-input:focus{border-color:var(--border-focus);outline:none;box-shadow:0 0 0 3px #6366f126}.login-divider{text-align:center;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;margin:1.5rem 0;font-size:.8rem;display:flex}.login-divider:before,.login-divider:after{content:"";border-bottom:1px solid var(--border-color);flex:1}.login-divider:not(:empty):before{margin-right:.5em}.login-divider:not(:empty):after{margin-left:.5em}.btn-facebook{color:#fff;background:#1877f2;border:none;border-radius:10px;width:100%;padding:.75rem;font-weight:600;box-shadow:0 4px 12px #1877f233}.btn-facebook:hover{background:#166fe5;transform:translateY(-1px);box-shadow:0 6px 16px #1877f24d}.btn-facebook svg{fill:currentColor}.quick-login-hints{color:var(--text-muted);margin-top:1.5rem;font-size:.75rem}.quick-login-btn{color:var(--accent-light);cursor:pointer;font-family:inherit;font-size:inherit;background:0 0;border:none;margin:0 .25rem;text-decoration:underline}.fb-simulator-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.fb-simulator-modal{color:#1c1e21;background:#fff;border-radius:12px;width:100%;max-width:480px;font-family:-apple-system,BlinkMacSystemFont,Arial,sans-serif;overflow:hidden;box-shadow:0 12px 28px #0003,0 2px 4px #0000001a}.fb-header{background:#f0f2f5;border-bottom:1px solid #e4e6eb;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.fb-header h3{color:#1877f2;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;display:flex}.fb-close-btn{cursor:pointer;color:#606770;background:0 0;border:none;font-size:1.5rem}.fb-body{padding:1.5rem}.fb-app-info{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.fb-app-logo{background:#f0f2f5;border:1px solid #ddd;border-radius:12px;justify-content:center;align-items:center;width:60px;height:60px;font-size:2.5rem;display:flex}.fb-app-details h4{margin-bottom:.25rem;font-size:1rem;font-weight:600}.fb-app-details p{color:#606770;font-size:.8rem}.fb-users-list{flex-direction:column;gap:.75rem;max-height:240px;padding-right:.25rem;display:flex;overflow-y:auto}.fb-user-item{cursor:pointer;border:1px solid #e4e6eb;border-radius:8px;justify-content:space-between;align-items:center;padding:.75rem 1rem;transition:background-color .2s;display:flex}.fb-user-item:hover{background-color:#f8f9fa;border-color:#1877f2}.fb-user-avatar{background:#f0f2f5;border:1px solid #ddd;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.4rem;display:flex}.fb-user-info{flex:1;margin-left:1rem}.fb-user-name{font-size:.95rem;font-weight:600}.fb-user-details{color:#606770;font-size:.75rem}.dashboard-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.dashboard-title h2{margin-bottom:.25rem;font-size:1.8rem;font-weight:800}.dashboard-title p{color:var(--text-secondary);font-size:.95rem}.kanban-board{align-items:start;gap:1.25rem;width:100%;display:flex}@media (width<=900px){.kanban-board{flex-direction:column}}.kanban-column{background:var(--bg-card);min-width:0;-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:16px;flex-direction:column;flex:1 1 0;min-height:500px;padding:1.25rem;display:flex}.kanban-column-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:.75rem;display:flex}.column-title{align-items:center;gap:.5rem;font-size:1.05rem;font-weight:700;display:flex}.column-count{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:20px;padding:.2rem .6rem;font-size:.75rem}.cards-container{flex-direction:column;flex:1;gap:1rem;min-height:400px;display:flex}.cards-container.drag-over{background:rgba(var(--accent-rgb), .05);outline:2px dashed rgba(var(--accent-rgb), .3);border-radius:8px}.problem-card{background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:12px;padding:1.25rem;transition:all .2s;position:relative;overflow:hidden}.problem-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.problem-card-header{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.5rem;display:flex}.problem-card-title{color:var(--text-primary);font-size:1rem;font-weight:700;line-height:1.4}.problem-card-description{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:1rem;font-size:.85rem;line-height:1.5;display:-webkit-box;overflow:hidden}.problem-card-meta{flex-direction:column;gap:.75rem;margin-top:auto;display:flex}.meta-row{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.meta-creator{align-items:center;gap:.25rem;display:flex}.meta-indicators{align-items:center;gap:.75rem;display:flex}.indicator-item{align-items:center;gap:.25rem;display:flex}.indicator-item.voted{color:var(--accent-light);font-weight:600}.progress-container{width:100%}.progress-header{justify-content:space-between;margin-bottom:.25rem;font-size:.75rem;display:flex}.progress-bar-bg{background:var(--border-color);border-radius:3px;width:100%;height:6px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg, var(--accent-light), var(--success-color));border-radius:3px;height:100%;transition:width .3s}.badge{text-transform:uppercase;border-radius:6px;padding:.15rem .5rem;font-size:.7rem;font-weight:600}.badge-low{color:var(--success-color);background:#10b9811a}.badge-medium{color:var(--warning-color);background:#f59e0b1a}.badge-high{color:var(--danger-color);background:#ef44441a}.badge-critical{background:var(--danger-color);color:#fff}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:500;background:#0009;justify-content:center;align-items:center;padding:1.5rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-tertiary);border:1px solid var(--border-color);width:100%;max-width:975px;max-height:90vh;box-shadow:var(--shadow-lg);border-radius:20px;flex-direction:column;animation:.3s cubic-bezier(.34,1.56,.64,1) scaleUp;display:flex;overflow:hidden}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-title h3{font-size:1.35rem;font-weight:800}.modal-body{flex:1;padding:1.5rem;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.problem-info-grid{grid-template-columns:2fr 1fr;gap:1.5rem;display:grid}@media (width<=700px){.problem-info-grid{grid-template-columns:1fr}}.problem-main-details{flex-direction:column;gap:1.25rem;padding-bottom:120px;display:flex}@media (width>=701px){.modal-body{overflow:hidden}.problem-main-details{max-height:calc(90vh - 130px);padding-bottom:120px;padding-right:.75rem;overflow-y:auto}.problem-sidebar{max-height:calc(90vh - 130px);overflow-y:auto}.problem-main-details::-webkit-scrollbar{width:6px}.problem-main-details::-webkit-scrollbar-track{background:0 0}.problem-main-details::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}.problem-main-details::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}}.problem-sidebar{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;gap:1.25rem;padding:1.25rem;display:flex}.problem-description-box h4,.problem-custom-fields h4,.checklist-section h4,.comments-section h4{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.95rem;display:flex}.description-text{color:var(--text-primary);white-space:pre-line;font-size:.95rem;line-height:1.6}.custom-fields-list{flex-direction:column;gap:.75rem;display:flex}.custom-field-item{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.85rem;display:flex}.custom-field-label{color:var(--text-secondary);font-weight:500}.custom-field-value{color:var(--text-primary);font-weight:600}.checklist-items{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.checklist-item{border-radius:8px;align-items:center;gap:.75rem;padding:.5rem;transition:background-color .2s;display:flex}.checklist-item:hover{background:#ffffff05}.checklist-item.completed span{color:var(--text-muted);text-decoration:line-through}.checklist-checkbox{cursor:pointer;width:18px;height:18px;accent-color:var(--success-color);border-radius:4px}.checklist-text{flex:1;font-size:.9rem}.checklist-delete-btn{color:var(--danger-color);cursor:pointer;opacity:0;background:0 0;border:none;transition:opacity .2s}.checklist-item:hover .checklist-delete-btn{opacity:1}.add-checklist-item-form{gap:.5rem;display:flex}.comments-list{flex-direction:column;gap:1rem;margin-bottom:1.25rem;padding-left:20px;padding-right:.2rem;display:flex;position:relative}.comment-item{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;gap:.75rem;padding:.75rem;display:flex;position:relative}.comment-bubble{flex:1}.comment-meta{justify-content:space-between;margin-bottom:.25rem;display:flex}.comment-author{font-size:.85rem;font-weight:600}.comment-time{color:var(--text-muted);font-size:.75rem}.comment-text{color:var(--text-primary);font-size:.85rem;line-height:1.5}.comment-form{gap:.5rem;display:flex}.admin-tabs{border-bottom:1px solid var(--border-color);gap:1rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex}.admin-tab{cursor:pointer;color:var(--text-muted);border-bottom:2px solid #0000;padding:.5rem 1rem;font-size:.95rem;font-weight:600;transition:all .2s}.admin-tab.active{color:var(--accent-light);border-bottom-color:var(--accent-light)}.admin-panel-grid{grid-template-columns:1fr 1.5fr;gap:2rem;display:grid}@media (width<=800px){.admin-panel-grid{grid-template-columns:1fr}}.admin-form-container{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem}.admin-list-container{flex-direction:column;gap:1rem;display:flex}.admin-list-title{margin-bottom:.5rem;font-size:1.1rem;font-weight:700}.item-list{flex-direction:column;gap:.75rem;display:flex}.list-item-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.list-item-info{align-items:center;gap:.75rem;display:flex}.list-item-text h5{font-size:.95rem;font-weight:600}.list-item-text p{color:var(--text-muted);font-size:.8rem}.checkbox-group{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.checkbox-label{cursor:pointer;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.empty-state{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem;display:flex}.empty-state-icon{font-size:3rem}*{transition:background-color .2s,border-color .2s}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.attachments-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;margin-top:1rem;padding:1.25rem}.attachments-section h4{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.95rem;display:flex}.attachment-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;margin-top:1rem;display:grid}.attachment-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;height:160px;transition:all .2s;display:flex;position:relative;overflow:hidden}.attachment-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.attachment-preview{background:#0003;justify-content:center;align-items:center;height:90px;display:flex;position:relative;overflow:hidden}.attachment-preview img,.attachment-preview video{object-fit:cover;width:100%;height:100%}.attachment-info{flex-direction:column;flex:1;gap:.2rem;min-width:0;padding:.5rem;display:flex}.attachment-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;font-weight:600;text-decoration:none;overflow:hidden}.attachment-name:hover{color:var(--accent-light);text-decoration:underline}.attachment-meta{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:.65rem;display:flex}.attachment-delete-btn{color:#fff;cursor:pointer;opacity:0;z-index:10;background:#ef4444d9;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:opacity .2s,background-color .2s;display:flex;position:absolute;top:5px;right:5px}.attachment-card:hover .attachment-delete-btn{opacity:1}.attachment-delete-btn:hover{background:var(--danger-color)}.attachment-dropzone{border:2px dashed var(--border-color);text-align:center;cursor:pointer;background:#ffffff03;border-radius:8px;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem;transition:all .2s;display:flex}.attachment-dropzone:hover{border-color:var(--accent-light);background:rgba(var(--accent-rgb), .03)}.attachment-dropzone-text{color:var(--text-secondary);font-size:.85rem}.attachment-dropzone-subtext{color:var(--text-muted);font-size:.75rem}.staged-attachments-list{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;margin-bottom:.5rem;display:flex}.staged-attachment-tag{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:6px;align-items:center;gap:.35rem;padding:.25rem .5rem;font-size:.75rem;display:inline-flex}.staged-attachment-remove{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;display:flex}.staged-attachment-remove:hover{color:var(--danger-color)}.comment-attachments{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.comment-attachment-card{background:var(--bg-tertiary);border:1px solid var(--border-color);max-width:200px;color:var(--text-primary);border-radius:6px;align-items:center;gap:.5rem;padding:.35rem .5rem;font-size:.75rem;text-decoration:none;transition:all .2s;display:flex}.comment-attachment-card:hover{border-color:var(--border-hover);background:var(--bg-card)}.comment-attachment-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.comment-attachment-info{flex:1;min-width:0}.comment-attachment-name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.comment-attachment-size{color:var(--text-muted);font-size:.65rem}.reaction-emoji-btn{transition:transform .15s}.reaction-emoji-btn:hover{transform:scale(1.3)}.emoji-item-btn{transition:background .15s,transform .1s}.emoji-item-btn:hover{background:#ffffff14;transform:scale(1.15)}.mention-item{transition:background .15s}.mention-item:hover{background:#ffffff0d}.firefly{pointer-events:none;opacity:0;z-index:1;background:radial-gradient(circle,#fde047 0%,#eab30866 60%,#0000 100%);border-radius:50%;animation:linear infinite float-particle;position:absolute;box-shadow:0 0 10px #fde047,0 0 20px #eab308}.floating-leaf{pointer-events:none;opacity:0;-webkit-user-select:none;user-select:none;z-index:1;animation:linear infinite fall-leaf;position:absolute}@keyframes float-particle{0%{opacity:0;transform:translateY(0)translate(0)scale(.5)}15%{opacity:.9}85%{opacity:.9}to{opacity:0;transform:translateY(-120px)translate(40px)scale(1)}}@keyframes fall-leaf{0%{opacity:0;transform:translateY(0)rotate(0)translate(0)}15%{opacity:.6}85%{opacity:.6}to{opacity:0;transform:translateY(115vh)rotate(360deg)translate(80px)}}
