*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#292524;background-color:#fafaf9;line-height:1.5;min-height:100vh}*{scrollbar-width:thin;scrollbar-color:#d6d3d1 transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent;margin-block:4px}*::-webkit-scrollbar-thumb{background-color:#d6d3d1;border-radius:10px;border:3px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background-color:#a8a29e}*::-webkit-scrollbar-corner{background:transparent}.font-serif{font-family:Georgia,Times New Roman,serif}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.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}.uppercase{text-transform:uppercase;letter-spacing:.05em}:focus-visible{outline:2px solid #059669;outline-offset:2px}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid #059669;outline-offset:2px;border-radius:.5rem}.visually-hidden,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}a:hover{color:#059669}input,select,textarea{font:inherit;color:inherit}@media(max-width:768px){button,[role=button],a,input[type=checkbox],input[type=radio],select{min-height:44px;min-width:44px}a:not([class]){min-height:auto;min-width:auto}}ul,ol{list-style:none}img{max-width:100%;height:auto;display:block}@media(max-width:640px){html{font-size:14px}}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1.5rem;min-height:2.75rem;background:linear-gradient(to right,#059669,#10b981);color:#fff;border-radius:1rem;font-size:.875rem;font-weight:500;box-shadow:0 1px 2px #0000000d;transition:all .2s ease}.btn-primary:hover:not(:disabled){box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:focus-visible{outline:2px solid #047857;outline-offset:2px}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;min-height:2.75rem;border:2px solid #e7e5e4;color:#78716c;border-radius:1rem;font-size:.875rem;font-weight:500;transition:all .2s ease}.btn-secondary:hover:not(:disabled){border-color:#059669;color:#059669}.btn-secondary:focus-visible{outline:2px solid #059669;outline-offset:2px}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;min-width:2.75rem;min-height:2.75rem;border-radius:1rem;border:2px solid #e7e5e4;background:#fff;color:#78716c;transition:all .2s ease}.btn-icon:hover:not(:disabled){border-color:#059669;color:#059669}.btn-icon:focus-visible{outline:2px solid #059669;outline-offset:2px}.btn-tag{display:inline-flex;align-items:center;padding:.5rem 1rem;min-height:2.25rem;border:2px solid #e7e5e4;border-radius:9999px;font-size:.75rem;font-weight:500;color:#78716c;transition:all .2s ease}.btn-tag:hover:not(:disabled){border-color:#059669}.btn-tag.active{background:#059669;border-color:#059669;color:#fff}.card{background:#fff;border-radius:1.5rem;border:1px solid #f5f5f4;box-shadow:0 1px 2px #0000000d;transition:box-shadow .2s ease}.card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.form-input{width:100%;padding:.5rem 1rem;min-height:2.75rem;border:2px solid #f5f5f4;border-radius:.75rem;font-size:.875rem;transition:border-color .2s ease,box-shadow .2s ease;background:#fff}.form-input:focus{outline:none;border-color:#059669;box-shadow:0 0 0 3px #0596691a}.form-input::placeholder{color:#a8a29e}.form-input:disabled{background:#f5f5f4;cursor:not-allowed;opacity:.7}.form-input.is-invalid,.form-input:invalid:not(:placeholder-shown){border-color:#ef4444}.form-input.is-invalid:focus,.form-input:invalid:not(:placeholder-shown):focus{box-shadow:0 0 0 3px #ef44441a}.form-input.is-valid,.form-input:valid:not(:placeholder-shown){border-color:#059669}.form-error{display:flex;align-items:center;gap:.25rem;margin-top:.25rem;font-size:.75rem;color:#ef4444}.form-hint{margin-top:.25rem;font-size:.75rem;color:#a8a29e}.form-group{display:flex;flex-direction:column;gap:.25rem;margin-bottom:1rem}.form-group label{font-size:.875rem;font-weight:500;color:#292524}.form-select{width:100%;padding:.5rem 2.5rem .5rem 1rem;min-height:2.75rem;border:2px solid #f5f5f4;border-radius:.75rem;font-size:.875rem;transition:border-color .2s ease,box-shadow .2s ease;background:#fff;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2378716c' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.form-select:focus{outline:none;border-color:#059669;box-shadow:0 0 0 3px #0596691a}.form-select:disabled{background-color:#f5f5f4;cursor:not-allowed;opacity:.7}.container{width:100%;max-width:72rem;margin:0 auto;padding:0 1.5rem}.section-heading{text-align:center;margin-bottom:2rem}.section-heading h2{font-family:Georgia,Times New Roman,serif;font-size:1.875rem;font-weight:600;color:#292524;margin-bottom:.5rem}.section-heading p{color:#78716c}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes checkmark{0%{stroke-dashoffset:50}to{stroke-dashoffset:0}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn .3s ease forwards}.animate-fade-in-up{animation:fadeInUp .3s ease forwards}.animate-fade-in-down{animation:fadeInDown .3s ease forwards}.animate-scale-in{animation:scaleIn .2s ease forwards}.animate-slide-in-right{animation:slideInRight .3s ease forwards}.animate-slide-in-left{animation:slideInLeft .3s ease forwards}.animate-pulse{animation:pulse 2s infinite}.animate-spin{animation:spin 1s linear infinite}.animate-bounce{animation:bounce 1s infinite}.animate-delay-1{animation-delay:.05s}.animate-delay-2{animation-delay:.1s}.animate-delay-3{animation-delay:.15s}.animate-delay-4{animation-delay:.2s}.animate-delay-5{animation-delay:.25s}.animate-delay-6{animation-delay:.3s}.animate-delay-7{animation-delay:.35s}.animate-delay-8{animation-delay:.4s}.animate-delay-9{animation-delay:.45s}.animate-delay-10{animation-delay:.5s}.animate-delay-11{animation-delay:.55s}.animate-delay-12{animation-delay:.6s}.spinner{display:inline-block;width:2rem;height:2rem;border:3px solid #e7e5e4;border-top-color:#059669;border-radius:50%;animation:spin .8s linear infinite}.spinner--small{width:1rem;height:1rem;border-width:2px}.spinner--large{width:3rem;height:3rem;border-width:4px}.skeleton{background:linear-gradient(90deg,#f5f5f4 25%,#e7e5e4,#f5f5f4 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:.75rem}.skeleton--text{height:1rem;width:100%;margin-bottom:.5rem}.skeleton--title{height:1.5rem;width:60%;margin-bottom:1rem}.skeleton--avatar{width:3rem;height:3rem;border-radius:50%}.skeleton--card{height:200px;width:100%}.card-hover{transition:transform .2s ease,box-shadow .2s ease}.card-hover:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.card-hover:active{transform:translateY(-2px)}.btn-press{transition:transform .15s ease,box-shadow .15s ease}.btn-press:active{transform:scale(.97)}.checkbox-animated{appearance:none;width:1.25rem;height:1.25rem;border:2px solid #e7e5e4;border-radius:.5rem;cursor:pointer;position:relative;transition:all .2s ease}.checkbox-animated:checked{background:#059669;border-color:#059669}.checkbox-animated:checked:after{content:"";position:absolute;top:50%;left:50%;width:.5rem;height:.25rem;border:2px solid white;border-top:none;border-right:none;transform:translate(-50%,-60%) rotate(-45deg);animation:checkmark .15s ease forwards}.checkbox-animated:focus-visible{outline:2px solid #059669;outline-offset:2px}.modal-enter{animation:scaleIn .2s ease-out forwards}.backdrop-enter{animation:fadeIn .2s ease-out forwards}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.spinner{animation:none;border-top-color:#059669}}
