*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;min-height:100vh;margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f0f0f0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.dark body{background-color:#1f2937}button{cursor:pointer}button:disabled{cursor:not-allowed}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}.max-w-5xl{max-width:64rem}.mx-auto{margin-left:auto;margin-right:auto}.px-4{padding-left:1rem;padding-right:1rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.flex{display:flex}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.flex-col{flex-direction:column}.flex-1{flex:1}.space-x-2>*+*{margin-left:.5rem}.space-x-3>*+*{margin-left:.75rem}.space-x-4>*+*{margin-left:1rem}.space-y-2>*+*{margin-top:.5rem}.space-y-4>*+*{margin-top:1rem}.nav{z-index:50;transition:background-color .2s;position:sticky;top:0;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.nav-light{background-color:#fff}.nav-dark{background-color:#1f2937}.nav-container{justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.nav-logo{width:3rem;height:3rem}.nav-actions{align-items:center;gap:1rem;display:flex}.nav-button{background:0 0;border:none;border-radius:9999px;padding:.5rem;transition:background-color .2s}.nav-button:hover{background-color:#0000000d}.dark .nav-button:hover{background-color:#ffffff1a}.nav-button:focus{outline-offset:2px;outline:2px solid #3b82f6}.nav-icon{width:1.25rem;height:1.25rem}.nav-icon-light{color:#374151}.dark .nav-icon-light{color:#d1d5db}.nav-search-container{align-items:center;gap:.5rem;display:flex}.nav-search-input{border:1px solid #d1d5db;border-radius:.375rem;width:16rem;padding:.5rem 1rem;transition:all .2s}.nav-search-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f633}.dark .nav-search-input{color:#fff;background-color:#1f2937;border-color:#374151}.dark .nav-search-input::placeholder{color:#9ca3af}.nav-search-input::placeholder{color:#6b7280}.nav-avatar{position:relative}.nav-avatar-button{background:0 0;border:none;border-radius:9999px;align-items:center;gap:.5rem;padding:0;display:flex}.nav-avatar-button:focus{outline-offset:2px;outline:2px solid #3b82f6}.nav-avatar-img{border:2px solid #d1d5db;border-radius:9999px;width:2.5rem;height:2.5rem;transition:border-color .2s}.nav-avatar-img:hover{border-color:#3b82f6}.nav-avatar-fallback{color:#fff;background-color:#3b82f6;border-radius:9999px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-weight:600;display:flex}.nav-dropdown{z-index:50;border:1px solid;border-radius:.375rem;width:12rem;margin-top:.5rem;padding:.25rem 0;position:absolute;right:0;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.nav-dropdown-light{background-color:#fff;border-color:#e5e7eb}.nav-dropdown-dark{background-color:#1f2937;border-color:#374151}.nav-dropdown-header{border-bottom:1px solid;padding:.5rem 1rem}.nav-dropdown-header-light{border-color:#e5e7eb}.nav-dropdown-header-dark{border-color:#374151}.nav-dropdown-name{color:#1f2937;font-size:.875rem;font-weight:600}.dark .nav-dropdown-name{color:#fff}.nav-dropdown-email{color:#6b7280;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.dark .nav-dropdown-email{color:#9ca3af}.nav-dropdown-item{text-align:left;color:#dc2626;background:0 0;border:none;align-items:center;gap:.5rem;width:100%;padding:.5rem 1rem;font-size:.875rem;transition:background-color .2s;display:flex}.nav-dropdown-item:hover{background-color:#fef2f2}.dark .nav-dropdown-item{color:#f87171}.dark .nav-dropdown-item:hover{background-color:#dc262633}.nav-dropdown-icon{width:1rem;height:1rem}.nav-chevron{color:#4b5563;width:1rem;height:1rem;transition:transform .2s}.dark .nav-chevron{color:#d1d5db}.nav-chevron-open{transform:rotate(180deg)}.project-list{padding:1rem 0}.project-list-loading{color:#6b7280;justify-content:center;align-items:center;padding:2rem 0;display:flex}.dark .project-list-loading{color:#9ca3af}.project-list-error{color:#991b1b;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;padding:1rem}.dark .project-list-error{color:#fecaca;background-color:#dc262633;border-color:#7f1d1d}.project-list-empty{color:#6b7280}.dark .project-list-empty{color:#9ca3af}.project-list-items{flex-direction:column;gap:.5rem;list-style:none;display:flex}.project-item{cursor:pointer;background-color:#fff;border-radius:.5rem;padding:1rem;transition:box-shadow .2s,background-color .2s}.dark .project-item{background-color:#1e293b}.project-item:hover{background-color:#f3f4f6;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.dark .project-item:hover{background-color:#374151}.project-item-header{justify-content:space-between;align-items:flex-start;display:flex}.project-item-title{color:#111827;font-size:1.125rem;font-weight:600}.dark .project-item-title{color:#fff}.project-item-description{color:#4b5563;margin-top:.25rem}.dark .project-item-description{color:#d1d5db}.project-item-date{color:#6b7280;font-size:.875rem}.dark .project-item-date{color:#9ca3af}.project-list-footer{flex-direction:column;align-items:center;gap:.5rem;margin-top:.5rem;margin-bottom:1rem;display:flex}.project-list-count{color:#6b7280;text-align:center}.dark .project-list-count{color:#9ca3af}.project-list-load-more{color:#fff;background-color:#4b5563;border:none;border-radius:.5rem;padding:.5rem 1.5rem;font-weight:500;transition:background-color .2s}.project-list-load-more:hover:not(:disabled){background-color:#374151}.project-list-load-more:disabled{cursor:not-allowed;background-color:#9ca3af}.modal-overlay{z-index:100;background-color:#0000001a;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background-color:#fff;border-radius:.5rem;width:100%;max-width:42rem;max-height:90vh;margin:0 1rem;padding:1.5rem;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.dark .modal-content{background-color:#1e293b}.modal-header{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;display:flex}.modal-title-container{flex:1;align-items:center;gap:.5rem;display:flex}.modal-title-number{color:#111827;font-size:1.5rem;font-weight:500}.dark .modal-title-number{color:#fff}.modal-title-separator{color:#111827;font-size:1.5rem;font-weight:500}.dark .modal-title-separator{color:#fff}.modal-title-input{color:#111827;background:0 0;border:none;flex:1;padding:0;font-size:1.5rem;font-weight:500}.dark .modal-title-input{color:#fff}.modal-title-input:focus{border-color:#3b82f6;outline:none}.dark .modal-title-input:focus{border-color:#60a5fa}.modal-title-input::placeholder{color:#9ca3af}.modal-close-button{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:0}.modal-close-button:hover{color:#374151}.dark .modal-close-button{color:#9ca3af}.dark .modal-close-button:hover{color:#e5e7eb}.modal-close-icon{width:1.5rem;height:1.5rem}.modal-body{flex-direction:column;gap:1rem;display:flex}.modal-field{flex-direction:column;display:flex}.modal-field-label{color:#6b7280;margin-bottom:.5rem;font-size:.875rem}.dark .modal-field-label{color:#9ca3af}.modal-textarea{color:#111827;resize:vertical;background-color:#fff;border:1px solid #d1d5db;border-radius:.375rem;width:100%;padding:.5rem .75rem}.dark .modal-textarea{color:#fff;background-color:#334155;border-color:#4b5563}.modal-textarea:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f633}.dark .modal-textarea:focus{border-color:#60a5fa}.modal-textarea::placeholder{color:#9ca3af}.modal-footer{justify-content:space-between;align-items:center;margin-top:1.5rem;display:flex}.modal-footer-actions{justify-content:flex-end;gap:.75rem;margin-left:auto;display:flex}.modal-button{cursor:pointer;border:none;border-radius:.375rem;padding:.5rem 1rem;font-weight:500;transition:background-color .2s}.modal-button-secondary{color:#1f2937;background-color:#e5e7eb}.dark .modal-button-secondary{color:#e5e7eb;background-color:#374151}.modal-button-secondary:hover{background-color:#d1d5db}.dark .modal-button-secondary:hover{background-color:#4b5563}.modal-button-primary{color:#fff;background-color:#6b7280}.modal-button-primary:hover:not(:disabled){background-color:#4b5563}.modal-button-primary:disabled{cursor:not-allowed;background-color:#9ca3af}.modal-button-danger{color:#fff;background-color:#ef4444}.modal-button-danger:hover:not(:disabled){background-color:#dc2626}.modal-button-danger:disabled{cursor:not-allowed;background-color:#f87171}.modal-error{color:#991b1b;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;margin-top:1rem;padding:1rem}.dark .modal-error{color:#fecaca;background-color:#dc262633;border-color:#7f1d1d}.delete-confirm-overlay{z-index:110;background-color:#0000004d;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.delete-confirm-content{background-color:#fff;border-radius:.5rem;width:100%;max-width:28rem;margin:0 1rem;padding:1.5rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.dark .delete-confirm-content{background-color:#1e293b}.delete-confirm-title{color:#111827;margin-bottom:1rem;font-size:1.25rem;font-weight:700}.dark .delete-confirm-title{color:#fff}.delete-confirm-message{color:#4b5563;margin-bottom:1.5rem}.dark .delete-confirm-message{color:#d1d5db}.delete-confirm-actions{justify-content:flex-end;gap:.75rem;display:flex}.signin-container{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.signin-title{color:#111827;padding:2rem 0;font-size:1.875rem;font-weight:700}.dark .signin-title{color:#fff}.signin-form{flex-direction:column;gap:.75rem;width:100%;max-width:24rem;display:flex}.signin-button{color:#374151;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:.5rem;justify-content:center;align-items:center;width:100%;padding:.75rem 1rem;font-weight:500;transition:background-color .2s;display:flex;box-shadow:0 1px 2px #0000000d}.signin-button:hover:not(:disabled){background-color:#f9fafb}.signin-button:focus{outline:none;box-shadow:0 0 0 2px #6366f180}.signin-button:disabled{opacity:.5;cursor:not-allowed}.signin-button-icon{width:1.25rem;height:1.25rem;margin-right:.75rem}.text-center{text-align:center}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.w-full{width:100%}.h-10{height:2.5rem}.h-12{height:3rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-5{width:1.25rem}.h-5{height:1.25rem}.w-6{width:1.5rem}.h-6{height:1.5rem}.w-64{width:16rem}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.inset-0{inset:0}.right-0{right:0}.z-50{z-index:50}.z-100{z-index:100}.z-110{z-index:110}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-full{border-radius:9999px}.shadow-md{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.transition-colors{transition:background-color .2s,color .2s,border-color .2s}.transition-all{transition:all .2s}.transition-transform{transition:transform .2s}.rotate-180{transform:rotate(180deg)}.text-yellow-400{color:#facc15}.text-gray-700{color:#374151}.dark .text-gray-700{color:#d1d5db}.text-gray-500{color:#6b7280}.dark .text-gray-500,.text-gray-400{color:#9ca3af}.dark .text-gray-400{color:#6b7280}.text-gray-300{color:#d1d5db}.dark .text-gray-300{color:#4b5563}.text-white{color:#fff}.text-red-600{color:#dc2626}.text-red-400{color:#f87171}.text-red-800{color:#991b1b}.dark .text-red-800,.text-red-200{color:#fecaca}.dark .text-red-200{color:#991b1b}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hidden{display:none}.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}
