.ps-hub{min-height:100vh;background:var(--color-bg-primary);padding-top:72px}.ps-hero{position:relative;padding:var(--spacing-4xl) 0 var(--spacing-3xl);background:linear-gradient(180deg,#ffffff 0,var(--color-bg-primary) 100%);border-bottom:1px solid var(--color-border)}.ps-hero__container{max-width:960px;margin:0 auto;text-align:center;padding:0 var(--spacing-xl)}.ps-hero__badge{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border-radius:var(--radius-pill);background:rgba(230,81,0,.08);border:1px solid rgba(230,81,0,.2);color:var(--color-accent-gold);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:var(--spacing-lg)}.ps-hero__title{font-size:var(--font-size-5xl);font-weight:800;color:var(--color-text-primary);line-height:1.15;letter-spacing:-.025em;margin-bottom:var(--spacing-md)}.ps-hero__subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);line-height:1.6;max-width:720px;margin:0 auto var(--spacing-2xl)}.ps-search-box{position:relative;max-width:740px;margin:0 auto;z-index:40}.ps-search-box__input-wrap{display:flex;align-items:center;background:#ffffff;border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:6px 8px 6px 18px;box-shadow:0 8px 24px rgba(12,26,46,.06);transition:all var(--transition-base)}.ps-search-box__input-wrap:focus-within{border-color:var(--color-accent-gold);box-shadow:0 10px 30px rgba(230,81,0,.12)}.ps-search-box__icon{color:var(--color-text-muted);flex-shrink:0;margin-right:12px}.ps-search-box__input{flex:1 1;border:none;outline:none;font-size:var(--font-size-base);color:var(--color-text-primary);background:transparent;padding:8px 0}.ps-search-box__input::placeholder{color:var(--color-text-muted)}.ps-search-box__btn{flex-shrink:0;padding:.75rem 1.75rem;background:var(--gradient-gold);color:#ffffff;border-radius:var(--radius-md);font-weight:600;font-size:var(--font-size-sm);display:flex;align-items:center;gap:8px;transition:all var(--transition-fast)}.ps-search-box__btn:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(230,81,0,.25);color:#ffffff}.ps-autocomplete{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#ffffff;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 16px 40px rgba(12,26,46,.12);max-height:380px;overflow-y:auto;z-index:100;text-align:left}.ps-autocomplete__item{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--color-border-light);cursor:pointer;transition:background var(--transition-fast);text-decoration:none}.ps-autocomplete__item:last-child{border-bottom:none}.ps-autocomplete__item:hover{background:rgba(12,26,46,.03)}.ps-autocomplete__name{font-weight:600;color:var(--color-text-primary);font-size:var(--font-size-sm)}.ps-autocomplete__parent{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px}.ps-autocomplete__tag{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.04em}.ps-autocomplete__tag--category{background:rgba(12,26,46,.08);color:var(--color-text-primary)}.ps-autocomplete__tag--subcategory{background:rgba(59,130,246,.1);color:#2563eb}.ps-autocomplete__tag--capability{background:rgba(230,81,0,.1);color:#e65100}.ps-browse{padding:var(--spacing-4xl) 0 var(--spacing-5xl)}.ps-browse__header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:var(--spacing-3xl);flex-wrap:wrap;gap:var(--spacing-md)}.ps-browse__title{font-size:var(--font-size-3xl);font-weight:800;color:var(--color-text-primary);letter-spacing:-.02em}.ps-browse__subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-top:6px}.ps-browse__suggest-btn{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-sm);font-weight:600;color:var(--color-accent-gold);cursor:pointer;background:none;border:none;transition:color var(--transition-fast)}.ps-browse__suggest-btn:hover{color:var(--color-accent-gold-dark);text-decoration:underline}.ps-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--spacing-xl);gap:var(--spacing-xl)}@media (max-width:1200px){.ps-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.ps-grid{grid-template-columns:1fr}}.ps-card{background:#ffffff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);display:flex;flex-direction:column;text-decoration:none;transition:all var(--transition-base);box-shadow:0 1px 3px rgba(12,26,46,.04);position:relative;overflow:hidden}.ps-card:hover{border-color:var(--color-accent-gold);box-shadow:0 8px 24px rgba(12,26,46,.08);transform:translateY(-3px)}.ps-card__icon-wrap{width:48px;height:48px;border-radius:var(--radius-md);background:rgba(12,26,46,.04);color:var(--color-text-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-lg);border:1px solid rgba(12,26,46,.06);transition:all var(--transition-fast)}.ps-card:hover .ps-card__icon-wrap{background:rgba(230,81,0,.08);color:var(--color-accent-gold);border-color:rgba(230,81,0,.2)}.ps-card__name{font-size:var(--font-size-lg);font-weight:700;color:var(--color-text-primary);line-height:1.3;margin-bottom:var(--spacing-sm);min-height:48px}.ps-card__desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--spacing-lg);flex:1 1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ps-card__footer{display:flex;align-items:center;justify-content:space-between;padding-top:var(--spacing-md);border-top:1px solid var(--color-border-light);margin-top:auto}.ps-card__count{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);display:inline-flex;align-items:center;gap:4px}.ps-card__count--has-suppliers{color:#059669}.ps-card__action{font-size:var(--font-size-xs);font-weight:700;color:var(--color-accent-gold);display:inline-flex;align-items:center;gap:4px;transition:transform var(--transition-fast)}.ps-card:hover .ps-card__action{transform:translateX(4px)}.ps-modal-backdrop{position:fixed;inset:0;background:rgba(12,26,46,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg)}.ps-modal{background:#ffffff;border-radius:var(--radius-xl);width:100%;max-width:560px;box-shadow:0 20px 60px rgba(12,26,46,.2);overflow:hidden;animation:modalSlideUp .25s ease-out}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.ps-modal__header{padding:var(--spacing-xl);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between}.ps-modal__title{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text-primary)}.ps-modal__close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm)}.ps-modal__close:hover{color:var(--color-text-primary);background:rgba(12,26,46,.05)}.ps-modal__body{padding:var(--spacing-xl)}.ps-modal__field{margin-bottom:var(--spacing-lg)}.ps-modal__label{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary);margin-bottom:6px}.ps-modal__input,.ps-modal__select,.ps-modal__textarea{width:100%;padding:10px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background:#ffffff;outline:none;transition:border-color var(--transition-fast)}.ps-modal__input:focus,.ps-modal__select:focus,.ps-modal__textarea:focus{border-color:var(--color-accent-gold);box-shadow:0 0 0 3px rgba(230,81,0,.08)}.ps-modal__textarea{min-height:90px;resize:vertical}.ps-modal__footer{padding:var(--spacing-lg) var(--spacing-xl);border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:var(--spacing-md);background:var(--color-bg-primary)}