Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
1/3
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
Rose Personality Short-sleeved T-shirt
1/3

Rose Personality Short-sleeved T-shirt

$20.13
$0.00
Save 0%
Fast delivery
Worldwide shipping
Colorblack
Please select a color
Size
Please select a size
Quantity
/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_() { this.registerAction( 'scrollToTarget', (invocation) => this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** * @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(renderId), () => { this.renderElement_ = SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) => { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) => { if (!data) { return; } SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data); document.querySelector('#strengthen-trust-render-1539149753700').addEventListener('click',(event)=>{ if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);

⬇️ Detailed dimensions and material information are included in each product description.

Please read the "Size Guide" instructions below carefully before purchasing and choose your own size based on different parameters.

PS: Under normal circumstances, if you want to wear a slim fit, just choose your usual size. If you want to wear an oversized fit, choose one size larger.

ProductNo SPAFPNRQEB7
Style Casual fashion
gender male
Season All Season
Washing Mode Machine Wash
Occasion Daily,Casual,Office & Career,Street beat
Size bust Tops& Outwear Length Shoulder width Sleeve Length
s90694319
m96714520
l102734721
xl108754922
2xl114775123
3xl120795324