*,:after,:before{box-sizing:border-box}:root{--primary:#1769aa;--primary-dark:#0f3e56;--primary-light:#f0f7ff;--secondary:#10a760;--secondary-light:#e6f5ed;--error:#d32f2f;--error-light:#ffebee;--warning:#f57c00;--warning-light:#fff3e0;--bg:#f5f7fa;--surface:#fff;--text-primary:#1a1a1a;--text-secondary:#666;--border:#e0e0e0;--border-light:#f0f0f0;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px #00000012;--shadow-lg:0 10px 20px #0000001a;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}html{font-size:16px;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7fa;background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;margin:0;padding:0}body,input,select,textarea{color:#1a1a1a;color:var(--text-primary)}input,select,textarea{-webkit-appearance:none;appearance:none;background:#fff;background:var(--surface);border:1.5px solid #e0e0e0;border:1.5px solid var(--border);border-radius:10px;border-radius:var(--radius-md);font-family:inherit;font-size:1rem;margin-top:8px;padding:12px 14px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}input::placeholder,textarea::placeholder{color:#666;color:var(--text-secondary)}input:focus,input:hover,select:focus,select:hover,textarea:focus,textarea:hover{border-color:#1769aa;border-color:var(--primary)}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px #1769aa14;outline:none}button{background:#1769aa;background:var(--primary);border:none;border-radius:10px;border-radius:var(--radius-md);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;min-height:44px;padding:14px 20px;text-transform:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}button:hover{box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-md);transform:translateY(-2px)}button:active,button:hover{background:#0f3e56;background:var(--primary-dark)}button:active{box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);transform:translateY(0)}button:disabled{background:#666;background:var(--text-secondary);cursor:not-allowed;opacity:.6;transform:none}label{display:block;font-size:.95rem;font-weight:500;margin-bottom:8px}h1,label{color:#1a1a1a;color:var(--text-primary)}h1{font-size:2rem;font-weight:700;line-height:1.2;margin:0 0 8px}h2{font-size:1.4rem;line-height:1.3;margin:16px 0 12px}h2,h3{color:#1a1a1a;color:var(--text-primary);font-weight:600}h3{font-size:1.1rem;margin:12px 0 8px}p{color:#666;color:var(--text-secondary);line-height:1.6;margin:8px 0}section{background:#fff;background:var(--surface);border:1px solid #f0f0f0;border:1px solid var(--border-light);border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);margin-bottom:16px;padding:20px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}section:hover{box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-md)}.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.grid-2,.grid-3{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr}.card{background:#fff;background:var(--surface);border:1px solid #f0f0f0;border:1px solid var(--border-light);border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);padding:16px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.card:hover{border-color:#1769aa;border-color:var(--primary);box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-md)}.card-header{align-items:center;border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:12px}.card-title{font-size:1.05rem;font-weight:600;margin:0}.card-subtitle{color:#666;color:var(--text-secondary);font-size:.9rem;margin:0}.toast{word-wrap:break-word;animation:slideDown .3s ease;border-left:4px solid #0000;border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 10px 20px #0000001a;box-shadow:var(--shadow-lg);font-weight:600;left:16px;max-height:100px;overflow-y:auto;padding:16px 18px;position:fixed;right:16px;text-align:center;top:16px;z-index:9999}.toast.success{background:#e6f5ed;background:var(--secondary-light);border-left-color:#10a760;border-left-color:var(--secondary);color:#0a6d37}.toast.error{background:#ffebee;background:var(--error-light);border-left-color:#d32f2f;border-left-color:var(--error);color:#b71c1c}.toast.warning{background:#fff3e0;background:var(--warning-light);border-left-color:#f57c00;border-left-color:var(--warning);color:#9a5a00}@keyframes slideDown{0%{opacity:0;top:-80px}to{opacity:1;top:16px}}.pricing-card{background:#fff;background:var(--surface);border:2px solid #e0e0e0;border:2px solid var(--border);border-radius:14px;border-radius:var(--radius-lg);margin-bottom:12px;padding:20px 16px;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.pricing-card:hover{transform:translateY(-4px)}.pricing-card.featured,.pricing-card:hover{border-color:#1769aa;border-color:var(--primary);box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-md)}.pricing-card.featured{background:#f0f7ff;background:var(--primary-light);border-width:3px}.pricing-card .price{color:#1769aa;color:var(--primary);font-size:1.8rem;font-weight:800;margin:8px 0 4px}.pricing-card .period{color:#666;color:var(--text-secondary);font-size:.95rem;margin-bottom:12px}#farmer-map{border:1px solid #e0e0e0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-lg);height:280px;width:100%}.badge{border-radius:20px;display:inline-block;font-size:.85rem;font-weight:600;padding:6px 12px}.badge.success{background:#e6f5ed;background:var(--secondary-light);color:#0a6d37}.badge.error{background:#ffebee;background:var(--error-light);color:#b71c1c}.badge.warning{background:#fff3e0;background:var(--warning-light);color:#e65100}.badge.info{background:#f0f7ff;background:var(--primary-light);color:#1769aa;color:var(--primary)}button.secondary{background:#666;background:var(--text-secondary)}button.secondary:hover{background:#4a4a4a}button.outline{background:#0000;border:2px solid #1769aa;border:2px solid var(--primary);color:#1769aa;color:var(--primary)}button.outline:hover{background:#f0f7ff;background:var(--primary-light)}button.small{font-size:.9rem;min-height:36px;padding:10px 14px}@media (min-width:600px){html{font-size:16px}h1{font-size:2.2rem}h2{font-size:1.5rem}h3{font-size:1.15rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}section{padding:24px}#farmer-map{height:380px}.toast{left:50%;max-width:520px;min-width:320px;right:auto;transform:translateX(-50%)}}@media (min-width:1024px){section{margin-bottom:20px;padding:28px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}#farmer-map{height:420px}}.app-wrapper{margin:0 auto;max-width:1400px;padding:12px}@media (min-width:600px){.app-wrapper{padding:16px}}@media (min-width:1024px){.app-wrapper{padding:20px}}.header-inner{align-items:stretch;display:flex;flex-direction:column;gap:12px;justify-content:flex-start}.header-inner h1{font-size:1.45rem}.top-nav-actions{display:flex;flex-direction:column;gap:10px;width:100%}.top-nav-primary,.top-nav-secondary{-webkit-overflow-scrolling:touch;display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.top-nav-primary::-webkit-scrollbar,.top-nav-secondary::-webkit-scrollbar{height:5px}.top-nav-pill{border:none;border-radius:999px;cursor:pointer;flex:0 0 auto;font-size:.82rem;font-weight:700;min-height:36px;min-width:104px;padding:8px 12px}.top-nav-pill,.top-nav-pill:active,.top-nav-pill:hover{box-shadow:none;transform:none}.top-nav-actions .language-picker{color:#24313a;display:block;font-weight:600;width:100%}.language-picker select{margin-top:6px;width:100%!important}.market-hero{grid-gap:12px;background:linear-gradient(140deg,#f4fcf6f2,#ecf6fff2);border:1px solid #cfe5d4;border-radius:14px;display:grid;gap:12px;padding:16px}.market-hero-main{background:#ffffffeb;border:1px solid #dce8df;border-radius:12px;padding:12px}.market-hero-kicker{color:#2f6f45;font-size:.8rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.market-hero-stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.market-stat-card{background:#fffffff5;border:1px solid #dce8df;border-radius:10px;padding:10px;text-align:center}.market-stat-value{color:#134a73;font-size:1.15rem;font-weight:800;line-height:1.2}.market-stat-label{color:#5b6770;font-size:.72rem}.buyer-inbox-layout{grid-gap:10px;display:grid;gap:10px}.buyer-chat-pane,.buyer-thread-list{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:10px}.buyer-thread-list{grid-gap:8px;display:grid;gap:8px}.buyer-thread-item{min-height:44px;width:100%}.buyer-chat-messages{background:#f9fbfd;border:1px solid #e6edf3;border-radius:10px;max-height:250px;overflow-y:auto;padding:8px}.buyer-chat-bubble{background:#fff;border:1px solid #e5edf3;border-radius:8px;margin-bottom:8px;padding:8px}.buyer-chat-compose{grid-gap:8px;display:grid;gap:8px;margin-top:10px}.seller-dashboard-layout{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr!important}.seller-dashboard-sidebar{position:static!important;top:auto!important}@media (min-width:600px){.header-inner{align-items:flex-start;flex-direction:row;gap:16px;justify-content:space-between}.top-nav-pill{font-size:.84rem;min-width:110px}.market-hero{align-items:stretch;grid-template-columns:1.25fr 1fr}.buyer-inbox-layout{grid-template-columns:260px 1fr}.buyer-chat-messages{max-height:320px}}@media (min-width:900px){.top-nav-actions{min-width:560px;width:auto}.top-nav-primary,.top-nav-secondary{flex-wrap:wrap;overflow:visible}.top-nav-actions .language-picker{width:220px}.top-nav-pill{min-width:0}.seller-dashboard-layout{grid-template-columns:220px 1fr!important}.seller-dashboard-sidebar{position:-webkit-sticky!important;position:sticky!important;top:16px!important}}ol,ul{margin:12px 0;padding-left:20px}li{color:#666;color:var(--text-secondary);margin:6px 0}code,pre{background:#f5f5f5;border-radius:6px;border-radius:var(--radius-sm);font-family:Monaco,Courier New,monospace;font-size:.9rem}code{color:#d32f2f;color:var(--error);padding:2px 6px}pre{overflow-x:auto;padding:12px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.spinner{animation:spin .8s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;margin-right:8px;vertical-align:middle;width:16px}button:disabled .spinner{border-top-color:#fffc}button.loading{opacity:.8;pointer-events:none}.error-message{color:#d32f2f;color:var(--error);display:block;font-size:.85rem;font-weight:500;margin-top:6px}input.error,select.error,textarea.error{background-color:#d32f2f05;border-color:#d32f2f;border-color:var(--error)}input.error:focus,select.error:focus,textarea.error:focus{box-shadow:0 0 0 3px #d32f2f14}.form-group.error label,.required-indicator{color:#d32f2f;color:var(--error)}.required-indicator{font-weight:700;margin-left:4px}.skeleton{animation:pulse 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#f5f7fa 50%,#f0f0f0 75%);background:linear-gradient(90deg,var(--border-light) 25%,var(--bg) 50%,var(--border-light) 75%);background-size:200% 100%}.skeleton-text{height:16px;margin-bottom:8px}.skeleton-input{border-radius:10px;border-radius:var(--radius-md);height:44px;margin-bottom:16px}.success-feedback{color:#10a760;color:var(--secondary);display:block;font-size:.85rem;font-weight:500;margin-top:6px}.form-group.success input,.form-group.success select,.form-group.success textarea{background-color:#10a76005;border-color:#10a760;border-color:var(--secondary)}.autocomplete-suggestions{background:#fff;background:var(--surface);border:1px solid #e0e0e0;border:1px solid var(--border);border-radius:0 0 10px 10px;border-radius:0 0 var(--radius-md) var(--radius-md);border-top:none;box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-md);left:0;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.autocomplete-suggestion{border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--border-light);cursor:pointer;font-size:.95rem;padding:10px 14px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.autocomplete-suggestion:hover{background:#f0f7ff;background:var(--primary-light);color:#1769aa;color:var(--primary);font-weight:500}.autocomplete-suggestion:last-child{border-bottom:none}.favorites-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.favorite-card{background:#fff9f9;border:2px solid #d32f2f33;border-radius:14px;border-radius:var(--radius-lg);padding:12px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.favorite-card:hover{border-color:#d32f2f;border-color:var(--error);box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-md);transform:translateY(-2px)}.favorite-heart{cursor:pointer;font-size:1.5rem;position:absolute;right:8px;top:8px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.favorite-heart:hover{transform:scale(1.2)}.favorite-image{border-radius:6px;margin-bottom:8px;max-height:120px;object-fit:cover;width:100%}.filter-counter{background:#f0f7ff;background:var(--primary-light);border-radius:10px;border-radius:var(--radius-md);color:#1769aa;color:var(--primary);display:inline-block;font-size:.85rem;font-weight:600;margin-top:8px;padding:6px 12px}.rating-average{background:linear-gradient(135deg,#f0f7ff,#1769aa0d);background:linear-gradient(135deg,var(--primary-light),#1769aa0d);border-radius:14px;border-radius:var(--radius-lg);margin-bottom:12px;padding:16px;text-align:center}.rating-average-value{color:#1769aa;color:var(--primary);font-size:2.5rem;font-weight:800;margin-bottom:4px}.rating-average-label{color:#666;color:var(--text-secondary);font-size:.85rem}.rating-distribution-item{align-items:center;border-radius:6px;border-radius:var(--radius-sm);display:flex;gap:8px;margin-bottom:8px;padding:8px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.rating-distribution-item:hover{background:#f5f7fa;background:var(--bg)}.rating-bar{background:#f0f0f0;background:var(--border-light);border-radius:4px;flex:1 1;height:20px;overflow:hidden}.rating-bar-fill{background:linear-gradient(90deg,#1769aa,#0f3e56);background:linear-gradient(90deg,var(--primary),var(--primary-dark));height:100%;transition:width .3s cubic-bezier(.4,0,.2,1)}.rating-bar-label{color:#1a1a1a;color:var(--text-primary);font-size:.85rem;font-weight:500;min-width:60px}.rating-bar-percent{color:#666;color:var(--text-secondary);font-size:.8rem;min-width:50px;text-align:right}.review-card{background:#fff;background:var(--surface);border:1px solid #f0f0f0;border-left:4px solid #1769aa;border:1px solid var(--border-light);border-left:4px solid var(--primary);border-radius:10px;border-radius:var(--radius-md);margin-bottom:10px;padding:12px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.review-card:hover{border-left-color:#10a760;border-left-color:var(--secondary);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm)}.review-header{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:8px}.review-author{color:#1a1a1a;color:var(--text-primary);font-weight:600}.review-rating{color:#1769aa;color:var(--primary);font-size:.9rem;font-weight:700}.review-body{color:#666;color:var(--text-secondary);font-size:.88rem;line-height:1.5;margin-bottom:6px}.review-date{color:#999;font-size:.75rem}.rating-filter{background:#f0f7ff;background:var(--primary-light);border-radius:10px;border-radius:var(--radius-md);margin-bottom:12px;padding:12px}.admin-stat-card{border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);padding:16px;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.admin-stat-card:hover{box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-md);transform:translateY(-2px)}.admin-stat-value{font-size:2rem;font-weight:800;line-height:1;margin-bottom:8px}.admin-stat-label{color:#666;color:var(--text-secondary);font-size:.85rem;font-weight:500}.admin-nav-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.admin-nav-tabs button{border:none;border-radius:10px;border-radius:var(--radius-md);cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 12px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.admin-nav-tabs button.active{background:#1769aa;background:var(--primary);color:#fff}.admin-nav-tabs button:not(.active){background:#f0f0f0;background:var(--border-light);color:#1a1a1a;color:var(--text-primary)}.admin-nav-tabs button:hover{box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.admin-list{border:1px solid #f0f0f0;border:1px solid var(--border-light);border-radius:10px;border-radius:var(--radius-md);margin-bottom:12px;max-height:400px;overflow-y:auto}.admin-list-item{border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--border-light);cursor:pointer;padding:12px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.admin-list-item:hover{background:#f0f7ff;background:var(--primary-light)}.admin-list-item-title{color:#1a1a1a;color:var(--text-primary);font-weight:600;margin-bottom:4px}.admin-list-item-detail{color:#666;color:var(--text-secondary);font-size:.85rem}.admin-status-badge{border-radius:4px;display:inline-block;font-size:.8rem;font-weight:600;padding:4px 8px}.admin-status-completed{background:#c8e6c9;color:#2e7d32}.admin-status-pending{background:#ffccbc;color:#d84315}.admin-status-failed{background:#ffcdd2;color:#c62828}.admin-detail-box{background:#f5f7fa;background:var(--bg);border-left:4px solid #1769aa;border-left:4px solid var(--primary);border-radius:10px;border-radius:var(--radius-md);padding:12px}.admin-detail-row{display:flex;font-size:.85rem;justify-content:space-between;margin-bottom:6px}.admin-detail-row strong{color:#1a1a1a;color:var(--text-primary);min-width:100px}.admin-detail-row span{color:#666;color:var(--text-secondary);text-align:right}
/*# sourceMappingURL=main.1ad71d3a.css.map*/