/* Static placeholders shaped like the content they replace. */
.sk-block { display: block; width: var(--sk-width, 100%); height: var(--sk-height, 14px); border-radius: var(--sk-radius, 6px); background: #e8ebf0; }
.sk-surface { background: #f3f4f6; border-radius: 16px; }
.sk-loading[hidden] { display: none !important; }
.sk-loading.is-deferred:not(.is-visible) { visibility: hidden; }
.sk-page-head { margin-bottom: 30px; }
.sk-page-head .sk-block + .sk-block { margin-top: 12px; }
.sk-panel { padding: 24px; border: 1px solid #e4e7ec; border-radius: 16px; background: #fff; }
.sk-panel + .sk-panel { margin-top: 20px; }
.sk-panel .sk-block + .sk-block { margin-top: 14px; }
.sk-panel-title { margin-bottom: 24px; }
.sk-row { display: flex; align-items: center; gap: 16px; padding: 16px 0; }
.sk-row + .sk-row { border-top: 1px solid #edeff3; }
.sk-row-copy { flex: 1; min-width: 0; }
.sk-row-copy .sk-block + .sk-block { margin-top: 10px; }
.sk-account { width: min(100%, 1040px); margin: 0 auto; }
.sk-profile-layout { display: grid; grid-template-columns: 262px minmax(0, 1fr); gap: 0; max-width: 1440px; margin: 0 auto; }
.sk-profile-sidebar { padding: 46px 24px; border-right: 1px solid #edeff3; }
.sk-profile-sidebar .sk-block { margin-bottom: 24px; }
.sk-profile-main { min-width: 0; max-width: 900px; width: 100%; padding: 42px 40px 100px; margin: 0 auto; }
.sk-account-identity { display: flex; align-items: center; gap: 16px; }
.sk-account-identity .sk-row-copy { flex: 1; }
.sk-account-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 20px; }
.sk-account-stats .sk-panel { margin: 0; }
.sk-account-rows { margin-top: 24px; }
.sk-finance { max-width: 900px; }
.sk-finance-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-bottom: 20px; }
.sk-finance-grid .sk-panel { margin: 0; min-height: 128px; }
.sk-product { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(360px, .7fr); gap: 56px; margin: 20px 0 72px; }
.sk-product-visual { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: 16px; align-items: start; }
.sk-product-rail { display: flex; flex-direction: column; gap: 8px; }
.sk-product-thumb { width: 100%; aspect-ratio: 16 / 9; border-radius: 10px; }
.sk-product-media { aspect-ratio: 16 / 11; border-radius: 20px; }
.sk-product-info .sk-block { margin-bottom: 18px; }
.sk-product-info .sk-block:nth-child(3) { margin-top: 36px; }
.sk-loading:has(.sk-product) { min-height: 100vh; }
.sk-product-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; padding: 28px; border: 1px solid #e4e7ec; border-radius: 20px; }
.sk-product-details .sk-block + .sk-block { margin-top: 22px; }
.sk-cart .cart-items-head { border-bottom: 1px solid #edeff3; }
.sk-cart .sk-cart-line { display: flex; align-items: center; gap: 16px; padding: 16px 20px; }
.sk-cart .sk-cart-line + .sk-cart-line { border-top: 1px solid #edeff3; }
.sk-cart-thumb { width: 88px; height: 72px; flex: none; border-radius: 10px; }
.sk-cart .sk-cart-line .sk-row-copy { flex: 1; }
.sk-cart .cart-summary .sk-block + .sk-block { margin-top: 22px; }
.sk-cart .cart-summary .sk-panel { border: 0; }
.sk-cart .sk-cart-total { margin-top: 30px !important; }
.sk-cart-thumb.is-preview { width: 100%; height: 100%; border-radius: inherit; }
@media (max-width: 900px) { .sk-product { display: flex; flex-direction: column; gap: 16px; margin-top: 16px; margin-bottom: 36px; } .sk-product-info { display: contents; } .sk-product-info .sk-block:first-child { order: -2; margin-bottom: 52px; } .sk-product-visual { order: -1; display: flex; flex-direction: column; gap: 12px; width: 100%; } .sk-product-media { order: -1; width: 100%; aspect-ratio: 4 / 3; } .sk-product-rail { order: 2; flex-direction: row; gap: 8px; width: 100%; overflow-x: hidden; } .sk-product-thumb { flex: none; width: 88px; } .sk-product-info .sk-block:not(:first-child) { order: 0; } .sk-product-details { grid-template-columns: 1fr; } }
@media (max-width: 860px) { .sk-cart .cart-layout { grid-template-columns: 1fr; } .sk-profile-layout { grid-template-columns: 1fr; } .sk-profile-sidebar { display: none; } .sk-profile-main { padding: 28px 24px 80px; } }
@media (max-width: 620px) { .sk-account-stats, .sk-finance-grid { grid-template-columns: 1fr; } .sk-account .sk-panel, .sk-finance .sk-panel { padding: 18px; } .sk-cart-thumb { width: 72px; height: 60px; } }
