*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(135deg,#f8fafc,#f1f5f9);font-family:var(--font-body),-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.font-display{font-family:var(--font-display)}.font-body{font-family:var(--font-body)}@font-face{font-display:swap;font-family:Playfair Display}@font-face{font-display:swap;font-family:Inter}#root{min-height:100vh}:root{--font-display:"Playfair Display",serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell",sans-serif;--primary-50:#fdf7f0;--primary-100:#fbeee0;--primary-200:#f6dcc1;--primary-300:#f0c89d;--primary-400:#e8b072;--primary-500:#d4a574;--primary-600:#b8956b;--primary-700:#9a7d5c;--primary-800:#7d6548;--primary-900:#654f39;--rose-50:#fff1f2;--rose-100:#ffe4e6;--rose-200:#fecdd3;--rose-300:#fda4af;--rose-400:#fb7185;--rose-500:#f43f5e;--rose-600:#e11d48;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--font-light:300;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--font-black:900;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#fafafa,#f8f9fa 50%,#f5f6f7);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-body);font-size:1rem;font-size:var(--text-base);font-weight:400;font-weight:var(--font-normal);line-height:1.5;line-height:var(--leading-normal);margin:0;min-height:100vh;padding:0;position:relative}body:before{background-image:radial-gradient(circle at 20% 80%,#8b735508 0,#0000 50%),radial-gradient(circle at 80% 20%,#a0522d0a 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:-1}h1,h2,h3,h4,h5,h6{color:#1e293b;font-family:Playfair Display,serif;font-family:var(--font-display);font-weight:600;font-weight:var(--font-semibold);line-height:1.25;line-height:var(--leading-tight)}h1{font-size:3rem;font-size:var(--text-5xl);font-weight:700;font-weight:var(--font-bold)}h2{font-size:2.25rem;font-size:var(--text-4xl);font-weight:600;font-weight:var(--font-semibold)}h3{font-size:1.875rem;font-size:var(--text-3xl)}h4{font-size:1.5rem;font-size:var(--text-2xl)}h5{font-size:1.25rem;font-size:var(--text-xl)}h6{font-size:1.125rem;font-size:var(--text-lg)}p{color:#64748b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-body);line-height:1.625;line-height:var(--leading-relaxed)}.App{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1;padding:2rem 0}.container{margin:0 auto;max-width:1600px;padding:0 2rem}.page-title h2{color:#1e293b;font-family:Playfair Display,serif;font-family:var(--font-display);font-size:2.25rem;font-size:var(--text-4xl);font-weight:700;font-weight:var(--font-bold);letter-spacing:-.02em;margin:0 0 .5rem}.page-title p{color:#64748b;font-size:1rem;font-size:var(--text-base);font-weight:400;font-weight:var(--font-normal);line-height:1.625;line-height:var(--leading-relaxed);margin:0}.page-title p,.search-results-info{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-body)}.search-results-info{background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;color:#0369a1;font-size:.875rem;font-size:var(--text-sm);font-weight:500;font-weight:var(--font-medium);letter-spacing:.025em;margin-top:.75rem;padding:.5rem 1rem}.page-actions{display:flex;gap:1rem}.btn-primary,.btn-secondary{transition:all .2s}.btn-primary{background:#3b82f6}.btn-primary:hover{background:#2563eb}.btn-secondary{background:#fff}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.btn-icon{font-size:1rem}.credits-section{margin-bottom:2rem}.section-title{border-bottom:2px solid #d4c4a84d;font-size:1.75rem;font-weight:700;margin:2rem 0 1.5rem;padding-bottom:.5rem;text-align:center}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:2rem}.stat-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fffc;border-radius:16px;box-shadow:0 2px 8px #00000008,0 1px 2px #00000005;display:flex;gap:1rem;overflow:hidden;padding:1.25rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.stat-card:hover{background:#fff;box-shadow:0 4px 15px #0000000a,0 1px 2px #00000008;transform:translateY(-2px)}.stat-card:before{background:linear-gradient(90deg,#8b7355,#d4c4a8);border-radius:16px 16px 0 0;content:"";height:2px;left:0;position:absolute;right:0;top:0}.stat-icon{align-items:center;background:linear-gradient(135deg,#f8f6f2,#f0ede8);border:1px solid #8b73551a;border-radius:12px;color:#8b7355;display:flex;flex-shrink:0;height:44px;justify-content:center;transition:all .3s ease;width:44px}.stat-card:hover .stat-icon{background:linear-gradient(135deg,#f0ede8,#e8e3dc);color:#6b5b47;transform:scale(1.02)}.stat-card-static:hover{background:#fffffff2;box-shadow:0 2px 8px #00000008,0 1px 2px #00000005;transform:none}.stat-card-static:hover .stat-icon{background:linear-gradient(135deg,#f8f6f2,#f0ede8);color:#8b7355;transform:none}.stat-content{flex:1 1}.stat-number{color:#2d3748;font-family:Playfair Display,serif;font-family:var(--font-display);font-size:2rem;line-height:1;margin-bottom:.25rem}.stat-label{color:#718096;font-size:.9rem;letter-spacing:.025em;line-height:1.2;text-transform:none}.stat-detail,.stat-label{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.stat-detail{color:#94a3b8;font-family:var(--font-body);font-size:.7rem;font-weight:400;margin-top:.125rem;opacity:.8}.stat-number.small{font-size:1.25rem}.action-bar{display:flex;justify-content:center;margin-bottom:2rem}.toggle-importer-btn{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:12px;box-shadow:0 4px 12px #8b5cf64d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.toggle-importer-btn:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 6px 16px #8b5cf666;transform:translateY(-2px)}@media (max-width:768px){.main-content{padding:1rem 0}.container{padding:0 .5rem}.toggle-importer-btn{font-size:.9rem;padding:.75rem 1.5rem}}.fade-in{animation:fadeIn .3s ease-in}.slide-up{animation:slideUp .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffe6;border-bottom:1px solid #d4c4a84d;box-shadow:0 4px 16px #d4c4a81a;padding:1rem 0;position:-webkit-sticky;position:sticky;top:0;transition:all .3s ease;z-index:100}.header-content{grid-gap:1.5rem;align-items:center;display:grid;gap:1.5rem;grid-template-columns:1fr 2.5fr 1.5fr;margin:0 auto;max-width:1600px;padding:0 1.5rem}.app-brand{align-items:flex-start;display:flex;flex-direction:column;transition:transform .3s ease}.app-brand:hover{transform:translateX(4px)}.app-name{color:#8b7355;font-family:var(--font-display);font-size:var(--text-4xl);font-weight:var(--font-bold);letter-spacing:-.02em;line-height:var(--leading-tight);margin:0;text-shadow:0 2px 4px #8b73551a;transition:color .3s ease}.app-brand:hover .app-name{color:#6b5b47}.app-subtitle{color:sienna;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-medium);letter-spacing:.1em;margin:.25rem 0 0;text-transform:uppercase;transition:color .3s ease}.app-brand:hover .app-subtitle{color:#8b4513}.logo p{color:sienna;font-size:1rem;font-weight:400;margin:0}.header-stats{display:flex;gap:1rem}.stat{background:#ffffffe6;border:1px solid #d4c4a866;border-radius:16px;box-shadow:0 4px 12px #d4c4a826;padding:.75rem 1.5rem;text-align:center;transition:all .3s ease}.stat:hover{box-shadow:0 6px 16px #d4c4a840;transform:translateY(-2px)}.stat-number{color:#8b7355;display:block;font-size:1.5rem;font-weight:700}.stat-label{color:sienna;display:block;font-size:.8rem;font-weight:500}.header-actions{gap:1rem}.dropdown-container{position:relative}.dropdown-trigger{align-items:center;display:flex;gap:.5rem}.dropdown-arrow{align-items:center;display:flex;margin-left:.25rem;transition:transform .3s ease}.dropdown-arrow.open{transform:rotate(180deg)}.dropdown-menu{animation:dropdownSlide .2s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border:2px solid #d4c4a866;border-radius:12px;box-shadow:0 10px 40px #00000026;min-width:220px;padding:.5rem;position:absolute;right:0;top:calc(100% + .5rem);z-index:1000}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{align-items:center;background:#0000;border:none;border-radius:8px;color:#5d4e37;cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-medium);gap:.75rem;padding:.75rem 1rem;text-align:left;transition:all .2s ease;width:100%}.dropdown-item-icon{align-items:center;color:#8b7355;display:flex;flex-shrink:0;height:18px;justify-content:center;width:18px}.dropdown-item:hover{background:#d4c4a833;transform:translateX(4px)}.dropdown-item.active{background:#d4c4a84d;color:#8b7355;font-weight:var(--font-semibold)}.dropdown-divider{background:#d4c4a84d;height:1px;margin:.5rem 0}.last-refresh{background:#4f46e51a;border:1px solid #4f46e533;border-radius:.5rem;color:#4f46e5;font-size:.75rem;font-weight:500;gap:.5rem;padding:.5rem .75rem}.last-refresh,.refresh-icon{align-items:center;display:flex}.refresh-icon{opacity:.8}.refresh-text{white-space:nowrap}.last-refresh-compact{align-items:center;color:#8b7355;display:flex;font-size:.65rem;font-weight:400;gap:.25rem;margin-top:.25rem;opacity:.8}.last-refresh-compact .refresh-icon{align-items:center;display:flex;opacity:.6}@media (max-width:768px){.last-refresh{display:none}.last-refresh-compact{font-size:.6rem}}.btn-primary,.btn-secondary{align-items:center;border-radius:10px;box-shadow:0 2px 8px #00000014;display:flex;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold);gap:.5rem;letter-spacing:.025em;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.btn-primary{background:linear-gradient(135deg,#d4c4a8,#b8a898);border:none;box-shadow:0 4px 15px #d4c4a866;color:#5d4e37}.btn-primary:hover{background:linear-gradient(135deg,#c4b498,#a89888);box-shadow:0 8px 25px #d4c4a880;transform:translateY(-2px)}.btn-primary:active{box-shadow:0 4px 15px #d4c4a866;transform:translateY(0)}.btn-secondary{background:linear-gradient(135deg,#e6d7c3,#d4c4a8);border:2px solid #8b7355;box-shadow:0 4px 15px #d4c4a866;color:#5d4e37}.btn-secondary:hover{background:linear-gradient(135deg,#d4c4a8,#c4b498);box-shadow:0 8px 25px #d4c4a880;transform:translateY(-2px)}.btn-secondary:active{box-shadow:0 4px 15px #d4c4a866;transform:translateY(0)}.btn-icon{font-size:1.1rem;transition:transform .3s ease}.btn-primary:hover .btn-icon,.btn-secondary:hover .btn-icon{transform:scale(1.1)}.btn-primary:before,.btn-secondary:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.btn-primary:active:before,.btn-secondary:active:before{height:300px;width:300px}.header-right{align-items:center;gap:1.5rem;justify-content:flex-end}.profile-avatar,.user-profile{align-items:center;display:flex}.profile-avatar{background:linear-gradient(135deg,#d4c4a8,#b8a898);border:2px solid #fff3;border-radius:50%;box-shadow:0 2px 8px #d4c4a833;color:#5d4e37;cursor:pointer;font-size:1rem;height:36px;justify-content:center;transition:all .3s ease;width:36px}.profile-avatar:hover{border-color:#fff6;box-shadow:0 6px 20px #d4c4a866;transform:scale(1.05)}.search-bar{max-width:none;position:relative;width:100%}.search-bar,.search-icon{align-items:center;display:flex}.search-icon{color:#8b7355;justify-content:center;left:1rem;pointer-events:none;position:absolute;transition:transform .3s ease,color .3s ease;z-index:1}.search-bar:focus-within .search-icon{color:#b8a898;transform:scale(1.1)}.search-input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:none;border-radius:12px;box-shadow:0 2px 12px #d4c4a81a;color:#1e293b;font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--font-medium);outline:none;padding:.75rem 1rem .75rem 3rem;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.search-input:hover{box-shadow:0 6px 25px #d4c4a840;transform:translateY(-1px)}.search-input:focus{box-shadow:0 0 0 4px #b8a8981a,0 8px 30px #b8a89833;transform:translateY(-2px)}.search-input::placeholder{color:#8b7355;font-weight:var(--font-normal);opacity:.7}.search-shortcut{background:#e2e8f0;border-radius:4px;color:#64748b;font-size:.75rem;font-weight:500;margin-left:.5rem;padding:.25rem .5rem}@media (max-width:768px){.header-content{gap:1rem;grid-template-columns:1fr;padding:0 1rem;text-align:center}.app-name{font-size:var(--text-3xl)}.header-center{order:2}.search-bar{max-width:100%}.header-right{justify-content:center;order:3;width:100%}.header-actions{flex-direction:column;gap:.75rem;width:100%}.btn-primary,.btn-secondary{font-size:var(--text-base);justify-content:center;padding:1rem 1.5rem;width:100%}.user-profile{margin-top:.5rem}}@media (max-width:480px){.header-content{padding:0 .5rem}.app-name{font-size:var(--text-2xl)}.app-subtitle{font-size:var(--text-xs)}.btn-primary,.btn-secondary{font-size:var(--text-sm);padding:.875rem 1.25rem}.btn-icon{font-size:1rem}}.vendor-table-section{margin-bottom:3rem}.table-header{justify-content:space-between;margin-bottom:1.5rem}.header-left,.table-header{align-items:center;display:flex}.header-left{gap:1rem;width:105%}.section-title{color:#8b7355;font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--font-bold);letter-spacing:-.02em;margin:0;text-shadow:0 2px 4px #8b73551a}.new-vendor-btn{background:linear-gradient(135deg,#8b7355,sienna);border:none;border-radius:12px;box-shadow:0 4px 12px #8b735533;color:#fff;cursor:pointer;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold);letter-spacing:.025em;padding:.75rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.new-vendor-btn:hover{background:linear-gradient(135deg,#6b5b47,#8b4513);box-shadow:0 6px 20px #8b735540;transform:translateY(-2px)}.new-vendor-btn:active{box-shadow:0 4px 12px #8b735533;transform:translateY(-1px)}.header-right{display:flex;gap:1rem}.filter-btn{align-items:center;background:#ffffffe6;border:1px solid #d4c4a866;border-radius:12px;box-shadow:0 2px 8px #d4c4a833;color:#8b7355;cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold);gap:.5rem;letter-spacing:.025em;padding:.75rem 1.5rem;transition:all .3s ease}.filter-btn:hover{background:#fff;box-shadow:0 4px 12px #d4c4a84d;transform:translateY(-2px)}.filter-icon{font-size:1rem}.table-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;border:1px solid #8b73551a;border-radius:16px;box-shadow:0 4px 20px #0000000f,0 1px 3px #0000000d;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.table-container:hover{box-shadow:0 8px 30px #00000014,0 1px 3px #0000000d;transform:translateY(-1px)}.checkbox-header{cursor:pointer;text-align:center;transition:background-color .2s ease;vertical-align:middle;width:50px}.checkbox-header:hover{background-color:#8b73550d}.checkbox-cell{height:100%;padding:.5rem .25rem;text-align:center;vertical-align:middle;vertical-align:middle!important;width:50px}.checkbox-cell,.select-all-container{align-items:center;justify-content:center}.select-all-container{display:flex;padding:.5rem 0}.select-all-checkbox,.vendor-checkbox{accent-color:#8b7355;border:none;border-radius:4px;cursor:pointer;height:18px;transition:all .2s ease;width:18px}.select-all-checkbox:hover,.vendor-checkbox:hover{transform:scale(1.05)}.select-all-label{color:#8b7355;cursor:pointer;font-size:.8rem;font-weight:600;line-height:1;text-align:center;transition:color .2s ease}.select-all-label:hover{color:#6b5b47}.price-range-cell{padding:.5rem .75rem;text-align:center;vertical-align:middle;width:90px}.price-range-tag{background:#8b73551a;border:1px solid #8b735533;border-radius:12px;color:#8b7355;display:inline-block;font-size:.8rem;font-weight:600;min-width:40px;padding:.25rem .75rem}.availability-cell{padding:.5rem .75rem;text-align:center;vertical-align:middle;width:80px}.availability-list{align-items:center;flex-direction:column;gap:.25rem}.availability-tag-small{background:#22c55e1a;border:1px solid #22c55e33;border-radius:8px;color:#16a34a;font-size:.7rem;font-weight:500;padding:.2rem .5rem;white-space:nowrap}.availability-more{color:#64748b;font-size:.7rem;font-style:italic}.no-availability{color:#94a3b8;font-size:.8rem;font-style:italic}.vendor-table{background:#0000;border-collapse:collapse;width:100%}.vendor-table th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#475569;font-family:var(--font-body);font-size:.875rem;font-weight:600;letter-spacing:.025em;padding:.75rem 1rem;position:relative;text-align:center;text-transform:none;transition:all .2s ease}.vendor-table th:first-child{border-top-left-radius:12px}.vendor-table th:last-child{border-top-right-radius:12px}.vendor-table th.sortable{cursor:pointer;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none}.vendor-table th.sortable:hover{background:#f1f5f9;color:#334155}.vendor-table th.sortable:active{background:#e2e8f0;transform:translateY(1px)}.sort-indicator{color:#8b7355;font-size:.75rem;font-weight:700;margin-left:.5rem}.vendor-table th:after{background:linear-gradient(90deg,#8b7355,sienna);bottom:0;content:"";height:2px;left:0;opacity:0;position:absolute;right:0;transition:opacity .2s ease}.vendor-table th:hover:after{opacity:1}.vendor-table td{border-bottom:1px solid #f1f5f9;padding:.75rem 1rem;vertical-align:top}.vendor-table td,.vendor-table tr{transition:background-color .15s ease}.vendor-table tr:hover{background:#f8fafc}.vendor-table tr:nth-child(2n){background:#fafbfc}.vendor-table tr:nth-child(2n):hover{background:#f1f5f9}.vendor-name-cell{width:320px}.vendor-info{align-items:center;gap:1rem}.vendor-row{cursor:default;transition:all .2s ease}.vendor-row.clickable{cursor:pointer;transition:all .2s ease}.vendor-row.clickable:hover{background:#8b73550a;box-shadow:0 4px 15px #8b735514;transform:translateY(-1px)}.vendor-row.clickable:active{background:#8b73550f;transform:translateY(0)}.vendor-row.clickable:hover .vendor-avatar{box-shadow:0 6px 15px #8b735526;transform:scale(1.03)}.vendor-avatar{align-items:center;background:linear-gradient(135deg,#f8f6f2,#ede7df);border:1px solid #8b73551a;border-radius:12px;box-shadow:0 2px 8px #8b73551a;color:#8b7355;display:flex;font-size:1.125rem;font-weight:600;height:48px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:48px}.vendor-details{flex:1 1}.vendor-name{align-items:center;color:#544736;display:flex;flex-wrap:wrap;font-size:1.125rem;font-weight:700;gap:.5rem;margin-bottom:.25rem}.vendor-name-link{color:#8b7355;cursor:pointer;text-decoration:none;transition:color .2s ease}.vendor-name-link:hover{color:#8b7355;text-decoration:underline}.vendor-instagram{color:#9d9d9d;font-size:.9rem;font-weight:500}.vendor-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:sienna;display:-webkit-box;font-size:.9rem;line-height:1.4;overflow:hidden}.services-category-cell{width:280px}.category-section{margin-bottom:.75rem}.services-list{flex-wrap:wrap;gap:.5rem}.service-tag{background:#8b735514;border:1px solid #8b735526;border-radius:12px;color:#8b7355;font-size:.8rem;font-weight:500;padding:.25rem .75rem;transition:all .2s ease}.service-tag:hover{background:#8b73551f;box-shadow:0 2px 6px #8b73551a;transform:translateY(-1px)}.service-more{color:sienna;font-size:.8rem;font-style:italic}.category-tag{border-radius:12px;display:inline-block;font-size:.8rem;font-weight:600;min-width:80px;padding:.5rem 1rem;text-align:center}.instagram-cell{min-width:120px}.instagram-link{color:#e4405f;font-size:.85rem;font-weight:600;text-decoration:none;transition:color .3s ease}.instagram-link:hover{color:#c13584;text-decoration:underline}.source-cell{text-align:center;width:30px}.source-icon{color:#8b7355;cursor:pointer;display:inline-block;font-size:1.2rem;text-decoration:none;transition:all .3s ease}.source-icon:hover{color:sienna;transform:scale(1.1)}.source-unknown{color:sienna;display:inline-block;font-size:1.2rem;opacity:.6}.source-icon.clickable{cursor:pointer;transition:all .2s ease}.source-icon.clickable:hover{color:#8b7355;transform:scale(1.1)}.actions-cell{text-align:center;width:60px}.action-buttons{gap:.5rem}.action-btn,.action-buttons{display:flex;justify-content:center}.action-btn{align-items:center;background:none;border:none;border-radius:8px;color:#64748b;cursor:pointer;padding:.5rem;transition:all .2s ease}.action-btn:hover{background:#f1f5f9;color:#475569;transform:scale(1.1)}.action-btn.view-btn:hover{color:#3b82f6}.action-btn.rate-btn:hover{color:#fbbf24}.rating-cell{width:100px}.rating-info{text-align:center}.rating-stars{color:#fbbf24;margin-bottom:.25rem}.rating-text{color:#8b7355;font-size:.85rem;font-weight:600}@media (max-width:1024px){.vendor-table{font-size:.85rem}.vendor-table td,.vendor-table th{padding:1rem .75rem}.vendor-name-cell{min-width:200px}}@media (max-width:768px){.table-container{overflow-x:auto}.vendor-table{min-width:800px}.vendor-table td,.vendor-table th{padding:.75rem .5rem}.table-header{align-items:stretch;flex-direction:column;gap:1rem}.header-left,.header-right{justify-content:center}}.vendor-profile-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.vendor-profile-modal-content{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:90vw;overflow-y:auto;width:90vw}.vendor-profile-modal-header{align-items:flex-start;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;border-radius:20px 20px 0 0;display:flex;justify-content:space-between;padding:2rem 2rem 1.5rem}.vendor-header-info{align-items:center;display:flex;flex:1 1;gap:1.5rem}.vendor-avatar-large{align-items:center;background:linear-gradient(135deg,#8b7355,sienna);border-radius:50%;box-shadow:0 8px 24px #8b73554d;color:#fff;display:flex;font-size:2rem;font-weight:700;height:80px;justify-content:center;width:80px}.vendor-header-details{flex:1 1}.vendor-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.vendor-name-large{color:#1e293b;flex-shrink:0;font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--font-bold);margin:0}.vendor-meta{flex-wrap:wrap;gap:.75rem}.vendor-meta,.vendor-rating{align-items:center;display:flex}.vendor-rating{color:#fbbf24;font-family:var(--font-body);font-size:var(--text-lg);gap:.5rem}.rating-number{color:#1e293b;font-family:var(--font-body);font-weight:var(--font-semibold)}.review-count{color:#64748b;font-family:var(--font-body);font-size:var(--text-sm)}.featured-badge,.verified-badge{align-items:center;border-radius:20px;display:flex;font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--font-semibold);gap:.25rem;padding:.25rem .75rem}.verified-badge{background:#22c55e1a;border:1px solid #22c55e33;color:#16a34a}.featured-badge{background:#f59e0b1a;border:1px solid #f59e0b33;color:#d97706}.vendor-profile-modal-body{padding:2rem}.profile-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.profile-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem}.profile-section h3{border-bottom:2px solid #e2e8f0;color:#1e293b;font-family:var(--font-body);font-size:1.25rem;font-weight:var(--font-semibold);margin:0 0 1rem;padding-bottom:.5rem}.vendor-description-large{color:#475569;font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-relaxed);margin-bottom:1.5rem}.vendor-stats{display:flex;flex-direction:column;gap:.75rem}.stat-item{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;font-family:var(--font-body);justify-content:space-between;padding:.75rem 0}.stat-item:last-child{border-bottom:none}.stat-label{color:#64748b;font-size:var(--text-sm);font-weight:var(--font-medium)}.stat-label,.stat-value{font-family:var(--font-body)}.stat-value{color:#1e293b;font-weight:var(--font-semibold)}.services-grid,.specializations-grid{display:flex;flex-wrap:wrap;gap:.5rem}.availability-list{flex-wrap:wrap;max-width:100%}.availability-tag{background:#8b73551a;border:1px solid #8b735533;border-radius:20px;color:#8b7355;font-size:.875rem;font-weight:500;overflow:hidden;padding:.5rem .75rem;text-align:center;text-overflow:ellipsis;transition:all .2s ease;white-space:nowrap}.availability-tag:hover,.service-tag-large:hover,.specialization-tag:hover{background:#8b735533;transform:translateY(-1px)}.contact-links{gap:.75rem}.contact-link{align-items:center;border:1px solid #0000;border-radius:12px;display:flex;font-weight:500;gap:.75rem;padding:.875rem 1rem;text-decoration:none;transition:all .2s ease}.contact-link.instagram{background:linear-gradient(135deg,#e6d7c3,#d4c4a8);color:#5d4e37}.contact-link.instagram:hover{background:linear-gradient(135deg,#d4c4a8,#c4b498);transform:translateY(-1px)}.contact-link.website{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-color:#8b73554d;color:#64748b}.contact-link.website:hover{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#475569}.contact-link.phone{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af}.contact-link.phone:hover{background:linear-gradient(135deg,#bfdbfe,#93c5fd);transform:translateY(-1px)}.contact-link.email{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.contact-link.email:hover{background:linear-gradient(135deg,#fde68a,#fcd34d);transform:translateY(-1px)}.source-events-list{display:flex;flex-direction:column;gap:.5rem}.source-event-item{margin-bottom:.5rem}.source-event-item:last-child{margin-bottom:0}.source-event-link{background:#8b73550d;border-radius:8px;color:#1e293b;display:block;padding:.75rem 1rem;text-decoration:none;transition:all .2s ease}.source-event-link:hover{background:#8b73551a;color:#8b7355;text-decoration:underline}.source-event-text{background:#8b73550d;border-radius:8px;display:block;padding:.75rem 1rem}.source-event-title{color:inherit;font-weight:500;line-height:1.4}.source-event-category{color:#64748b;font-size:.875rem;margin-left:.5rem}.source-info{display:flex;justify-content:center}.source-tag{background:#8b73551a;border:1px solid #8b735533;border-radius:20px;color:#8b7355;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-align:center}.availability-list{display:flex;flex-wrap:nowrap;gap:.5rem;overflow-x:auto}.services-specializations-grid{display:flex;flex-wrap:wrap;gap:.5rem}.sources-section{background:none;border:none;box-shadow:none;grid-column:span 2;padding:0;width:100%}.sources-section h3{border-bottom:1px solid #8b735533;font-size:1.1rem;margin-bottom:1rem;padding-bottom:.5rem}.service-tag-large,.specialization-tag{background:#8b73551a;border:1px solid #8b735533;border-radius:20px;color:#8b7355;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}@media (max-width:768px){.vendor-profile-modal-content{margin:1rem;max-height:calc(100vh - 2rem)}.vendor-profile-modal-header{align-items:stretch;flex-direction:column;gap:1rem;padding:1.5rem 1.5rem 1rem}.vendor-header-info{flex-direction:column;gap:1rem;text-align:center}.vendor-name-large{font-size:1.5rem}.vendor-meta{justify-content:center}.vendor-profile-modal-body{padding:1.5rem}.profile-grid{gap:1.5rem;grid-template-columns:1fr}.profile-section{padding:1rem}}@media (max-width:480px){.vendor-profile-modal-body,.vendor-profile-modal-header{padding:1rem}.vendor-avatar-large{font-size:1.5rem;height:60px;width:60px}.vendor-name-large{font-size:1.25rem}}.vendor-suggestion-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.vendor-suggestion-modal-content{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-height:95vh;max-width:1000px;overflow-y:auto;width:95vw}.vendor-suggestion-modal-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;border-radius:20px 20px 0 0;display:flex;justify-content:space-between;padding:2rem 2rem 1.5rem}.vendor-suggestion-modal-header h2{color:#1e293b;font-size:1.75rem;font-weight:700;margin:0}.vendor-suggestion-form{padding:2rem}.form-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:2rem}.form-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem}.form-section h3{border-bottom:2px solid #e2e8f0;color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 1.5rem;padding-bottom:.5rem}.form-group{margin-bottom:1.5rem}.form-group:last-child{margin-bottom:0}.form-group label{font-size:.9rem;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #d1d5db;font-size:.9rem;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#8b7355;box-shadow:0 0 0 3px #8b73551a}.form-group textarea{min-height:80px;resize:vertical}.add-item-controls{align-items:center;display:flex;gap:.5rem}.add-item-controls input{flex:1 1}.add-btn{align-items:center;background:#8b7355;border-radius:8px;display:flex;justify-content:center;min-width:44px;padding:.75rem;transition:all .2s ease}.add-btn:hover{background:#6b5b47;transform:translateY(-1px)}.tags-container{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.tag{background:#8b73551a;border:1px solid #8b735533;border-radius:20px;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem .75rem}.remove-tag,.tag{align-items:center;color:#8b7355;display:flex}.remove-tag{background:none;border:none;border-radius:50%;cursor:pointer;height:16px;justify-content:center;padding:0;transition:all .2s ease;width:16px}.remove-tag:hover{background:#8b735533;color:#6b5b47}.rating-input{gap:.25rem}.star-btn{align-items:center;display:flex;justify-content:center;padding:0}.star-btn:hover{color:#fbbf24}.rating-text{color:#64748b;font-size:.9rem}.btn-primary,.btn-secondary{font-size:.9rem;min-width:120px}.btn-primary:hover{background:#6b5b47}.btn-secondary{background:#f1f5f9;border:1px solid #d1d5db;color:#64748b}.btn-secondary:hover{background:#e2e8f0;color:#475569}.multiselect-container{position:relative;width:100%}.multiselect-input{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:.9rem;padding:.75rem;transition:all .2s ease;width:100%}.multiselect-input:focus{border-color:#8b7355;box-shadow:0 0 0 3px #8b73551a;outline:none}.multiselect-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:0 0 8px 8px;border-top:none;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;left:0;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.multiselect-option{border-bottom:1px solid #f3f4f6;cursor:pointer;padding:.75rem;transition:background-color .2s ease}.multiselect-option:hover{background-color:#f8fafc}.multiselect-option:last-child{border-bottom:none}@media (max-width:768px){.vendor-suggestion-modal-content{margin:.5rem;max-height:calc(100vh - 1rem)}.vendor-suggestion-modal-header{padding:1.5rem 1.5rem 1rem}.vendor-suggestion-modal-header h2{font-size:1.5rem}.vendor-suggestion-form{padding:1.5rem}.form-grid{gap:1.5rem;grid-template-columns:1fr}.form-section{padding:1rem}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}@media (max-width:480px){.vendor-suggestion-form,.vendor-suggestion-modal-header{padding:1rem}.vendor-suggestion-modal-header h2{font-size:1.25rem}.add-item-controls{align-items:stretch;flex-direction:column}.add-btn{align-self:flex-end;min-width:auto;padding:.75rem 1rem}}.rating-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000001a;bottom:0;display:flex;justify-content:center;top:0}.rating-modal-content,.rating-modal-overlay{position:fixed;right:0;width:350px;z-index:1000}.rating-modal-content{background:#fff;border:1px solid #e2e8f0;border-radius:20px 0 0 20px;box-shadow:0 20px 60px #0000004d;max-height:-webkit-fit-content;max-height:fit-content;max-width:350px;overflow-y:auto;top:50%;transform:translateY(-50%)}.rating-modal-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;border-radius:20px 0 0 0;display:flex;justify-content:space-between;padding:1rem 1.5rem}.rating-modal-header h3{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0}.close-btn{align-items:center;background:none;border-radius:8px;color:#64748b;display:flex;justify-content:center;padding:.5rem;transition:all .2s ease}.close-btn:hover{background:#f1f5f9;color:#475569}.rating-form{padding:1rem}.form-group{margin-bottom:1rem}.form-group label{color:#374151;display:block;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.form-group input,.form-group textarea{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:.875rem;padding:.5rem;transition:border-color .2s ease;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#8b7355;box-shadow:0 0 0 3px #8b73551a;outline:none}.rating-input{display:flex;gap:.5rem;margin-bottom:.5rem}.star-btn{background:none;border:none;border-radius:4px;color:#d1d5db;cursor:pointer;padding:.25rem;transition:all .2s ease}.star-btn:hover{transform:scale(1.1)}.star-btn.active{color:#fbbf24}.star-btn svg{height:24px;width:24px}.rating-text{color:#6b7280;font-size:.875rem;font-weight:500}.form-actions{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:1.5rem}.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.btn-primary{background:#8b7355;color:#fff}.btn-primary:hover{background:sienna;transform:translateY(-1px)}.btn-secondary{background:#f3f4f6;color:#374151}.btn-secondary:hover{background:#e5e7eb;transform:translateY(-1px)}.rating-success{padding:2rem;text-align:center}.success-icon{color:#059669;font-size:3rem;margin-bottom:1rem}.rating-success h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.rating-success p{color:#64748b;font-size:.875rem;margin:0}@media (max-width:640px){.rating-modal-content{margin:1rem;max-height:calc(100vh - 2rem)}.rating-modal-header{padding:1rem 1.5rem}.rating-form{padding:1.5rem}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.budget-tracker{background:#fffffff2;border:1px solid #d4c4a833;border-radius:16px;box-shadow:0 4px 20px #d4c4a826;margin:0 auto;max-width:1400px;padding:2rem}.budget-header{border-bottom:2px solid #d4c4a84d;margin-bottom:2rem;padding-bottom:1.5rem}.budget-header h2{color:#8b7355;font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--font-bold);letter-spacing:-.02em;margin:0 0 1.5rem;text-shadow:0 2px 4px #8b73551a}.budget-summary-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.summary-card{display:flex;flex-direction:column;gap:.5rem;padding:1.5rem;transition:all .3s ease}.summary-card:hover{box-shadow:0 8px 28px #8b735566;transform:translateY(-2px)}.summary-label{font-family:var(--font-body);opacity:.9}.summary-value{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-bold)}.summary-value.paid{color:#d1fae5}.summary-value.remaining{color:#fef3c7}.progress-bar{background:#ffffff4d;border-radius:4px;height:8px;margin-top:.5rem;overflow:hidden;width:100%}.progress-fill{background:#fff;height:100%;transition:width .3s ease}.budget-categories{display:flex;flex-direction:column;gap:1rem}.category-card{background:#fff;border:2px solid #d4c4a833;border-radius:12px;overflow:hidden;transition:all .3s ease}.category-card.expanded{border-color:#b8a898;box-shadow:0 4px 12px #d4c4a840}.category-header{align-items:center;cursor:pointer;display:flex;gap:1rem;padding:1.5rem;transition:background .2s}.category-header:hover{background:#d4c4a80d}.category-info{flex:1 1}.category-name{color:#5d4e37;font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--font-semibold);margin-bottom:.25rem}.category-amounts{align-items:center;color:sienna;display:flex;font-family:var(--font-body);font-size:var(--text-sm);gap:1rem}.category-expand-icon{color:#8b7355;transition:transform .3s ease}.category-card.expanded .category-expand-icon{transform:rotate(180deg)}.category-content{background:#d4c4a808;border-top:1px solid #d4c4a833}.vendors-section{padding:1.5rem}.vendors-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.vendors-header h4{font-size:var(--text-base);margin:0}.btn-add-vendor,.vendors-header h4{color:#5d4e37;font-family:var(--font-body);font-weight:var(--font-semibold)}.btn-add-vendor{align-items:center;background:linear-gradient(135deg,#d4c4a8,#b8a898);border:none;border-radius:8px;box-shadow:0 2px 8px #d4c4a84d;cursor:pointer;display:flex;font-size:var(--text-sm);gap:.5rem;padding:.5rem 1rem;transition:all .3s ease}.btn-add-vendor:hover{box-shadow:0 4px 12px #d4c4a866;transform:translateY(-1px)}.vendors-list{display:flex;flex-direction:column;gap:1rem}.vendor-card{background:#fff;border:1px solid #d4c4a84d;border-radius:8px;padding:1rem;transition:all .3s ease}.vendor-card:hover{border-color:#b8a898;box-shadow:0 2px 8px #d4c4a826}.vendor-header-row{align-items:start;display:flex;justify-content:space-between;margin-bottom:.75rem}.vendor-info h5{color:#5d4e37;font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--font-semibold);margin:0 0 .25rem}.vendor-service{color:sienna;font-family:var(--font-body);font-size:var(--text-sm)}.vendor-actions{display:flex;gap:.5rem}.btn-icon-action{font-size:var(--text-sm)}.vendor-details{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:.75rem}.detail-item{font-family:var(--font-body);font-size:var(--text-sm)}.detail-label{color:sienna;font-weight:var(--font-medium);margin-bottom:.25rem}.detail-value{color:#5d4e37}.contract-badge,.detail-value{font-weight:var(--font-semibold)}.contract-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:var(--text-xs);gap:.25rem;padding:.25rem .75rem}.contract-signed{background:#10b9811a;border:1px solid #10b9814d;color:#10b981}.contract-pending{background:#f59e0b1a;border:1px solid #f59e0b4d;color:#f59e0b}.payment-status-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-semibold);gap:.25rem;padding:.25rem .75rem;text-transform:capitalize}.status-fully-paid{background:#10b9811a;border:1px solid #10b9814d;color:#10b981}.status-partially-paid{background:#3b82f61a;border:1px solid #3b82f64d;color:#3b82f6}.status-not-started{background:#6b72801a;border:1px solid #6b72804d;color:#6b7280}.vendor-notes{border-top:1px solid #d4c4a833;margin-top:.75rem;padding-top:.75rem}.vendor-notes p{color:#5d4e37;font-family:var(--font-body);font-size:var(--text-sm);font-style:italic;margin:0}.payments-section{border-top:1px solid #d4c4a833;margin-top:1rem;padding-top:1rem}.payments-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.payments-header h6{color:#5d4e37;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold);margin:0}.btn-add-payment{background:#0000;border:1px solid #d4c4a866;border-radius:6px;color:#8b7355;cursor:pointer;font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--font-medium);padding:.375rem .75rem;transition:all .3s ease}.btn-add-payment:hover{background:#d4c4a81a;border-color:#b8a898}.payments-list{display:flex;flex-direction:column;gap:.5rem}.payment-item{align-items:center;background:#d4c4a80d;border-radius:6px;display:flex;font-family:var(--font-body);font-size:var(--text-sm);justify-content:space-between;padding:.5rem}.payment-info{color:#5d4e37;display:flex;gap:1rem}.payment-amount{color:#8b7355;font-weight:var(--font-semibold)}.add-payment-form,.add-vendor-form{background:#fff;border:2px solid #d4c4a833;border-radius:12px;display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.add-payment-form h5,.add-vendor-form h4{color:#8b7355;font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#5d4e37;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold)}.form-group input,.form-group select,.form-group textarea{border:2px solid #d4c4a84d;border-radius:8px;color:#5d4e37;font-family:var(--font-body);font-size:var(--text-sm);padding:.75rem;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#b8a898;box-shadow:0 0 0 3px #b8a8981a;outline:none}.currency-input-wrapper .currency-symbol{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-bold)}.currency-input-wrapper input{font-weight:var(--font-semibold)}.category-budget-input{margin-bottom:1.5rem}.category-budget-input label{display:block;font-weight:var(--font-semibold);margin-bottom:.5rem}.category-budget-input input,.category-budget-input label{color:#5d4e37;font-family:var(--font-body);font-size:var(--text-sm)}.category-budget-input input{border:2px solid #d4c4a84d;border-radius:8px;padding:.75rem;transition:all .3s ease;width:100%}.category-budget-input input:focus{border-color:#b8a898;box-shadow:0 0 0 3px #b8a8981a;outline:none}.vendor-info-display{background:#d4c4a81a;border-radius:8px;color:#5d4e37;font-family:var(--font-body);font-size:var(--text-sm);padding:1rem}.vendor-info-display p{margin:.25rem 0}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:.5rem}.form-actions button{border-radius:8px;cursor:pointer;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold);padding:.75rem 1.5rem;transition:all .3s ease}.form-actions button[type=submit]{background:linear-gradient(135deg,#d4c4a8,#b8a898);border:none;box-shadow:0 4px 12px #d4c4a84d;color:#5d4e37}.form-actions button[type=submit]:hover{box-shadow:0 6px 16px #d4c4a866;transform:translateY(-2px)}.form-actions button[type=button]{background:#fff;border:2px solid #d4c4a866;color:#5d4e37}.form-actions button[type=button]:hover{background:#d4c4a81a;border-color:#b8a898}@media (max-width:768px){.budget-tracker{padding:1rem}.budget-header h2{font-size:var(--text-2xl)}.budget-summary-cards,.vendor-details{grid-template-columns:1fr}.vendor-header-row{gap:.75rem}.form-actions,.vendor-header-row{flex-direction:column}.form-actions button{width:100%}}@media (max-width:480px){.budget-header h2,.summary-value{font-size:var(--text-xl)}.category-amounts{align-items:flex-start;flex-direction:column;gap:.25rem}}.vendor-comparison-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.comparison-container{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:1400px;overflow-y:auto;width:100%}.comparison-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;padding:1.5rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.comparison-header h2{color:#1f2937;margin:0}.close-btn{background:#f3f4f6;border:none;border-radius:50%;color:#6b7280;cursor:pointer;font-size:1.5rem;height:40px;transition:all .2s;width:40px}.close-btn:hover{background:#e5e7eb;color:#1f2937}.empty-state{color:#6b7280;padding:4rem 2rem}.comparison-table-wrapper{overflow-x:auto;padding:2rem}.comparison-table{border-collapse:collapse;font-size:.875rem;width:100%}.comparison-table td,.comparison-table th{border-bottom:1px solid #e5e7eb;padding:1rem;text-align:left}.comparison-table th{background:#f9fafb;color:#374151}.feature-column{background:#f9fafb;color:#1f2937;font-weight:600;left:0;position:-webkit-sticky;position:sticky;width:150px;z-index:5}.vendor-column{min-width:200px}.vendor-header-cell{padding-top:1.5rem;position:relative}.remove-vendor-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.25rem;height:24px;justify-content:center;position:absolute;right:0;top:0;transition:background .2s;width:24px}.remove-vendor-btn:hover{background:#dc2626}.vendor-name{color:#1f2937;font-size:1rem;font-weight:600;margin-bottom:.5rem}.comparison-score{background:#4f46e5;border-radius:12px;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem}.feature-label{background:#fff;color:#374151;font-weight:600;left:0;position:-webkit-sticky;position:sticky;z-index:5}.rating-cell{display:flex;flex-direction:column;gap:.25rem}.rating-stars{font-size:1rem}.rating-number{color:#6b7280;font-size:.875rem}.price-range{color:#10b981;font-size:1.25rem}.services-list{display:flex;flex-direction:column;gap:.25rem}.service-tag{background:#e0e7ff;border-radius:4px;color:#4338ca;display:inline-block;font-size:.75rem;margin-bottom:.25rem;margin-right:.25rem;padding:.25rem .5rem}.badge.verified{background:#d1fae5;color:#065f46}.badge.not-verified{background:#f3f4f6;color:#6b7280}.badge.featured{background:#fef3c7;color:#92400e}.contact-links{display:flex;flex-direction:column;gap:.5rem}.contact-links a{color:#4f46e5;font-size:.875rem;text-decoration:none}.contact-links a:hover{text-decoration:underline}.vendor-selector{background:#f9fafb;border-top:2px solid #e5e7eb;padding:2rem}.vendor-selector h3{color:#1f2937;margin:0 0 1rem}.selector-controls{display:flex;gap:1rem;margin-bottom:1rem}.search-input{flex:1 1}.category-filter,.search-input{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:.75rem}.category-filter{background:#fff;min-width:200px}.vendor-list{display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto}.vendor-list-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;display:flex;justify-content:space-between;padding:1rem;transition:all .2s}.vendor-list-item:hover{border-color:#4f46e5;box-shadow:0 2px 4px #0000000d}.vendor-info{display:flex;flex-direction:column;gap:.25rem}.vendor-info strong{color:#1f2937}.vendor-price,.vendor-rating{color:#6b7280;font-size:.875rem}.add-btn{background:#4f46e5;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background .2s}.add-btn:hover{background:#4338ca}@media (max-width:768px){.vendor-comparison-modal{padding:0}.comparison-container{border-radius:0;max-height:100vh}.comparison-table-wrapper{padding:1rem}.comparison-table td,.comparison-table th{font-size:.75rem;padding:.75rem .5rem}.vendor-column{min-width:150px}.selector-controls{flex-direction:column}.category-filter{min-width:auto}}.budget-calculator{background:#fffffff2;border:1px solid #d4c4a833;border-radius:16px;box-shadow:0 4px 20px #d4c4a826;margin:0 auto;max-width:1400px;padding:2rem}.calculator-header{align-items:flex-start;border-bottom:2px solid #d4c4a84d;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}.header-left h2{color:#8b7355;font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--font-bold);letter-spacing:-.02em;margin:0 0 .5rem;text-shadow:0 2px 4px #8b73551a}.header-left p{color:sienna;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-medium);margin:0}.header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.currency-toggle button{align-items:center;border:2px solid #d4c4a866;border-radius:8px;color:#5d4e37;display:flex;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold);gap:.25rem;padding:.75rem 1.5rem;transition:all .3s ease}.currency-toggle button:hover{transform:translateY(-1px)}.currency-toggle button.active{box-shadow:0 4px 12px #d4c4a84d}.btn-template{background:#fff;border:2px solid #d4c4a866;border-radius:8px;color:#5d4e37;cursor:pointer;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold);padding:.75rem 1.5rem;transition:all .3s ease}.btn-template:hover{background:#d4c4a81a;border-color:#b8a898;box-shadow:0 4px 12px #d4c4a833;transform:translateY(-1px)}.template-selector{background:#d4c4a80d;border:1px solid #d4c4a833;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.template-selector h3{color:#8b7355;font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0 0 1rem}.template-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.template-card{background:#fff;border:2px solid #d4c4a84d;border-radius:8px;cursor:pointer;padding:1.5rem;transition:all .3s ease}.template-card:hover{border-color:#b8a898;box-shadow:0 4px 12px #d4c4a840;transform:translateY(-2px)}.template-card h4{color:#5d4e37;font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--font-semibold);margin:0 0 .5rem}.template-card p{color:sienna;font-family:var(--font-body);font-size:var(--text-sm);margin:.25rem 0}.template-total{color:#8b7355;font-size:var(--text-lg);font-weight:var(--font-bold);margin-top:.75rem}.configurator-toolbar{display:flex;gap:1rem;margin-bottom:1.5rem}.btn-add-item{align-items:center;background:linear-gradient(135deg,#d4c4a8,#b8a898);border:none;border-radius:8px;box-shadow:0 4px 12px #d4c4a84d;color:#5d4e37;cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold);gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.btn-add-item:hover{box-shadow:0 6px 16px #d4c4a866;transform:translateY(-2px)}.btn-add-item .btn-icon{font-size:1.2rem;font-weight:700}.btn-clear{background:#0000;border:2px solid #d4c4a84d;border-radius:8px;color:sienna;cursor:pointer;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold);padding:.75rem 1.5rem;transition:all .3s ease}.btn-clear:hover{background:#a0522d0d;border-color:sienna}.line-items-container{background:#fff;border:2px solid #d4c4a833;border-radius:12px;margin-bottom:2rem;overflow:hidden}.empty-state{padding:3rem 2rem;text-align:center}.empty-state p{color:sienna;font-family:var(--font-body);font-size:var(--text-base);margin:0}.line-items-table{width:100%}.table-header{background:linear-gradient(135deg,#d4c4a8,#b8a898);color:#5d4e37;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-bold);letter-spacing:.05em;text-transform:uppercase}.line-item,.table-header{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1.5fr 2fr 1.5fr 1.5fr 1fr;padding:1rem 1.5rem}.line-item{align-items:center;border-top:1px solid #d4c4a833;transition:all .2s ease}.line-item:hover{background:#d4c4a80d}.line-item.editing{background:#d4c4a81a;box-shadow:inset 0 0 0 2px #b8a8984d}.line-item input{background:#fff;border:1px solid #d4c4a84d;border-radius:6px;color:#5d4e37;font-family:var(--font-body);font-size:var(--text-sm);padding:.5rem .75rem;transition:all .3s ease;width:100%}.line-item input:focus{border-color:#b8a898;box-shadow:0 0 0 3px #b8a8981a;outline:none}.line-item input::placeholder{color:sienna;opacity:.5}.input-category{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m1 1.5 5 5 5-5' stroke='%238b7355' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;cursor:pointer;font-weight:var(--font-semibold);padding-right:2.5rem}.input-category:focus{cursor:auto}.currency-input{align-items:center;display:flex;position:relative}.currency-symbol{color:#8b7355;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-bold);left:.75rem;pointer-events:none;position:absolute}.input-amount{font-weight:var(--font-semibold);padding-left:2rem!important;text-align:right}.col-percentage{display:flex;flex-direction:column;gap:.5rem}.percentage-badge{color:#8b7355;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-bold)}.percentage-bar{background:#d4c4a833;border-radius:3px;height:6px;overflow:hidden}.percentage-fill{background:linear-gradient(90deg,#d4c4a8,#b8a898);height:100%;transition:width .3s ease}.col-actions{display:flex;gap:.5rem;justify-content:flex-end}.btn-icon-action{align-items:center;background:#0000;border:1px solid #d4c4a84d;border-radius:6px;color:#5d4e37;cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:all .3s ease}.btn-icon-action:hover{background:#d4c4a81a;border-color:#b8a898;transform:scale(1.1)}.btn-delete:hover{background:#dc26261a;border-color:#dc2626;color:#dc2626}.budget-summary{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 2fr;margin-top:2rem}.summary-card{background:linear-gradient(135deg,#8b7355,sienna);border-radius:12px;box-shadow:0 6px 24px #8b73554d;color:#fff;padding:2rem}.summary-row{align-items:center;display:flex;font-family:var(--font-body);justify-content:space-between;padding:.75rem 0}.summary-row:not(:last-child){border-bottom:1px solid #fff3}.summary-label{color:#fffffff2;font-size:var(--text-sm);font-weight:var(--font-medium)}.summary-value{color:#fff;font-size:var(--text-base);font-weight:var(--font-semibold)}.total-row{margin-top:.5rem;padding-top:1rem}.total-row .summary-label{color:#fff;font-size:var(--text-lg);font-weight:var(--font-bold)}.total-amount{color:#fff;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-bold)}.conversion-row{font-size:var(--text-sm);margin-top:.5rem}.conversion-row .summary-label,.conversion-row .summary-value{color:#ffffffe6}.breakdown-chart{background:#fff;border:2px solid #d4c4a833;border-radius:12px;padding:1.5rem}.breakdown-chart h3{color:#8b7355;font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0 0 1.5rem}.chart-container{gap:1rem}.chart-bar-row,.chart-container{display:flex;flex-direction:column}.chart-bar-row{gap:.5rem}.chart-label{align-items:center;display:flex;justify-content:space-between}.chart-category{color:#5d4e37;font-weight:var(--font-semibold)}.chart-amount,.chart-category{font-family:var(--font-body);font-size:var(--text-sm)}.chart-amount{color:#8b7355;font-weight:var(--font-bold)}.chart-bar{background:#d4c4a833;border-radius:6px;height:32px;overflow:hidden;position:relative}.chart-bar-fill{align-items:center;background:linear-gradient(135deg,#d4c4a8,#b8a898);display:flex;height:100%;justify-content:flex-end;min-width:50px;padding-right:.75rem;transition:width .5s ease}.chart-percentage{color:#5d4e37;font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--font-bold)}.chart-empty{color:sienna;font-size:var(--text-sm);padding:2rem;text-align:center}.chart-empty,.comparison-footer p{font-family:var(--font-body)}@media (max-width:1024px){.budget-summary{grid-template-columns:1fr}.line-items-table{overflow-x:auto}.line-item,.table-header{font-size:var(--text-xs);grid-template-columns:1fr 1.5fr 1fr 1fr .8fr}}@media (max-width:768px){.budget-calculator{padding:1rem}.calculator-header{flex-direction:column;gap:1rem}.header-actions{flex-direction:column;width:100%}.btn-template,.currency-toggle{width:100%}.table-header{display:none}.line-item{border:1px solid #d4c4a84d;border-radius:8px;gap:.75rem;grid-template-columns:1fr;margin-bottom:.75rem;padding:1rem}.col-actions{justify-content:flex-start}.template-list{grid-template-columns:1fr}}@media (max-width:480px){.header-left h2{font-size:var(--text-2xl)}.total-amount{font-size:var(--text-xl)}.configurator-toolbar{flex-direction:column}.btn-add-item,.btn-clear{justify-content:center;width:100%}}.favor-registry{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:2rem}.registry-header{align-items:flex-start;border-bottom:2px solid #d4c4a84d;display:flex;gap:2rem;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}.registry-header .header-left{flex:1 1;min-width:0}.registry-header .header-left h2{color:#8b7355;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-display,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:1.875rem;font-size:var(--text-3xl,1.875rem);font-weight:700;font-weight:var(--font-bold,700);letter-spacing:-.02em;margin:0 0 .5rem;text-shadow:0 2px 4px #8b73551a}.registry-header .header-left p{color:sienna;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:.875rem;font-size:var(--text-sm,.875rem);font-weight:500;font-weight:var(--font-medium,500);margin:0}.registry-header .header-actions{align-items:flex-start;display:flex;flex-shrink:0}.registry-controls{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:120px}.filter-group label{color:#5d4e37;display:block;font-size:.75rem;font-weight:600;white-space:nowrap}.filter-group input[type=number],.filter-group select{border:2px solid #d4c4a84d;border-radius:6px;font-size:.875rem;min-width:100px;padding:.5rem .75rem}.price-range-inputs{align-items:center;display:flex;gap:.5rem}.price-range-inputs input{border:2px solid #d4c4a84d;border-radius:6px;font-size:.875rem;padding:.5rem;width:60px}.price-range-inputs span{color:sienna;font-size:.75rem;white-space:nowrap}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;white-space:nowrap}.checkbox-label input[type=checkbox]{cursor:pointer;flex-shrink:0;height:16px;width:16px}.currency-toggle{display:flex;flex-wrap:wrap;gap:.5rem}.currency-toggle button{background:#fff;border:2px solid #d4c4a84d;border-radius:6px;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:500;min-width:70px;padding:.5rem .75rem;transition:all .2s;white-space:nowrap}.currency-toggle button:hover{background:#d4c4a81a;border-color:#b8a898}.currency-toggle button.active{background:linear-gradient(135deg,#d4c4a8,#b8a898);border-color:#b8a898;box-shadow:0 2px 8px #d4c4a84d;color:#5d4e37}.cart-section{background:#fff;border:2px solid #d4c4a84d;border-radius:12px;box-shadow:0 2px 8px #d4c4a826;margin-bottom:2rem;padding:1.5rem}.cart-header{align-items:center;border-bottom:2px solid #d4c4a84d;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.cart-header h3{color:#8b7355;font-size:1.25rem;font-weight:600;margin:0}.clear-cart-btn{background:#ef44441a;border:1px solid #ef44444d;border-radius:6px;color:#dc2626;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s}.clear-cart-btn:hover{background:#ef444433;border-color:#dc2626}.cart-items{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.cart-item{align-items:center;background:#f8f9facc;border:1px solid #d4c4a833;border-radius:8px;display:flex;justify-content:space-between;padding:1rem;transition:all .2s}.cart-item:hover{border-color:#d4c4a866;box-shadow:0 2px 4px #d4c4a81a}.cart-item-info{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.cart-item-info h4{color:#8b7355;font-size:1rem;font-weight:600;margin:0}.cart-item-price{color:#6b7280;font-size:.875rem}.cart-item-controls{align-items:center;display:flex;gap:.5rem}.quantity-btn{align-items:center;background:#fff;border:2px solid #d4c4a866;border-radius:6px;color:#5d4e37;cursor:pointer;display:flex;font-size:1.25rem;font-weight:600;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.quantity-btn:hover:not(:disabled){background:#d4c4a833;border-color:#b8a898}.quantity-btn:disabled{cursor:not-allowed;opacity:.5}.cart-quantity-input{border:2px solid #d4c4a84d;border-radius:6px;color:#5d4e37;font-size:.9rem;font-weight:600;padding:.5rem;text-align:center;width:80px}.cart-quantity-input:focus{border-color:#b8a898;box-shadow:0 0 0 3px #d4c4a833;outline:none}.remove-item-btn{align-items:center;background:#ef44441a;border:2px solid #ef44444d;border-radius:6px;color:#dc2626;cursor:pointer;display:flex;font-size:1.5rem;font-weight:600;height:32px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:32px}.remove-item-btn:hover{background:#ef444433;border-color:#dc2626}.cart-total{align-items:flex-end;border-top:2px solid #d4c4a84d;display:flex;flex-direction:column;gap:.25rem;padding-top:1.5rem}.cart-total strong{color:#8b7355;font-size:1.5rem;font-weight:700}.cart-total small{color:#6b7280;font-size:.875rem}.btn-export,.export-label{font-family:var(--font-body)}.btn-export-calculator{background:linear-gradient(135deg,#d4c4a8,#b8a898);border-color:#b8a898;box-shadow:0 4px 12px #d4c4a84d;color:#5d4e37}.btn-export-calculator:hover{background:linear-gradient(135deg,#c4b498,#a89888);box-shadow:0 6px 20px #d4c4a866;transform:translateY(-2px)}.favor-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.favor-card{border:2px solid #d4c4a84d;border-radius:8px;display:flex;flex-direction:column;padding:1.5rem;transition:all .2s}.favor-card:hover{border-color:#10b981;box-shadow:0 4px 12px #10b9811a}.favor-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:.75rem}.favor-header h3{color:#8b7355;flex:1 1;font-size:1.1rem;margin:0}.favor-category{background:#e0e7ff;border-radius:12px;color:#4f46e5;font-size:.75rem;font-weight:600;padding:.25rem .75rem;white-space:nowrap}.favor-description{color:sienna;font-size:.9rem;line-height:1.5;margin-bottom:1rem}.favor-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.detail-row{display:flex;font-size:.9rem;justify-content:space-between}.detail-row .label{color:sienna}.detail-row .value{color:#5d4e37;font-weight:600}.detail-row .value.price{color:#10b981;font-size:1.1rem}.customizable-badge{background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:6px;color:#fff;font-size:.85rem;font-weight:600;margin-bottom:1rem;padding:.5rem;text-align:center}.favor-actions{display:flex;gap:.5rem;margin-top:auto}.favor-actions input{border:2px solid #d4c4a84d;border-radius:6px;font-size:.9rem;padding:.75rem;width:100px}.favor-actions button{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:600;padding:.75rem;transition:all .2s}.favor-actions button:hover{background:#059669}.favor-actions button.in-cart{background:#f59e0b}.favor-actions button.in-cart:hover{background:#d97706}.supplier-link{color:#4f46e5;display:block;font-size:.85rem;font-weight:500;margin-top:.75rem;text-align:center;text-decoration:none;transition:color .2s}.supplier-link:hover{color:#4338ca;text-decoration:underline}.no-results{color:sienna;padding:3rem;text-align:center}@media (max-width:768px){.favor-registry{padding:1rem}.registry-header{flex-direction:column;gap:1.5rem}.registry-header .header-actions{width:100%}.registry-controls{flex-direction:column;width:100%}.filter-group{min-width:auto;width:100%}.filter-group input[type=number],.filter-group select,.price-range-inputs input{width:100%}.favor-grid{grid-template-columns:1fr}.cart-item{align-items:flex-start;flex-direction:column;gap:1rem}.cart-item-controls{justify-content:flex-start;width:100%}.cart-header{align-items:flex-start;flex-direction:column;gap:1rem}.clear-cart-btn{width:100%}}.cost-comparison{background:#fffffff2;border:1px solid #d4c4a833;border-radius:16px;box-shadow:0 4px 20px #d4c4a826;margin:0 auto;max-width:1400px;padding:2rem}.comparison-header{align-items:flex-start;border-bottom:2px solid #d4c4a84d;display:flex;gap:2rem;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}.comparison-header .header-left{flex:1 1;min-width:0}.comparison-header h2{color:#8b7355;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-display,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:2rem;font-weight:700;margin:0 0 .5rem;text-shadow:0 2px 4px #8b73551a}.comparison-header p{color:sienna;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:.95rem;margin:0}.cost-comparison h3{color:#8b7355;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-display,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.input-grid{grid-gap:1.5rem;border-bottom:2px solid #d4c4a84d;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem;padding-bottom:1.5rem}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-group label{color:#5d4e37;font-size:.9rem;font-weight:600}.input-group input,.input-group label{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif)}.input-group input{background:#fff;border:2px solid #d4c4a84d;border-radius:8px;color:#1f2937;font-size:1rem;padding:.75rem;transition:all .3s ease}.input-group input:focus{border-color:#b8a898;box-shadow:0 0 0 3px #d4c4a833;outline:none}.input-group input:disabled{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.input-group small{color:sienna;font-size:.75rem;font-style:italic}.currency-input-wrapper{align-items:center;display:flex;position:relative}.currency-input-wrapper .currency-symbol{color:#8b7355;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:1rem;font-weight:700;left:.75rem;pointer-events:none;position:absolute;z-index:1}.currency-input-wrapper input{font-weight:600;padding-left:2rem!important;text-align:right;width:100%}.toggle-customs-btn{background:#fff;border:2px solid #d4c4a866;border-radius:8px;color:#5d4e37;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:.95rem;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:all .3s ease}.toggle-customs-btn:hover{background:#d4c4a81a;border-color:#b8a898;transform:translateY(-1px)}.customs-calculator{background:#fff;border:1px solid #d4c4a84d;border-radius:8px;margin-top:1.5rem;padding:1.5rem}.customs-calculator h4{color:#8b7355;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-display,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:1.25rem;font-weight:600;margin:0 0 1rem}.customs-breakdown{border-top:2px solid #d4c4a84d;margin-top:1.5rem;padding-top:1.5rem}.breakdown-row{align-items:center;border-bottom:1px solid #d4c4a833;display:flex;justify-content:space-between;padding:.75rem 0}.breakdown-row:last-child{border-bottom:none}.breakdown-row span{color:#5d4e37;font-size:.95rem}.breakdown-row .dual-currency{align-items:flex-end}.breakdown-row strong{color:#8b7355;font-size:1.1rem;font-weight:700}.breakdown-row small{color:#6b7280;font-size:.75rem;font-weight:500}.breakdown-row.total{border-top:2px solid #d4c4a866;margin-top:.5rem;padding-top:1rem}.breakdown-row.total span,.breakdown-row.total strong{color:#8b7355;font-size:1.25rem;font-weight:700}.comparison-header .recommendations{align-items:flex-start;display:flex;flex-shrink:0;gap:1rem}.comparison-header .recommendation-card{gap:.75rem;min-width:180px;padding:1rem 1.25rem}.comparison-header .recommendation-card,.recommendation-card{align-items:center;background:#fff;border:2px solid #d4c4a84d;border-radius:12px;box-shadow:0 2px 8px #d4c4a833;display:flex;transition:all .3s ease}.recommendation-card{gap:1rem;padding:1.5rem}.recommendation-card:hover{box-shadow:0 4px 12px #d4c4a84d;transform:translateY(-2px)}.recommendation-card.best{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#fbbf24}.recommendation-card.fast{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#60a5fa}.comparison-header .rec-icon{font-size:2rem;line-height:1}.rec-icon{font-size:2.5rem;line-height:1}.rec-content{flex:1 1}.comparison-header .rec-content h4{color:#5d4e37;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-display,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:.75rem;font-weight:600;letter-spacing:.05em;margin:0 0 .25rem;text-transform:uppercase}.comparison-header .rec-content p{color:#8b7355;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:.9rem;font-weight:600;margin:.25rem 0}.rec-content h4{color:#5d4e37;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-display,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:.9rem;font-weight:600;letter-spacing:.05em;margin:0 0 .25rem;text-transform:uppercase}.rec-content p{color:#8b7355;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:1.1rem;font-weight:600;margin:.25rem 0}.rec-content .dual-currency{align-items:flex-start;margin-top:.5rem}.comparison-header .rec-content .dual-currency strong{color:#5d4e37;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-display,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:1.1rem;font-weight:700}.comparison-header .rec-content .dual-currency small{color:#6b7280;font-size:.75rem;font-weight:500;margin-top:.25rem}.comparison-header .rec-content strong{font-size:1.1rem}.comparison-header .rec-content strong,.rec-content .dual-currency strong{color:#5d4e37;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-display,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-weight:700}.rec-content .dual-currency strong{font-size:1.5rem}.rec-content .dual-currency small{color:#6b7280;font-size:.875rem;font-weight:500;margin-top:.25rem}.comparison-table{margin-bottom:2rem}.comparison-table h3{color:#8b7355;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-display,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.table-wrapper{border:1px solid #d4c4a84d;border-radius:12px;box-shadow:0 2px 8px #d4c4a826;overflow-x:auto}.comparison-table table{background:#fff;border-collapse:collapse;width:100%}.comparison-table thead{background:linear-gradient(135deg,#d4c4a8,#b8a898)}.comparison-table th{border-bottom:2px solid #d4c4a866;color:#5d4e37;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:.9rem;font-weight:600;letter-spacing:.05em;padding:1rem;text-align:left;text-transform:uppercase}.comparison-table tbody tr{border-bottom:1px solid #d4c4a833;transition:background .2s}.comparison-table tbody tr:hover{background:#d4c4a80d}.comparison-table tbody tr.highlight{background:#fbbf241a;border-left:4px solid #fbbf24}.comparison-table td{color:#1f2937;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:.9rem;padding:1rem}.company-name{align-items:center;color:#5d4e37;display:flex;flex-wrap:wrap;font-weight:600;gap:.5rem}.company-name small{color:#6b7280;display:block;font-size:.75rem;font-style:italic;font-weight:400;margin-top:.25rem;width:100%}.badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem}.badge.best{background:#fef3c7;color:#92400e}.badge.fast{background:#dbeafe;color:#1e40af}.total-cost{font-weight:700}.total-cost strong{color:#8b7355;font-size:1rem;font-weight:700}.dual-currency{align-items:flex-end;display:flex;flex-direction:column;gap:.25rem}.dual-currency strong{color:#8b7355;font-size:1.1rem;font-weight:700}.dual-currency small{color:#6b7280;font-size:.75rem;font-weight:500}.rating{align-items:center;display:flex;gap:.5rem}.rating span{color:#6b7280;font-size:.875rem;font-weight:600}.features{display:flex;flex-direction:column;gap:.25rem}.feature{background:#d4c4a833;border-radius:6px;color:#5d4e37;display:inline-block;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.total-summary{background:linear-gradient(135deg,#d4c4a81a,#b8a8981a);border:2px solid #d4c4a84d;border-radius:12px;margin-bottom:2rem;padding:2rem}.total-summary h3{color:#8b7355;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-display,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.summary-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-item{background:#fff;border:1px solid #d4c4a84d;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.summary-item span{color:#6b7280;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:.875rem;font-weight:500}.summary-item .dual-currency{align-items:flex-end}.summary-item .dual-currency strong{color:#8b7355;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-display,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:1.5rem;font-weight:700}.summary-item .dual-currency small{color:#6b7280;font-size:.875rem;font-weight:500;margin-top:.25rem}.summary-item.total{background:linear-gradient(135deg,#d4c4a8,#b8a898);border-color:#b8a898}.summary-item.total span,.summary-item.total strong{color:#5d4e37}.comparison-footer{background:#d4c4a81a;border-left:4px solid #b8a898;border-radius:8px;padding:1.5rem}.comparison-footer p{color:#5d4e37;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:.875rem;line-height:1.6;margin:0}.comparison-footer strong{color:#8b7355;font-weight:600}.export-actions{border-top:2px solid #d4c4a84d;margin-top:1.5rem;padding-top:1.5rem}.export-label{color:#5d4e37;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:.875rem;font-weight:600;margin:0 0 .75rem}.export-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.btn-export{align-items:center;border:2px solid;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:.9rem;font-weight:600;gap:.5rem;justify-content:center;min-width:180px;padding:.875rem 1.25rem;transition:all .3s ease}.btn-export svg{flex-shrink:0}.btn-export-tracker{background:linear-gradient(135deg,sienna,#8b7355);border-color:#8b7355;box-shadow:0 4px 12px #8b73554d;color:#fff}.btn-export-tracker:hover{background:linear-gradient(135deg,#8b4513,#7a6347);box-shadow:0 6px 20px #8b735566;transform:translateY(-2px)}@media (max-width:768px){.cost-comparison{padding:1rem}.comparison-header{flex-direction:column;gap:1.5rem}.comparison-header .recommendations{flex-direction:column;width:100%}.comparison-header .recommendation-card{min-width:auto;width:100%}.input-grid{gap:1rem}.input-grid,.recommendations{grid-template-columns:1fr}.table-wrapper{overflow-x:scroll}.comparison-table table{min-width:800px}.summary-grid{grid-template-columns:1fr}}
/*# sourceMappingURL=main.6bb5e800.css.map*/