*,*:before,*:after{box-sizing:border-box}html,body{font-family:Roboto,sans-serif;margin:0;padding:0;background-color:#f0f3f7;color:#4a5568;line-height:1.6;width:100%;height:100%;overflow-x:hidden}#root{display:flex;flex-direction:column;flex-grow:1;min-height:100%}:root{--neumorphic-base: #F0F3F7;--neumorphic-shadow-light: #FFFFFF;--neumorphic-shadow-dark: #D1D9E6;--neumorphic-text: #4A5568;--neumorphic-subtle-text: #718096;--neumorphic-accent: #4299E1;--neumorphic-accent-dark: #3182CE;--neumorphic-danger: #E53E3E;--neumorphic-success: #38A169;--neumorphic-warning-bg: #FEFCBF;--neumorphic-warning-text: #744210;--neumorphic-radius-soft: 12px;--neumorphic-radius-medium: 15px;--neumorphic-radius-large: 20px;--neumorphic-shadow-outset: 5px 5px 10px var(--neumorphic-shadow-dark), -5px -5px 10px var(--neumorphic-shadow-light);--neumorphic-shadow-inset: inset 5px 5px 10px var(--neumorphic-shadow-dark), inset -5px -5px 10px var(--neumorphic-shadow-light);--neumorphic-shadow-outset-small: 3px 3px 6px var(--neumorphic-shadow-dark), -3px -3px 6px var(--neumorphic-shadow-light);--neumorphic-shadow-inset-small: inset 3px 3px 6px var(--neumorphic-shadow-dark), inset -3px -3px 6px var(--neumorphic-shadow-light)}.app-container{display:flex;flex-direction:column;min-height:100vh;width:100%}.app-body{display:flex;flex-grow:1;padding-top:70px;position:relative}.sidebar{width:260px;background-color:var(--neumorphic-base);padding:20px;box-shadow:var(--neumorphic-shadow-outset);border-radius:0 var(--neumorphic-radius-medium) var(--neumorphic-radius-medium) 0;height:calc(100vh - 70px);overflow-y:auto;position:fixed;top:70px;left:0;z-index:1005;transform:translate(-100%);transition:transform .3s ease-in-out}.sidebar.open{transform:translate(0)}.sidebar h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;color:var(--neumorphic-subtle-text);margin-top:0;margin-bottom:1.5rem;padding-left:.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--neumorphic-shadow-dark)}.sidebar ul{list-style:none;padding:0;margin:0}.sidebar li button{display:flex;align-items:center;width:100%;padding:.9rem 1rem;background:var(--neumorphic-base);border:none;text-align:left;cursor:pointer;font-size:.9rem;color:var(--neumorphic-text);border-radius:var(--neumorphic-radius-soft);transition:background-color .2s ease,color .2s ease,box-shadow .2s ease;text-decoration:none;margin-bottom:.5rem;box-shadow:var(--neumorphic-shadow-outset-small)}.sidebar li button i.fa-fw{font-size:1rem;margin-right:1rem;width:20px;text-align:center;color:var(--neumorphic-subtle-text);transition:color .2s ease}.sidebar li button:hover,.sidebar li button:hover i.fa-fw{color:var(--neumorphic-accent)}.sidebar li button.active{background-color:var(--neumorphic-base);color:var(--neumorphic-accent);font-weight:500;box-shadow:var(--neumorphic-shadow-inset-small)}.sidebar li button.active i.fa-fw{color:var(--neumorphic-accent)}.main-content-area{flex-grow:1;padding:24px;overflow-y:auto;overflow-x:auto;background-color:var(--neumorphic-base);min-width:0;transition:margin-left .3s ease-in-out}.app-header{background-color:var(--neumorphic-base);color:var(--neumorphic-text);padding:0 24px;height:70px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--neumorphic-shadow-outset);position:fixed;top:0;left:0;right:0;z-index:1010}.menu-toggle-btn{background:transparent;border:none;color:var(--neumorphic-accent);font-size:1.8rem;cursor:pointer;padding:.5rem;margin-right:.5rem;border-radius:var(--neumorphic-radius-soft);z-index:1015}.menu-toggle-btn:hover{background-color:#0000000d}.app-header h1{margin:0;font-size:1.5rem;font-weight:500;color:var(--neumorphic-text);white-space:nowrap;flex-grow:1;text-align:center}.app-header h1:not(:first-child):not(:last-child){text-align:center}.user-info{display:flex;align-items:center;gap:1rem}.user-info span{font-size:.9rem;color:var(--neumorphic-subtle-text);font-weight:500}.header-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:none;box-shadow:var(--neumorphic-shadow-outset-small)}.user-info .action-btn{box-shadow:var(--neumorphic-shadow-outset-small);background-color:var(--neumorphic-base);color:var(--neumorphic-accent)}.user-info .action-btn:hover{background-color:var(--neumorphic-base);color:var(--neumorphic-accent-dark)}.user-info .action-btn:active{box-shadow:var(--neumorphic-shadow-inset-small)}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:var(--neumorphic-base)}.login-container{background-color:var(--neumorphic-base);padding:3rem 3.5rem;border-radius:var(--neumorphic-radius-large);box-shadow:var(--neumorphic-shadow-outset);width:100%;max-width:450px;text-align:center}.login-container h2{color:var(--neumorphic-accent);margin-bottom:2.5rem;font-weight:500;font-size:1.8rem}.login-container .form-group{margin-bottom:1.8rem;text-align:left}.login-container label{display:block;margin-bottom:.6rem;font-weight:500;color:var(--neumorphic-subtle-text);font-size:.9rem}.login-container input[type=text],.login-container input[type=email],.login-container input[type=password]{width:100%;padding:1rem 1.2rem;border:none;border-radius:var(--neumorphic-radius-medium);box-sizing:border-box;font-size:1rem;background-color:var(--neumorphic-base);box-shadow:var(--neumorphic-shadow-inset);color:var(--neumorphic-text)}.login-container input[type=text]:focus,.login-container input[type=email]:focus,.login-container input[type=password]:focus{outline:none;box-shadow:var(--neumorphic-shadow-inset),0 0 0 2px var(--neumorphic-accent)}.login-container .action-btn{width:100%;margin-top:1rem;padding:1rem;font-size:1.1rem}.login-container .or-separator{margin:2rem 0;color:var(--neumorphic-subtle-text);font-size:.9rem}.admin-section,.profile-view .admin-section,.reports-view .admin-section,.local-storage-view .admin-section,.ai-image-generation-view .admin-section,.page-view:not(.admin-panel):not(.reports-view):not(.profile-view):not(.local-storage-view):not(.ai-image-generation-view):not([style*="display: flex"]):not(.chat-container):not(.projects-kanban-view),.page-view[style*="display: flex"]{background-color:var(--neumorphic-base);border-radius:var(--neumorphic-radius-large);box-shadow:var(--neumorphic-shadow-outset);padding:28px;margin-bottom:28px}.page-view.chat-container{display:flex;flex-direction:column;height:100%;background-color:var(--neumorphic-base);border-radius:var(--neumorphic-radius-large);box-shadow:var(--neumorphic-shadow-outset);padding:24px;margin-bottom:24px}.projects-kanban-view{padding-bottom:24px}.action-btn,.ai-btn,.modal-action-btn,.emoji-btn{background-color:var(--neumorphic-base);color:var(--neumorphic-accent);border:none;padding:12px 22px;border-radius:var(--neumorphic-radius-medium);cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.7rem;white-space:nowrap;box-shadow:var(--neumorphic-shadow-outset-small)}.action-btn:hover,.ai-btn:hover,.modal-action-btn:hover,.emoji-btn:hover{color:var(--neumorphic-accent-dark)}.action-btn:active,.ai-btn:active,.modal-action-btn:active,.emoji-btn:active{box-shadow:var(--neumorphic-shadow-inset-small);color:var(--neumorphic-accent-dark);transform:translateY(1px)}.action-btn:disabled,.ai-btn:disabled,.emoji-btn:disabled{opacity:.7;cursor:not-allowed;box-shadow:none;color:var(--neumorphic-subtle-text)}.ai-btn{color:var(--neumorphic-success)}.ai-btn:hover,.ai-btn:active{color:darken(var(--neumorphic-success),10%)}.emoji-btn{padding:10px;font-size:1.3rem;min-width:46px}.btn-secondary{color:var(--neumorphic-subtle-text)}.btn-secondary:hover,.btn-secondary:active{color:var(--neumorphic-text)}.btn-danger{color:var(--neumorphic-danger)}.btn-danger:hover,.btn-danger:active{color:darken(var(--neumorphic-danger),10%)}.btn-success{color:var(--neumorphic-success)}.btn-success:hover,.btn-success:active{color:darken(var(--neumorphic-success),10%)}.btn-warning{color:var(--neumorphic-warning-text)}.btn-warning:hover,.btn-warning:active{color:darken(var(--neumorphic-warning-text),10%)}.btn-info{color:var(--neumorphic-accent)}.btn-info:hover,.btn-info:active{color:var(--neumorphic-accent-dark)}.btn-small{padding:9px 16px;font-size:.85rem;gap:.5rem;border-radius:var(--neumorphic-radius-soft)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--neumorphic-shadow-dark)}.page-header h2{margin:0;color:var(--neumorphic-text);font-size:1.6rem;font-weight:500}.page-header-actions{display:flex;gap:.8rem;align-items:center}.chat-container:not(.page-view){display:flex;flex-direction:column;padding:0;flex-grow:1}.page-view.chat-container .chat-messages{flex-grow:1;overflow-y:auto;padding:15px;border-radius:var(--neumorphic-radius-medium);margin-bottom:18px;background-color:var(--neumorphic-base);box-shadow:var(--neumorphic-shadow-inset);min-height:0}.chat-messages{flex-grow:1;overflow-y:auto;padding:15px;border-radius:var(--neumorphic-radius-medium);margin-bottom:18px;background-color:var(--neumorphic-base);box-shadow:var(--neumorphic-shadow-inset);min-height:200px}.chat-message{margin-bottom:12px;padding:12px 16px;border-radius:var(--neumorphic-radius-medium);max-width:78%;word-wrap:break-word;font-size:.93rem;box-shadow:var(--neumorphic-shadow-outset-small)}.chat-message strong{font-weight:500}.chat-message.current-user{background-color:var(--neumorphic-accent);color:var(--neumorphic-shadow-light);margin-left:auto;border-bottom-right-radius:6px}.chat-message.current-user strong{color:#fffc}.chat-message.other-user{background-color:var(--neumorphic-base);color:var(--neumorphic-text);margin-right:auto;border-bottom-left-radius:6px}.chat-message.other-user strong{color:var(--neumorphic-accent)}.chat-message.system-notification{background-color:var(--neumorphic-warning-bg);color:var(--neumorphic-warning-text);border:none;font-style:italic;font-size:.85em;box-shadow:var(--neumorphic-shadow-outset-small)}.typing-indicator{height:22px;font-size:.83rem;color:var(--neumorphic-subtle-text);padding-left:5px;margin-bottom:5px;font-style:italic}.emoji-picker-wrapper{position:relative}.emoji-picker{position:absolute;bottom:calc(100% + 10px);left:0;background-color:var(--neumorphic-base);border-radius:var(--neumorphic-radius-medium);padding:12px;display:flex;flex-wrap:wrap;gap:10px;box-shadow:var(--neumorphic-shadow-outset);z-index:10}.emoji-item{cursor:pointer;padding:6px;font-size:1.4rem;border-radius:var(--neumorphic-radius-soft);transition:transform .1s ease}.emoji-item:hover{transform:scale(1.1)}.chat-input-area{display:flex;gap:10px;align-items:center;padding-top:5px}.chat-input-area textarea{flex-grow:1;padding:14px;border:none;border-radius:var(--neumorphic-radius-medium);resize:none;min-height:48px;font-size:.95rem;line-height:1.5;background-color:var(--neumorphic-base);box-shadow:var(--neumorphic-shadow-inset);color:var(--neumorphic-text);min-width:0}.chat-input-area textarea:focus{outline:none;box-shadow:var(--neumorphic-shadow-inset),0 0 0 2px var(--neumorphic-accent)}.chat-input-area .action-btn{padding:12px 18px;flex-shrink:0}.user-list-sidebar{min-width:240px;max-width:290px;padding:28px;overflow-y:auto;background-color:var(--neumorphic-base);flex-shrink:0;box-shadow:var(--neumorphic-shadow-outset);border-radius:var(--neumorphic-radius-large);margin-right:28px;height:calc(100vh - 156px)}.user-list-sidebar h3{font-size:1.15rem;color:var(--neumorphic-accent);margin-top:0;margin-bottom:1.2rem;padding-bottom:.8rem;border-bottom:1px solid var(--neumorphic-shadow-dark)}.user-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.user-list-item{display:flex;align-items:center;width:100%;text-align:left;padding:12px 14px;border-radius:var(--neumorphic-radius-soft);background-color:var(--neumorphic-base);border:none;cursor:pointer;transition:box-shadow .2s ease,color .2s ease;gap:14px;box-shadow:var(--neumorphic-shadow-outset-small)}.user-list-item.active{box-shadow:var(--neumorphic-shadow-inset-small)}.user-list-item.active .user-list-item-name{color:var(--neumorphic-accent);font-weight:500}.user-list-item-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;flex-shrink:0;box-shadow:var(--neumorphic-shadow-outset-small)}.user-list-item-name{font-size:.93rem;color:var(--neumorphic-text);flex-grow:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-filters-bar{display:flex;gap:14px;margin-bottom:22px;align-items:center;flex-wrap:wrap;padding:14px 18px;background-color:var(--neumorphic-base);border-radius:var(--neumorphic-radius-large);box-shadow:var(--neumorphic-shadow-outset)}.project-search-input,.project-filters-bar select{padding:10px 14px;border-radius:var(--neumorphic-radius-soft);border:none;background-color:var(--neumorphic-base);box-shadow:var(--neumorphic-shadow-inset-small);font-size:.9rem;color:var(--neumorphic-text);min-width:150px}.project-search-input:focus,.project-filters-bar select:focus{outline:none;box-shadow:var(--neumorphic-shadow-inset-small),0 0 0 2px var(--neumorphic-accent)}.project-search-input{flex-grow:1;min-width:200px}.filter-checkbox-group{display:flex;align-items:center;gap:8px}.filter-checkbox-group label{font-size:.9rem;color:var(--neumorphic-subtle-text);cursor:pointer}.filter-checkbox-group input[type=checkbox]{cursor:pointer}.project-dashboard-snippet{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin-bottom:24px}.dashboard-stat-card{background-color:var(--neumorphic-base);padding:20px;border-radius:var(--neumorphic-radius-medium);box-shadow:var(--neumorphic-shadow-outset);text-align:center}.stat-value{font-size:2.2rem;font-weight:700;color:var(--neumorphic-accent)}.stat-label{font-size:.9rem;color:var(--neumorphic-subtle-text);margin-top:5px}.kanban-board{display:flex;gap:20px;overflow-x:auto;padding-bottom:20px}.kanban-column{flex:1;min-width:300px;max-width:320px;background-color:var(--neumorphic-base);border-radius:var(--neumorphic-radius-medium);box-shadow:var(--neumorphic-shadow-inset);padding:15px;transition:background-color .2s ease}.kanban-column.drag-over{background-color:#e0e5eb}.kanban-column-header{display:flex;justify-content:space-between;align-items:center;padding:0 5px 15px;border-bottom:1px solid var(--neumorphic-shadow-dark);margin-bottom:15px}.kanban-column-title{margin:0;font-size:1rem;font-weight:500}.kanban-column-count{background-color:var(--neumorphic-base);color:var(--neumorphic-subtle-text);padding:3px 10px;border-radius:var(--neumorphic-radius-soft);font-size:.8rem;font-weight:700;box-shadow:var(--neumorphic-shadow-outset-small)}.kanban-column-cards{display:flex;flex-direction:column;gap:15px;min-height:200px}.kanban-empty-column{text-align:center;color:var(--neumorphic-subtle-text);font-size:.9rem;padding-top:2rem}.project-item-kanban{background-color:var(--neumorphic-base);padding:15px;border-radius:var(--neumorphic-radius-medium);box-shadow:var(--neumorphic-shadow-outset);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.project-item-kanban:hover{transform:translateY(-2px);box-shadow:8px 8px 16px var(--neumorphic-shadow-dark),-8px -8px 16px var(--neumorphic-shadow-light)}.project-kanban-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}.project-kanban-title{margin:0;font-size:1rem;font-weight:500;color:var(--neumorphic-text);line-height:1.3}.project-kanban-category{font-size:.8rem;color:var(--neumorphic-accent);margin:0 0 12px;font-weight:500}.project-kanban-progress-container{height:12px;background-color:var(--neumorphic-base);box-shadow:var(--neumorphic-shadow-inset);border-radius:6px;overflow:hidden;margin-bottom:12px}.project-kanban-progress-bar{height:100%;background-color:var(--neumorphic-success);border-radius:6px;color:#fff;font-size:.7rem;text-align:center;line-height:12px;transition:width .3s ease}.project-kanban-footer{display:flex;justify-content:space-between;align-items:center;margin-top:15px;padding-top:10px;border-top:1px solid var(--neumorphic-shadow-dark)}.project-kanban-duedate{font-size:.8rem;color:var(--neumorphic-subtle-text);display:flex;align-items:center;gap:5px}.project-kanban-duedate.overdue{color:var(--neumorphic-danger);font-weight:500}.project-kanban-assignees{display:flex;align-items:center}.assignee-avatar-small{width:30px;height:30px;border-radius:50%;object-fit:cover;border:2px solid var(--neumorphic-base);margin-left:-10px;box-shadow:var(--neumorphic-shadow-outset-small)}.assignee-avatar-small:first-child{margin-left:0}.no-assignees-text{font-size:.8rem;color:var(--neumorphic-subtle-text);font-style:italic}.priority-badge{padding:3px 8px;border-radius:var(--neumorphic-radius-soft);font-size:.7rem;font-weight:700;color:#fff;flex-shrink:0}.priority-high{background-color:#e53e3e}.priority-medium{background-color:#dd6b20}.priority-low{background-color:#3182ce}.priority-none{display:none}.status-badge{padding:4px 10px;border-radius:var(--neumorphic-radius-soft);font-size:.8rem;color:#fff}.status-ide{background-color:#a0aec0}.status-dalam-pengerjaan{background-color:#4299e1}.status-menunggu-review{background-color:#ecc94b;color:var(--neumorphic-text)}.status-revisi{background-color:#ed8936}.status-disetujui{background-color:#38a169}.status-ditolak{background-color:#e53e3e}.status-publikasi{background-color:#6b46c1}.status-text-active{color:var(--neumorphic-success);font-weight:500}.status-text-paused{color:var(--neumorphic-danger);font-weight:500}.modal{position:fixed;z-index:2000;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#00000080;display:flex;justify-content:center;align-items:center}.modal-content{background-color:var(--neumorphic-base);padding:30px;border-radius:var(--neumorphic-radius-large);box-shadow:var(--neumorphic-shadow-outset);width:90%;max-width:600px;position:relative;max-height:90vh;overflow-y:auto}.modal-content.large{max-width:1200px}.modal-content.medium{max-width:800px}.close-btn{color:var(--neumorphic-subtle-text);position:absolute;top:15px;right:25px;font-size:2rem;font-weight:700;cursor:pointer}.close-btn:hover,.close-btn:focus{color:var(--neumorphic-danger)}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--neumorphic-shadow-dark)}.project-form-modal-layout{display:grid;grid-template-columns:2fr 1fr;gap:2rem}.project-form-section-title{margin-top:0;font-size:1.1rem;color:var(--neumorphic-accent)}.form-group{margin-bottom:1.2rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--neumorphic-subtle-text)}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px 15px;border:none;border-radius:var(--neumorphic-radius-soft);background-color:var(--neumorphic-base);box-shadow:var(--neumorphic-shadow-inset-small);color:var(--neumorphic-text);font-size:.95rem}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;box-shadow:var(--neumorphic-shadow-inset-small),0 0 0 2px var(--neumorphic-accent)}.form-group input[type=range]{box-shadow:none;padding:0}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{background-color:#e9eef3;opacity:.8;cursor:not-allowed}.checklist-container{max-height:150px;overflow-y:auto;padding:10px;border-radius:var(--neumorphic-radius-soft);background-color:var(--neumorphic-base);box-shadow:var(--neumorphic-shadow-inset-small)}.checkbox-group{display:flex;align-items:center;gap:10px;padding:5px 0}.checkbox-group input[type=checkbox]{width:auto;box-shadow:none;cursor:pointer}.checkbox-group label{margin:0;color:var(--neumorphic-text);font-weight:400;cursor:pointer}.project-form-actions-comments-section{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--neumorphic-shadow-dark)}.modal-project-actions,.modal-drive-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.modal-action-btn{width:100%}.action-feedback-message{font-size:.85rem;color:var(--neumorphic-subtle-text);font-style:italic;margin-top:.5rem}.project-comments-section{border-top:none;padding-top:0;margin-top:0}.project-comments-title{margin-top:0;font-size:1.1rem;color:var(--neumorphic-accent)}.project-comments-list{max-height:250px;overflow-y:auto;display:flex;flex-direction:column;gap:1rem;padding-right:10px;margin-bottom:1rem}.project-comment-item{display:flex;gap:12px}.comment-author-avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0}.comment-content{background-color:var(--neumorphic-base);padding:10px 14px;border-radius:var(--neumorphic-radius-soft);box-shadow:var(--neumorphic-shadow-outset-small);flex-grow:1}.comment-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px}.comment-author-name{font-weight:500;color:var(--neumorphic-text)}.comment-timestamp{font-size:.75rem;color:var(--neumorphic-subtle-text)}.comment-text{margin:0}.project-comment-input-area{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.project-comment-input-area .comment-send-btn{width:auto}.no-comments-message{font-style:italic;color:var(--neumorphic-subtle-text)}.admin-panel table{width:100%;border-collapse:collapse;margin-top:1.5rem}.admin-panel th,.admin-panel td{padding:12px 15px;text-align:left;border-bottom:1px solid var(--neumorphic-shadow-dark)}.admin-panel th{font-weight:500;color:var(--neumorphic-subtle-text)}.admin-panel tbody tr:hover{background-color:#e9eef3}.actions-cell{display:flex;gap:10px;flex-wrap:wrap}.admin-category-management-row{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.profile-main-section{display:flex;gap:2rem;align-items:center;flex-wrap:wrap}.profile-avatar-area{display:flex;flex-direction:column;align-items:center;gap:1rem}.profile-avatar-large{width:150px;height:150px;border-radius:50%;object-fit:cover;box-shadow:var(--neumorphic-shadow-outset)}.profile-details-area .profile-name{font-size:2rem;margin:0 0 .5rem;color:var(--neumorphic-accent)}.profile-name-display-wrapper{display:flex;align-items:center;gap:1rem}.profile-username-edit-icon{background:none;border:none;cursor:pointer;color:var(--neumorphic-subtle-text);font-size:1rem}.profile-username-edit-icon:hover{color:var(--neumorphic-accent)}.profile-details-area p{margin:.5rem 0}.profile-name-input-container{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.profile-name-input{padding:10px;border:none;border-radius:var(--neumorphic-radius-soft);box-shadow:var(--neumorphic-shadow-inset-small);font-size:1.5rem}.profile-projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1rem}.profile-project-card{background-color:var(--neumorphic-base);padding:1rem;border-radius:var(--neumorphic-radius-medium);box-shadow:var(--neumorphic-shadow-outset-small)}.profile-project-card-title{margin:0 0 .5rem;color:var(--neumorphic-accent)}.profile-project-card p{margin:.3rem 0;font-size:.9rem}.report-cards-row{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.table-responsive-wrapper{overflow-x:auto}.reports-table{width:100%;border-collapse:collapse}.reports-table th,.reports-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--neumorphic-shadow-dark)}.reports-view .status-distribution-container{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem}.status-bar-item{display:flex;flex-direction:column;gap:5px}.status-bar-label{font-size:.9rem}.status-bar-track{height:20px;background-color:var(--neumorphic-base);box-shadow:var(--neumorphic-shadow-inset);border-radius:10px;overflow:hidden}.status-bar-fill{height:100%;color:#fff;text-align:right;padding-right:5px;font-size:.8rem;line-height:20px;border-radius:10px;transition:width .5s ease}.status-bar-fill.status-ide{background-color:#a0aec0}.status-bar-fill.status-dalam-pengerjaan{background-color:#4299e1}.status-bar-fill.status-menunggu-review{background-color:#ecc94b;color:var(--neumorphic-text)}.status-bar-fill.status-revisi{background-color:#ed8936}.status-bar-fill.status-disetujui{background-color:#38a169}.status-bar-fill.status-ditolak{background-color:#e53e3e}.status-bar-fill.status-publikasi{background-color:#6b46c1}.thread-view-container .create-post-form{margin-bottom:2rem}.thread-posts-list{display:flex;flex-direction:column;gap:1.5rem}.thread-post-card{background-color:var(--neumorphic-base);border-radius:var(--neumorphic-radius-large);box-shadow:var(--neumorphic-shadow-outset);padding:1.5rem}.thread-post-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.thread-author-avatar{width:48px;height:48px;border-radius:50%}.thread-author-name{font-weight:500}.thread-timestamp{font-size:.8rem;color:var(--neumorphic-subtle-text)}.thread-post-content{margin:0;white-space:pre-wrap;line-height:1.7}.thread-post-actions{display:flex;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--neumorphic-shadow-dark)}.thread-action-btn{background:none;border:none;cursor:pointer;color:var(--neumorphic-subtle-text);display:flex;align-items:center;gap:.5rem;font-size:.9rem;padding:5px}.thread-action-btn:hover{color:var(--neumorphic-accent)}.thread-action-btn.liked{color:var(--neumorphic-accent);font-weight:500}.thread-replies-section{margin-top:1.5rem;padding-left:1.5rem;border-left:2px solid var(--neumorphic-shadow-dark);display:flex;flex-direction:column;gap:1rem}.thread-reply-item .thread-author-avatar{width:32px;height:32px}.thread-reply-form{margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--neumorphic-shadow-dark)}.reply-form-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem}.generated-image-section{text-align:center}.generated-ai-image{max-width:100%;max-height:512px;border-radius:var(--neumorphic-radius-medium);margin-bottom:1rem;box-shadow:var(--neumorphic-shadow-outset)}.error-message-ai-image{color:var(--neumorphic-danger);font-weight:500;padding:1rem;border-radius:var(--neumorphic-radius-soft);background-color:#fddede}.spinner-container{display:flex;justify-content:center;align-items:center;padding:2rem}.spinner{border:4px solid rgba(0,0,0,.1);width:36px;height:36px;border-radius:50%;border-left-color:var(--neumorphic-accent);animation:spin 1s ease infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.local-storage-disclaimer{background-color:var(--neumorphic-warning-bg);color:var(--neumorphic-warning-text);padding:1rem;border-radius:var(--neumorphic-radius-medium);margin-bottom:1.5rem;border:1px solid #fbd38d}.local-storage-disclaimer h4{margin:0 0 .5rem;color:#9c4221}.local-storage-disclaimer i{margin-right:.5rem}.local-storage-actions{display:flex;gap:1rem;flex-wrap:wrap}.local-storage-data-list{margin-top:1.5rem}.local-storage-item{border:1px solid var(--neumorphic-shadow-dark);border-radius:var(--neumorphic-radius-soft);margin-bottom:1rem;overflow:hidden}.local-storage-item-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;cursor:pointer;background-color:#e9eef3;transition:background-color .2s ease}.local-storage-item-header:hover{background-color:#dde3ec}.local-storage-item-header h4{margin:0;font-weight:500;display:flex;align-items:center;gap:.75rem}.local-storage-item-content{padding:1rem;background-color:var(--neumorphic-base);box-shadow:var(--neumorphic-shadow-inset-small);white-space:pre-wrap;word-break:break-all;max-height:300px;overflow-y:auto;font-size:.85rem;color:var(--neumorphic-subtle-text)}.local-storage-item-content em{color:var(--neumorphic-danger)}@media (max-width: 992px){.sidebar{z-index:1005;box-shadow:10px 0 20px #0000001a}.main-content-area.sidebar-open{margin-left:0}.menu-toggle-btn{display:block}.project-form-modal-layout,.admin-category-management-row,.report-cards-row,.project-form-actions-comments-section{grid-template-columns:1fr}}@media (min-width: 993px){.menu-toggle-btn{display:none}.sidebar{transform:translate(0);z-index:1000;position:fixed}.main-content-area.sidebar-open{margin-left:260px}.main-content-area:not(.sidebar-open){margin-left:0}}
