.search-bar{position:relative;width:100%;max-width:560px}.search-bar-input{width:100%;padding:var(--space-3) var(--space-4) var(--space-3) var(--space-10);background:var(--color-bg-secondary);border:1.5px solid transparent;border-radius:var(--radius-full);font-size:var(--font-size-base);color:var(--color-text-primary);transition:all var(--transition-fast)}.search-bar-input:hover{background:var(--color-bg-tertiary)}.search-bar-input:focus{background:var(--color-surface);border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.search-bar-input::placeholder{color:var(--color-text-tertiary)}.search-bar-icon{position:absolute;left:var(--space-4);top:50%;transform:translateY(-50%);color:var(--color-text-tertiary);pointer-events:none}.search-bar-clear{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:var(--radius-full);background:var(--color-bg-tertiary);display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;color:var(--color-text-secondary);transition:all var(--transition-fast)}.search-bar-clear:hover{background:var(--color-text-tertiary);color:var(--color-text-inverse)}.header{position:sticky;top:0;z-index:var(--z-sticky);background:var(--color-backdrop);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--color-border-light);height:var(--header-height)}.header-inner{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6);height:100%;display:flex;align-items:center;gap:var(--space-5)}.header-logo{display:flex;align-items:center;gap:var(--space-2);text-decoration:none;flex-shrink:0}.header-logo-img{height:54px;width:auto;object-fit:contain}.header-search{flex:1;display:flex;justify-content:center}.header-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.header-action-btn{position:relative;width:40px;height:40px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:all var(--transition-fast);border:none;background:none;cursor:pointer}.header-action-btn:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}#header-add-btn{background:var(--color-accent);color:#fff}#header-add-btn:hover{background:var(--color-accent-hover);color:#fff}.header-action-badge{position:absolute;top:4px;right:4px;width:16px;height:16px;border-radius:var(--radius-full);background:var(--color-accent);color:#fff;font-size:10px;font-weight:var(--font-weight-bold);display:flex;align-items:center;justify-content:center}.header-user-menu{position:relative}.header-user-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-1) var(--space-1);border-radius:var(--radius-full);border:1.5px solid var(--color-border);background:var(--color-surface);cursor:pointer;transition:all var(--transition-fast)}.header-user-btn:hover{border-color:var(--color-text-tertiary)}.header-user-avatar{width:32px;height:32px;border-radius:var(--radius-full);background:var(--color-accent-light);color:var(--color-accent);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.header-user-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-dropdown{position:absolute;top:calc(100% + var(--space-2));right:0;min-width:180px;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--color-border-light);padding:var(--space-2);animation:scaleIn var(--transition-fast) ease-out;z-index:var(--z-dropdown)}.header-dropdown-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);width:100%;text-align:left;border:none;background:none;text-decoration:none}.header-dropdown-item:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.header-dropdown-divider{height:1px;background:var(--color-border-light);margin:var(--space-2) 0}.header-dropdown-item.danger{color:var(--color-error)}@media(max-width:767px){.header-inner{padding:0 var(--space-4);gap:var(--space-3);justify-content:space-between}.header-search,.header-user-name{display:none}.header-user-btn{padding:0;width:36px;height:36px;justify-content:center;border:none}}.footer{background:var(--color-bg-secondary);color:var(--color-text-primary);padding:var(--space-12) 0 var(--space-6);margin-top:auto;border-top:1px solid var(--color-border)}.footer-inner{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-10);margin-bottom:var(--space-10)}.footer-brand{display:flex;flex-direction:column;gap:var(--space-3)}.footer-brand-logo{display:flex;align-items:center;gap:var(--space-2)}.footer-brand-logo-img{height:48px;width:auto;object-fit:contain}.footer-brand-desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);max-width:280px;line-height:var(--line-height-relaxed)}.footer-section-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--color-text-primary);margin-bottom:var(--space-4)}.footer-links{display:flex;flex-direction:column;gap:var(--space-3)}.footer-link{font-size:var(--font-size-sm);color:var(--color-text-secondary);transition:color var(--transition-fast);text-decoration:none}.footer-link:hover{color:var(--color-accent)}.footer-bottom{padding-top:var(--space-6);border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between}.footer-copyright{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}@media(max-width:767px){.footer{padding:var(--space-8) 0 calc(var(--space-6) + var(--mobile-nav-height))}.footer-inner{padding:0 var(--space-4)}.footer-grid{grid-template-columns:1fr 1fr;gap:var(--space-6)}.footer-brand{grid-column:1 / -1}}.mobile-nav{display:none}@media(max-width:767px){.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:var(--mobile-nav-height);background:var(--color-backdrop);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-top:1px solid var(--color-border-light);z-index:var(--z-mobile-nav);padding-bottom:env(safe-area-inset-bottom,0)}.mobile-nav-inner{display:flex;align-items:center;justify-content:space-around;width:100%;height:100%;max-width:500px;margin:0 auto}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-1) var(--space-2);color:var(--color-text-tertiary);text-decoration:none;font-size:10px;font-weight:var(--font-weight-medium);transition:color var(--transition-fast);border:none;background:none;cursor:pointer;position:relative}.mobile-nav-item:hover,.mobile-nav-item.active{color:var(--color-accent)}.mobile-nav-item-add{width:44px;height:44px;border-radius:var(--radius-full);background:var(--color-accent);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);transition:all var(--transition-fast);border:none;cursor:pointer;flex-direction:row;gap:0;padding:0;font-size:0}.mobile-nav-item-add:hover{background:var(--color-accent-hover);transform:scale(1.05)}.mobile-nav-badge{position:absolute;top:-2px;right:2px;width:14px;height:14px;border-radius:var(--radius-full);background:var(--color-accent);color:#fff;font-size:8px;font-weight:var(--font-weight-bold);display:flex;align-items:center;justify-content:center}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition-fast) ease-out;padding:var(--space-4)}.modal-content{background:var(--color-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);width:100%;max-width:480px;max-height:90vh;overflow-y:auto;animation:scaleIn var(--transition-normal) ease-out;position:relative;z-index:var(--z-modal)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border-light)}.modal-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight)}.modal-close{width:32px;height:32px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary);transition:all var(--transition-fast);cursor:pointer;border:none;background:none}.modal-close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.modal-body{padding:var(--space-6)}@media(max-width:767px){.modal-overlay{align-items:flex-end;padding:0}.modal-content{max-width:100%;border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;max-height:92vh;animation:slideInUp var(--transition-normal) ease-out}}.input-group{display:flex;flex-direction:column;gap:var(--space-2)}.input-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.input-field{width:100%;padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);transition:all var(--transition-fast)}.input-field:hover{border-color:var(--color-text-tertiary)}.input-field:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.input-field::placeholder{color:var(--color-text-tertiary)}.input-field.input-error{border-color:var(--color-error)}.input-field.input-error:focus{box-shadow:0 0 0 3px #ff3b301f}.input-error-text{font-size:var(--font-size-xs);color:var(--color-error)}.input-textarea{min-height:100px;resize:vertical;line-height:var(--line-height-normal)}.input-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236E6E73' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:var(--space-10);cursor:pointer}.input-file-zone{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-8) var(--space-6);display:flex;flex-direction:column;align-items:center;gap:var(--space-3);cursor:pointer;transition:all var(--transition-fast);background:var(--color-bg-secondary)}.input-file-zone:hover{border-color:var(--color-accent);background:var(--color-accent-light)}.input-file-zone-icon{color:var(--color-text-tertiary)}.input-file-zone-text{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:center}.input-file-zone-text span{color:var(--color-accent);font-weight:var(--font-weight-medium)}.input-file-previews{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-3)}.input-file-preview{position:relative;width:80px;height:80px;border-radius:var(--radius-md);overflow:hidden}.input-file-preview img{width:100%;height:100%;object-fit:cover}.input-file-preview-remove{position:absolute;top:2px;right:2px;width:20px;height:20px;border-radius:var(--radius-full);background:#0009;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;cursor:pointer;border:none}.phone-input-group{display:flex;flex-direction:column;gap:var(--space-2)}.phone-input-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.phone-input-container{display:flex;align-items:center;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:0 var(--space-4);transition:all var(--transition-fast);height:48px}.phone-input-container:hover{border-color:var(--color-text-tertiary)}.phone-input-container:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-light)}.phone-input-prefix{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);padding-right:var(--space-2);-webkit-user-select:none;user-select:none;border-right:1.5px solid var(--color-border);margin-right:var(--space-3);height:20px;display:flex;align-items:center}.phone-input-field{flex:1;border:none;background:transparent;font-size:var(--font-size-base);color:var(--color-text-primary);padding:0;width:100%;font-family:var(--font-family);letter-spacing:.05em}.phone-input-field::placeholder{color:var(--color-text-tertiary);letter-spacing:normal}.phone-input-container.phone-input-error{border-color:var(--color-error)}.phone-input-container.phone-input-error:focus-within{box-shadow:0 0 0 4px #ff3b301a}.phone-input-error-text{font-size:var(--font-size-xs);color:var(--color-error);margin-top:var(--space-1)}.phone-input-field:focus{outline:none}.otp-group{display:flex;flex-direction:column;gap:var(--space-3);align-items:center}.otp-container{display:flex;gap:var(--space-3);justify-content:center;width:100%}.otp-field{width:48px;height:56px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);text-align:center;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);transition:all var(--transition-fast);outline:none}.otp-field:hover{border-color:var(--color-text-tertiary)}.otp-field:focus{border-color:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-light);transform:translateY(-2px)}.otp-field.otp-error{border-color:var(--color-error)}.otp-field.otp-error:focus{box-shadow:0 0 0 4px #ff3b301a}.otp-error-text{font-size:var(--font-size-xs);color:var(--color-error);margin-top:var(--space-1)}@media(max-width:480px){.otp-container{gap:var(--space-2)}.otp-field{width:40px;height:48px;font-size:var(--font-size-lg)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-lg);font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);line-height:1;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--color-accent);color:var(--color-text-inverse)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-tertiary)}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-outline{background:transparent;color:var(--color-accent);border:1.5px solid var(--color-accent)}.btn-outline:hover:not(:disabled){background:var(--color-accent-light)}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);border-radius:var(--radius-md)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-md);border-radius:var(--radius-xl)}.btn-icon{padding:var(--space-2);border-radius:var(--radius-full);width:40px;height:40px}.btn-icon.btn-sm{width:32px;height:32px}.btn-icon.btn-lg{width:48px;height:48px}.btn-full{width:100%}.auth-instruction{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5;margin-bottom:var(--space-4);text-align:center}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-form-footer{margin-top:var(--space-2);display:flex;flex-direction:column;gap:var(--space-3)}.auth-error{padding:var(--space-3) var(--space-4);background:#ff3b3014;color:var(--color-error);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:center;margin-bottom:var(--space-4)}.auth-back-btn{background:none;border:none;color:var(--color-text-tertiary);font-size:var(--font-size-sm);text-align:center;cursor:pointer;padding:var(--space-2);transition:color var(--transition-fast)}.auth-back-btn:hover{color:var(--color-text-secondary);text-decoration:underline}.layout{min-height:100vh;display:flex;flex-direction:column}.layout-main{flex:1;padding-top:var(--space-6);padding-bottom:var(--space-12)}@media(max-width:767px){.layout-main{padding-top:var(--space-4);padding-bottom:calc(var(--space-8) + var(--mobile-nav-height))}}.category-icon{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-2);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;color:inherit;min-width:80px}.category-icon:hover{background:var(--color-surface);box-shadow:var(--shadow-md);transform:translateY(-2px)}.category-icon-circle{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--color-bg-secondary);display:flex;align-items:center;justify-content:center;font-size:24px;transition:all var(--transition-normal)}.category-icon:hover .category-icon-circle{background:var(--color-accent-light);transform:scale(1.05)}.category-icon-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:center;color:var(--color-text-primary);line-height:var(--line-height-tight)}.category-icon-count{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:-4px}@media(max-width:767px){.category-icon{min-width:80px;padding:var(--space-3)}.category-icon-circle{width:44px;height:44px;font-size:20px}.category-icon-name{font-size:var(--font-size-xs)}}.product-card{background:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-normal);cursor:pointer;text-decoration:none;color:inherit;display:flex;flex-direction:column;box-shadow:var(--shadow-xs)}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.product-card-image{position:relative;width:100%;padding-top:100%;overflow:hidden;background:var(--color-bg-secondary)}.product-card-image img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.product-card:hover .product-card-image img{transform:scale(1.05)}.product-card-favorite{position:absolute;top:var(--space-3);right:var(--space-3);width:36px;height:36px;border-radius:var(--radius-full);background:#ffffffd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;transition:all var(--transition-fast);z-index:2;color:var(--color-text-tertiary)}.product-card-favorite:hover{background:#fff;transform:scale(1.1)}.product-card-favorite.is-favorite{color:var(--color-accent)}.product-card-featured{position:absolute;top:var(--space-3);left:var(--space-3);padding:var(--space-1) var(--space-2);background:var(--color-accent);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-sm);z-index:2}.product-card-hidden-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;gap:var(--space-2);z-index:3;font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.product-card-info{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1);flex:1}.product-card-price{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}.product-card-title{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-normal);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-card-meta{display:flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:auto;padding-top:var(--space-2)}.product-card-meta-dot{width:2px;height:2px;border-radius:var(--radius-full);background:var(--color-text-tertiary)}@media(max-width:767px){.product-card-info{padding:var(--space-3)}.product-card-price{font-size:var(--font-size-md)}.product-card-title{font-size:var(--font-size-xs)}}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5)}.product-grid-empty{grid-column:1 / -1;text-align:center;padding:var(--space-16) var(--space-6);color:var(--color-text-tertiary)}.product-grid-empty-icon{font-size:48px;margin-bottom:var(--space-4);opacity:.5}.product-grid-empty-text{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.product-grid-empty-sub{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.product-grid-loading{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5)}.product-grid-skeleton{border-radius:var(--radius-lg);overflow:hidden}.product-grid-skeleton-image{width:100%;padding-top:100%}.product-grid-skeleton-info{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.product-grid-skeleton-price{height:20px;width:40%}.product-grid-skeleton-title{height:14px;width:80%}.product-grid-skeleton-meta{height:12px;width:50%;margin-top:var(--space-2)}@media(max-width:1199px){.product-grid,.product-grid-loading{grid-template-columns:repeat(3,1fr)}}@media(max-width:767px){.product-grid,.product-grid-loading{grid-template-columns:repeat(2,1fr);gap:var(--space-3)}}.home-hero-wrapper{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--color-bg-secondary) 0%,var(--color-bg) 100%);border-radius:0 0 var(--radius-2xl) var(--radius-2xl);margin-bottom:var(--space-4);margin-top:calc(-1 * var(--space-6))}.hero-leaf{position:absolute;pointer-events:none;z-index:0}.hero-leaf-top-left{top:-10px;left:-20px;width:180px;height:auto;animation:leafSwayLeft 6s ease-in-out infinite}.hero-leaf-top-right{top:-10px;right:-20px;width:160px;height:auto;animation:leafSwayRight 7s ease-in-out infinite}.hero-leaf-bottom-left{bottom:20px;left:-10px;width:140px;height:auto;animation:leafSwayLeft 8s ease-in-out infinite}.hero-leaf-bottom-right{bottom:20px;right:-10px;width:140px;height:auto;animation:leafSwayRight 7.5s ease-in-out infinite}@keyframes leafSwayLeft{0%,to{transform:rotate(0) translateY(0)}50%{transform:rotate(2deg) translateY(-5px)}}@keyframes leafSwayRight{0%,to{transform:rotate(0) translateY(0)}50%{transform:rotate(-2deg) translateY(-4px)}}.home-hero{text-align:center;padding:var(--space-6) var(--space-6) var(--space-4);max-width:680px;margin:0 auto;position:relative;z-index:1}.home-hero-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);background:var(--color-accent-light);color:var(--color-accent-dark);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-5);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.home-hero h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight);line-height:var(--line-height-tight);margin-bottom:var(--space-4);color:var(--color-text-primary)}.home-hero h1 span{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home-hero p{font-size:var(--font-size-md);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);max-width:480px;margin:0 auto var(--space-4)}.home-hero-search{max-width:480px;margin:0 auto}.home-section{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6);margin-bottom:var(--space-12)}.home-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.home-section-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight)}.home-section-link{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}.home-section-link:hover{color:var(--color-accent-hover)}.home-categories{display:flex;gap:var(--space-2);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-2);scrollbar-width:none}.home-categories::-webkit-scrollbar{display:none}.home-categories>*{scroll-snap-align:start;flex:1 0 0%;min-width:100px}.home-featured-scroll{display:flex;gap:var(--space-5);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-4);scrollbar-width:none}.home-featured-scroll::-webkit-scrollbar{display:none}.home-featured-scroll>*{scroll-snap-align:start;min-width:260px;max-width:280px;flex-shrink:0}.home-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);max-width:600px;margin:0 auto var(--space-12);text-align:center}.home-stat-number{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-accent);line-height:1;margin-bottom:var(--space-1)}.home-stat-label{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}@media(max-width:767px){.home-hero-wrapper{margin-top:calc(-1 * var(--space-4))}.hero-leaf{display:none}.home-hero{padding:var(--space-4) var(--space-4) var(--space-2)}.home-hero-badge{margin-bottom:var(--space-3)}.home-hero h1{font-size:var(--font-size-xl);margin-bottom:var(--space-2)}.home-hero p{font-size:var(--font-size-sm);margin-bottom:var(--space-2);line-height:1.4}.home-section{padding:0 var(--space-4);margin-bottom:var(--space-5)}.home-stats{gap:var(--space-3)}.home-stat-number{font-size:var(--font-size-xl)}.home-featured-scroll>*{min-width:220px;max-width:240px}}.filter-sidebar{width:var(--sidebar-width);flex-shrink:0}.filter-sidebar-section{margin-bottom:var(--space-6)}.filter-sidebar-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.filter-sidebar-price{display:flex;gap:var(--space-2);align-items:center}.filter-sidebar-price input{flex:1;padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);background:var(--color-surface);width:100%}.filter-sidebar-price input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-light)}.filter-sidebar-price-sep{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.filter-sidebar select{width:100%;padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);background:var(--color-surface);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236E6E73' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-2) center;cursor:pointer}.filter-sidebar select:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-light)}.filter-sidebar-actions{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.filter-sheet-trigger{display:none}@media(max-width:767px){.filter-sidebar{display:none}.filter-sidebar.filter-sidebar-mobile-open{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:var(--color-surface);width:100%;padding:var(--space-6) var(--space-4);overflow-y:auto;animation:slideInUp var(--transition-normal) ease-out}.filter-sheet-trigger{display:flex}.filter-mobile-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-light)}.filter-mobile-header h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}}@media(min-width:768px){.filter-mobile-header{display:none}}.category-page{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.category-page-header{margin-bottom:var(--space-6)}.category-page-breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin-bottom:var(--space-3)}.category-page-breadcrumb a{color:var(--color-accent);text-decoration:none}.category-page-breadcrumb a:hover{text-decoration:underline}.category-page-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight);display:flex;align-items:center;gap:var(--space-3)}.category-page-title-count{font-size:var(--font-size-base);font-weight:var(--font-weight-regular);color:var(--color-text-tertiary)}.category-page-subs{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-6)}.category-page-sub{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background:var(--color-bg-secondary);color:var(--color-text-secondary);cursor:pointer;border:none;transition:all var(--transition-fast)}.category-page-sub:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.category-page-sub.active{background:var(--color-accent);color:#fff}.category-page-body{display:flex;gap:var(--space-8)}.category-page-content{flex:1;min-width:0}.category-page-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.category-page-result-count{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.category-page-filter-btn{display:none}.category-all-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-8)}.category-all-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-xl);text-decoration:none;color:inherit;transition:all var(--transition-normal);box-shadow:var(--shadow-xs)}.category-all-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.category-all-card-emoji{font-size:32px}.category-all-card-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:center}.category-all-card-count{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}@media(max-width:767px){.category-page{padding:0 var(--space-4)}.category-page-title{font-size:var(--font-size-xl)}.category-page-subs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:var(--space-2)}.category-page-subs::-webkit-scrollbar{display:none}.category-page-sub{white-space:nowrap;flex-shrink:0}.category-page-filter-btn{display:flex}.category-all-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.category-all-card{padding:var(--space-3)}.category-all-card-emoji{font-size:24px}}.product-detail{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.product-detail-breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin-bottom:var(--space-6)}.product-detail-breadcrumb a{color:var(--color-accent);text-decoration:none}.product-detail-main{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-10);margin-bottom:var(--space-12)}.product-detail-gallery{display:flex;flex-direction:column;gap:var(--space-3)}.product-detail-image-main{width:100%;aspect-ratio:1;border-radius:var(--radius-xl);overflow:hidden;background:var(--color-bg-secondary)}.product-detail-image-main img{width:100%;height:100%;object-fit:cover}.product-detail-thumbnails{display:flex;gap:var(--space-2)}.product-detail-thumb{width:64px;height:64px;border-radius:var(--radius-md);overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color var(--transition-fast)}.product-detail-thumb.active{border-color:var(--color-accent)}.product-detail-thumb img{width:100%;height:100%;object-fit:cover}.product-detail-info{display:flex;flex-direction:column;gap:var(--space-5)}.product-detail-price{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}.product-detail-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:var(--line-height-normal)}.product-detail-meta{display:flex;align-items:center;gap:var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.product-detail-meta-item{display:flex;align-items:center;gap:var(--space-1)}.product-detail-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.product-owner-actions{display:flex;gap:var(--space-2);width:100%}.product-detail-desc{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);padding-top:var(--space-4);border-top:1px solid var(--color-border-light)}.product-detail-desc h3{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-3)}.product-detail-seller{padding:var(--space-5);background:var(--color-bg-secondary);border-radius:var(--radius-xl);display:flex;flex-direction:column;gap:var(--space-4)}.product-detail-seller-header{display:flex;align-items:center;gap:var(--space-3)}.product-detail-seller-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-accent-light);color:var(--color-accent);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold);font-size:var(--font-size-md);flex-shrink:0}.product-detail-seller-name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-base)}.product-detail-seller-since{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.product-detail-phone-btn{width:100%}.product-detail-similar{margin-top:var(--space-8)}.product-detail-similar h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-6)}.product-detail-loading{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-10)}.product-detail-loading-image{aspect-ratio:1;border-radius:var(--radius-xl)}.product-detail-loading-info{display:flex;flex-direction:column;gap:var(--space-4)}.product-detail-loading-price{height:40px;width:50%}.product-detail-loading-title{height:24px;width:80%}.product-detail-loading-desc{height:100px;width:100%}@media(max-width:767px){.product-detail{padding:0 var(--space-4)}.product-detail-main{grid-template-columns:1fr;gap:var(--space-6)}.product-detail-price{font-size:var(--font-size-2xl)}.product-detail-loading{grid-template-columns:1fr}}.new-product{max-width:640px;margin:0 auto;padding:0 var(--space-6)}.new-product-header{text-align:center;margin-bottom:var(--space-8)}.new-product-header h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight);margin-bottom:var(--space-2)}.new-product-header p{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.back-button{transition:all var(--transition-fast)}.back-button:hover{color:var(--color-accent)!important;transform:translate(-4px)}.new-product-steps{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin-bottom:var(--space-8)}.new-product-step{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.new-product-step.active{color:var(--color-accent)}.new-product-step.completed{color:var(--color-success)}.new-product-step-num{width:28px;height:28px;border-radius:var(--radius-full);border:2px solid currentColor;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs)}.new-product-step.active .new-product-step-num{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.new-product-step.completed .new-product-step-num{background:var(--color-success);color:#fff;border-color:var(--color-success)}.new-product-step-line{width:40px;height:2px;background:var(--color-border);border-radius:var(--radius-full)}.new-product-step-line.active{background:var(--color-accent)}.new-product-categories{display:flex;flex-direction:column;gap:var(--space-2)}.new-product-category-search{margin-bottom:var(--space-4)}.new-product-category-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface);border:1.5px solid var(--color-border-light);cursor:pointer;transition:all var(--transition-fast)}.new-product-category-item:hover,.new-product-category-item.selected{border-color:var(--color-accent);background:var(--color-accent-light)}.new-product-category-emoji{font-size:28px}.new-product-category-info{flex:1}.new-product-category-name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-base)}.new-product-category-desc{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.new-product-form{display:flex;flex-direction:column;gap:var(--space-5)}.new-product-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.new-product-form-actions{display:flex;gap:var(--space-3);margin-top:var(--space-4)}.new-product-success{text-align:center;padding:var(--space-12) var(--space-6)}.new-product-success-icon{font-size:64px;margin-bottom:var(--space-4)}.new-product-success h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}.new-product-success p{color:var(--color-text-tertiary);margin-bottom:var(--space-6)}@media(max-width:767px){.new-product{padding:0 var(--space-4)}.new-product-form-row{grid-template-columns:1fr}.new-product-step span:not(.new-product-step-num){display:none}}.profile-page{max-width:900px;margin:0 auto;padding:0 var(--space-6)}.profile-card{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-8);background:var(--color-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);margin-bottom:var(--space-8)}.profile-avatar{width:80px;height:80px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-accent),var(--color-accent-dark));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold);font-size:var(--font-size-2xl);flex-shrink:0}.profile-info{flex:1}.profile-name{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-1)}.profile-bio{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-3)}.profile-meta{display:flex;gap:var(--space-4);font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.profile-meta-item{display:flex;align-items:center;gap:var(--space-1)}.profile-tabs{display:flex;border-bottom:1px solid var(--color-border-light);margin-bottom:var(--space-6)}.profile-tab{padding:var(--space-3) var(--space-5);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-tertiary);border:none;background:none;border-bottom:2px solid transparent;cursor:pointer;transition:all var(--transition-fast)}.profile-tab:hover{color:var(--color-text-secondary)}.profile-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.profile-settings{max-width:480px;display:flex;flex-direction:column;gap:var(--space-4)}.profile-settings-actions{margin-top:var(--space-2)}@media(max-width:767px){.profile-page{padding:0 var(--space-4)}.profile-card{flex-direction:column;text-align:center;padding:var(--space-6)}.profile-meta{justify-content:center;flex-wrap:wrap}}.profile-settings-bio-group{position:relative}.profile-settings-char-count{position:absolute;top:0;right:0;font-size:var(--font-size-xs);color:var(--color-text-tertiary);pointer-events:none}.favorites-page{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.favorites-header{margin-bottom:var(--space-6)}.favorites-header h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight)}.favorites-header-count{font-size:var(--font-size-base);font-weight:var(--font-weight-regular);color:var(--color-text-tertiary);margin-left:var(--space-2)}.favorites-empty{text-align:center;padding:var(--space-16) var(--space-6)}.favorites-empty-icon{font-size:64px;margin-bottom:var(--space-4);opacity:.5}.favorites-empty h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2);color:var(--color-text-secondary)}.favorites-empty p{color:var(--color-text-tertiary);margin-bottom:var(--space-6)}@media(max-width:767px){.favorites-page{padding:0 var(--space-4)}.favorites-header h1{font-size:var(--font-size-xl)}}.info-page{max-width:var(--max-width);margin:0 auto;padding:var(--space-12) var(--space-6);min-height:80vh}.info-header{text-align:center;margin-bottom:var(--space-12);max-width:700px;margin-left:auto;margin-right:auto}.info-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-3);letter-spacing:var(--letter-spacing-tight)}.info-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary)}.info-section{display:flex;flex-direction:column;gap:var(--space-8)}.info-card{background:var(--color-bg-secondary);padding:var(--space-8);border-radius:var(--radius-2xl);border:1px solid var(--color-border)}.info-card h2,.info-card h3{color:var(--color-text-primary);margin-bottom:var(--space-4);font-weight:var(--font-weight-semibold)}.info-card h2{font-size:var(--font-size-2xl)}.info-card p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);font-size:var(--font-size-base)}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.info-card.highlight{background:var(--color-accent-light);border-color:var(--color-accent)}.info-card.highlight h2{color:var(--color-accent-dark)}.info-card.highlight p{color:var(--color-accent-dark);opacity:.8}@media(max-width:767px){.info-page{padding:var(--space-8) var(--space-4)}.info-title{font-size:var(--font-size-2xl)}.info-grid{grid-template-columns:1fr}}.info-content-layout{display:grid;grid-template-columns:240px 1fr;gap:var(--space-12)}.info-sidebar{position:sticky;top:var(--space-24);height:fit-content}.info-nav{display:flex;flex-direction:column;gap:var(--space-2)}.info-nav-link{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);color:var(--color-text-secondary);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-fast)}.info-nav-link:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.info-nav-link.active{background:var(--color-accent-light);color:var(--color-accent)}.info-main-content{display:flex;flex-direction:column;gap:var(--space-12)}.info-content-section h2{font-size:var(--font-size-2xl);color:var(--color-text-primary);margin-bottom:var(--space-4)}.info-content-section p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}.info-content-section ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.info-content-section li{color:var(--color-text-secondary);position:relative;padding-left:var(--space-6)}.info-content-section li:before{content:"•";color:var(--color-accent);position:absolute;left:0;font-weight:700}@media(max-width:991px){.info-content-layout{grid-template-columns:1fr}.info-sidebar{display:none}}.support-search-section{max-width:600px;margin:0 auto var(--space-12)}.support-search-bar{display:flex;align-items:center;gap:var(--space-3);background:var(--color-bg-secondary);padding:var(--space-4) var(--space-6);border-radius:var(--radius-full);border:1px solid var(--color-border);transition:all var(--transition-fast)}.support-search-bar:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-light)}.support-search-bar input{border:none;background:transparent;flex:1;font-size:var(--font-size-base);color:var(--color-text-primary);outline:none}.section-label{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-6);text-align:center}.faq-list{max-width:800px;margin:0 auto var(--space-12);display:flex;flex-direction:column;gap:var(--space-3)}.faq-item{background:var(--color-bg-secondary);border-radius:var(--radius-xl);border:1px solid var(--color-border);overflow:hidden;cursor:pointer;transition:all var(--transition-fast)}.faq-item:hover{border-color:var(--color-accent-light)}.faq-item.open{border-color:var(--color-accent)}.faq-question{padding:var(--space-5) var(--space-6);display:flex;align-items:center;justify-content:space-between;font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.faq-icon{transition:transform var(--transition-fast);color:var(--color-text-tertiary)}.faq-item.open .faq-icon{transform:rotate(180deg);color:var(--color-accent)}.faq-answer{padding:0 var(--space-6) var(--space-6);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.support-contact-card{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-dark));padding:var(--space-10);border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:space-between;color:#fff;max-width:800px;margin:0 auto}.contact-card-content h3{font-size:var(--font-size-2xl);margin-bottom:var(--space-2)}.contact-card-content p{opacity:.9}.contact-btn{background:#fff;color:var(--color-accent);border:none;padding:var(--space-3) var(--space-8);border-radius:var(--radius-full);font-weight:var(--font-weight-semibold);cursor:pointer;transition:transform var(--transition-fast)}.contact-btn:hover{transform:scale(1.05)}@media(max-width:767px){.support-contact-card{flex-direction:column;text-align:center;gap:var(--space-6)}}.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:var(--space-12);align-items:start}.contact-info{display:flex;flex-direction:column;gap:var(--space-6)}.contact-method-card{display:flex;gap:var(--space-5);background:var(--color-bg-secondary);padding:var(--space-6);border-radius:var(--radius-2xl);border:1px solid var(--color-border)}.method-icon{width:48px;height:48px;background:var(--color-accent-light);color:var(--color-accent);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;flex-shrink:0}.method-details h3{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-1);color:var(--color-text-primary)}.method-details p{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.contact-form-container{background:var(--color-bg-secondary);padding:var(--space-10);border-radius:var(--radius-3xl);border:1px solid var(--color-border)}.contact-form{display:flex;flex-direction:column;gap:var(--space-6)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.form-group input,.form-group textarea{padding:var(--space-4) var(--space-5);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:var(--font-size-base);transition:all var(--transition-fast)}.form-group input:focus,.form-group textarea:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 4px var(--color-accent-light)}.submit-btn{background:var(--color-accent);color:#fff;border:none;padding:var(--space-4);border-radius:var(--radius-lg);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-fast);margin-top:var(--space-2)}.submit-btn:hover{background:var(--color-accent-dark)}@media(max-width:991px){.contact-grid{grid-template-columns:1fr}}@media(max-width:767px){.form-row{grid-template-columns:1fr}.contact-form-container{padding:var(--space-6)}}.search-page{min-height:calc(100vh - var(--header-height) - var(--mobile-nav-height));padding-bottom:var(--space-16)}.search-hero{background:linear-gradient(180deg,var(--color-bg-secondary) 0%,var(--color-bg) 100%);border-radius:0 0 var(--radius-2xl) var(--radius-2xl);padding:var(--space-10) var(--space-6) var(--space-8);margin-top:calc(-1 * var(--space-6));margin-bottom:var(--space-6);animation:fadeIn .4s ease-out}.search-hero-inner{max-width:640px;margin:0 auto}.search-hero-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight);color:var(--color-text-primary);margin-bottom:var(--space-5);text-align:center}.search-input-wrapper{position:relative;width:100%;animation:fadeInUp .4s ease-out .1s both}.search-input-icon{position:absolute;left:var(--space-5);top:50%;transform:translateY(-50%);color:var(--color-text-tertiary);pointer-events:none;transition:color var(--transition-fast)}.search-input-wrapper:focus-within .search-input-icon{color:var(--color-accent)}.search-input{width:100%;padding:var(--space-4) var(--space-12) var(--space-4) var(--space-12);background:var(--color-surface);border:1.5px solid var(--color-border-light);border-radius:var(--radius-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-regular);color:var(--color-text-primary);transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}.search-input:hover{border-color:var(--color-border);box-shadow:var(--shadow-md)}.search-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-light),var(--shadow-md)}.search-input::placeholder{color:var(--color-text-tertiary);font-weight:var(--font-weight-regular)}.search-input-clear{position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:var(--radius-full);background:var(--color-bg-tertiary);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:all var(--transition-fast);opacity:0;pointer-events:none}.search-input-clear.visible{opacity:1;pointer-events:auto}.search-input-clear:hover{background:var(--color-text-tertiary);color:var(--color-text-inverse)}.search-tags{margin-top:var(--space-5);animation:fadeInUp .4s ease-out .2s both}.search-tags-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin-bottom:var(--space-3)}.search-tags-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.search-tag{padding:var(--space-2) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.search-tag:hover{background:var(--color-accent-light);border-color:var(--color-accent);color:var(--color-accent-dark);transform:translateY(-1px)}.search-tag:active{transform:translateY(0) scale(.97)}.search-content{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.search-section{margin-bottom:var(--space-10)}.search-section:last-child{margin-bottom:0}.search-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.search-section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight);color:var(--color-text-primary)}.search-section-link{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-accent);transition:color var(--transition-fast)}.search-section-link:hover{color:var(--color-accent-hover)}.search-categories{display:flex;gap:var(--space-2);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-2);scrollbar-width:none}.search-categories::-webkit-scrollbar{display:none}.search-categories>*{scroll-snap-align:start;flex:1 0 0%;min-width:90px}.search-featured-scroll{display:flex;gap:var(--space-4);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-3);scrollbar-width:none}.search-featured-scroll::-webkit-scrollbar{display:none}.search-featured-scroll>*{scroll-snap-align:start;min-width:240px;max-width:260px;flex-shrink:0}.search-section:nth-child(1){animation:fadeInUp .4s ease-out .15s both}.search-section:nth-child(2){animation:fadeInUp .4s ease-out .25s both}.search-section:nth-child(3){animation:fadeInUp .4s ease-out .35s both}.search-section:nth-child(4){animation:fadeInUp .4s ease-out .45s both}.search-results-hint{text-align:center;padding:var(--space-6) 0;color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.search-results-hint kbd{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-family);font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:0 var(--space-1)}@media(max-width:767px){.search-hero{padding:var(--space-6) var(--space-4) var(--space-5);margin-top:calc(-1 * var(--space-4));margin-bottom:var(--space-4)}.search-hero-title{font-size:var(--font-size-xl);margin-bottom:var(--space-4)}.search-input{padding:var(--space-3) var(--space-10) var(--space-3) var(--space-10);font-size:var(--font-size-base);border-radius:var(--radius-md)}.search-input-icon{left:var(--space-3)}.search-input-clear{right:var(--space-3);width:24px;height:24px}.search-tags{margin-top:var(--space-4)}.search-content{padding:0 var(--space-4)}.search-section{margin-bottom:var(--space-6)}.search-section-title{font-size:var(--font-size-md)}.search-featured-scroll>*{min-width:200px;max-width:220px}}:root{--color-bg: #F8FAF8;--color-bg-secondary: #EFF4EF;--color-bg-tertiary: #E3ECE3;--color-surface: #FFFFFF;--color-surface-hover: #F5F8F5;--color-surface-active: #E8EFE8;--color-text-primary: #1D1D1F;--color-text-secondary: #6E6E73;--color-text-tertiary: #AEAEB2;--color-text-inverse: #FFFFFF;--color-accent: #4A7C59;--color-accent-hover: #3D6B4A;--color-accent-light: #E6F0E8;--color-accent-dark: #3A6347;--color-border: #DDE8DD;--color-border-light: #EDF3ED;--color-divider: #E0E8E0;--color-success: #34C759;--color-warning: #FF9F0A;--color-error: #FF3B30;--color-info: #5AC8FA;--color-overlay: rgba(0, 0, 0, .4);--color-backdrop: rgba(255, 255, 255, .72);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .6875rem;--font-size-sm: .8125rem;--font-size-base: .9375rem;--font-size-md: 1.0625rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 1.75rem;--font-size-3xl: 2.125rem;--font-size-4xl: 2.75rem;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.15;--line-height-normal: 1.5;--line-height-relaxed: 1.7;--letter-spacing-tight: -.022em;--letter-spacing-normal: -.01em;--letter-spacing-wide: .02em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 16px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .1);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .12);--shadow-card: 0 2px 12px rgba(0, 0, 0, .06);--shadow-card-hover: 0 8px 28px rgba(0, 0, 0, .1);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-spring: .5s cubic-bezier(.34, 1.56, .64, 1);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-modal-backdrop: 300;--z-modal: 400;--z-toast: 500;--z-mobile-nav: 250;--header-height: 64px;--mobile-nav-height: 72px;--max-width: 1280px;--sidebar-width: 260px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-normal);color:var(--color-text-primary);background-color:var(--color-bg);min-height:100vh;overflow-x:hidden}#root{min-height:100vh;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none;font-family:inherit;font-size:inherit;color:inherit}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit;outline:none}img{display:block;max-width:100%;height:auto}ul,ol{list-style:none}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background-color:var(--color-accent-light);color:var(--color-text-primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn var(--transition-normal) ease-out}.animate-fade-in-up{animation:fadeInUp var(--transition-slow) ease-out}.animate-scale-in{animation:scaleIn var(--transition-normal) ease-out}.skeleton{background:linear-gradient(90deg,var(--color-bg-secondary) 25%,var(--color-bg-tertiary) 50%,var(--color-bg-secondary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}@media(max-width:767px){:root{--header-height: 56px}.container{padding:0 var(--space-4)}.hide-mobile{display:none!important}}@media(min-width:768px){.hide-desktop{display:none!important}}@media(min-width:768px)and (max-width:1199px){.hide-tablet{display:none!important}}
