:root{--white:#f0eded;--black:#221f1f;--light-accent:#274762;--dark-accent:#3c7373;--accent:#d4ac9a;--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow-sm:0 1px 3px rgba(34,31,31,.08),0 1px 2px rgba(34,31,31,.04);--shadow-md:0 4px 12px rgba(34,31,31,.1),0 2px 4px rgba(34,31,31,.06);--shadow-lg:0 10px 30px rgba(34,31,31,.12),0 4px 8px rgba(34,31,31,.06);--transition:all .2s ease}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--white);color:var(--black);font-family:var(--font-family);line-height:1.6;min-height:100vh}a{color:inherit;text-decoration:none}button{border:none;cursor:pointer}button,input,select,textarea{font-family:var(--font-family);outline:none}.container{margin:0 auto;max-width:1200px;padding:0 1.5rem;width:100%}.card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:1.5rem}.btn{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:.5rem;justify-content:center;padding:.625rem 1.25rem;transition:var(--transition);white-space:nowrap}.btn-primary{background-color:var(--light-accent);color:#fff}.btn-primary:hover{background-color:#1e3a54;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background-color:transparent;border:1.5px solid var(--light-accent);color:var(--light-accent)}.btn-secondary:hover{background-color:var(--light-accent);color:#fff;transform:translateY(-1px)}.btn-accent{background-color:var(--accent);color:var(--black)}.btn-accent:hover{background-color:#c9a08c;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-teal{background-color:var(--dark-accent);color:#fff}.btn-teal:hover{background-color:#2f5c5c;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-danger{background-color:transparent;border:1.5px solid #c0392b;color:#c0392b}.btn-danger:hover{background-color:#c0392b;color:#fff}.btn-lg{font-size:1rem;padding:.875rem 1.75rem}.btn-sm{font-size:.8rem;padding:.375rem .875rem}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none!important}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-label{color:var(--black);font-size:.875rem;font-weight:500;opacity:.8}.form-input{background:#fff;border:1.5px solid rgba(34,31,31,.15);border-radius:var(--radius-md);color:var(--black);font-size:.95rem;padding:.625rem .875rem;transition:var(--transition);width:100%}.form-input:focus{border-color:var(--light-accent);box-shadow:0 0 0 3px #2747621a}.form-input::-moz-placeholder{color:#221f1f59}.form-input::placeholder{color:#221f1f59}select.form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23221f1f' d='M6 8 0 0h12z' opacity='.5'/%3E%3C/svg%3E");background-position:right .875rem center;background-repeat:no-repeat;padding-right:2.5rem}.badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.75rem;font-weight:600;letter-spacing:.03em;padding:.2rem .6rem;text-transform:uppercase}.badge-paid{background-color:#3c73731f;color:var(--dark-accent)}.badge-estimate{background-color:#d4ac9a40;color:#9a6e58}.badge-active{background-color:#3c73731f;color:var(--dark-accent)}.section-title{color:var(--black);font-size:1.1rem;font-weight:600;margin-bottom:1rem}.divider{background-color:#221f1f14;height:1px;margin:1.25rem 0}.spinner{animation:spin .7s linear infinite;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;height:20px;width:20px}.spinner-dark{border-color:#221f1f33;border-top-color:var(--light-accent)}@keyframes spin{to{transform:rotate(1turn)}}.page-enter-active,.page-leave-active{transition:opacity .25s ease,transform .25s ease}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0;transform:translateY(-8px)}@media(max-width:768px){.hide-mobile{display:none!important}}@media(min-width:769px){.hide-desktop{display:none!important}}
