:root{--primary: #2563eb;--bg: #f8fafc;--text: #1f2937;--muted: #6b7280;--border: #e5e7eb}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg);color:var(--text);margin:0;line-height:1.5}a{color:var(--primary);text-decoration:none}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.container{max-width:640px;margin:0 auto;padding:2rem 1rem}.btn{display:inline-flex;align-items:center;justify-content:center;background-color:var(--primary);color:#fff;padding:.75rem 1.5rem;border-radius:.375rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);border:none;cursor:pointer;width:100%;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;filter:brightness(1.05)}.btn:active{transform:translateY(1px);box-shadow:none;filter:brightness(.95)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:fadeInUp .4s ease-out forwards}.input-block{margin-bottom:2rem;background:#fff;padding:1.5rem;border-radius:.5rem;border:1px solid var(--border);box-shadow:0 1px 2px #0000000d}.input-group{margin-bottom:1rem}.input-group label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--text)}.input-group input,.input-group select{width:100%;padding:.5rem;border:1px solid var(--border);border-radius:.375rem;font-size:1rem;box-sizing:border-box}.input-group input:focus{outline:2px solid var(--primary);outline-offset:-1px}.result-card{text-align:center;padding:2rem;background:#fff;border-radius:.5rem;border:1px solid var(--border);margin-bottom:1.5rem}.big-number{font-family:Courier New,Courier,monospace;font-size:2.5rem;font-weight:700;color:var(--primary)}.label{color:var(--muted);font-size:.875rem}.print-only{display:none}@media print{.no-print{display:none!important}.print-only{display:block!important}body{background:#fff}.container{max-width:100%;margin:0;padding:0}}.input-page-layout{display:flex;gap:2rem;align-items:flex-start;flex-direction:column}.live-estimate-card{background:#fff;border:1px solid var(--border);border-radius:8px;padding:1rem;width:100%;box-sizing:border-box;margin-bottom:1rem}@media(min-width:768px){.container{max-width:900px}.input-page-layout{flex-direction:row-reverse}.live-estimate-card{width:300px;position:sticky;top:2rem;flex-shrink:0;margin-bottom:0;box-shadow:0 4px 6px -1px #0000001a}}
