@charset "utf-8";

*,
*::before,
*::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--sh-canvas);
  color: var(--sh-ink);
  font-family: var(--sh-font);
  font-size: var(--sh-t-body);
  line-height: 1.6;
  word-break: keep-all;

  overflow-wrap: break-word;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

:where(.sh-lead, .sh-sub, .sh-help, .sh-note, .sh-formsec-desc, .sh-info-row, .sh-setting-desc, .sh-empty, .sh-loyalty-foot,
  .sh-tool-state-body, .sh-tool-muted, .sh-tool-note,
  .sh-landing-problem-copy, .sh-description-card, .sh-landing-steps, .sh-assure-d,
  .sh-cms, .sh-notice-body, .sh-faq-body, .sh-acc-a, .sh-gh-doc, .sh-static-guide, .sh-drawer-help, .sh-drawer-lead, .sh-modal-sub) {
  text-wrap: pretty;
  word-break: keep-all;
}

:where(.sh-chead-title, .sh-h2, .sh-h3, .sh-tool-state-title) {
  text-wrap: balance;
  word-break: keep-all;
}

#sh-desc-sec {
  padding: 24px;
  border-radius: var(--sh-r-card);
  background: var(--sh-surface);
  box-shadow: 0 1px 2px rgba(2, 9, 27, .04);
}
#sh-desc-sec > .sh-step,
#sh-desc-sec > #order_step3 > .sh-step { align-items: baseline; margin-bottom: 16px; }
#sh-desc-sec .sh-step-title { color: var(--sh-ink); font-size: var(--sh-t-card); font-weight: 700; }
#sh-desc-sec .sh-step-side {
  min-height: 32px;
  padding: 0 13px;
  border: 1px solid #E5E8EB;
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
  font-weight: 700;
}
#sh-desc-sec .sh-tabs { margin: 0 0 16px; }
#sh-desc-sec .sh-box { border: 0; border-radius: 0; padding: 0; }
.sh-desc-facts { display: flex; gap: 10px; margin-bottom: 16px; }
.sh-desc-fact {
  min-width: 0;
  flex: 1;
  padding: 13px 14px;
  border-radius: var(--sh-r-ctrl);
  background: #F9FAFB;
}
.sh-desc-fact > span { display: block; color: #8B95A1; font-size: var(--sh-t-caption); font-weight: 700; }
.sh-desc-fact > b { display: block; margin-top: 3px; color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; }
.sh-desc-strip { height: 10px; margin: 20px -24px; background: #F2F4F6; }
.sh-desc-body .sh-desc { gap: 0; }
.sh-desc-body .sh-desc > * + * { margin-top: 18px; padding-top: 18px; border-top: 1px solid #F2F4F6; }
.sh-desc-body .sh-desc :is(.sh-desc-title, .sh-doc-h, .sh-kicker) { color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; }
.sh-desc-body .sh-desc :is(p, li, .sh-desc-step) { color: var(--sh-muted); font-size: var(--sh-t-body); line-height: 1.75; }
.sh-desc-body .sh-desc-step > b { width: 20px; height: 20px; border-radius: 50%; background: var(--sh-tint); color: var(--sh-primary); font-size: var(--sh-t-caption); }
.sh-desc-body .sh-desc.sh-desc-read { max-width: 600px; gap: 0; }
.sh-desc-body .sh-desc.sh-desc-read > * + * { margin-top: 32px; padding-top: 0; border-top: 0; }
.sh-desc-read :is(.sh-lead, .sh-prose, .sh-bullets, .sh-desc-step, .sh-note) { overflow-wrap: break-word; word-break: keep-all; }
.sh-desc-read :is(code, a[href]) { overflow-wrap: anywhere; word-break: break-all; }
.sh-desc-read .sh-lead { max-width: 600px; margin: 0; color: #191F28; font-size: var(--sh-t-card); font-weight: 400; line-height: 1.7; }
.sh-desc-read .sh-doc-h { margin: 0 0 10px; padding: 0; border: 0; color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; line-height: 1.4; }
.sh-desc-read .sh-prose { margin: 0; color: var(--sh-muted); font-size: var(--sh-t-body); line-height: 1.75; }
.sh-desc-read .sh-desc-steps { gap: 8px; }
.sh-desc-read .sh-desc-step { gap: 10px; color: var(--sh-muted); font-size: var(--sh-t-body); line-height: 1.7; }
.sh-desc-read .sh-desc-step > b { width: 20px; height: 20px; margin-top: 2px; border-radius: 50%; font-size: var(--sh-t-caption); }
.sh-desc-read .sh-desc-compose .sh-bullets { margin: 0; }
.sh-desc-read .sh-desc-compose .sh-bullets li { min-height: 20px; padding-left: 30px; margin-top: 8px; }
.sh-desc-read .sh-desc-compose .sh-bullets li::before { top: 2px; width: 20px; height: 20px; border-radius: 50%; background: var(--sh-tint); color: var(--sh-primary); display: inline-flex; align-items: center; justify-content: center; font-size: var(--sh-t-caption); }
.sh-desc-read .sh-desc-was { color: var(--sh-muted); text-decoration: line-through; }
.sh-desc-read .sh-box--tint .sh-h3 { font-weight: 700; }
.sh-desc-read .sh-desc-kv { margin: 0; }
.sh-desc-read .sh-desc-kv > div { display: grid; grid-template-columns: minmax(76px, .7fr) minmax(0, 1.3fr); gap: 12px; padding: 10px 0; border-top: 1px solid #F2F4F6; }
.sh-desc-read .sh-desc-kv > div:first-child { border-top: 0; }
.sh-desc-read .sh-desc-kv dt { color: var(--sh-muted); font-size: var(--sh-t-help); font-weight: 400; }
.sh-desc-read .sh-desc-kv dd { min-width: 0; margin: 0; color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 600; overflow-wrap: break-word; word-break: keep-all; }

.sh-effects { gap: 0; }
.sh-effect { align-items: center; gap: 12px; padding: 11px 0; }
.sh-effect + .sh-effect { border-top: 1px solid #EFF1F4; }
.sh-effect-icon { width: 30px; height: 30px; border-radius: var(--sh-r-sm); }
.sh-effect-icon svg { width: 16px; height: 16px; }
.sh-effect-icon--like,
.sh-effect-icon--ok,
.sh-effect-icon--biz { background: var(--sh-tint); color: var(--sh-primary); }
.sh-effect-body { margin: 0; color: var(--sh-muted); font-size: var(--sh-t-body); line-height: 1.6; }

.sh-review-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.sh-review-head > b { color: var(--sh-ink); font-size: var(--sh-t-card); font-weight: 700; }
.sh-review-all { padding: 0; border: 0; background: transparent; color: var(--sh-primary); font-size: var(--sh-t-help); font-weight: 700; }
.sh-review-rating {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: var(--sh-r-ctrl);
  background: #F9FAFB;
}
.sh-rating-overview { text-align: center; }
.sh-rating-overview > b { display: block; color: var(--sh-ink); font-size: var(--sh-t-display-1); font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums; }
.sh-rating-overview > span { display: block; margin-top: 4px; color: var(--sh-star); font-size: var(--sh-t-help); letter-spacing: 1px; }
.sh-rating-overview small { display: block; margin-top: 3px; color: var(--sh-muted-on-tint); font-size: var(--sh-t-caption); }
.sh-review-rating .sh-rating-dist,
.sh-rail-rating-dist { gap: 5px; min-width: 0; }

.sh-review-rating .sh-rating-row,
.sh-rail-rating-dist .sh-rating-row { grid-template-columns: auto minmax(0, 1fr) 32px; gap: 8px; }
.sh-review-rating .sh-rating-name,
.sh-rail-rating-dist .sh-rating-name { width: auto; color: #8B95A1; font-size: var(--sh-t-caption); font-weight: 400; text-align: right; white-space: nowrap; }
.sh-review-rating .sh-rating-count,
.sh-rail-rating-dist .sh-rating-count { color: #8B95A1; font-size: var(--sh-t-caption); font-weight: 400; }
.sh-review-rating .sh-rating-bar,
.sh-rail-rating-dist .sh-rating-bar { height: 7px; border-radius: var(--sh-radius-chip); background: #F2F4F6; }
.sh-review-rating .sh-rating-bar > i,
.sh-rail-rating-dist .sh-rating-bar > i { border-radius: var(--sh-radius-chip); background: #C9B4EE; }
.sh-review-rating .sh-rating-row:first-child .sh-rating-bar > i,
.sh-rail-rating-dist .sh-rating-row:first-child .sh-rating-bar > i { background: var(--sh-primary); }
.sh-tabpanel[data-sh-key="review"] .sh-digest { margin-top: 14px; border: 0; border-radius: var(--sh-r-ctrl); background: var(--sh-tint-soft); }
.sh-tabpanel[data-sh-key="review"] .review-list { display: block; margin-top: 6px; }
.sh-tabpanel[data-sh-key="review"] .sh-review { padding: 16px 0; border: 0; border-bottom: 1px solid #F2F4F6; border-radius: 0; }
.sh-tabpanel[data-sh-key="review"] .sh-review-top { gap: 8px; }
.sh-tabpanel[data-sh-key="review"] .sh-avatar { width: 28px; height: 28px; flex: 0 0 28px; border-radius: 50%; background: var(--sh-tint); color: var(--sh-primary); font-size: var(--sh-t-caption); font-weight: 700; }
.sh-tabpanel[data-sh-key="review"] .sh-review-id { color: var(--sh-ink); font-size: var(--sh-t-help); font-weight: 700; }
.sh-tabpanel[data-sh-key="review"] .sh-stars { display: inline-flex; gap: 1px; }
.sh-tabpanel[data-sh-key="review"] .sh-review-date { margin: 0 0 0 auto; color: var(--sh-faint); font-size: var(--sh-t-caption); }
.sh-tabpanel[data-sh-key="review"] .sh-review-body { margin-top: 9px; color: var(--sh-muted); font-size: var(--sh-t-body); line-height: 1.65; }

.sh-rail-rating { display: grid; grid-template-columns: max-content minmax(0, 1fr); align-items: center; gap: 16px; margin-top: 14px; }
.sh-rail-rating-score { text-align: center; }
.sh-rail-rating-score > b { display: block; color: var(--sh-ink); font-size: var(--sh-t-display-1); font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums; }
.sh-rail-rating-score > span { display: block; margin-top: 4px; color: var(--sh-star); font-size: var(--sh-t-caption); letter-spacing: 1px; }
.sh-rail-rating-score small { display: block; margin-top: 3px; color: #8B95A1; font-size: var(--sh-t-caption); }
.sh-rail-review-quote { margin-top: 12px; }

@media (max-width: 480px) {
  #sh-desc-sec { padding: 20px 16px; }
  .sh-desc-strip { margin-right: -16px; margin-left: -16px; }
  .sh-review-rating { grid-template-columns: 88px minmax(0, 1fr); gap: 10px; padding: 12px; }
  .sh-rail-rating { grid-template-columns: 88px minmax(0, 1fr); gap: 10px; }
  .sh-review-rating .sh-rating-row,
  .sh-rail-rating-dist .sh-rating-row { grid-template-columns: auto minmax(0, 1fr) 28px; gap: 5px; }
}

body * { touch-action: manipulation; }

h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd { margin: 0; }
ul, ol { margin: 0; padding: 0; list-style: none; }

img, svg, video, canvas { display: block; max-width: 100%; }
img { height: auto; border: 0; }

a {
  color: inherit;
  text-decoration: none;
  transition: color 160ms var(--sh-ease-out);
}

:is(.sh-prose, .sh-acc-a, .sh-lead, .sh-note, .sh-sub, .sh-fine, .sh-empty,
    .sh-alert, .sh-help, .sh-def, .sh-table, .sh-msg-files, .sh-auth-foot,
    .sh-linknote) a:not(.sh-btn),
a.sh-nowrap {
  color: var(--sh-ink);
  text-decoration: none;
}
:is(.sh-prose, .sh-acc-a, .sh-lead, .sh-note, .sh-sub, .sh-fine, .sh-empty,
    .sh-alert, .sh-help, .sh-def, .sh-table, .sh-msg-files, .sh-auth-foot,
    .sh-linknote) a:not(.sh-btn):hover,
a.sh-nowrap:hover { color: var(--sh-primary-hover); }

button, input, textarea, select, option {
  font: inherit;
  color: inherit;
  font-family: inherit;
}
button { background: none; border: 0; padding: 0; cursor: pointer; }

.sh-icon { display: block; flex: 0 0 auto; }

table { border-collapse: collapse; width: 100%; }

hr {
  border: 0;
  border-top: 1px solid var(--sh-line);
  margin: 0;
}

[hidden], .sh-hidden, .hidden { display: none !important; }

::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--sh-border); border-radius: var(--sh-r-sm); }
@media (hover: hover) and (pointer: fine) {
  ::-webkit-scrollbar-thumb:hover { background: var(--sh-border-strong); }
}

@font-face {
  font-family: "Pretendard Variable";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/pretendard-sh-v2.woff2") format("woff2");
}
@font-face {
  font-family: "Pretendard Fallback";
  font-style: normal;
  font-weight: 400 800;
  src: local("Apple SD Gothic Neo"), local("Malgun Gothic"), local("Noto Sans KR");
  size-adjust: 100%;
  ascent-override: 95.2%;
  descent-override: 24.2%;
  line-gap-override: 0%;
}

@font-face { font-family: "Pretendard Fallback Sans"; font-style: normal; font-weight: 100 500; src: local("DejaVu Sans"), local("DejaVuSans"); unicode-range: U+0020, U+00A0; size-adjust: 78%; ascent-override: 122.1%; descent-override: 30.9%; line-gap-override: 0%; }
@font-face { font-family: "Pretendard Fallback Sans"; font-style: normal; font-weight: 100 500; src: local("DejaVu Sans"), local("DejaVuSans"); unicode-range: U+0030-0039; size-adjust: 89%; ascent-override: 107.0%; descent-override: 27.1%; line-gap-override: 0%; }
@font-face { font-family: "Pretendard Fallback Sans"; font-style: normal; font-weight: 100 500; src: local("DejaVu Sans"), local("DejaVuSans"); unicode-range: U+0021-002F, U+003A-0040, U+005B-0060, U+007B-007E, U+2000-206F, U+20A9; size-adjust: 89%; ascent-override: 107.0%; descent-override: 27.1%; line-gap-override: 0%; }
@font-face { font-family: "Pretendard Fallback Sans"; font-style: normal; font-weight: 100 500; src: local("DejaVu Sans"), local("DejaVuSans"); unicode-range: U+0041-005A, U+0061-007A, U+00A1-10FF, U+2070-2BFF; size-adjust: 92%; ascent-override: 103.5%; descent-override: 26.2%; line-gap-override: 0%; }
@font-face { font-family: "Pretendard Fallback Sans"; font-style: normal; font-weight: 600 900; src: local("DejaVu Sans Bold"), local("DejaVuSans-Bold"); unicode-range: U+0020, U+00A0; size-adjust: 66%; ascent-override: 144.3%; descent-override: 36.5%; line-gap-override: 0%; }
@font-face { font-family: "Pretendard Fallback Sans"; font-style: normal; font-weight: 600 900; src: local("DejaVu Sans Bold"), local("DejaVuSans-Bold"); unicode-range: U+0030-0039; size-adjust: 88%; ascent-override: 108.2%; descent-override: 27.4%; line-gap-override: 0%; }
@font-face { font-family: "Pretendard Fallback Sans"; font-style: normal; font-weight: 600 900; src: local("DejaVu Sans Bold"), local("DejaVuSans-Bold"); unicode-range: U+0021-002F, U+003A-0040, U+005B-0060, U+007B-007E, U+2000-206F, U+20A9; size-adjust: 88%; ascent-override: 108.2%; descent-override: 27.4%; line-gap-override: 0%; }
@font-face { font-family: "Pretendard Fallback Sans"; font-style: normal; font-weight: 600 900; src: local("DejaVu Sans Bold"), local("DejaVuSans-Bold"); unicode-range: U+0041-005A, U+0061-007A, U+00A1-10FF, U+2070-2BFF; size-adjust: 85.2%; ascent-override: 111.7%; descent-override: 28.3%; line-gap-override: 0%; }
@font-face {
  font-family: "Pretendard Fallback Hangul";
  font-style: normal;
  font-weight: 400;
  src: local("WenQuanYi Zen Hei"), local("WenQuanYiZenHei");
  unicode-range: U+1100-11FF, U+3130-318F, U+A960-A97F, U+AC00-D7FF;
  size-adjust: 86%;
  ascent-override: 110.7%;
  descent-override: 28%;
  line-gap-override: 0%;
}

:root {
  --sh-brand-carrot: #FF6F0F;

  --sh-primary:        #5D00C8;
  --sh-primary-hover:  #4D00B8;
  --sh-primary-lift:   #6812D4;
  --sh-primary-deep:   #43008F;
  --sh-primary-ink:    #2A0854;
  --sh-primary-night:  #17032E;
  --sh-banner-violet:  #31005E;
  --sh-banner-indigo:  #102B66;
  --sh-banner-teal:    #0C4D49;
  --sh-banner-amber:   #5A3108;
  --sh-banner-coral:   #692B2B;
  --sh-banner-blue:    #0B3768;
  --sh-banner-green:   #163F32;

  --sh-grad-mid:       #4A00A8;
  --sh-grad-hi:        #7A1FE0;
  --sh-grad-night:     #1F0440;
  --sh-grad-night-mid: #38127A;
  --sh-grad-night-hi:  #6D28D9;
  --sh-grad-auth-hi:   #6E14DC;
  --sh-focus:          rgba(93,0,200,.7);

  --sh-tint:           #F4EDFD;
  --sh-tint-soft:      #F7F4FE;
  --sh-tint-line:      #DED2F6;
  --sh-primary-line:   #DCC9FA;

  --sh-soft-bg-hover:  #EBE0FB;
  --sh-neutral-bg-hover: #E2DFEC;

  --sh-canvas:         #F2F4F6;
  --sh-canvas-deep:    #E5E8EB;
  --sh-surface:        #FFFFFF;
  --sh-fill:           #F4F5F7;
  --sh-surface-mute:   #F9FAFB;
  --sh-surface-alt:    #F5F6F8;
  --sh-fill:           #F4F5F7;

  --sh-total-bg:       #F1E8FE;
  --sh-total-rule:     rgba(93,0,200,.4);

  --sh-ink:            #191F28;
  --sh-ink-2:          #333D4B;

  --sh-muted:          #4E5968;
  --sh-muted-2:        #6B7684;
  --sh-subtle:         #8B95A1;
  --sh-faint:          #B0B8C1;
  --sh-placeholder:    #6B7684;
  --sh-ink-3:          #6B7684;

  --sh-line:           #E5E8EB;
  --sh-line-soft:      #EFF1F3;
  --sh-line-hair:      #F2F4F6;
  --sh-plat-tile-bg:   var(--sh-canvas);
  --sh-plat-selected-shadow: 0 0 0 3px var(--sh-surface), 0 0 0 5px var(--sh-primary);
  --sh-plat-hover-shadow: 0 0 0 3px var(--sh-surface), 0 0 0 5px color-mix(in srgb, var(--sh-primary) 30%, transparent);
  --sh-desc-prose-max: 880px;
  --sh-line-hair-2:    #F2F4F6;
  --sh-line-row:       #EFF1F4;
  --sh-border:         #E5E8EB;
  --sh-border-strong:  #D1D6DB;
  --sh-border-off:     #D1D6DB;
  --sh-selection-surface: #FBFAFE;
  --sh-decision-bg:    #FFF6E5;
  --sh-decision-ink:   #B25E00;
  --sh-sep:            #D1D6DB;
  --sh-input-off:      #F9FAFB;
  --sh-disabled-bg:    #F2F4F6;
  --sh-disabled-fg:    #8B95A1;

  --sh-gold:           #FFD43B;
  --sh-gold-2:         #FFB326;
  --sh-gold-ink:       #3A2800;
  --sh-gold-sub:       #6B4A00;
  --sh-gold-text:      #8A5B00;
  --sh-gold-bg:        #FFF9EC;
  --sh-gold-line:      #FFEFC4;

  --sh-ok:             #16A34A;
  --sh-ok-pulse:       rgba(34,197,94,.4);
  --sh-live-pulse:     rgba(124,242,164,.35);
  --sh-ok-strong:      #087145;
  --sh-ok-text:        #15803D;
  --sh-ok-text-2:      #3D7A55;
  --sh-ok-bg:          #F0FDF5;
  --sh-ok-bg-2:        #E9F9F1;
  --sh-ok-line:        #BBF0D0;
  --sh-status-info-bg: #EEF4FF;
  --sh-status-info:    #315CA8;
  --sh-status-success-bg: var(--sh-ok-bg);
  --sh-status-success-line: var(--sh-ok-line);
  --sh-status-success-text: var(--sh-ok-strong);
  --sh-status-warning-bg: var(--sh-warn-bg);
  --sh-status-warning-line: #FFD9A8;
  --sh-status-warning-text: var(--sh-warn-text);
  --sh-status-danger-bg: var(--sh-danger-bg);
  --sh-status-danger-line: var(--sh-danger-line);
  --sh-status-danger-text: var(--sh-danger);
  --sh-status-info-line: #CBDCFB;
  --sh-status-info-text: var(--sh-status-info);

  --sh-tier-normal-bg: #F4F5F7;
  --sh-tier-normal-line: #DDE1E7;
  --sh-tier-normal-text: #596273;
  --sh-tier-normal:    #596273;
  --sh-tier-silver-bg: #EEF1F5;
  --sh-tier-silver-line: #CBD3DE;
  --sh-tier-silver-text: #536273;
  --sh-tier-silver:    #536273;
  --sh-tier-gold-bg:   #FFF7E5;
  --sh-tier-gold-line: #F2D899;
  --sh-tier-gold-text: #8A5B00;
  --sh-tier-gold:      #8A5B00;
  --sh-tier-platinum-bg: #F0ECFF;
  --sh-tier-platinum-line: #B6E3DF;
  --sh-tier-platinum-text: #176D6A;
  --sh-tier-platinum:  #6540A8;
  --sh-tier-diamond-bg: #EAF7FB;
  --sh-tier-diamond-line: #B7E8F2;
  --sh-tier-diamond-text: #14728C;
  --sh-tier-diamond:   #25728B;
  --sh-tier-vip-bg:    #FCEEF5;
  --sh-tier-vip-line: #EDBDD3;
  --sh-tier-vip-text: #A43767;
  --sh-tier-vip:       #A43767;
  --sh-tier-vvip-bg:   #F4EAFE;
  --sh-tier-vvip-line: #D9B86F;
  --sh-tier-vvip-text: #54218A;
  --sh-tier-vvip:      #6B318F;

  --sh-danger:         #BF3120;
  --sh-danger-hover:   #A62918;
  --sh-danger-2:       #E0533D;
  --sh-danger-3:       #E5484D;
  --sh-danger-bg:      #FFF2F0;
  --sh-danger-line:    #FFD9D3;

  --sh-warn-text:      #9A4B00;
  --sh-warn-bg:        #FFF3E4;

  --sh-chip-neutral-bg:    #E5E8EB;
  --sh-chip-neutral-bg-on: #D1D6DB;
  --sh-chip-neutral-ink:   #4E5968;
  --sh-chip-consult-bg:    #FFE3A3;
  --sh-chip-consult-bg-on: #FDD27A;
  --sh-chip-consult-ink:   #7A3A00;
  --sh-chip-down-bg:       #FFDCD7;
  --sh-chip-down-bg-on:    #FBC4BC;
  --sh-chip-down-ink:      #8F2214;
  --sh-chip-ok-bg:         #C8F0DA;
  --sh-chip-ok-bg-on:      #ABE6C5;
  --sh-chip-ok-ink:        #055533;
  --sh-chip-warn-bg:       #FFDCC2;
  --sh-chip-warn-bg-on:    #FCC79F;
  --sh-chip-warn-ink:      #8A3A00;
  --sh-chip-info-bg:       #DCE7FF;
  --sh-chip-info-bg-on:    #C4D6FB;
  --sh-chip-info-ink:      #244A8F;
  --sh-chip-brand-bg:      #EADFFB;
  --sh-chip-brand-ink:     #5D00C8;

  --sh-like-bg:        #FFEEF2;
  --sh-like-ink:       #E5527A;
  --sh-marker:         #FEF08A;
  --sh-code-fg:        #E8E4F2;

  --sh-star:           #F59E0B;
  --sh-star-ink:       #A65B00;

  --sh-on-brand:       rgba(255,255,255,.96);
  --sh-on-brand-2:     rgba(255,255,255,.85);
  --sh-star-on-dark:   #FFE066;
  --sh-kakao:          #FEE500;
  --sh-kakao-hover:    #F5DE00;
  --sh-kakao-ink:      #191919;

  --sh-dark:           #191F28;
  --sh-dark-fg:        rgba(255,255,255,.92);
  --sh-dark-fg-2:      rgba(255,255,255,.85);
  --sh-dark-mute:      #9B94B8;
  --sh-dark-accent:    #CDB4FF;
  --sh-live:           #7CF2A4;

  --sh-font: "Pretendard Variable", "Pretendard Fallback", "Pretendard Fallback Sans", "Pretendard Fallback Hangul", Pretendard, -apple-system, BlinkMacSystemFont,
             system-ui, "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR",
             "Malgun Gothic", sans-serif;

  --sh-t-h1:      28px;
  --sh-t-h2:      22px;
  --sh-t-h3:      17px;
  --sh-t-lead:    17px;
  --sh-t-body:    15px;
  --sh-t-page: 22px;
  --sh-t-card: 17px;
  --sh-t-label: 15px;
  --sh-t-copy: 15px;
  --sh-t-help: 13px;
  --sh-t-caption: 12px;
  --sh-t-glyph: 12px;
  --sh-radius-banner: 20px;
  --sh-radius-card: 20px;
  --sh-radius-input: 12px;
  --sh-radius-row: 8px;
  --sh-radius-chip: 6px;
  --sh-space-4: 4px;
  --sh-space-6: 6px;
  --sh-space-8: 8px;
  --sh-space-12: 12px;
  --sh-space-16: 16px;
  --sh-space-20: 20px;
  --sh-space-24: 24px;
  --sh-desc-max-width: 760px;
  --sh-desc-body-mobile: 15.5px;
  --sh-desc-lead: 16px;
  --sh-desc-number: 24px;
  --sh-desc-border-width: 1px;
  --sh-desc-baseline-offset: 2px;
  --sh-desc-link-offset: 3px;
  --sh-desc-gap-small: 6px;
  --sh-desc-delta-padding: 7px;
  --sh-desc-header-radius: 9px;
  --sh-desc-gap-compact: 10px;
  --sh-desc-small-type: 11px;
  --sh-desc-example-mobile: 12.5px;
  --sh-desc-sub-mobile: 14px;
  --sh-desc-value-mobile: 14px;
  --sh-desc-answer-mobile: 14.5px;
  --sh-desc-heading-mobile: 17px;
  --sh-desc-space-wide: 18px;
  --sh-desc-compact-size: 20px;
  --sh-desc-mobile-icon: 28px;
  --sh-desc-tap-size: 44px;
  --sh-desc-mobile-column: 72px;
  --sh-desc-skeleton-duration: 1.2s;
  --sh-desc-check: 22px;
  --sh-desc-label: 12px;
  --sh-desc-guide-step: 15px;
  --sh-desc-guide-min-width: 200px;
  --sh-desc-compare-label: 92px;
  --sh-desc-compare-column: 176px;
  --sh-desc-title: 22px;
  --sh-desc-heading: 19px;
  --sh-desc-sub: 14px;
  --sh-desc-section-gap: 14px;
  --sh-desc-cell-padding: 14px 16px;
  --sh-desc-group-radius: 14px;
  --sh-desc-group: #F9FAFB;
  --sh-desc-line: #EFF1F3;
  --sh-desc-divider: #F2F4F6;
  --sh-muted-on-tint: #5A6472;
  --sh-desc-muted: var(--sh-muted-on-tint);
  --sh-desc-answer: #4E5968;
  --sh-desc-open: #FCFAFF;
  --sh-desc-chevron: #8B95A1;
  --sh-desc-warning: #FFF7E6;
  --sh-desc-warning-line: #FDE7BF;
  --sh-desc-warning-ink: #B54708;
  --sh-desc-skeleton-shine: #F7F8FA;
  --sh-desc-zoom: rgba(25,31,40,.55);
  --sh-desc-compare-width: 520px;

  --sh-t-dense:   13px;
  --sh-t-sm:      13px;
  --sh-t-xs:      12px;
  --sh-t-2xs:     12px;
  --sh-t-3xs:     12px;
  --sh-t-4xs:     12px;
  --sh-t-display-1: 28px;
  --sh-t-display-2: 28px;
  --sh-t-display-3: 28px;
  --sh-t-display-4: 22px;
  --sh-t-display-landing: 28px;
  --sh-t-stat:      22px;
  --sh-t-amount-1: 28px;
  --sh-t-amount-2: 22px;
  --sh-t-amount-3: 22px;

  --sh-sp-1: 4px;
  --sh-sp-2: 8px;
  --sh-sp-3: 12px;
  --sh-sp-4: 16px;
  --sh-sp-5: 24px;
  --sh-sp-6: 32px;
  --sh-sp-7: 40px;
  --sh-sp-8: 48px;

  --sh-gutter:     16px;
  --sh-gap-text:   6px;
  --sh-gap-comp:   12px;
  --sh-gap-group:  24px;
  --sh-gap-sec:    32px;
  --sh-pad-card:   20px;

  --sh-tag-event-ink:     #5B2AAE;
  --sh-tag-event-line:    #C0A2F2;
  --sh-tag-hot-ink:       #A6301B;
  --sh-tag-hot-bg:        #FDECE9;
  --sh-tag-hot-line:      #F7C9C2;
  --sh-tag-hot-line-on:   #EFA093;
  --sh-brand-etc:         #64748B;
  --sh-print-line:        #ddd;

  --sh-r-hero:    var(--sh-r-card);
  --sh-r-card:    20px;
  --sh-r-panel:   20px;
  --sh-r-box:     12px;
  --sh-r-ctrl:    12px;
  --sh-r-sm:      8px;
  --sh-r-xs:      8px;
  --sh-r-2xs:     6px;
  --sh-r-pill:    999px;

  --sh-sh-card:   0 2px 12px rgba(27,24,48,.06);
  --sh-sh-soft:   none;
  --sh-sh-hero:   var(--sh-sh-card);
  --sh-sh-dark:   var(--sh-sh-card);
  --sh-sh-modal:  0 12px 40px rgba(27,24,48,.16);
  --sh-sh-cta:    0 2px 8px rgba(93,0,200,.18);
  --sh-sh-cta-hi: 0 4px 14px rgba(93,0,200,.24);
  --sh-sh-gold:   0 2px 8px rgba(255,179,38,.24);
  --sh-sh-tile:   var(--sh-sh-card);

  --sh-sh-bar:    0 -1px 0 var(--sh-line), 0 -6px 20px rgba(27,24,48,.07);
  --sh-surface-flat:     none;
  --sh-surface-raised:   var(--sh-sh-card);
  --sh-surface-floating: var(--sh-sh-modal);
  --sh-emphasis-brand-bg: var(--sh-tint-soft);
  --sh-emphasis-brand-line: var(--sh-tint-line);
  --sh-emphasis-neutral-bg: var(--sh-surface-alt);
  --sh-emphasis-neutral-line: var(--sh-line);
  --sh-emphasis-warning-bg: var(--sh-status-warning-bg);
  --sh-emphasis-warning-line: var(--sh-status-warning-line);

  --sh-dur-fast: 160ms;
  --sh-dur:      220ms;
  --sh-dur-slow: 240ms;
  --sh-ease-out: cubic-bezier(.2,.8,.2,1);
  --sh-ease-in-out: cubic-bezier(.65,0,.35,1);
  --sh-ease-spring: cubic-bezier(.22,1.35,.36,1);
  --sh-ease:      cubic-bezier(.22,1,.36,1);
  --sh-fast:      160ms var(--sh-ease-out);
  --sh-base:      200ms var(--sh-ease-out);

  --sh-plat-tile:   72px;
  --sh-plat-glyph:  36px;
  --sh-plat-radius: 16px;
  --sh-plat-cell:   var(--sh-plat-tile);
  --sh-plat-gap:    12px;

  --sh-sidebar:   250px;
  --sh-maxw:      1680px;
  --sh-order-maxw: 2200px;
  --sh-mobile:    430px;
  --sh-landing-max: 1184px;
  --sh-tabbar:    62px;

  --sh-tabbar-safe: calc(62px + env(safe-area-inset-bottom));

  --sh-topbar:    67px;

  --sh-overlay: rgba(23,3,46,.55);
  --sh-z-rail:    10;
  --sh-z-bar:     25;
  --sh-z-head:    30;
  --sh-z-drawer:  41;
  --sh-z-sheet:   45;
  --sh-z-modal:   50;
  --sh-z-float:   20;
}

.sh-h1 {
  font-size: var(--sh-t-h1);
  font-weight: 700;
  letter-spacing: -.4px;
  line-height: 1.3;
  text-wrap: balance;
}
.sh-h2 {
  font-size: var(--sh-t-h2);
  font-weight: 700;
  letter-spacing: -.3px;
  line-height: 1.35;
  text-wrap: balance;
}
.sh-h3 {
  font-size: var(--sh-t-h3);
  font-weight: 600;
  letter-spacing: -.2px;
  line-height: 1.4;
  text-wrap: balance;
}

.sh-lead     { max-width: 36em; font-size: var(--sh-t-lead); color: var(--sh-muted); line-height: 1.6; }
.sh-sub      { font-size: var(--sh-t-sm);   color: var(--sh-muted); line-height: 1.5; }
.sh-note     { font-size: var(--sh-t-xs);   color: var(--sh-muted-2); line-height: 1.5; }
.sh-note--bad{ color: var(--sh-danger); }
.sh-note--center { text-align: center; }
.sh-fine     { font-size: var(--sh-t-3xs);  color: var(--sh-muted-2); line-height: 1.4; }
.sh-prose    { font-size: var(--sh-t-body); color: var(--sh-ink-2); line-height: 1.6; }
.sh-prose-pre{ white-space: pre-line; }

.sh-num,
.sh-stat-num,
.sh-total-value,
.sh-order-prog,
.sh-amount,
.sh-price { font-variant-numeric: tabular-nums; }
.sh-strong   { font-weight: 700; }
.sh-accent   { color: var(--sh-primary); }
.sh-nowrap   { white-space: nowrap; }
.sh-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

.sh-app { min-height: 100vh; }

.sh-main {
  margin-left: var(--sh-sidebar);
  min-width: 0;

  padding: var(--sh-sp-5) var(--sh-sp-5) 160px;
}
.sh-skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 10000;
  padding: 12px 16px;
  border-radius: var(--sh-r-sm);
  background: var(--sh-dark);
  color: var(--sh-dark-fg);
  font-size: var(--sh-t-sm);
  font-weight: 700;
  transform: translateY(-160%);
}
.sh-skip-link:focus { transform: translateY(0); }

.sh-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(440px, 1fr));
  gap: var(--sh-sp-6);
  align-items: start;
  max-width: var(--sh-maxw);
  margin: 0 auto;
}
.sh-rail {
  display: flex;
  flex-direction: column;
  gap: var(--sh-sp-6);
  min-width: 0;
}
.sh-rail > .sh-promo { order: 1; }

.sh-banner {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;

  border-radius: var(--sh-r-card, var(--sh-r-lg));
  background: var(--sh-canvas);

  aspect-ratio: 2.1 / 1;
}
.sh-banner-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 420ms var(--sh-ease);
}
.sh-banner-slide.on { opacity: 1; visibility: visible; }
@media (prefers-reduced-motion: reduce) { .sh-banner-slide { transition: none; } }

.sh-banner-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 10px;
  display: flex;
  justify-content: center;
  width: fit-content;
  margin: 0 auto;
  gap: 0;
  padding: 0;
  border-radius: var(--sh-r-pill);
  background: rgba(23, 3, 46, .34);
}

.sh-banner-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 40px;
  padding: 0;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: rgba(23, 3, 46, .28);
  color: #fff;
  cursor: pointer;
  transition: background-color 120ms var(--sh-ease-out);
}
.sh-banner-arrow--prev { left: 10px; }
.sh-banner-arrow--next { right: 10px; }
.sh-banner-arrow:hover { background: rgba(23, 3, 46, .5); }
.sh-banner-arrow svg { width: 18px; height: 18px; }
.sh-banner-dot {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.sh-banner-dot::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .5);
}
.sh-banner-dot.on::before { background: #fff; }

.sh-banner[hidden] { display: none; }

.sh-has-banner .sh-banner--side ~ .sh-hero { display: none; }
.sh-hero[hidden] { display: none; }

@media (min-width: 1280px) {
  .sh-banner--side { display: none; }
  .sh-has-banner .sh-banner--side { display: block; }
}
@media (max-width: 1279px) {
  .sh-banner--side { display: none !important; }

}

.sh-banner img,
.sh-banner-link { display: block; width: 100%; height: 100%; }
.sh-banner-link { position: relative; }
.sh-banner img { object-fit: cover; }

@media (hover: hover) and (pointer: fine) {
  .sh-banner-link:hover img { opacity: .94; }
}
.sh-banner img { transition: opacity 140ms var(--sh-ease); }
@media (prefers-reduced-motion: reduce) { .sh-banner img { transition: none; } }

.sh-page {
  max-width: 980px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}
.sh-page--wide { max-width: var(--sh-maxw); }

@media (min-width: 1280px) {
  .sh-page--wide { padding-right: 96px; }
}

.sh-page-head { margin-bottom: 2px; }
.sh-page-head .sh-lead { margin-top: 7px; }

.sh-sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  width: var(--sh-sidebar);
  z-index: var(--sh-z-rail);
  display: flex;
  flex-direction: column;
  padding: 24px 16px 16px;
  background: var(--sh-surface);
  border-right: 1px solid var(--sh-line);
  overflow-y: auto;
  overscroll-behavior: contain;
}

.sh-brand {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 2px 4px;
  margin-bottom: 16px;
  flex-shrink: 0;
  color: var(--sh-ink);
}
.sh-brand:hover { color: var(--sh-ink); }
.sh-brand-mark { width: 34px; height: 34px; flex-shrink: 0; }
.sh-brand-name {
  font-size: var(--sh-t-stat);
  font-weight: 700;
  letter-spacing: -.4px;
}

.sh-side-label {
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  color: var(--sh-muted-2);
  letter-spacing: .5px;
  margin: var(--sh-sp-4) 0 var(--sh-sp-2);
  padding: 0 var(--sh-sp-2);
}
.sh-side-label:first-of-type { margin-top: 16px; }

.sh-user {
  background: var(--sh-canvas);
  border-radius: var(--sh-r-box);
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.sh-user-row { display: flex; align-items: center; gap: 9px; min-width: 0; }

.sh-user-name { font-size: var(--sh-t-body); font-weight: 700; color: var(--sh-ink); }
.sh-user-name:hover { color: var(--sh-primary); }
.sh-user-point { font-size: var(--sh-t-3xs); color: var(--sh-muted-2); }
.sh-user-point b { color: var(--sh-primary); }

.sh-avatar {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--sh-tint);
  color: var(--sh-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: var(--sh-t-lead);
  flex-shrink: 0;
}
.sh-avatar--sm { width: 30px; height: 30px; font-size: var(--sh-t-xs); }

.sh-navg { display: grid; gap: 2px; margin-top: 16px; }
.sh-navg-group { display: grid; gap: 2px; }
.sh-navg-label { padding: 16px 12px 8px; font-size: var(--sh-t-3xs); font-weight: 700; color: var(--sh-muted-2); letter-spacing: .4px; }
.sh-navg-item { display: flex; align-items: center; gap: 12px; min-height: 40px; padding: 0 12px; border-radius: var(--sh-r-sm); color: var(--sh-ink-2); font-size: var(--sh-t-sm); font-weight: 700; }
.sh-navg-item svg { width: 20px; height: 20px; flex: 0 0 20px; color: var(--sh-muted); }
.sh-navg-item.is-current { background: var(--sh-tint); color: var(--sh-ink); }
.sh-navg-item.is-current svg { color: currentColor; }
.sh-navg-badge { min-width: 18px; margin-left: auto; padding: 1px 8px; border-radius: var(--sh-r-pill); background: var(--sh-primary); color: var(--sh-on-brand); font-size: var(--sh-t-4xs); font-weight: 700; text-align: center; }
.sh-navg-dot { width: 8px; height: 8px; margin-left: auto; border-radius: 50%; background: var(--sh-danger-3); }
.sh-tierchip { display: inline-flex; align-items: center; min-height: 28px; padding: 5px 12px; border: 1px solid var(--sh-gold-line); border-radius: var(--sh-r-pill); background: var(--sh-gold-bg); color: var(--sh-gold-text); font-size: var(--sh-t-xs); font-weight: 700; white-space: nowrap; }
.sh-side-foot { margin-top: 16px; padding-top: 12px; border-top: 1px solid var(--sh-line); color: var(--sh-muted); font-size: var(--sh-t-3xs); }
.sh-signup-verify { padding: 16px; border: 1px solid var(--sh-line); border-radius: var(--sh-r-md); background: var(--sh-surface); }
.sh-signup-verify.is-verified { border-color: var(--sh-ok-line); background: var(--sh-ok-bg); }
.sh-signup-consents { display: grid; gap: 12px; }
.sh-signup-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin: 16px 0 12px; }
.sh-signup-step-dot { display: grid; justify-items: center; gap: 4px; color: var(--sh-muted-2); font-size: var(--sh-t-4xs); font-weight: 700; text-align: center; }
.sh-signup-step-dot b { display: inline-grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--sh-surface-alt); color: inherit; }
.sh-signup-step-dot.is-current { color: var(--sh-primary); }
.sh-signup-step-dot.is-current b { background: var(--sh-primary); color: var(--sh-on-brand); }
.sh-signup-stage[hidden] { display: none; }
.sh-signup-nav { display: flex; justify-content: space-between; gap: 12px; }
.sh-tile--primary { border-color: var(--sh-primary-line); background: var(--sh-tint); }
.sh-tile--primary > :is(.sh-tile-kicker.sh-kicker--mute, .sh-note),
.sh-tile:nth-child(3) > :is(.sh-tile-kicker.sh-kicker--mute, .sh-note) {
  color: var(--sh-ink-2);
}
.sh-row-refill { background: var(--sh-ok-bg); color: var(--sh-ok-text); }
.sh-def > .sh-grow { min-width: 0; }
.sh-alert.sh-result-source { display: none; }
@media (max-width: 340px) {
  .sh-benefit-card .sh-def { display: block; }
  .sh-benefit-card .sh-def > span { display: block; margin-bottom: 8px; }
}
.sh-user-tier { min-height: 32px; display: inline-flex; align-items: center; flex-wrap: wrap; gap: 4px; }
.sh-user-tier-tail { color: var(--sh-muted); font-size: var(--sh-t-3xs); }
.sh-tab-dot { position: absolute; top: 7px; right: calc(50% - 15px); width: 6px; height: 6px; border-radius: 50%; background: var(--sh-danger-3); }

.sh-seg-item {
  border: 1.5px solid var(--sh-border);
  border-radius: var(--sh-r-xs);
  padding: 9px 0;
  text-align: center;
  font-size: var(--sh-t-xs);
  font-weight: 600;
  color: var(--sh-muted);
  background: var(--sh-surface);
  cursor: pointer;
  transition: border-color var(--sh-fast), color var(--sh-fast), background var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .sh-seg-item:hover { border-color: var(--sh-primary); color: var(--sh-primary); }
}
.sh-seg-item.active {
  border-color: var(--sh-primary);
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-weight: 700;
}

.sh-today {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}
.sh-today-tile {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  min-height: 44px;
  background: var(--sh-tint-soft);
  border: 1px solid var(--sh-line-hair-2);
  border-radius: var(--sh-r-sm);
  padding: 11px 12px;
  cursor: pointer;
  transition: border-color var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .sh-today-tile:hover { border-color: var(--sh-primary); }
}
.sh-today-kicker { font-size: var(--sh-t-3xs); font-weight: 700; color: var(--sh-primary); }

.sh-today-name   { font-size: var(--sh-t-xs); font-weight: 700; color: var(--sh-ink); }
.sh-today-tile--hot { background: var(--sh-gold-bg); border-color: var(--sh-gold-line); }
@media (hover: hover) and (pointer: fine) {
  .sh-today-tile--hot:hover { border-color: var(--sh-gold-2); }
}
.sh-today-tile--hot .sh-today-kicker { color: var(--sh-gold-text); }

.sh-biz { margin-top: auto; padding-top: 20px; }
.sh-biz-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  color: var(--sh-muted);
  margin-bottom: 8px;
}
.sh-status-icon { width: 28px; height: 28px; }
.sh-guide-img { width: 100%; aspect-ratio: 16 / 9; object-fit: contain; border-radius: var(--sh-r-sm); }
.sh-biz-foot { margin-top: 16px; padding-top: 12px; border-top: 1px solid var(--sh-line-hair); }
.sh-info-content { margin: 16px 0 20px; }
.sh-biz-body {
  font-size: var(--sh-t-4xs);
  line-height: 1.75;
  color: var(--sh-muted-2);
}
.sh-biz-body b { color: var(--sh-muted); }

.sh-biz-body a {
  color: var(--sh-ink-2);
  text-decoration: underline;
  text-underline-offset: 2px;

  display: inline-flex;
  align-items: center;
  min-height: 24px;
  vertical-align: middle;
}
.sh-biz-links {
  display: flex;
  gap: 12px;
  font-size: var(--sh-t-3xs);
  color: var(--sh-muted);
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--sh-line-hair-2);
}

.sh-biz-links a {
  color: var(--sh-ink-2);
  text-decoration: underline;
  text-underline-offset: 2px;
  display: inline-flex;
  align-items: center;
  min-height: 24px;
}
.sh-biz-links a:hover { color: var(--sh-ink); }

.sh-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 0;
  border-radius: var(--sh-r-ctrl);
  padding: 13px 24px;
  font-size: var(--sh-t-body);
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
  white-space: nowrap;

  transition: transform 120ms var(--sh-ease), box-shadow var(--sh-base),
              background var(--sh-fast), color var(--sh-fast),
              border-color var(--sh-fast), filter var(--sh-base);
}

.sh-btn:disabled,
.sh-btn:is([aria-disabled="true"],[disabled]) {
  cursor: not-allowed;
  filter: grayscale(.6);
  box-shadow: none;
  transform: none;
}

a.sh-btn[disabled] { pointer-events: none; }
.sh-btn--primary:disabled,
.sh-btn--primary:is([aria-disabled="true"],[disabled]),
.sh-btn--solid:disabled,
.sh-btn--solid:is([aria-disabled="true"],[disabled]) {
  filter: none;
  background: var(--sh-canvas-deep);
  color: var(--sh-muted);
  box-shadow: none;
}

.sh-btn--ghost:disabled,
.sh-btn--ghost:is([aria-disabled="true"],[disabled]),
.sh-btn--quiet:disabled,
.sh-btn--quiet:is([aria-disabled="true"],[disabled]),
.sh-btn--soft:disabled,
.sh-btn--soft:is([aria-disabled="true"],[disabled]),
.sh-btn--neutral:disabled,
.sh-btn--neutral:is([aria-disabled="true"],[disabled]),
.sh-btn--danger-ghost:disabled,
.sh-btn--danger-ghost:is([aria-disabled="true"],[disabled]) {
  background: var(--sh-canvas);
  border-color: var(--sh-line);
  color: var(--sh-muted-2);
}

.sh-btn--block { display: flex; width: 100%; }
.sh-btn--lg    { padding: 16px 26px; font-size: var(--sh-t-h3); border-radius: var(--sh-r-ctrl); }
.sh-btn--sm    { padding: 9px 15px; font-size: var(--sh-t-xs); border-radius: var(--sh-r-xs); }

.sh-btn--primary {
  background: linear-gradient(135deg, var(--sh-primary-lift), var(--sh-primary));
  color: #fff;
  box-shadow: var(--sh-sh-cta);
}
.sh-btn--primary:not(:disabled):not(:is([aria-disabled="true"],[disabled])):hover {
  color: #fff;
  transform: translateY(-1px);
  box-shadow: var(--sh-sh-cta-hi);
}
.sh-btn--primary:not(:disabled):not(:is([aria-disabled="true"],[disabled])):active {
  transform: translateY(0) scale(.97);
  box-shadow: var(--sh-sh-cta);
}

.sh-btn--solid { background: var(--sh-primary); color: #fff; }
.sh-btn--solid:not(:disabled):not(:is([aria-disabled="true"],[disabled])):hover {
  background: var(--sh-primary-hover);
  color: #fff;
}
.sh-btn--solid:not(:disabled):not(:is([aria-disabled="true"],[disabled])):active {
  background: var(--sh-primary-deep);
  transform: scale(.97);
}

.sh-btn--gold {
  background: linear-gradient(180deg, var(--sh-gold), var(--sh-gold-2));
  color: var(--sh-gold-ink);
  box-shadow: 0 3px 12px rgba(255,179,38,.32);
}
.sh-btn--gold:not(:disabled):not(:is([aria-disabled="true"],[disabled])):hover {
  color: var(--sh-gold-ink);
  transform: translateY(-1px);
  box-shadow: 0 5px 16px rgba(255,179,38,.46);
}
.sh-btn--gold:not(:disabled):not(:is([aria-disabled="true"],[disabled])):active {
  transform: translateY(0) scale(.97);
  box-shadow: 0 3px 12px rgba(255,179,38,.32);
}

.sh-btn--ghost {
  background: var(--sh-surface);
  color: var(--sh-ink-2);
  border: 1.5px solid var(--sh-border);
  font-weight: 700;
}
.sh-btn--ghost:not(:disabled):not(:is([aria-disabled="true"],[disabled])):hover {
  border-color: var(--sh-primary);
  background: var(--sh-tint-soft);
  color: var(--sh-primary);
}
.sh-btn--ghost:not(:disabled):not(:is([aria-disabled="true"],[disabled])):active {
  background: var(--sh-tint);
  transform: scale(.97);
}

.sh-btn--quiet {
  background: var(--sh-surface);
  color: var(--sh-muted);
  border: 1.5px solid var(--sh-border);
  font-weight: 700;
}
.sh-btn--quiet:not(:disabled):not(:is([aria-disabled="true"],[disabled])):hover {
  border-color: var(--sh-border-strong);
  background: var(--sh-surface-alt);
  color: var(--sh-ink-2);
}
.sh-btn--quiet:not(:disabled):not(:is([aria-disabled="true"],[disabled])):active {
  background: var(--sh-canvas);
  transform: scale(.97);
}

.sh-btn--kakao { background: var(--sh-kakao); color: var(--sh-kakao-ink); }
.sh-btn--kakao:not(:disabled):not(:is([aria-disabled="true"],[disabled])):hover {
  background: var(--sh-kakao-hover);
  color: var(--sh-kakao-ink);
}
.sh-btn--kakao:not(:disabled):not(:is([aria-disabled="true"],[disabled])):active {
  background: var(--sh-kakao-hover);
  transform: scale(.97);
}

.sh-btn--soft {
  background: var(--sh-tint);
  color: var(--sh-primary);
  border: 1.5px solid var(--sh-tint-line);
  font-weight: 700;
}
.sh-btn--soft:not(:disabled):not(:is([aria-disabled="true"],[disabled])):hover {
  background: var(--sh-soft-bg-hover);
  border-color: var(--sh-primary);
  color: var(--sh-primary);
}
.sh-btn--soft:not(:disabled):not(:is([aria-disabled="true"],[disabled])):active {
  background: var(--sh-soft-bg-hover);
  transform: scale(.97);
}

.sh-btn--neutral {
  background: var(--sh-canvas-deep);
  color: var(--sh-ink-2);
  border: 1px solid var(--sh-border);
  font-weight: 700;
}
.sh-btn--neutral:not(:disabled):not(:is([aria-disabled="true"],[disabled])):hover {
  background: var(--sh-neutral-bg-hover);
  border-color: var(--sh-border-strong);
  color: var(--sh-ink);
}
.sh-btn--neutral:not(:disabled):not(:is([aria-disabled="true"],[disabled])):active {
  background: var(--sh-neutral-bg-hover);
  transform: scale(.97);
}

.sh-btn--danger-ghost {
  background: var(--sh-surface);
  color: var(--sh-danger);
  border: 1.5px solid var(--sh-danger-line);
  font-weight: 700;
}
.sh-btn--danger-ghost:not(:disabled):not(:is([aria-disabled="true"],[disabled])):hover {
  background: var(--sh-danger-bg);
  border-color: var(--sh-danger);
  color: var(--sh-danger);
}
.sh-btn--danger-ghost:not(:disabled):not(:is([aria-disabled="true"],[disabled])):active {
  background: var(--sh-danger-bg);
  transform: scale(.97);
}

.sh-btn--pill { border-radius: var(--sh-r-pill); }

.sh-cta-signup {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  width: 100%;
  padding: 11px 8px;
  border-radius: var(--sh-r-box);
  background: linear-gradient(180deg, var(--sh-gold), var(--sh-gold-2));

  color: var(--sh-gold-ink);
  box-shadow: var(--sh-sh-gold);
  cursor: pointer;
  transition: transform var(--sh-fast), box-shadow var(--sh-base);
}
.sh-cta-signup:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(255,179,38,.5);
}
.sh-cta-signup-main {
  font-size: var(--sh-t-body);
  font-weight: 700;
  color: var(--sh-gold-ink);
  line-height: 1.25;
}
.sh-cta-signup-sub {
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  color: var(--sh-gold-sub);
  line-height: 1.25;
}

.sh-spinner {
  display: none;
  width: 18px;
  height: 18px;
  border: 2.5px solid rgba(255,255,255,.35);
  border-top-color: #fff;
  border-radius: 50%;
  animation: sh-spin .7s linear infinite;
}
.sh-loading .sh-spinner { display: inline-block; }
.sh-btn.sh-loading { pointer-events: none; }
.sh-btn.sh-loading .sh-submit-label { display: none; }
.sh-submit-progress { display: none; align-items: center; gap: 7px; }
.sh-loading .sh-submit-progress { display: inline-flex; }
.sh-submit-progress .sh-spinner { display: inline-block; }
@keyframes sh-spin { to { transform: rotate(360deg); } }

.sh-field { display: block; }
.sh-field + .sh-field { margin-top: 16px; }

.sh-label {
  display: block;
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  color: var(--sh-muted);
  margin-bottom: 8px;
}

.sh-input,
.sh-textarea,
.sh-select {
  display: block;
  width: 100%;
  border: 1.5px solid var(--sh-border);
  border-radius: var(--sh-r-ctrl);
  padding: 13px 16px;
  font-size: var(--sh-t-body);
  line-height: 1.45;
  color: var(--sh-ink);
  background: var(--sh-surface);
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  transition: border-color 180ms var(--sh-ease-out), box-shadow 180ms var(--sh-ease-out), background 180ms var(--sh-ease-out);
}
.sh-textarea { min-height: 110px; resize: vertical; }

.sh-select {
  padding-right: 38px;
  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='%236B7684' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 13px center;
  cursor: pointer;
}

.sh-input::placeholder,
.sh-textarea::placeholder { color: var(--sh-placeholder); }

@media (hover: hover) and (pointer: fine) {
  .sh-input:hover,
  .sh-textarea:hover,
  .sh-select:hover { border-color: var(--sh-border-strong); }
}

.sh-input:focus,
.sh-textarea:focus,
.sh-select:focus {
  border-color: var(--sh-primary);
  box-shadow: 0 0 0 4px rgba(93,0,200,.10);
}

.sh-input.sh-input-error,
.sh-textarea.sh-input-error {
  border-color: var(--sh-danger-3);
  box-shadow: 0 0 0 4px rgba(229,72,77,.10);
}

.sh-input[readonly],
.sh-textarea[readonly] {
  background: var(--sh-input-off);
  color: var(--sh-muted);
  cursor: default;
}
.sh-input[readonly]:focus { border-color: var(--sh-border); box-shadow: none; }

.sh-input[disabled],
.sh-select[disabled] { background: var(--sh-surface-alt); color: var(--sh-muted-2); cursor: not-allowed; }

.sh-field-message {
  display: none;
  margin-top: 8px;
  font-size: var(--sh-t-sm);
  color: var(--sh-danger);
}
.sh-field-message.show { display: block; }

.sh-help {
  margin-top: 8px;
  font-size: var(--sh-t-xs);
  font-weight: 700;
  color: var(--sh-muted-2);
}

.sh-input-wrap { position: relative; }
.sh-input-wrap .sh-input { padding-right: 48px; }
.sh-eye-btn {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: var(--sh-r-sm);
  color: var(--sh-muted-2);
  transition: color var(--sh-fast), background var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .sh-eye-btn:hover { color: var(--sh-primary); background: rgba(93,0,200,.06); }
}
.sh-eye-btn .sh-eye-off { display: none; }
.sh-eye-btn.on .sh-eye-on { display: none; }
.sh-eye-btn.on .sh-eye-off { display: block; }

.sh-check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: var(--sh-t-sm);
  color: var(--sh-ink-2);
  cursor: pointer;
}
.sh-checkbox {
  -webkit-appearance: none;
  appearance: none;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  border: 1.5px solid var(--sh-border-strong);
  border-radius: var(--sh-radius-chip);
  background: var(--sh-surface);
  cursor: pointer;
  transition: background var(--sh-fast), border-color var(--sh-fast);
}
.sh-checkbox:checked { background: var(--sh-primary); border-color: var(--sh-primary); }
.sh-checkbox:checked {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");
  background-size: 13px;
  background-position: center;
  background-repeat: no-repeat;
}

.sh-checkbox:focus-visible {
  outline: 3px solid var(--sh-focus);
  outline-offset: 2px;
  box-shadow: none;
}
.sh-checkbox:disabled { cursor: not-allowed; border-color: var(--sh-line); background: var(--sh-canvas); opacity: .55; }
.sh-check:has(.sh-checkbox:disabled) { cursor: not-allowed; }

.sh-switch {
  width: 42px;
  height: 24px;
  border-radius: var(--sh-r-pill);
  background: var(--sh-border-off);
  position: relative;
  flex-shrink: 0;
  cursor: pointer;
  transition: background var(--sh-base);
}
.sh-switch::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 4px rgba(0,0,0,.2);
  transform: translateX(0);
  transition: transform var(--sh-base);
}
.sh-switch.on { background: var(--sh-primary); }
.sh-switch.on::after { transform: translateX(18px); }

.form-group { margin-bottom: 16px; }
.form-group:last-child { margin-bottom: 0; }

.control-label,
.form-group > label {
  display: block;
  position: relative;
  padding-left: 13px;
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  color: var(--sh-muted);
  margin-bottom: 8px;
}
.control-label::before,
.form-group > label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--sh-primary);
}

.form-control {
  display: block;
  width: 100%;
  border: 1.5px solid var(--sh-border);
  border-radius: var(--sh-r-ctrl);
  padding: 13px 16px;
  font-size: var(--sh-t-body);
  line-height: 1.45;
  color: var(--sh-ink);
  background: var(--sh-surface);
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  transition: border-color 180ms var(--sh-ease-out), box-shadow 180ms var(--sh-ease-out);
}
select.form-control {
  padding-right: 38px;
  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='%236B7684' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 13px center;
}
textarea.form-control { min-height: 110px; resize: vertical; }
@media (hover: hover) and (pointer: fine) {
  .form-control:hover { border-color: var(--sh-border-strong); }
}
.form-control:focus { border-color: var(--sh-primary); box-shadow: 0 0 0 4px rgba(93,0,200,.10); }
.form-control::placeholder { color: var(--sh-placeholder); }

.help-block,
.form-group small {
  display: block;
  margin-top: 8px;
  font-size: var(--sh-t-xs);
  color: var(--sh-muted-2);
}

.has-error .form-control,
.has-error .form-control:focus {
  border-color: var(--sh-danger-3);
  box-shadow: 0 0 0 4px rgba(229,72,77,.10);
}
.has-error .help-block { color: var(--sh-danger-3); }

.sh-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--sh-border);
  border-radius: var(--sh-r-pill);
  padding: 8px 16px;
  font-size: var(--sh-t-xs);
  font-weight: 700;
  color: var(--sh-ink-2);
  background: var(--sh-surface);
  cursor: pointer;
  white-space: nowrap;

  text-decoration: none;
  transition: border-color var(--sh-fast), color var(--sh-fast), background var(--sh-fast);
}

@media (hover: hover) and (pointer: fine) {
  .sh-chip:not(:disabled):not([aria-disabled="true"]):hover {
    border-color: var(--sh-primary);
    background: var(--sh-tint-soft);
    color: var(--sh-primary);
  }
}
.sh-chip:not(:disabled):not([aria-disabled="true"]):active { background: var(--sh-tint); }
.sh-chip.active {
  border-color: var(--sh-primary);
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.sh-chip:disabled,
.sh-chip[aria-disabled="true"] {
  cursor: not-allowed;
  background: var(--sh-canvas);
  border-color: var(--sh-line);
  color: var(--sh-muted-2);
}

.sh-chips {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.sh-chips--scroll {
  flex-wrap: nowrap;
  overflow-x: auto;
  padding: 2px 0 8px;
  min-height: calc(1em + 38px);
  scrollbar-width: none;
}
.sh-chips--scroll::-webkit-scrollbar { display: none; }
.sh-chips--scroll > * { flex-shrink: 0; }

.sh-tag {
  display: inline-block;
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  border-radius: var(--sh-r-2xs);
  padding: 5px 12px;
}

.sh-badge {
  display: inline-block;
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  border-radius: var(--sh-radius-chip);
  padding: 3px 8px;
  background: var(--sh-tint);
  color: var(--sh-primary);
  white-space: nowrap;
}
.sh-badge--new    { font-size: var(--sh-t-4xs); border-radius: var(--sh-radius-chip); padding: 2px 8px; }
.sh-badge--dot    { background: var(--sh-primary); color: #fff; font-size: var(--sh-t-4xs); border-radius: var(--sh-radius-chip); padding: 2px 5px; }
.sh-badge--ok     { background: var(--sh-ok-bg-2); color: var(--sh-ok-strong); }
.sh-badge--info   { background: var(--sh-status-info-bg); color: var(--sh-status-info); }
.sh-badge--wait   { background: var(--sh-canvas); color: var(--sh-muted-2); }
.sh-badge--danger { background: var(--sh-danger-bg); color: var(--sh-danger); }
.sh-badge--partial { background: var(--sh-warn-bg); color: var(--sh-warn-text); }
.sh-badge--gold   { background: var(--sh-gold-bg); color: var(--sh-gold-text); }
.sh-badge--success { background: var(--sh-status-success-bg); border: 1px solid var(--sh-status-success-line); color: var(--sh-status-success-text); }
.sh-badge--warning { background: var(--sh-status-warning-bg); border: 1px solid var(--sh-status-warning-line); color: var(--sh-status-warning-text); }
.sh-badge--state-info { background: var(--sh-status-info-bg); border: 1px solid var(--sh-status-info-line); color: var(--sh-status-info-text); }
.sh-badge--tier-normal { background: var(--sh-tier-normal-bg); border: 1px solid var(--sh-tier-normal-line); color: var(--sh-tier-normal-text); }
.sh-badge--tier-silver { background: var(--sh-tier-silver-bg); border: 1px solid var(--sh-tier-silver-line); color: var(--sh-tier-silver-text); }
.sh-badge--tier-gold { background: var(--sh-tier-gold-bg); border: 1px solid var(--sh-tier-gold-line); color: var(--sh-tier-gold-text); }
.sh-badge--tier-platinum { background: var(--sh-tier-platinum-bg); border: 1px solid var(--sh-tier-platinum-line); color: var(--sh-tier-platinum-text); }
.sh-badge--tier-diamond { background: var(--sh-tier-diamond-bg); border: 1px solid var(--sh-tier-diamond-line); color: var(--sh-tier-diamond-text); }
.sh-badge--tier-vip { background: var(--sh-tier-vip-bg); border: 1px solid var(--sh-tier-vip-line); color: var(--sh-tier-vip-text); }
.sh-badge--tier-vvip { background: var(--sh-tier-vvip-bg); border: 1px solid var(--sh-tier-vvip-line); color: var(--sh-tier-vvip-text); }

.sh-trust:not(:has(> :not([hidden]))) { display: none; }
.sh-trust {
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
}
.sh-trust > span {
  flex: 0 1 auto;
  min-width: 0;
  text-align: center;
  background: var(--sh-tint-soft);
  color: var(--sh-primary);
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  border-radius: var(--sh-r-sm);
  padding: 8px 4px;
  white-space: nowrap;
}

.sh-stars { color: var(--sh-star); letter-spacing: 1px; font-size: var(--sh-t-3xs); }

.sh-hero .sh-stars,
.sh-promo .sh-stars,
.sh-cta-block .sh-stars { color: var(--sh-star-on-dark); }

.sh-auth-panel .sh-stars { color: var(--sh-star); }
.sh-rate  { font-size: var(--sh-t-xs); color: var(--sh-muted); }
.sh-rate b { color: var(--sh-star-ink); }

.sh-alert {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  border-radius: var(--sh-r-sm);
  padding: 12px 15px;
  font-size: var(--sh-t-sm);
  font-weight: 700;
  line-height: 1.65;
  border: 1px solid transparent;
}
.sh-alert > .sh-icon {
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  margin-top: 2px;
}
.sh-alert > .sh-grow { min-width: 0; }
.sh-alert--ok {
  background: var(--sh-ok-bg);
  border-color: var(--sh-ok-line);
  color: var(--sh-ok-text);
}
.sh-alert--error {
  background: var(--sh-danger-bg);
  border-color: var(--sh-danger-line);
  color: var(--sh-danger);
}
.sh-alert--info {
  background: var(--sh-tint-soft);
  border-color: var(--sh-tint-line);

  color: var(--sh-ink-2);
}
.sh-alert--warn {
  background: var(--sh-gold-bg);
  border-color: var(--sh-gold-line);
  color: var(--sh-gold-text);
}
.sh-alert a { text-decoration: underline; display: inline-flex; align-items: center; min-height: 24px; }
.sh-alert .sh-btn { text-decoration: none; flex-shrink: 0; }

.alert { position: relative; }
#dynamic-captcha-alert-error,
.alert.alert-danger {
  display: block;
  margin: 0 0 16px;
  padding: 12px 40px 12px 15px;
  border-radius: var(--sh-r-sm);
  border: 1px solid var(--sh-danger-line);
  background: var(--sh-danger-bg);
  color: var(--sh-danger);
  font-size: var(--sh-t-sm);
  font-weight: 700;
  line-height: 1.65;
}
.alert .close {
  position: absolute;
  top: 6px;
  right: 8px;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: var(--sh-t-h2);
  line-height: 1;
  cursor: pointer;
  opacity: .7;
  transition: opacity var(--sh-fast);
}
.alert .close:hover { opacity: 1; }
.alert .close:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; border-radius: var(--sh-radius-chip); }

.sh-ns-list {
  list-style: disc;
  padding-left: 20px;
  margin-top: 8px;
  font-weight: 600;
  color: var(--sh-ink);
}

.sh-notice {
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-sm);
  padding: 12px 16px;
  text-align: center;
  font-size: var(--sh-t-xs);
  color: var(--sh-muted-2);
  line-height: 1.7;
}

.sh-card {
  background: var(--sh-surface);
  border: 1px solid var(--sh-line-soft);
  border-radius: var(--sh-r-card);
  box-shadow: var(--sh-sh-card);
  padding: var(--sh-sp-5);
}
.sh-card--flat { box-shadow: var(--sh-surface-flat); }
.sh-card--raised { box-shadow: var(--sh-surface-raised); }
.sh-card--floating { box-shadow: var(--sh-surface-floating); }
.sh-card--tight { padding: var(--sh-sp-4); }

#benefits > .sh-benefit-matrix--cols.sh-mt-14:last-child, .sh-signin-more .sh-benefit-matrix--cols, .sh-benefit-matrix--cols { display: table; width: 100%; table-layout: fixed; }
.sh-benefit-matrix--cols thead th:first-child, .sh-benefit-matrix--cols tbody th { width: 32%; }
.sh-benefit-matrix--cols thead th:nth-child(2) { width: 30%; }
.sh-benefit-matrix--cols thead th:nth-child(3) { width: 18%; }
.sh-benefit-matrix--cols thead th:nth-child(4) { width: 20%; }
.sh-rail-review.sh-card--tight { padding: var(--sh-sp-5); }
.sh-rail-review .sh-card-head { margin-bottom: 12px; }
.sh-rail-review-more { margin-top: 14px; }
@media (max-width: 767px) { .sh-rail-review.sh-card--tight { padding: 20px; } }

.sh-card--flush { padding: 0; overflow: hidden; }

.sh-card--flush > .sh-card-head,
.sh-card--flush > .sh-page-head,
.sh-card--flush > .sh-empty,
.sh-card--flush > .sh-note { padding: var(--sh-sp-4); }
.sh-card--flush > .sh-card-head { padding-bottom: var(--sh-sp-3); }
.sh-card--flush > .sh-card-head + * { margin-top: 0; }
.sh-card--stack { display: flex; flex-direction: column; gap: var(--sh-sp-5); }

.sh-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.sh-card-head + * { margin-top: 16px; }
.sh-card-head--tight + * { margin-top: 12px; }

.sh-box {
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-panel);
  padding: var(--sh-sp-4);
}
.sh-box--tint  { background: var(--sh-tint-soft); border-color: var(--sh-line); }
.sh-box--mute  { background: var(--sh-canvas); }
.sh-box--brand-tint { background: var(--sh-emphasis-brand-bg); border-color: var(--sh-emphasis-brand-line); }
.sh-box--neutral-tint { background: var(--sh-emphasis-neutral-bg); border-color: var(--sh-emphasis-neutral-line); }
.sh-box--warning-tint { background: var(--sh-emphasis-warning-bg); border-color: var(--sh-emphasis-warning-line); }
.sh-box--sm    { border-radius: var(--sh-r-box); padding: 16px; }

.sh-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: var(--sh-sp-3);
}
.sh-tiles--2 { grid-template-columns: 1fr 1fr; }
.sh-tiles--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sh-tile {
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
  padding: 16px;
  min-width: 0;
}
.sh-tile-kicker {
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  color: var(--sh-primary);
  letter-spacing: .4px;
}
.sh-tile-kicker, .sh-tile-title { display: block; }
.sh-tile-title { font-size: var(--sh-t-body); font-weight: 700; margin-top: 8px; }
.sh-tile-body  { font-size: var(--sh-t-xs); color: var(--sh-ink-2); line-height: 1.75; margin-top: 8px; }

.sh-uline {
  display: inline-block;
  font-size: var(--sh-t-body);
  font-weight: 700;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--sh-primary);
}

.sh-live-dot {
  position: relative;
  display: inline-block;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--sh-ok);
}
.sh-live-dot::after {
  content: "";
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  background: var(--sh-ok-pulse);
  animation: sh-pulse 1.6s cubic-bezier(.4,0,.6,1) infinite;
}
@keyframes sh-pulse {
  0%        { transform: scale(.6); opacity: 1; }
  70%, 100% { transform: scale(1.6); opacity: 0; }
}
.sh-live-dot--sm { width: 6px; height: 6px; }
.sh-live-dot--on-dark { background: var(--sh-live); }
.sh-live-dot--on-dark::after { background: var(--sh-live-pulse); }

.sh-ticker {
  height: 36px;
  min-height: 36px;
  overflow: hidden;
  background: var(--sh-surface);
  border-bottom: 1px solid var(--sh-line);
  padding: 0 var(--sh-sp-3);
  display: flex;
  align-items: center;
  gap: var(--sh-sp-2);
  font-size: var(--sh-t-sm);
  font-weight: 600;
  color: var(--sh-ink);
}
.sh-ticker.sh-only-desktop { display: flex; }
.sh-ticker-flag {
  display: inline-flex;
  align-items: center;
  gap: var(--sh-sp-2);
  color: var(--sh-ink);
  font-size: var(--sh-t-sm);
  font-weight: 700;
  flex-shrink: 0;
}
.sh-ticker-msg {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

.sh-ticker-roll {
  position: relative;
  display: block;
  overflow: hidden;
  min-width: 0;
  height: 1.35em;
}
.sh-ticker-line {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transform: translateY(0);
  opacity: 1;
  transition: transform 240ms var(--sh-ease-out), opacity 220ms var(--sh-ease-out);
}
.sh-ticker-line--next {
  position: absolute;
  inset: 0;
  transform: translateY(100%);
  opacity: 0;
}
.sh-ticker-line.is-out {
  position: absolute;
  inset: 0;
  transform: translateY(-100%);
  opacity: 0;
}
@media (prefers-reduced-motion: reduce) {
  .sh-ticker-line { transition: none; }
}

@media (max-width: 767px) {
  .sh-ticker.sh-only-desktop { display: none; }
  .sh-ticker-msg {

    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}
.sh-ticker-tail {
  margin-left: auto;
  min-width: 64px;
  text-align: right;
  color: var(--sh-muted);
  font-size: var(--sh-t-sm);
  font-weight: 700;
  flex-shrink: 0;
  white-space: nowrap;
}
.sh-ticker-tail b { color: var(--sh-ink); }

.sh-notice-strip {
  background: var(--sh-surface);
  border-bottom: 1px solid var(--sh-line);
}
.sh-notice-strip[hidden] { display: none; }

.sh-notice-strip-roll:empty::before {
  content: "";
  position: absolute;
  top: 13px;
  left: var(--sh-sp-2);
  width: 55%;
  height: 12px;
  border-radius: var(--sh-r-2xs);
  background: var(--sh-surface-alt);
}
.sh-notice-strip-roll {
  position: relative;
  height: 38px;
  overflow: hidden;
  list-style: none;
  margin: 0;
  padding: 0;
}
.sh-notice-strip-item {
  position: absolute;
  inset: 0;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 400ms var(--sh-ease-out), transform 400ms var(--sh-ease-out);
  pointer-events: none;
}
.sh-notice-strip-item.is-current { opacity: 1; transform: translateY(0); pointer-events: auto; }
.sh-notice-strip-link {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  height: 100%;
  padding: 0 var(--sh-sp-2);
  color: inherit;
  text-decoration: none;
}
.sh-notice-strip-badge {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 18px;
  padding: 0 5px;
  border-radius: var(--sh-radius-chip);
  font-size: var(--sh-t-caption);
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}
.sh-notice-strip-badge--notice { background: var(--sh-tint); color: var(--sh-primary); }
.sh-notice-strip-badge--benefit { background: var(--sh-gold-bg); color: var(--sh-gold-text); }
.sh-notice-strip-title {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: var(--sh-t-caption);
  font-weight: 600;
  color: var(--sh-ink);
}
.sh-notice-strip-chev { flex: 0 0 auto; font-size: var(--sh-t-caption); color: var(--sh-muted-2); font-weight: 700; }
@media (prefers-reduced-motion: reduce) {
  .sh-notice-strip-item { transition: none; }
}

.sh-stats {
  display: grid;

  grid-template-columns: repeat(auto-fit, minmax(116px, 1fr));
  gap: 8px;
}
.sh-stat {
  background: var(--sh-canvas);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-ctrl);
  padding: 16px 8px;
  text-align: center;
  min-width: 0;
}
.sh-stat--hi { background: var(--sh-canvas); border-color: var(--sh-line); }
.sh-stat--hi .sh-stat-num { color: var(--sh-ink); }
#sh_stat_today,
#total_order_today_mirror { color: var(--sh-primary); }
.sh-stat-num {
  font-size: clamp(15px, 1.5vw, 20px);
  font-weight: 700;
  letter-spacing: -.5px;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.sh-stat-num small { font-size: var(--sh-t-xs); color: var(--sh-muted-2); font-weight: 600; }
.sh-stat-label { font-size: var(--sh-t-3xs); color: var(--sh-muted); margin-top: 3px; }

.sh-hero {
  position: relative;
  overflow: hidden;
  border-radius: var(--sh-r-hero);
  padding: 42px 38px;
  min-height: 210px;
  color: #fff;
  background: linear-gradient(115deg, var(--sh-primary-night), var(--sh-primary-ink) 55%, var(--sh-primary));
  box-shadow: var(--sh-sh-hero);
  transition: background .28s var(--sh-ease);
}
.sh-hero[data-slide="1"] { background: linear-gradient(115deg, var(--sh-primary-ink), var(--sh-grad-mid) 55%, var(--sh-grad-hi)); }
.sh-hero[data-slide="2"] { background: linear-gradient(115deg, var(--sh-grad-night), var(--sh-grad-night-mid) 55%, var(--sh-grad-night-hi)); }
.sh-hero::before,
.sh-hero::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}
.sh-hero::before {
  top: -70px; right: -50px;
  width: 260px; height: 260px;
  background: radial-gradient(circle, rgba(255,212,59,.22), transparent 68%);
}
.sh-hero::after {
  bottom: -90px; left: -60px;
  width: 300px; height: 300px;
  background: radial-gradient(circle, rgba(140,60,255,.45), transparent 70%);
}
.sh-hero > * { position: relative; }
.sh-hero-brand {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  font-size: var(--sh-t-lead);
  font-weight: 700;
}
.sh-hero-brand img,
.sh-hero-brand svg { width: 22px; height: 22px; flex-shrink: 0; }

.sh-hero-title {
  font-size: var(--sh-t-display-4);
  font-weight: 700;
  letter-spacing: -.5px;
  line-height: 1.35;
  white-space: pre-line;
  min-height: calc(var(--sh-t-display-4) * 1.35 * 2);
}
.sh-hero-sub {
  font-size: var(--sh-t-body);
  color: var(--sh-on-brand-2);
  opacity: 1;
  margin-top: 9px;
  line-height: 1.6;
  min-height: calc(var(--sh-t-body) * 1.6 * 2);
}
.sh-hero-cta { margin-top: 16px; }
.sh-hero-idx {
  position: absolute;
  right: 18px;
  bottom: 16px;
  background: rgba(255,255,255,.16);
  border-radius: var(--sh-r-pill);
  padding: 5px 12px;
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  color: #fff;
  cursor: pointer;
}
.sh-hero-dots { display: none; gap: 5px; margin-top: 16px; }
.sh-hero-dots i {
  display: block;
  width: 6px;
  height: 6px;
  border-radius: var(--sh-r-pill);
  background: rgba(255,255,255,.35);
  transition: width 240ms var(--sh-ease-out), background 220ms var(--sh-ease-out);
}
.sh-hero-dots i.on { width: 18px; background: #fff; }

.sh-promo {
  position: relative;
  overflow: hidden;
  border-radius: var(--sh-r-panel);
  padding: 20px 24px;
  color: var(--sh-ink);
  background: var(--sh-tint);
  border: 1px solid var(--sh-tint-line);
  box-shadow: var(--sh-sh-card);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.sh-promo::before { display: none; }
.sh-promo > * { position: relative; }
.sh-promo-kicker {
  display: inline-block;
  background: rgba(93,0,200,.08);
  color: var(--sh-primary-ink);
  border-radius: var(--sh-r-pill);
  padding: 4px 12px;
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  margin-bottom: 8px;
}
.sh-promo-title { font-size: var(--sh-t-h2); font-weight: 700; letter-spacing: -.3px; }
.sh-promo-title span { color: var(--sh-primary); }
.sh-promo-sub { font-size: var(--sh-t-xs); color: var(--sh-muted); margin-top: 4px; }
.sh-promo-side {
  display: flex;
  flex-direction: column;
  gap: var(--sh-sp-2);
  flex-shrink: 0;
}
.sh-promo-dismiss {
  font-size: var(--sh-t-2xs);
  color: var(--sh-ink-2);
  text-align: center;
  cursor: pointer;
}

.sh-cta-block {
  position: relative;
  overflow: hidden;
  border-radius: var(--sh-r-card);
  padding: 24px 20px;
  color: #fff;
  text-align: center;
  background: linear-gradient(115deg, var(--sh-primary-night), var(--sh-primary-ink) 55%, var(--sh-primary));
}
.sh-cta-block::before {
  content: "";
  position: absolute;
  top: -50px; right: -30px;
  width: 160px; height: 160px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,212,59,.2), transparent 68%);
  pointer-events: none;
}
.sh-cta-block > * { position: relative; }
.sh-cta-block .sh-sub { color: var(--sh-on-brand-2); }
.sh-cta-title { color: var(--sh-on-brand); }
.sh-cta-desc { font-size: var(--sh-t-sm); color: var(--sh-on-brand-2); margin-top: 8px; }

.sh-step {
  display: flex;
  align-items: center;
  gap: var(--sh-sp-2);
  margin-bottom: 12px;
}
.sh-step-no {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  border: 1px solid var(--sh-ink);
  border-radius: 50%;
  background: var(--sh-surface);
  color: var(--sh-ink);
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sh-step-title { font-size: var(--sh-t-h3); font-weight: 600; line-height: 1.4; }

.sh-step-title span:not(.sh-nowrap) {
  font-size: var(--sh-t-xs);
  font-weight: 400;
  color: var(--sh-muted-2);
  margin-left: 4px;
}
.sh-step-side { margin-left: auto; }

.sh-plats {
  display: grid;
  grid-template-columns: repeat(auto-fill, var(--sh-plat-cell));
  justify-content: center;
  gap: var(--sh-plat-gap);
}

.sh-plats--6 { grid-template-columns: repeat(auto-fill, var(--sh-plat-cell)); }
.sh-plat {
  display: flex;
  flex-direction: column;
  align-items: center;

  gap: 8px;

  padding: 4px 0 2px;
  border-radius: var(--sh-r-ctrl);
  color: var(--sh-ink-2);
  cursor: pointer;
  min-width: 0;
  transition: color var(--sh-fast), background var(--sh-fast), border-color var(--sh-fast), transform 120ms var(--sh-ease);
}

.sh-plat.active {
  color: var(--sh-primary);
  background: transparent;
  box-shadow: none;
}

.sh-plat-icon {
  position: relative;
  width: var(--sh-plat-tile);
  max-width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: var(--sh-plat-radius);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--sh-plat-mark-bg, var(--sh-brand-etc));

  overflow: hidden;
  box-shadow: var(--sh-sh-tile);
  transition: box-shadow var(--sh-fast), transform var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .sh-plat:hover .sh-plat-icon {
    box-shadow: 0 0 0 1.5px var(--sh-tint-line), 0 4px 12px rgba(60,10,120,.18);
    transform: translateY(-1px);
  }
}
.sh-plat.active .sh-plat-icon {
  background: var(--sh-primary);
  color: var(--sh-on-brand);
  box-shadow: 0 0 0 2px var(--sh-surface), 0 0 0 4px var(--sh-primary), 0 4px 12px rgba(93,0,200,.18);
}
.sh-plat.active .sh-plat-icon svg { color: var(--sh-on-brand); }

.sh-plat-icon img,
.sh-plat-icon svg {
  width: var(--sh-plat-glyph);
  height: var(--sh-plat-glyph);
  max-width: 50%;
  max-height: 50%;
}

.sh-plat-label {

  font-size: var(--sh-t-help);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.3px;
  font-weight: 600;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sh-plat.active .sh-plat-label { font-weight: 700; }

.sh-plat-icon[data-brand="favorites"] { --sh-plat-mark-bg: var(--sh-primary); --sh-plat-mark-ink: var(--sh-primary); }
.sh-crumb-ic[data-brand="favorites"] { background: var(--sh-tint); color: var(--sh-primary); }
.sh-plat-icon[data-brand="event"], .sh-guide-tab-ic[data-brand="event"] { --sh-plat-mark-bg: linear-gradient(135deg, #FFD43B, #FFB326); --sh-plat-mark-ink: #FFB326; --sh-plat-mark-fg: var(--sh-gold-ink); color: var(--sh-gold-ink); }
.sh-plat-icon[data-brand="instagram"], .sh-guide-tab-ic[data-brand="instagram"] { --sh-plat-mark-bg: linear-gradient(135deg, #7024C4, #C21975 55%, #F24141); --sh-plat-mark-ink: #C21975; }
.sh-plat-icon[data-brand="youtube"], .sh-guide-tab-ic[data-brand="youtube"] { --sh-plat-mark-bg: #FF0000; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="facebook"], .sh-guide-tab-ic[data-brand="facebook"] { --sh-plat-mark-bg: #1877F2; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="tiktok"], .sh-guide-tab-ic[data-brand="tiktok"] { --sh-plat-mark-bg: #111111; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="x"], .sh-guide-tab-ic[data-brand="x"] { --sh-plat-mark-bg: #111111; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="thread"], .sh-guide-tab-ic[data-brand="thread"] { --sh-plat-mark-bg: #111111; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="telegram"], .sh-guide-tab-ic[data-brand="telegram"] { --sh-plat-mark-bg: #229ED9; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="kakao"], .sh-guide-tab-ic[data-brand="kakao"] { --sh-plat-mark-bg: #FEE500; --sh-plat-mark-ink: #191919; --sh-plat-mark-fg: #191919; color: #191919; }

.sh-plat-icon[data-brand="nportal"], .sh-guide-tab-ic[data-brand="nportal"] { --sh-plat-mark-bg: #03C75A; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="nplace"], .sh-guide-tab-ic[data-brand="nplace"] { --sh-plat-mark-bg: #FFFFFF; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="ndist"], .sh-guide-tab-ic[data-brand="ndist"] { --sh-plat-mark-bg: #FFFFFF; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="nshop"], .sh-guide-tab-ic[data-brand="nshop"] { --sh-plat-mark-bg: #0E4139; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="coupang"], .sh-guide-tab-ic[data-brand="coupang"] { --sh-plat-mark-bg: #FFFFFF; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="musinsa"], .sh-guide-tab-ic[data-brand="musinsa"] { --sh-plat-mark-bg: #000000; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="oliveyoung"], .sh-guide-tab-ic[data-brand="oliveyoung"] { --sh-plat-mark-bg: #82DC28; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="kurly"], .sh-guide-tab-ic[data-brand="kurly"] { --sh-plat-mark-bg: #5F0080; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="baemin"], .sh-guide-tab-ic[data-brand="baemin"] { --sh-plat-mark-bg: #0BEFD3; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }

.sh-plat-icon[data-brand="carrot"], .sh-guide-tab-ic[data-brand="carrot"] { --sh-plat-mark-bg: #FFFFFF; --sh-plat-mark-ink: var(--sh-brand-carrot); }
.sh-plat-icon[data-brand="ohou"], .sh-guide-tab-ic[data-brand="ohou"] { --sh-plat-mark-bg: #FFFFFF; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="traffic"], .sh-guide-tab-ic[data-brand="traffic"] { --sh-plat-mark-bg: #5D00C8; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }

.sh-plat-icon[data-brand="seo"], .sh-guide-tab-ic[data-brand="seo"] { --sh-plat-mark-bg: #315CA8; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }
.sh-plat-icon[data-brand="appmarketing"], .sh-guide-tab-ic[data-brand="appmarketing"] { --sh-plat-mark-bg: #43008F; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }

.sh-plat-icon[data-brand="spotify"], .sh-guide-tab-ic[data-brand="spotify"] { --sh-plat-mark-bg: #1ED760; --sh-plat-mark-ink: var(--sh-plat-mark-bg); --sh-plat-mark-fg: #000000; color: #000000; }
.sh-plat-icon[data-brand="pinterest"], .sh-guide-tab-ic[data-brand="pinterest"] { --sh-plat-mark-bg: #E60023; --sh-plat-mark-ink: var(--sh-plat-mark-bg); }

.sh-plat-icon > svg.sh-plat-art { width: 100%; height: 100%; max-width: 100%; max-height: 100%; }

[data-brand="coupang"],
[data-brand="ndist"],
[data-brand="nplace"],
[data-brand="ohou"] { --sh-plat-mark-ring: rgba(17,17,17,.14); }
.sh-plat-icon::after,
.sh-chip-glyph::after,
.sh-svcguide .sh-guide-tab-ic::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 0 1px var(--sh-plat-mark-ring, transparent);
  pointer-events: none;
}
.sh-chip-glyph,
.sh-svcguide .sh-guide-tab-ic { position: relative; }
.sh-plat-icon[data-brand="etc"], .sh-guide-tab-ic[data-brand="etc"] { --sh-plat-mark-bg: var(--sh-brand-etc); --sh-plat-mark-ink: var(--sh-plat-mark-bg); }

.sh-picker {
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-panel);
  overflow: hidden;
}
.sh-picker-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 16px;
  border-bottom: 1px solid var(--sh-line-hair-2);
}

.sh-picker-head > .sh-crumb { flex: 1 1 auto; min-width: 0; }
.sh-picker-head > .sh-grow  { flex: 1 1 auto; min-width: 240px; max-width: min(560px, 100%); }
.sh-picker-head > .sh-fav,
.sh-picker-head > [class*="sh-fav"] { flex: 0 0 auto; }
@media (max-width: 767px) {
  .sh-picker-head { flex-wrap: wrap; }
  .sh-picker-head > .sh-crumb { flex: 1 0 100%; order: -1; }
  .sh-picker-head > .sh-grow { flex: 1 1 auto; max-width: none; }
}
.sh-crumb {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--sh-t-body);
  font-weight: 700;
  min-width: 0;
}
.sh-crumb i { color: var(--sh-sep); font-style: normal; }
.sh-crumb-plat { flex-shrink: 0; color: var(--sh-primary); white-space: nowrap; }
.sh-crumb--shrink { min-width: 0; flex: 0 1 auto; }
.sh-crumb-step {
  min-width: 0;
  padding: var(--sh-sp-1);
  border: 0;
  border-radius: var(--sh-r-xs);
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.sh-crumb-step:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
.sh-crumb-step:last-child { flex: 1 1 auto; overflow: hidden; white-space: nowrap; }
@media (hover: hover) and (pointer: fine) {
  .sh-crumb-step:hover { background: var(--sh-tint-soft); }
}

.sh-fav {
  font-size: var(--sh-t-xs);
  color: var(--sh-muted-2);
  border: 1px solid var(--sh-border);
  border-radius: var(--sh-r-pill);
  padding: 5px 12px;
  cursor: pointer;
  flex-shrink: 0;
  transition: border-color var(--sh-fast), color var(--sh-fast);
}
.sh-fav.active { border-color: var(--sh-gold-2); color: var(--sh-gold-text); }
@media (hover: hover) and (pointer: fine) {
  .sh-fav:hover { border-color: var(--sh-gold-2); color: var(--sh-gold-text); }
}

.sh-picker-body {
  display: grid;
  grid-template-columns: 190px 1fr;

  min-height: 160px;
}

.sh-cats {
  border-right: 1px solid var(--sh-line);
  padding: 0;
  max-height: 420px;
  overflow-y: auto;
  background: var(--sh-canvas);
}

.sh-cat {

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  padding: 16px 12px;
  font-size: var(--sh-t-body);
  font-weight: 400;
  line-height: 1.3;
  color: var(--sh-ink-2);
  background: transparent;
  border-left: 3px solid transparent;
  border-bottom: 1px solid var(--sh-line-hair);
  cursor: pointer;
  text-align: left;
  word-break: keep-all;
  overflow: hidden;
  transition: background var(--sh-fast), color var(--sh-fast), border-color var(--sh-fast), transform 120ms var(--sh-ease);
}
@media (hover: hover) and (pointer: fine) {
  .sh-cat:hover { background: var(--sh-tint-soft); }
}

.sh-cat.active {
  color: var(--sh-primary);
  font-weight: 700;
  background: var(--sh-tint-soft);
  border-left-color: transparent;
}

.sh-rows {
  min-height: 160px;
  max-height: 300px;
  overflow-y: auto;
  padding: 0;
  align-self: start;
}

.sh-rows:has(.sh-skel--row) { min-height: 197px; }

.sh-cats > :last-child,
.sh-rows > :last-child { border-bottom: 0; }
.sh-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 11px 12px;
  font-size: var(--sh-t-body);
  font-weight: 400;
  color: var(--sh-ink-2);
  background: var(--sh-surface);
  border-bottom: 1px solid var(--sh-line-hair);
  cursor: pointer;
  text-align: left;
  width: 100%;
  transition: background var(--sh-fast), color var(--sh-fast), transform 120ms var(--sh-ease);
}
@media (hover: hover) and (pointer: fine) {
  .sh-row:hover { background: var(--sh-tint-soft); }
}

.sh-row.active {
  font-weight: 700;
  color: var(--sh-primary);
  background: var(--sh-tint);
  box-shadow: inset 3px 0 0 var(--sh-primary);
}

.sh-row-name,
.sh-row > span:first-child {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sh-row { min-height: 48px; }
.sh-row-variant,
.sh-row-consult {
  flex-shrink: 0;
  max-width: 60px;

  padding: 2px 7px;
  font-size: var(--sh-t-4xs);
  line-height: 1.5;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sh-row-name,
.sh-row > span:first-child { min-width: 108px; }
.sh-row-rating {
  flex: 0 0 auto;
  color: var(--sh-muted);
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1.4;
  white-space: nowrap;
}
.sh-row.active .sh-row-rating { color: var(--sh-primary); }

.sh-chip.sh-row-consult,
.sh-row-consult {
  max-width: none;
  padding: 2px 7px;
  font-size: var(--sh-t-4xs);
  line-height: 1.5;
  border-radius: var(--sh-radius-chip);
  border: 0;
  background: var(--sh-gold-bg);
  color: var(--sh-gold-text);
  font-weight: 700;
}

.sh-chip.sh-row-down,
.sh-row-down {
  flex-shrink: 0;
  max-width: none;
  padding: 2px 7px;
  font-size: var(--sh-t-4xs);
  line-height: 1.5;
  border-radius: var(--sh-radius-chip);
  border: 0;
  background: var(--sh-danger-bg);
  color: var(--sh-danger);
  font-weight: 700;
  white-space: nowrap;
}
[data-sh-related] .sh-row > .sh-sub { margin-left: auto; }

.sh-row-tag {
  flex-shrink: 0;
  max-width: 96px;
  font-style: normal;
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  line-height: 1.4;
  color: var(--sh-primary);
  background: var(--sh-tint);
  border-radius: var(--sh-radius-chip);
  padding: 2px 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sh-row-variant {
  flex-shrink: 0;
  font-style: normal;
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  line-height: 1.4;
  color: var(--sh-muted);
  background: var(--sh-canvas);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-radius-chip);
  padding: 2px 8px;
  white-space: nowrap;
}

.sh-row.active .sh-row-tag,
.sh-row.active .sh-row-variant { background: var(--sh-surface); }

.sh-picker { container-type: inline-size; }

.sh-picker .sh-row { min-height: 62px; }
.sh-picker .sh-row-name,
.sh-picker .sh-row > span:first-child {
  white-space: normal;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.sh-cat-name {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  width: 100%;
}
.sh-cat-tag {
  display: inline-block;
  margin-top: 4px;
  padding: 2px 7px;
  border: 1px solid var(--sh-gold-line);
  border-radius: var(--sh-r-pill);
  background: var(--sh-gold-bg);
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -.01em;
  white-space: nowrap;
  color: var(--sh-gold-text);
  font-style: normal;
}

.sh-cat.active .sh-cat-tag { border-color: var(--sh-gold-2); }

.sh-cat-tag--hot {
  border-color: var(--sh-tag-hot-line);
  background: var(--sh-tag-hot-bg);
  color: var(--sh-tag-hot-ink);
}
.sh-cat-tag--event {
  border-color: #DCC9FA;
  background: #F4EDFD;
  color: var(--sh-tag-event-ink);
}
.sh-cat.active .sh-cat-tag--hot   { border-color: var(--sh-tag-hot-line-on); }
.sh-cat.active .sh-cat-tag--event { border-color: var(--sh-tag-event-line); }

.sh-row-tag {
  max-width: 84px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex-shrink: 0;
}

@container (min-width: 494px) {

  .sh-row-name,
  .sh-row > span:first-child { min-width: 72px; }
  .sh-row-variant { max-width: 52px; }
}

@container (max-width: 493px) {
  .sh-picker-body { grid-template-columns: 118px 1fr; min-height: 0; }
  .sh-row-name { order: 0; }
  .sh-row-rating { order: 1; }
  .sh-cats { max-height: 268px; }
  .sh-cat {
    padding: 8px 9px;
    font-size: var(--sh-t-2xs);
    line-height: 1.35;
    white-space: normal;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
  }
  .sh-rows { max-height: 268px; overflow-y: auto; }
}

.sh-row-price {
  font-size: var(--sh-t-3xs);
  font-weight: 400;
  color: var(--sh-muted);
  flex-shrink: 0;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.sh-row.active .sh-row-price { color: var(--sh-primary); font-weight: 700; }
.sh-row-empty {
  padding: 40px 16px;
  text-align: center;
  font-size: var(--sh-t-xs);
  color: var(--sh-muted-2);
}

.sh-brief { padding: 16px 16px 16px; border-top: 1px solid var(--sh-line-hair-2); }

.sh-brief .sh-row-between { align-items: flex-start; }

.sh-brief .sh-h3 { font-size: var(--sh-t-body); }

.sh-usage {
  background: var(--sh-tint);
  color: var(--sh-primary);
  text-align: center;
  font-size: var(--sh-t-xs);
  font-weight: 700;
  border-radius: var(--sh-r-xs);
  padding: 8px 12px;
  margin-bottom: 16px;
}

.sh-tabs {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-bottom: 16px;
}
.sh-tab {
  border: 1.5px dashed var(--sh-border);
  background: var(--sh-surface-mute);
  color: var(--sh-muted-2);
  border-radius: var(--sh-r-sm);
  padding: 11px 4px;
  text-align: center;
  font-size: var(--sh-t-body);
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
  transition: color var(--sh-dur-fast) var(--sh-ease-out), background var(--sh-dur-fast) var(--sh-ease-out), border-color var(--sh-dur-fast) var(--sh-ease-out), transform var(--sh-dur-fast) var(--sh-ease-out);
}
.sh-tab [data-sh-review-block] { display: inline-flex; align-items: center; margin-left: 3px; }
.sh-tab [data-sh-review-count] { display: inline-flex; align-items: center; min-width: 18px; margin-left: 2px; padding: 1px 4px; border-radius: var(--sh-r-pill); background: var(--sh-tint); color: var(--sh-primary); font-size: var(--sh-t-3xs); line-height: 1.2; }
.sh-tab.active {
  border-style: solid;
  border-color: var(--sh-primary);
  background: var(--sh-surface);
  color: var(--sh-ink);
}
.sh-tabpanel { display: none; }
.sh-tabpanel.active { display: block; animation: sh-panel-in var(--sh-dur) var(--sh-ease-out) both; }
@keyframes sh-panel-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

.sh-segtabs {
  display: flex;
  gap: 8px;
  background: var(--sh-canvas);
  border-radius: var(--sh-r-ctrl);
  padding: 5px;
}
.sh-segtab {
  flex: 1;
  padding: 9px 4px;
  border-radius: var(--sh-r-sm);
  font-size: var(--sh-t-sm);
  font-weight: 700;
  color: var(--sh-muted-2);
  text-align: center;
  cursor: pointer;
  transition: background var(--sh-fast), color var(--sh-fast), box-shadow var(--sh-fast), transform 120ms var(--sh-ease);
}
.sh-segtab.active {
  background: var(--sh-surface);
  color: var(--sh-ink);
  box-shadow: 0 1px 4px rgba(42,8,84,.12);
}

.sh-doc-h {
  font-size: var(--sh-t-body);
  font-weight: 700;
  margin-bottom: 7px;
  padding-bottom: 7px;
  border-bottom: 1px solid var(--sh-line-hair);
}
.sh-doc-body {
  font-size: var(--sh-t-body);
  color: var(--sh-ink-2);
  line-height: 2;
  white-space: pre-line;
}

#fields [data-sh-slotted] .control-label,
#fields .control-label[data-sh-slotted] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}
#fields [data-sh-slotted].form-group { margin: 0; }

.sh-inline-cta {
  font-size: var(--sh-t-xs);
  color: var(--sh-muted);
  line-height: 1.6;
}
.sh-inline-cta > a {
  font-weight: 700;
  color: var(--sh-primary);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1.5px;

  padding: 3px 1px;
  margin: -3px -1px;
}
@media (hover: hover) and (pointer: fine) {
  .sh-inline-cta > a:hover { color: var(--sh-primary-hover); }
}

.sh-lead.sh-clamp-2 {
  display: block;
  -webkit-line-clamp: none;
  line-clamp: none;
  overflow: visible;
}

.sh-linknote { font-size: var(--sh-t-xs); font-weight: 700; color: var(--sh-muted-2); margin-top: 8px; }
.sh-linknote--ok  { color: var(--sh-ok-text); }
.sh-linknote--bad { color: var(--sh-danger); }
.sh-composite-fields { margin-top: 12px; }

.sh-repeat {
  border: 1.5px solid var(--sh-line);
  background: var(--sh-surface);
  border-radius: var(--sh-r-box);
  padding: 16px 16px;
  transition: border-color var(--sh-fast), background var(--sh-fast);
}
.sh-repeat.on { border-color: var(--sh-primary); background: var(--sh-tint-soft); }

.sh-repeat-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.sh-repeat-head > div { min-width: 0; }
.sh-repeat-title { font-size: var(--sh-t-body); font-weight: 700; }
.sh-repeat-sub { font-size: var(--sh-t-xs); color: var(--sh-muted); margin-top: 4px; }

#fields [data-sh-added="repeat-head"].sh-repeat.on {
  border-bottom: 0;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  padding-bottom: 16px;
}
#fields [data-sh-added="repeat-head"].sh-repeat + #dripfeed-options {
  border: 1.5px solid var(--sh-line);
  border-top: 0;
  border-bottom-left-radius: var(--sh-r-box);
  border-bottom-right-radius: var(--sh-r-box);
  background: var(--sh-surface);
  padding: 0 16px 16px;
}
#fields [data-sh-added="repeat-head"].sh-repeat.on + #dripfeed-options {
  border-color: var(--sh-primary);
  background: var(--sh-tint-soft);
}

#fields [data-sh-added="repeat-head"] .sh-repeat-head { cursor: pointer; }

#fields #order_check > .form-group__checkbox,
#fields #order_check > .form-group__label-title {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}
#fields #order_check { position: relative; }

#dripfeed-options input[readonly],
#dripfeed-options input[name="OrderForm[total_quantity]"] {
  background: var(--sh-input-off);
  color: var(--sh-muted-2);
  cursor: default;
  font-variant-numeric: tabular-nums;
}
#dripfeed-options input[name="OrderForm[total_quantity]"]:focus { box-shadow: none; border-color: var(--sh-border); }

.sh-total {
  background: var(--sh-total-bg);
  border-radius: var(--sh-r-ctrl);
  padding: 15px 16px;
}

.sh-chip--guide {
  border: 1px solid var(--sh-primary-line, var(--sh-line));
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-weight: 700;
  flex-shrink: 0;
}
.sh-guide-link {
  min-height: 44px;
  color: var(--sh-ink);
  font-size: var(--sh-t-sm);
  font-weight: 600;
}
@media (hover: hover) and (pointer: fine) {
  .sh-chip--guide:hover { background: var(--sh-surface); border-color: var(--sh-primary); }
  .sh-guide-link:hover { color: var(--sh-primary); }
}

.sh-total-cap {
  color: var(--sh-primary);
  font-weight: 700;
  font-size: var(--sh-t-xs);
  line-height: 1.3;
  margin-bottom: 4px;
}

.sh-total-value {
  font-size: var(--sh-t-h1);
  font-weight: 700;
  color: var(--sh-primary);
  letter-spacing: -.5px;
  line-height: 1.25;
  font-variant-numeric: tabular-nums;
}

.sh-money-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  flex-wrap: wrap;
}
.sh-money-head .sh-step-title {
  font-size: var(--sh-t-body);
  font-weight: 700;
  color: var(--sh-ink);
}
.sh-money-head .sh-step-title span {
  display: inline;
  font-size: var(--sh-t-xs);
  font-weight: 400;
  color: var(--sh-muted-2);
}
.sh-money-head .sh-sub { font-size: var(--sh-t-xs); color: var(--sh-muted); }
.sh-money-head--flat { margin-bottom: 0; }
.sh-money-balance { font-size: var(--sh-t-lead); }

.sh-orderbar {
  position: fixed;
  left: var(--sh-sidebar);
  right: 0;
  bottom: 0;
  z-index: var(--sh-z-bar);
  display: flex;
  justify-content: center;
  background: var(--sh-surface);
  border-top: 1px solid var(--sh-line);
  box-shadow: 0 -8px 24px rgba(27,24,48,.08);
  pointer-events: none;
}
.sh-orderbar-inner {
  width: 100%;
  max-width: var(--sh-maxw);
  padding: var(--sh-sp-2) var(--sh-sp-5);
  pointer-events: auto;
}
.sh-orderbar-body {
  background: var(--sh-surface);
  padding: 0;
  display: flex;
  align-items: center;
  gap: var(--sh-sp-3);
}
.sh-orderbar-copy {
  min-width: 0;
  flex: 1;
  display: flex;
  align-items: baseline;
  gap: var(--sh-sp-3);
}
.sh-orderbar-name {
  color: var(--sh-ink);
  font-size: var(--sh-t-body);
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sh-orderbar-total {
  color: var(--sh-ink);
  font-size: var(--sh-t-card);
  font-weight: 700;
  letter-spacing: -.3px;
  flex-shrink: 0;
  font-variant-numeric: tabular-nums;
}

.sh-scrim {
  position: fixed;
  inset: 0;
  background: rgba(23,3,46,.55);
  z-index: var(--sh-z-modal);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
  overflow-y: auto;
  opacity: 0;
  transition: opacity var(--sh-dur) var(--sh-ease-out);
}
.sh-scrim.open { display: flex; opacity: 1; }
.sh-scrim.open.is-closing { opacity: 0; }

.sh-modal {
  --sh-modal-pad: 28px;
  background: var(--sh-surface);
  border-radius: var(--sh-r-card);
  width: 420px;
  max-width: 100%;
  padding: 28px;
  box-shadow: var(--sh-sh-modal);
  animation: sh-rise var(--sh-dur-slow) var(--sh-ease-out) both;

  max-height: calc(100vh - 40px);
  max-height: calc(100dvh - 40px);
  overflow-y: auto;
  overscroll-behavior: contain;
}

.sh-modal-head {
  position: sticky;
  top: calc(-1 * var(--sh-modal-pad, 28px));
  z-index: 1;
  background: var(--sh-surface);
  padding-top: var(--sh-modal-pad, 28px);
  margin-top: calc(-1 * var(--sh-modal-pad, 28px));
}
.sh-modal--wide { width: 560px; }
.sh-modal--xl   { width: 720px; }
.sh-modal-title { font-size: var(--sh-t-h2); font-weight: 700; letter-spacing: -.3px; }
.sh-modal-sub   { font-size: var(--sh-t-sm); color: var(--sh-muted-2); margin-top: 5px; line-height: 1.6; }
.sh-modal-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.sh-modal-x {
  width: 32px;
  height: 32px;
  border-radius: var(--sh-r-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--sh-muted-2);
  font-size: var(--sh-t-h2);
  flex-shrink: 0;
  cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
  .sh-modal-x:hover { background: var(--sh-canvas); color: var(--sh-ink); }
}
.sh-modal-actions { display: flex; gap: 9px; margin-top: 16px; }
.sh-modal-actions > * { flex: 1; }
.sh-modal-actions > .sh-grow { flex: 1.6; }

.sh-celebration-mark {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: var(--sh-sp-4);
  border: 1px solid var(--sh-primary-line);
  border-radius: var(--sh-r-pill);
  background: var(--sh-tint);
  color: var(--sh-primary);
  animation: sh-celebrate-in var(--sh-dur-slow) var(--sh-ease-spring) both;
}
.sh-celebration-mark svg { width: 22px; height: 22px; }
@keyframes sh-celebrate-in {
  from { opacity: 0; transform: scale(.86); }
  to { opacity: 1; transform: none; }
}

.sh-recap {
  background: var(--sh-tint-soft);
  border-radius: var(--sh-r-box);
  padding: 16px 16px;
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.sh-recap-row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  font-size: var(--sh-t-body);
}
.sh-recap-row > span { color: var(--sh-muted); flex-shrink: 0; }
.sh-recap-row > b { text-align: right; }
.sh-recap-total {
  border-top: 1px solid var(--sh-line);
  padding-top: 12px;
  display: flex;
  justify-content: space-between;
  font-size: var(--sh-t-lead);
}
.sh-recap-total b:last-child { color: var(--sh-primary); font-size: var(--sh-t-h2); }

.sh-done {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 8px 0 2px;
}
.sh-done-mark {
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background: var(--sh-ok-bg-2);
  color: var(--sh-ok-strong);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--sh-t-display-3);
  font-weight: 700;
}
.sh-done-mark--wait { background: var(--sh-canvas); color: var(--sh-muted); }
.sh-done-mark--error { background: var(--sh-danger-bg); color: var(--sh-danger); }

@keyframes sh-rise {
  from { opacity: 0; transform: translateY(14px); }
  to   { opacity: 1; transform: none; }
}
.sh-rise { animation: sh-rise .55s var(--sh-ease) both; }

@keyframes sh-shake {
  10%, 90%      { transform: translateX(-1px); }
  20%, 80%      { transform: translateX(2px); }
  30%, 50%, 70% { transform: translateX(-3px); }
  40%, 60%      { transform: translateX(3px); }
}
.sh-shake { animation: sh-shake .45s cubic-bezier(.36,.07,.19,.97) both; }

.sh-topbar {
  display: none;
  position: sticky;
  top: 0;
  z-index: var(--sh-z-head);
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 16px;
  background: rgba(255,255,255,.94);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--sh-line);
}
.sh-burger {
  width: 34px;
  height: 34px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4.5px;
  flex-shrink: 0;
  cursor: pointer;
}
.sh-burger i {
  display: block;
  width: 19px;
  height: 2px;
  border-radius: var(--sh-radius-chip);
  background: var(--sh-ink);
}
.sh-burger i:last-child { width: 13px; }
.sh-topbar-brand {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--sh-ink);
}
.sh-topbar-brand img,
.sh-topbar-brand svg { width: 28px; height: 28px; flex-shrink: 0; }
.sh-topbar-brand span { font-size: var(--sh-t-card); font-weight: 700; letter-spacing: -.4px; }
.sh-point-pill {
  display: flex;
  align-items: center;
  gap: 4px;
  background: var(--sh-tint);
  border-radius: var(--sh-r-pill);
  padding: 7px 12px;
  flex-shrink: 0;
  cursor: pointer;
}
.sh-point-pill b { font-size: var(--sh-t-2xs); font-weight: 700; color: var(--sh-primary); font-variant-numeric: tabular-nums; }
.sh-point-pill i {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  font-style: normal;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.sh-topbar-auth { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }

.sh-strip {
  display: none;
  min-height: 36px;

  background: linear-gradient(90deg, #241238, #3A1A66);
  color: rgba(255, 255, 255, .72);
  align-items: center;
  gap: var(--sh-sp-2);
  padding: 0 var(--sh-sp-3);
  font-size: var(--sh-t-sm);
  font-weight: 600;
}
.sh-strip-label { flex: 0 0 auto; color: var(--sh-ok); white-space: nowrap; }

.sh-drawer {
  position: fixed;
  inset: 0 auto 0 0;
  width: 300px;
  max-width: 82vw;
  background: var(--sh-surface);
  z-index: var(--sh-z-drawer);
  overflow-y: auto;
  padding: 20px 16px;
  box-shadow: 8px 0 30px rgba(23,3,46,.2);
  transform: translateX(-100%);
  transition: transform .26s var(--sh-ease);
  visibility: hidden;
}
.sh-drawer.open { transform: none; visibility: visible; }
.sh-drawer-scrim {
  position: fixed;
  inset: 0;
  background: rgba(23,3,46,.5);
  z-index: 40;
  opacity: 0;
  visibility: hidden;
  transition: opacity 220ms var(--sh-ease-out), visibility 220ms var(--sh-ease-out);
}
.sh-drawer-scrim.open { opacity: 1; visibility: visible; }
.sh-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.sh-tabbar {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: var(--sh-z-head);
  justify-content: center;
  background: rgba(255,255,255,.95);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-top: 1px solid var(--sh-line);
}
.sh-tabbar-inner {
  max-width: var(--sh-mobile);
  width: 100%;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  padding: 7px 8px calc(7px + env(safe-area-inset-bottom));
}
.sh-tab-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
  padding: 5px 0;
  color: var(--sh-muted-2);
  cursor: pointer;
}
.sh-tab-item.active { color: var(--sh-primary); }
.sh-tab-item svg { width: 19px; height: 19px; }
.sh-tab-item span { font-size: var(--sh-t-4xs); font-weight: 700; }

.sh-mobar {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  bottom: var(--sh-tabbar-safe);
  z-index: var(--sh-z-bar);
  justify-content: center;
  background: var(--sh-surface);
  border-top: 1px solid var(--sh-line);
  box-shadow: 0 -8px 24px rgba(27,24,48,.08);
  pointer-events: none;
}
.sh-mobar-inner {
  max-width: var(--sh-mobile);
  width: 100%;
  padding: var(--sh-sp-2) var(--sh-sp-3);
  pointer-events: auto;
}
.sh-mobar-body {
  background: var(--sh-surface);
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sh-sp-3);
}
.sh-mobar-name {
  font-size: var(--sh-t-body);
  color: var(--sh-ink);
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sh-mobar-total {
  font-size: var(--sh-t-card);
  font-weight: 700;
  color: var(--sh-ink);
  letter-spacing: -.3px;
  font-variant-numeric: tabular-nums;
}

.sh-sheet {
  position: fixed;
  inset: 0;
  background: var(--sh-canvas);
  z-index: var(--sh-z-sheet);
  display: none;
  justify-content: center;
  overflow-y: auto;
}
.sh-sheet.open { display: flex; }
.sh-sheet-inner { max-width: var(--sh-mobile); width: 100%; animation: sh-panel-in var(--sh-dur) var(--sh-ease-out) both; }
.sh-sheet-head {
  position: sticky;
  top: 0;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 16px;
  background: rgba(255,255,255,.95);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--sh-line);
}
.sh-sheet-back {
  position: relative;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--sh-t-h2);
  color: var(--sh-ink);
  cursor: pointer;
}
.sh-sheet-back::before { content: ""; position: absolute; inset: -6px; }

.sh-drawer .sh-fine a { display: inline-block; padding: 8px 0; margin: -8px 0; }
.sh-sheet-grab {
  width: 40px;
  height: 4px;
  border-radius: var(--sh-r-pill);
  background: var(--sh-border);
  margin: 0 auto 16px;
}

.sh-fab-stack {
  position: fixed;
  right: 26px;
  bottom: 26px;
  z-index: var(--sh-z-float);
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: flex-end;
  transition: bottom var(--sh-base);
}
.sh-has-orderbar .sh-fab-stack { bottom: 96px; }
.sh-fab-stack .sh-fab,
.sh-fab-stack .sh-kakao-fab { position: static; right: auto; bottom: auto; }

.sh-fab,
.sh-kakao-fab {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 6px 18px rgba(42,8,84,.3);
  cursor: pointer;
  transition: bottom var(--sh-base), transform var(--sh-fast), background var(--sh-fast);
}
.sh-fab svg,
.sh-kakao-fab svg { width: 27px; height: 27px; }
@media (hover: hover) and (pointer: fine) {
  .sh-fab:hover,
  .sh-kakao-fab:hover { transform: translateY(-2px); }
}

.sh-fab--invite { background: var(--sh-primary); color: #fff; }
@media (hover: hover) and (pointer: fine) {
  .sh-fab--invite:hover { background: var(--sh-primary-hover); color: #fff; }
}

.sh-kakao-fab {
  position: fixed;
  right: 26px;
  bottom: 26px;
  z-index: var(--sh-z-float);
  background: var(--sh-kakao);
  color: var(--sh-kakao-ink);
}
@media (hover: hover) and (pointer: fine) {
  .sh-kakao-fab:hover { color: var(--sh-kakao-ink); }
}
.sh-has-orderbar .sh-kakao-fab { bottom: 96px; }

.sh-table-wrap {
  position: relative;
  overflow-x: auto;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
}
.sh-table td.sh-td-domain { white-space: nowrap; }
.sh-table { width: 100%; font-size: var(--sh-t-sm); }
.sh-table th {
  background: var(--sh-canvas);
  color: var(--sh-muted);
  font-size: var(--sh-t-xs);
  font-weight: 700;
  text-align: left;
  padding: 12px 16px;
  white-space: nowrap;
}
.sh-table td {
  padding: 13px 16px;
  border-top: 1px solid var(--sh-line-hair);
  color: var(--sh-ink-2);
  vertical-align: middle;
}
@media (hover: hover) and (pointer: fine) {
  .sh-table tbody tr:hover td { background: var(--sh-tint-soft); }
}
.sh-table td.sh-td-num { font-variant-numeric: tabular-nums; white-space: nowrap; }
.sh-table td.sh-td-ours { color: var(--sh-primary); font-weight: 700; background: var(--sh-tint-soft); text-align: center; }
.sh-table .sh-th-ours { color: var(--sh-primary); text-align: center; }
.sh-table .sh-td-c, .sh-table .sh-th-c { text-align: center; }
.sh-table .sh-td-mute { color: var(--sh-muted-2); }

.sh-table .sh-th-name { min-width: 220px; }
.sh-table .sh-th-link { min-width: 200px; }
.sh-table .sh-th-update { min-width: 240px; }
.sh-table .sh-td-link { overflow-wrap: anywhere; max-width: 320px; }

.sh-table tr.cat-id td {
  background: var(--sh-tint-soft);
  color: var(--sh-primary);
  font-size: var(--sh-t-xs);
  padding: 12px 16px;
}
@media (hover: hover) and (pointer: fine) {
  .sh-table tbody tr.cat-id:hover td { background: var(--sh-tint-soft); }
}
.sh-cat-icon { display: inline-block; max-width: calc(1em + 6px); max-height: calc(1em + 6px); vertical-align: middle; }

.sh-cell-desk { display: table-cell; }
.sh-row-mob   { display: none; }

.sh-favbtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 var(--sh-t-lead);
  width: var(--sh-t-lead);
  height: var(--sh-t-lead);
  font-size: var(--sh-t-lead);
  line-height: 1;
  color: var(--sh-muted-2);
  cursor: pointer;
  transition: color var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .sh-favbtn:hover { color: var(--sh-gold-2); }
}
.sh-favbtn.favorite-active { color: var(--sh-star); }

.sh-favbtn .sh-star-icon { color: inherit; width: var(--sh-t-lead); height: var(--sh-t-lead); vertical-align: -2px; }
.sh-favbtn .fa-star::before      { content: "\2606"; }
.sh-favbtn .far.fa-star::before  { content: "\2606"; }
.sh-favbtn .fas.fa-star::before  { content: "\2605"; }
.sh-star-mark { color: var(--sh-star); }

.services-id { font-variant-numeric: tabular-nums; color: var(--sh-muted); }
.service-description,
.service-description__th { font-size: var(--sh-t-xs); }
.service-description td { color: var(--sh-muted-2); }

.sh-list { display: flex; flex-direction: column; gap: 12px; }
.sh-order {
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
  padding: 16px 16px;
}
.sh-order-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.sh-order-top > * { min-width: 0; max-width: 100%; }
.sh-order-meta { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.sh-order-meta > * { min-width: 0; overflow-wrap: anywhere; }
.sh-order-no { font-size: var(--sh-t-2xs); color: var(--sh-muted-2); }

.sh-order-name { font-size: var(--sh-t-body); font-weight: 700; margin-top: 7px; overflow-wrap: anywhere; min-width: 0; }
.sh-order-sub { font-size: var(--sh-t-xs); color: var(--sh-muted); margin-top: 3px; }
.sh-order-prog { text-align: right; flex-shrink: 0; }
.sh-order-prog b { font-size: var(--sh-t-h3); font-weight: 700; color: var(--sh-primary); }
.sh-order-prog.done b { color: var(--sh-ok-strong); }

.sh-order-prog--off b { color: var(--sh-muted-2); }
.sh-order-prog span { display: block; font-size: var(--sh-t-3xs); color: var(--sh-muted-2); margin-top: 2px; }
.sh-order-actions { display: flex; gap: 7px; margin-top: 12px; flex-wrap: wrap; align-items: center; }

.sh-bar {
  height: 6px;
  border-radius: var(--sh-r-pill);
  background: var(--sh-line-hair-2);
  margin-top: 12px;
  overflow: hidden;
}
.sh-bar > i {
  display: block;
  height: 100%;
  border-radius: var(--sh-r-pill);
  background: var(--sh-primary);
  transition: width .6s var(--sh-ease);
}
.sh-bar-fill { width: 0; }

.sh-bar > i.wait { background: var(--sh-primary); }
.sh-bar > i.done { background: var(--sh-ok-strong); }
.sh-bar > i.partial { background: var(--sh-warn-text); }

.sh-defs { display: flex; flex-direction: column; gap: 9px; }
.sh-def {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  font-size: var(--sh-t-body);
}
.sh-def > span { flex: 0 0 auto; color: var(--sh-muted); }
.sh-def--stack { flex-direction: column; gap: 4px; }
.sh-def--total {
  border-top: 1px solid var(--sh-line-hair-2);
  padding-top: 9px;
  font-size: var(--sh-t-lead);
}
.sh-def--total b:last-child { color: var(--sh-primary); font-size: var(--sh-t-h3); }

.sh-defs--2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 24px;
}
.sh-defs--2 .sh-def { font-size: var(--sh-t-sm); }

.sh-order-defs {
  margin-top: 13px;
  padding-top: 13px;
  border-top: 1px solid var(--sh-line-hair);
}

.sh-acc { display: flex; flex-direction: column; gap: 8px; }
.sh-acc-item {
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-ctrl);
  overflow: hidden;
  background: var(--sh-surface);
  transition: border-color var(--sh-fast), background var(--sh-fast);
}
.sh-acc-item.open { border-color: var(--sh-tint-line); background: var(--sh-tint-soft); }
.sh-acc-q {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 16px 17px;
  font-size: var(--sh-t-body);
  font-weight: 700;
  color: var(--sh-ink);
  text-align: left;
  cursor: pointer;
}
.sh-acc-item.open .sh-acc-q { color: var(--sh-primary); }
.sh-acc-mark { color: var(--sh-muted-2); font-weight: 700; font-size: var(--sh-t-h3); flex-shrink: 0; }
.sh-acc-a {
  display: grid;
  grid-template-rows: 0fr;
  padding: 0 17px;
  font-size: var(--sh-t-sm);
  line-height: 1.9;
  color: var(--sh-ink-2);
  opacity: 0;
  transition: grid-template-rows var(--sh-dur) var(--sh-ease-out), padding var(--sh-dur) var(--sh-ease-out), opacity var(--sh-dur-fast) var(--sh-ease-out);
}
.sh-acc-a > * { min-height: 0; overflow: hidden; }
.sh-acc-item.open .sh-acc-a { grid-template-rows: 1fr; padding: 0 17px 16px; opacity: 1; }

.sh-pager {
  display: flex;
  gap: 4px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 16px;
}
.sh-pager a,
.sh-pager span {
  min-width: 34px;
  height: 34px;
  padding: 0 12px;
  border-radius: var(--sh-r-xs);
  border: 1px solid var(--sh-border);
  background: var(--sh-surface);
  color: var(--sh-ink-2);
  font-size: var(--sh-t-xs);
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
@media (hover: hover) and (pointer: fine) {
  .sh-pager a:hover { border-color: var(--sh-primary); color: var(--sh-primary); }
}
.sh-pager .active {
  background: var(--sh-primary);
  border-color: var(--sh-primary);
  color: #fff;
}
.sh-pager .disabled { color: var(--sh-muted-2); background: var(--sh-surface-alt); }

@media (max-width: 479px) {
  .sh-pager a:not(.active):not(:first-child):not(:last-child):not(.sh-pager-near),
  .sh-pager span:not(.active):not(:first-child):not(:last-child):not(.sh-pager-near) { display: none; }
}

.sh-scroll-x {
  -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent);
          mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent);
}
.sh-scroll-x.is-end {
  -webkit-mask-image: none;
          mask-image: none;
}

.sh-statustabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 4px;
  scrollbar-width: none;
  scroll-padding-inline: 20px;
}
.sh-statustabs::-webkit-scrollbar { display: none; }
.sh-statustabs::after { content: ""; flex: 0 0 20px; }

.sh-statustabs.sh-scroll-x {
  -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 72px), transparent);
          mask-image: linear-gradient(90deg, #000 calc(100% - 72px), transparent);
}
.sh-statustabs.sh-scroll-x.is-end {
  -webkit-mask-image: none;
          mask-image: none;
}
.sh-statustabs > a {
  flex-shrink: 0;
  border: 1px solid var(--sh-border);
  border-radius: var(--sh-r-pill);
  padding: 8px 15px;
  font-size: var(--sh-t-xs);
  font-weight: 700;
  color: var(--sh-muted-2);
  background: var(--sh-surface);
  white-space: nowrap;
}
@media (hover: hover) and (pointer: fine) {
  .sh-statustabs > a:hover { border-color: var(--sh-primary); color: var(--sh-primary); }
}
.sh-statustabs > a.active {
  border-color: var(--sh-primary);
  background: var(--sh-tint);
  color: var(--sh-primary);
}

.sh-search { display: flex; gap: 8px; }
.sh-search .sh-input { flex: 1; }

.sh-empty {
  text-align: center;
  padding: 56px 20px;
  color: var(--sh-muted-2);
  font-size: var(--sh-t-body);
}
.sh-empty .sh-empty-icon {
  width: 40px;
  height: 40px;
  margin: 0 auto 12px;
  display: grid;
  place-items: center;
  border: 1px solid var(--sh-line);
  border-radius: 50%;
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.sh-empty .sh-empty-icon .sh-icon { width: 20px; height: 20px; }
.sh-empty b { display: block; color: var(--sh-ink-2); font-size: var(--sh-t-lead); margin-bottom: 8px; }

.sh-reviews {
  display: grid;

  grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr));
  gap: 12px;
}
.sh-review {
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
  padding: 17px 16px;
  background: var(--sh-surface);
  min-width: 0;
}
.sh-review-top { display: flex; align-items: center; gap: 12px; }
.sh-review-id { font-size: var(--sh-t-sm); font-weight: 700; }
.sh-review-body { font-size: var(--sh-t-sm); color: var(--sh-ink-2); line-height: 1.75; margin-top: 8px; }

.sh-rating-dist { display: flex; flex-direction: column; gap: 8px; }
.sh-rating-bar  { height: 6px; border-radius: var(--sh-r-pill); background: var(--sh-line); overflow: hidden; }
.sh-rating-bar > i { display: block; height: 100%; background: var(--sh-star); }

.sh-effects { display: flex; flex-direction: column; gap: 20px; }
.sh-effect { display: flex; gap: 16px; }
.sh-effect-icon {
  width: 40px;
  height: 40px;
  border-radius: var(--sh-r-ctrl);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.sh-effect-icon svg { width: 22px; height: 22px; }
.sh-effect-icon--like { background: var(--sh-like-bg); color: var(--sh-like-ink); }
.sh-effect-icon--ok { background: var(--sh-ok-bg-2); color: var(--sh-ok-text); }
.sh-row--ok { font-size: var(--sh-t-xs); font-weight: 700; color: var(--sh-ok-text); }
.sh-effect-body { font-size: var(--sh-t-sm); color: var(--sh-ink-2); line-height: 1.75; margin-top: 8px; }
.sh-effect-bullets {
  font-size: var(--sh-t-xs);
  color: var(--sh-muted);
  line-height: 2;
  margin-top: 8px;
  white-space: pre-line;
}

.sh-contact {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.sh-desc { display: flex; flex-direction: column; gap: 16px; }
.sh-desc-steps { display: flex; flex-direction: column; gap: 7px; }
.sh-desc-step {
  display: flex;
  gap: 8px;
  font-size: var(--sh-t-sm);
  line-height: 1.75;
  color: var(--sh-ink-2);
}

.sh-desc-step > b {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  margin-top: 3px;
  border-radius: var(--sh-radius-chip);
  background: var(--sh-tint-soft);
  color: var(--sh-primary);
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  display: grid;
  place-items: center;
}
.sh-desc-step-sub { display: block; color: var(--sh-muted); font-size: var(--sh-t-xs); }
.sh-desc-eg {
  display: inline-block;
  max-width: 100%;

  overflow-x: visible;
  padding: 2px 7px;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-canvas);
  border: 1px solid var(--sh-line-hair);
  font-family: ui-monospace, Menlo, monospace;
  font-size: var(--sh-t-3xs);
  color: var(--sh-ink);
  white-space: nowrap;
  vertical-align: middle;
}
.sh-desc-was { color: var(--sh-muted-2); text-decoration: line-through; font-size: var(--sh-t-xs); }

.sh-desc u { text-decoration: none; background: linear-gradient(transparent 60%, var(--sh-marker) 60%); }
.sh-desc tip {
  display: block;
  position: relative;
  margin: 8px 0;
  padding: 20px 12px 12px;
  border: 1px solid var(--sh-border);
  border-radius: var(--sh-r-sm);
  font-size: var(--sh-t-xs);
  line-height: 1.6;
  color: var(--sh-ink-2);
}
.sh-desc tip::before {
  content: 'TIP';
  position: absolute;
  top: -9px;
  left: 10px;
  padding: 1px 12px;
  background: var(--sh-primary);
  color: #fff;
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  letter-spacing: .5px;
  border-radius: var(--sh-r-pill);
  line-height: 16px;
}

.sh-cms {
  overflow-x: auto;
  font-size: var(--sh-t-body);
  color: var(--sh-ink-2);
  line-height: 1.95;
}
.sh-cms h1, .sh-cms h2, .sh-cms h3 {
  color: var(--sh-ink);
  font-weight: 700;
  letter-spacing: -.3px;
  margin: 26px 0 12px;
}

.sh-cms > :first-child { margin-top: 0; }
.sh-cms > :last-child { margin-bottom: 0; }
.sh-cms h1 { font-size: var(--sh-t-stat); }
.sh-cms h2 { font-size: var(--sh-t-h2); }
.sh-cms h3 { font-size: var(--sh-t-h3); }
.sh-cms p { margin: 0 0 16px; }
.sh-cms ul, .sh-cms ol { margin: 0 0 16px; padding-left: 20px; }
.sh-cms ul { list-style: disc; }
.sh-cms ol { list-style: decimal; }
.sh-cms li { margin-bottom: 8px; }
.sh-cms img { display: block; max-width: 100%; height: auto; margin: 16px auto; border-radius: var(--sh-r-sm); }
.sh-cms a { text-decoration: underline; }
.sh-cms table { margin: 16px 0; font-size: var(--sh-t-sm); }
.sh-cms th, .sh-cms td { border: 1px solid var(--sh-line); padding: 12px 12px; }
.sh-cms th { background: var(--sh-canvas); font-weight: 700; }
.sh-cms blockquote {
  border-left: 3px solid var(--sh-primary);
  background: var(--sh-tint-soft);
  padding: 12px 16px;
  margin: 16px 0;
  border-radius: 0 var(--sh-r-sm) var(--sh-r-sm) 0;
}
.sh-cms code {
  background: var(--sh-canvas);
  border-radius: var(--sh-radius-chip);
  padding: 2px 8px;
  font-size: .92em;
}
.sh-cms pre {
  background: var(--sh-dark);
  color: var(--sh-code-fg);
  border-radius: var(--sh-r-sm);
  padding: 16px;
  overflow-x: auto;
  margin: 16px 0;
}
.sh-cms pre code { background: none; padding: 0; color: inherit; }

.sh-posts { display: flex; flex-direction: column; gap: 12px; }
.sh-post {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
  padding: 16px 16px;
  color: var(--sh-ink);
  transition: border-color var(--sh-fast), background var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .sh-post:hover { border-color: var(--sh-primary); background: var(--sh-tint-soft); color: var(--sh-ink); }
}
.sh-post-title { font-size: var(--sh-t-lead); font-weight: 700; }
.sh-post-meta { font-size: var(--sh-t-xs); color: var(--sh-muted-2); margin-top: 4px; }

.sh-notice-row {
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-sm);
  padding: 13px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: var(--sh-t-body);
  font-weight: 700;
  color: var(--sh-ink);
  transition: border-color var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .sh-notice-row:hover { border-color: var(--sh-primary); color: var(--sh-ink); }
}
.sh-notice-row time { color: var(--sh-muted-2); font-weight: 400; font-size: var(--sh-t-xs); }

.sh-auth-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-height: 100vh;
  min-height: 100dvh;
  overflow-x: clip;
  background: var(--sh-canvas);
}
.sh-auth-panel {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  min-width: 0;
  position: relative;
  overflow: hidden;
  padding: 32px;

  color: var(--sh-ink);
  background: var(--sh-surface);
  border-right: 1px solid var(--sh-line);
}
.sh-auth-panel :is(.sh-auth-brand, .sh-auth-kicker, .sh-auth-h, .sh-auth-p, .sh-auth-rating) { color: var(--sh-ink); }
.sh-auth-panel .sh-auth-p, .sh-auth-panel .sh-auth-rating { color: var(--sh-ink-2); }
.sh-auth-panel .sh-auth-panel-foot { border-top-color: var(--sh-line); }

.sh-auth-dots { display: none; }
.sh-auth-panel > :not(.sh-auth-dots) { position: relative; }
.sh-auth-main {
  display: flex;
  min-width: 0;
  min-height: 0;
  align-items: center;
  justify-content: center;
  padding: 32px;
  overflow: auto;
}
.sh-auth-main > * {
  min-width: 0;
  max-width: 100%;
}
@media (min-width: 768px) {
  .sh-auth-main:has(.sh-auth-card--signup) { align-items: flex-start; }
}
.sh-auth-panel-content {
  align-self: center;
  max-width: 26rem;
}
.sh-auth-card {
  width: 100%;
  max-width: 420px;
  background: var(--sh-surface);
  border: 1px solid rgba(23,20,31,.06);
  border-radius: var(--sh-r-card);
  box-shadow: var(--sh-surface-floating);
  padding: 30px 28px;
}

.sh-auth-shell:has(.sh-auth-main > .sh-grid) .sh-auth-panel {
  color: var(--sh-ink);
  background: var(--sh-surface);
  border-right: 1px solid var(--sh-line);
}
.sh-auth-shell:has(.sh-auth-main > .sh-grid) .sh-auth-dots {
  display: none;
}
.sh-auth-shell:has(.sh-auth-main > .sh-grid) :is(.sh-auth-brand, .sh-auth-kicker, .sh-auth-h, .sh-auth-p, .sh-auth-rating, .sh-auth-panel-foot) {
  color: var(--sh-ink);
}
.sh-auth-shell:has(.sh-auth-main > .sh-grid) .sh-auth-panel-foot {
  border-top-color: var(--sh-line);
}
.sh-auth-shell:has(.sh-auth-main > .sh-grid) .sh-auth-panel-foot-links {
  border-top-color: var(--sh-line);
}
.sh-glass {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-radius: var(--sh-r-panel);
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.14);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.sh-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 20px 0;
  font-size: var(--sh-t-xs);
  color: var(--sh-muted-2);
}
.sh-divider::before,
.sh-divider::after {
  content: "";
  flex: 1;
  border-top: 1px solid var(--sh-line);
}

.sh-clamp-2,
.sh-clamp-3 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.sh-clamp-2 { -webkit-line-clamp: 2; }
.sh-clamp-3 { -webkit-line-clamp: 3; }

.sh-pre-wrap { white-space: pre-wrap; }

.sh-guides { display: flex; flex-direction: column; gap: 8px; }
.sh-guide {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 12px 15px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
  font-size: var(--sh-t-sm);
  font-weight: 600;
  color: var(--sh-ink-2);
  text-align: left;
  cursor: pointer;
  transition: border-color var(--sh-fast), color var(--sh-fast), background var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .sh-guide:hover {
    border-color: var(--sh-primary);
    background: var(--sh-tint-soft);
    color: var(--sh-primary);
  }
}
.sh-guide-mark { flex-shrink: 0; font-weight: 700; color: var(--sh-muted-2); }
@media (hover: hover) and (pointer: fine) {
  .sh-guide:hover .sh-guide-mark { color: var(--sh-primary); }
}

a.sh-post { display: flex; }
.sh-post-body { min-width: 0; flex: 1; }
.sh-post-excerpt {
  font-size: var(--sh-t-xs);
  color: var(--sh-muted);
  line-height: 1.7;
  margin-top: 8px;
}
.sh-post-thumb {
  width: 96px;
  height: 72px;
  flex-shrink: 0;
  object-fit: cover;
  border-radius: var(--sh-r-sm);
  border: 1px solid var(--sh-line);
}
.sh-post-go {
  flex-shrink: 0;
  font-size: var(--sh-t-xs);
  font-weight: 700;
  color: var(--sh-primary);
  white-space: nowrap;
}

.sh-thread { display: flex; flex-direction: column; gap: 16px; }
.sh-msg { display: flex; flex-direction: column; max-width: 84%; min-width: 0; }
.sh-msg--me    { align-self: flex-end; align-items: flex-end; }
.sh-msg--staff { align-self: flex-start; }
.sh-msg-body {
  border-radius: var(--sh-r-panel);
  padding: 13px 16px;
  font-size: var(--sh-t-sm);
  line-height: 1.85;

  white-space: normal;
}
.sh-msg-body > div:first-child { white-space: pre-wrap; }
.sh-msg--me .sh-msg-body {
  background: var(--sh-tint);
  border: 1px solid var(--sh-tint-line);
  color: var(--sh-primary-ink);
}
.sh-msg--staff .sh-msg-body {
  background: var(--sh-canvas);
  border: 1px solid var(--sh-line);
  color: var(--sh-ink-2);
}
.sh-msg-files {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--sh-line-hair-2);
  font-size: var(--sh-t-xs);
}
.sh-msg-files a { text-decoration: underline; }
.sh-msg-info { margin-top: 8px; font-size: var(--sh-t-3xs); color: var(--sh-muted-2); }
.sh-msg-info b { color: var(--sh-muted); font-weight: 700; margin-right: 8px; }

a.sh-order {
  display: block;
  color: var(--sh-ink);
  transition: border-color var(--sh-fast), background var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  a.sh-order:hover { border-color: var(--sh-primary); background: var(--sh-tint-soft); color: var(--sh-ink); }
}

.tickets-uploader {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  font-size: var(--sh-t-xs);
  color: var(--sh-muted);
}
.tickets-uploader .btn,
.tickets-uploader button {
  border: 1.5px solid var(--sh-border);
  border-radius: var(--sh-r-xs);
  background: var(--sh-surface);
  color: var(--sh-ink-2);
  font-size: var(--sh-t-xs);
  font-weight: 700;
  padding: 9px 15px;
  cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
  .tickets-uploader .btn:hover,
  .tickets-uploader button:hover { border-color: var(--sh-primary); color: var(--sh-primary); }
}

.ticket-danger .close,
.sh-alert .close {
  margin-left: auto;
  border: 0;
  background: none;
  color: inherit;
  opacity: .6;
  font-size: var(--sh-t-h3);
  line-height: 1;
  cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
  .ticket-danger .close:hover,
  .sh-alert .close:hover { opacity: 1; }
}

.sh-back {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  margin-bottom: 12px;
  font-size: var(--sh-t-sm);
  font-weight: 700;
  color: var(--sh-muted);
}
.sh-back:hover { color: var(--sh-primary); }

.sh-form-actions { margin-top: 16px; }

.sh-alert:not(.hidden) + .sh-card-head,
.sh-alert:not(.hidden) + .sh-field { margin-top: 16px; }

.btn-share { cursor: pointer; }

.sh-post-hero { margin-bottom: 16px; }
.sh-post-hero img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--sh-r-panel); }

.sh-reply { margin-top: 24px; }
.sh-thread + .sh-reply {
  padding-top: 24px;
  border-top: 1px solid var(--sh-line-hair);
}

#ticket-fields { margin-top: 16px; }
#ticket-fields:empty { margin-top: 0; }
#ticket-fields + .sh-field { margin-top: 16px; }

.sh-card-head .sh-search {
  flex: 1;
  min-width: 190px;
  max-width: 320px;
}
.sh-card-head .sh-chips { flex: 1 1 auto; min-width: 0; }

#inner_content h3 { font-size: var(--sh-t-h3); }
#inner_content p  { font-size: var(--sh-t-body); }

.sh-stack        { display: flex; flex-direction: column; gap: 16px; }
.sh-stack--sm    { gap: 12px; }
.sh-stack--lg    { gap: 24px; }

.sh-stack > .sh-field + .sh-field { margin-top: 0; }
.sh-row-flex     { display: flex; align-items: center; gap: 12px; }
.sh-row-between  { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.sh-row-wrap     { flex-wrap: wrap; }
.sh-grow         { flex: 1; min-width: 0; }
.sh-center       { text-align: center; }
.sh-mt-0  { margin-top: 0; }
.sh-mt-8  { margin-top: 8px; }
.sh-mt-10 { margin-top: 12px; }
.sh-mt-14 { margin-top: 16px; }
.sh-mt-16 { margin-top: 16px; }
.sh-mt-18 { margin-top: 16px; }
.sh-mt-20 { margin-top: 20px; }
.sh-mt-22 { margin-top: 24px; }
.sh-mb-8 { margin-bottom: 8px; }
.sh-mb-14 { margin-bottom: 16px; }
.sh-mb-16 { margin-bottom: 16px; }
.sh-mb-18 { margin-bottom: 16px; }
.sh-w-42 { width: 42px; }
.sh-muted-2 { color: var(--sh-muted-2); }
.sh-reply-gap { padding: 16px 0 4px; }
.sh-sub--card { margin: 4px 0 16px; }
.sh-2col  { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }

.sh-rtl { direction: rtl; text-align: right; }
.sh-rtl .sh-table th,
.sh-rtl .sh-table td { text-align: right; }
.sh-rtl .sh-table .sh-td-c,
.sh-rtl .sh-table .sh-th-c { text-align: center; }
.sh-sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 1279px) {
  .sh-grid { grid-template-columns: 1fr; }

  .sh-banner--side { display: none; }

  .sh-banner-dots { bottom: 8px; }
}

@media (max-width: 1023px) {
  .sh-main { padding: 16px 16px 160px; }
  .sh-card { padding: var(--sh-sp-5); }
  .sh-hero { padding: 32px 26px; }
  .sh-hero-title { font-size: var(--sh-t-h1); }
  .sh-orderbar-inner { padding: 0 16px 12px; }
}

@media (max-width: 767px) {
  body { background: var(--sh-canvas-deep); }

  .sh-seg-item, .sh-segtab { min-height: 44px; }
  .sh-card-head .sh-search { flex: 1 1 100%; }
  .sh-app {
    max-width: var(--sh-mobile);
    margin: 0 auto;
    background: var(--sh-canvas);
    min-height: 100vh;
    position: relative;
  }

  .sh-sidebar { display: none; }
  .sh-topbar  { display: flex; }
  .sh-strip   { display: flex; }
  .sh-tabbar  { display: flex; }
  .sh-has-orderbar .sh-mobar { display: flex; }

  .sh-main {
    margin-left: 0;
    padding: var(--sh-sp-3) var(--sh-sp-3) calc(var(--sh-tabbar-safe) + 116px);
  }

  .sh-has-orderbar .sh-main { padding-bottom: calc(var(--sh-tabbar-safe) + 204px); }

  .sh-grid { grid-template-columns: 1fr; gap: var(--sh-sp-5); }
  .sh-rail { gap: var(--sh-sp-5); }
  .sh-page { gap: var(--sh-sp-5); }

  .sh-card { padding: var(--sh-sp-4); border-radius: var(--sh-r-card); }
  .sh-card--tight { padding: var(--sh-sp-4); }
  .sh-card--stack { gap: var(--sh-sp-4); }
  .sh-box { padding: var(--sh-sp-4); }

  .sh-h1 { font-size: var(--sh-t-page); }
  .sh-h2 { font-size: var(--sh-t-h2); }
  .sh-h3 { font-size: var(--sh-t-h3); }
  .sh-lead { font-size: var(--sh-t-lead); }
  .sh-prose { font-size: var(--sh-t-body); line-height: 1.6; }

  .sh-hero { padding: 24px 24px; min-height: 0; border-radius: var(--sh-r-card); }
  .sh-hero::before { top: -50px; right: -40px; width: 170px; height: 170px; }
  .sh-hero::after { display: none; }
  .sh-hero-title { font-size: var(--sh-t-h2); line-height: 1.4; }
  .sh-hero-sub { font-size: var(--sh-t-xs); line-height: 1.6; margin-top: 7px; }
  .sh-hero-idx { display: none; }
  .sh-hero-dots { display: flex; }

  .sh-promo { padding: var(--sh-sp-3); gap: var(--sh-sp-2); border-radius: var(--sh-r-card); box-shadow: var(--sh-sh-card); }
  .sh-promo::before { top: -40px; right: 60px; width: 130px; height: 130px; }
  .sh-promo-kicker { display: none; }
  .sh-promo-copy { min-width: 0; }
  .sh-promo-title { font-size: var(--sh-t-body); line-height: 1.3; }
  .sh-promo-sub { font-size: var(--sh-t-3xs); margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .sh-promo-side { flex-direction: row; align-items: center; gap: 2px; }
  .sh-promo-side .sh-btn { padding: 8px 11px; font-size: var(--sh-t-2xs); white-space: nowrap; }
  .sh-promo-dismiss {
    position: relative;
    width: 36px; height: 36px; padding: 0; margin: 0;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: var(--sh-t-lead); line-height: 1; border-radius: 50%;
  }
  .sh-promo-dismiss-x { font-weight: 700; }

  .sh-stats { grid-template-columns: 1fr 1fr; }
  .sh-stat { text-align: left; padding: var(--sh-sp-3) var(--sh-sp-4); border-radius: var(--sh-r-box); background: var(--sh-surface); border-color: var(--sh-line-soft); box-shadow: var(--sh-sh-soft); }
  .sh-stat--hi { background: var(--sh-surface); border-color: var(--sh-line-soft); box-shadow: var(--sh-sh-soft); }
  .sh-stat-num { font-size: var(--sh-t-h3); }
  .sh-stat-label { font-size: var(--sh-t-4xs); }

  .sh-step { margin-bottom: var(--sh-sp-3); }

  .sh-step-no { display: inline-flex; width: 24px; height: 24px; font-size: var(--sh-t-3xs); border-radius: 50%; margin-right: 0; }
  .sh-step-title { font-size: var(--sh-t-h3); font-weight: 600; color: var(--sh-ink); }
  .sh-step-title span:not(.sh-nowrap) { display: none; }

  .sh-plats {
    display: grid;
    grid-auto-flow: row;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: none;
    justify-content: stretch;
    column-gap: var(--sh-sp-2);

    row-gap: var(--sh-sp-2);
    overflow-x: visible;
    margin: 0;
    padding: 0 0 var(--sh-sp-2);
    scrollbar-width: none;
    --sh-plat-tile: 56px;
    --sh-plat-glyph: 26px;
    --sh-plat-radius: 12px;

    --sh-plat-cell: 56px;
  }
  .sh-plats::-webkit-scrollbar { display: none; }

  .sh-plat {
    padding: 0;
    gap: var(--sh-sp-2);
    width: auto;
    min-width: 0;
  }

  .sh-plat-label { white-space: nowrap; }

  .sh-picker { border: 0; border-radius: 0; overflow: visible; }
  .sh-picker-head { padding: 0 0 var(--sh-sp-2); border-bottom: 0; }
  .sh-rows {
    border: 1px solid var(--sh-line);
    border-radius: var(--sh-r-box);
    min-height: 0;
    max-height: 300px;
    padding: 0;
  }
  .sh-row { padding: var(--sh-sp-3) var(--sh-sp-4); font-size: var(--sh-t-sm); }

  .sh-tabs { grid-template-columns: 1fr 1fr; gap: 8px; }
  .sh-tab { padding: 9px 4px; font-size: var(--sh-t-sm); }

  .sh-total-value { font-size: var(--sh-t-stat); }
  .sh-trust > span { font-size: var(--sh-t-4xs); padding: 8px 2px; }

  .sh-repeat { padding: 13px 16px; }
  #fields [data-sh-added="repeat-head"].sh-repeat.on { padding-bottom: 12px; }
  #fields [data-sh-added="repeat-head"].sh-repeat + #dripfeed-options { padding: 0 16px 13px; }

  .sh-repeat-head { gap: 12px; align-items: flex-start; }
  .sh-repeat-head .sh-switch { margin-top: 2px; }
  .sh-repeat-sub { line-height: 1.6; }
  .sh-orderbar { display: none; }

  .sh-table th, .sh-table td { padding: 11px 12px; font-size: var(--sh-t-2xs); }

  .sh-tiles { grid-template-columns: 1fr; }
  .sh-tiles--2 { grid-template-columns: 1fr 1fr; }
  .sh-tile { padding: 13px 16px; }
  .sh-tile-title { font-size: var(--sh-t-sm); }
  .sh-tile-body { font-size: var(--sh-t-3xs); line-height: 1.65; }

  .sh-cell-desk { display: none; }
  .sh-row-mob   { display: table-row; }
  .sh-defs--2   { grid-template-columns: 1fr; gap: 8px; }

  .sh-contact { grid-template-columns: 1fr 1fr; }

  .sh-order-top { flex-direction: column; align-items: flex-start; gap: 8px; }
  .sh-order-top > .sh-grow { width: 100%; }
  .sh-order-prog { display: flex; flex-direction: row-reverse; align-items: baseline; gap: 8px; text-align: left; }
  .sh-order-prog span { margin-top: 0; }

  .sh-mobar--dodge { transform: translateY(120%); pointer-events: none; }
  .sh-mobar { transition: transform 180ms var(--sh-ease); }
  @media (prefers-reduced-motion: reduce) { .sh-mobar { transition: none; } }

  .sh-order-actions .sh-fine { flex-basis: 100%; order: 10; margin-top: 2px; }

  .sh-modal {
    --sh-modal-pad: 22px;
    width: 100%;
    max-width: var(--sh-mobile);
    border-radius: 20px 20px 0 0;
    padding: 24px 20px calc(24px + env(safe-area-inset-bottom));
    animation: sh-slide-up .26s var(--sh-ease) both;
  }
  .sh-scrim { align-items: flex-end; padding: 0; }

  .sh-modal { max-height: calc(100vh - 48px); max-height: calc(100dvh - 48px); }
  @keyframes sh-slide-up {
    from { transform: translateY(24px); opacity: 0; }
    to   { transform: none; opacity: 1; }
  }

  .sh-fab-stack,
  .sh-kakao-fab { right: 14px; bottom: calc(var(--sh-tabbar-safe) + 14px); }
  .sh-fab-stack { gap: 8px; }

  .sh-has-orderbar .sh-fab-stack,
  .sh-has-orderbar .sh-kakao-fab { bottom: calc(var(--sh-tabbar-safe) + 96px); }

  .sh-fab, .sh-kakao-fab { width: 40px; height: 40px; }
  .sh-fab svg, .sh-kakao-fab svg { width: 22px; height: 22px; }

  .sh-fab-stack .sh-fab,
  .sh-fab-stack .sh-kakao-fab { position: relative; bottom: auto; right: auto; }
  .sh-fab::before,
  .sh-kakao-fab::before { content: ""; position: absolute; inset: -2px; }
  .sh-picker-head { padding-right: 56px; }

  html {
    scroll-padding-top: calc(var(--sh-topbar) + 8px);
    scroll-padding-bottom: calc(var(--sh-tabbar-safe) + 88px);
  }
}

@media (min-width: 768px) {
  html:has(body.sh-has-orderbar) { scroll-padding-bottom: 96px; }
}

@media (max-width: 480px) {
  .sh-2col:has(input[type="password"]) { grid-template-columns: 1fr; }
}

.sh-card-head > a.sh-nowrap:not(.sh-chip) { display: inline-block; padding: 3px 0; margin: -3px 0; }
a.sh-badge { min-height: 24px; display: inline-flex; align-items: center; }

.sh-num > a,
.sh-td-num > a,
.sh-order-prog a,
td > a:only-child:not(.sh-btn):not(.sh-chip) {
  display: inline-block;
  min-width: 24px;
  padding: 5px 8px;
  margin: -5px -8px;
  text-align: center;
}

@media (max-width: 359px) {
  .sh-2col, .sh-contact { grid-template-columns: 1fr; }
  .sh-trust { flex-wrap: wrap; }
  .sh-trust > span { flex: 1 1 100%; }

  .sh-faq-navitem { white-space: normal; }
}

@media (min-width: 768px) {
  .sh-auth-shell {
    grid-template-columns: minmax(24rem, .95fr) minmax(0, 1.05fr);
    height: 100vh;
    height: 100dvh;
    overflow: hidden;
  }
  .sh-auth-panel { padding: 32px; }
  .sh-auth-main:has(> .sh-grid) { align-items: flex-start; }
  .sh-auth-shell:has(.sh-auth-main > .sh-grid) {

    grid-template-columns: minmax(320px, 360px) minmax(0, 1fr);
    height: auto;
    overflow: visible;
  }

  @media (min-width: 1280px) {
    .sh-auth-shell:has(.sh-auth-main > .sh-grid) {
      grid-template-columns: 404px minmax(0, 1fr);
    }
  }
  @media (min-width: 1280px) and (max-width: 1439px) {
    .sh-auth-page .sh-grid { grid-template-columns: minmax(0, 1fr); }
  }
  .sh-auth-shell:has(.sh-auth-main > .sh-grid) .sh-auth-panel {
    position: sticky;
    top: 0;
    align-self: start;
    height: 100dvh;
    min-height: 100dvh;
    padding: var(--sh-sp-5);
    overflow-y: auto;
  }
  .sh-auth-shell:has(.sh-auth-main > .sh-grid) .sh-auth-main { padding: var(--sh-sp-5); }
}

:focus-visible {
  outline: 3px solid var(--sh-focus);
  outline-offset: 2px;
}
.sh-btn:focus-visible,
.sh-eye-btn:focus-visible { outline: 3px solid var(--sh-focus); outline-offset: 2px; }

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
  }
}

@media print {
  .sh-sidebar, .sh-topbar, .sh-strip, .sh-tabbar, .sh-mobar,
  .sh-orderbar, .sh-kakao-fab, .sh-drawer, .sh-drawer-scrim { display: none !important; }
  .sh-main { margin-left: 0; padding: 0; }
  .sh-card { box-shadow: none; border-color: var(--sh-print-line); }
}

.sh-inline {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.sh-linkbtn {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  font-size: var(--sh-t-xs);
  font-weight: 700;
  color: var(--sh-primary);
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.sh-linkbtn:hover { color: var(--sh-primary-hover); }
.sh-code-sample {
  margin: 0;
  font-family: inherit;
  font-size: var(--sh-t-sm);
  color: var(--sh-ink-2);

  white-space: pre;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.sh-paygrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.pay-method {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  border: 1.5px solid var(--sh-border);
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-surface);
  color: var(--sh-muted);
  padding: 13px 8px;
  font-size: var(--sh-t-body);
  font-weight: 700;
  text-align: center;
  cursor: pointer;
  transition: border-color var(--sh-fast), background var(--sh-fast), color var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .pay-method:hover { border-color: var(--sh-primary); color: var(--sh-primary); }
}

.pay-method.active {
  border-color: var(--sh-primary);
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.pay-method svg { width: 18px; height: 18px; flex-shrink: 0; }

.sh-taxgrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}
.pay-tax {
  width: 100%;
  border: 1.5px solid var(--sh-border);
  border-radius: var(--sh-r-xs);
  background: var(--sh-surface);
  color: var(--sh-muted);
  padding: 11px 4px;
  font-size: var(--sh-t-sm);
  font-weight: 700;
  text-align: center;
  cursor: pointer;
  transition: border-color var(--sh-fast), background var(--sh-fast), color var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .pay-tax:hover { border-color: var(--sh-tint-line); background: var(--sh-tint-soft); }
}
.pay-tax.active {
  border-color: var(--sh-primary);
  background: var(--sh-tint);
  color: var(--sh-primary);
}

.sh-points {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  min-height: 142px;
  margin-top: 12px;
}
.pay-point {
  position: relative;
  width: 100%;
  border: 1.5px solid var(--sh-border);
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-surface);
  padding: 13px 4px 11px;
  text-align: center;
  cursor: pointer;
  transition: border-color var(--sh-fast), background var(--sh-fast), transform var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .pay-point:hover { border-color: var(--sh-primary); background: var(--sh-tint-soft); }
}
.pay-point:active { transform: scale(.98); }
.pay-point b {
  display: block;
  white-space: nowrap;
  font-size: var(--sh-t-lead);
  font-weight: 700;
  color: var(--sh-ink);
  letter-spacing: -.3px;
}
.pay-point i {
  display: block;
  min-height: 14px;
  margin-top: 3px;
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  font-style: normal;
  color: var(--sh-danger-2);
}

.sh-receipt { margin-top: 12px; }
.sh-receipt-cut {
  height: 8px;
  background-image: radial-gradient(circle at 5px 0, transparent 5px, var(--sh-total-bg) 5.5px);
  background-size: 10px 8px;
  background-repeat: repeat-x;
}
.sh-receipt-body {
  background: var(--sh-total-bg);
  border-radius: 0 0 var(--sh-r-panel) var(--sh-r-panel);
  padding: 15px 16px 17px;
}
.sh-receipt-label {
  font-size: var(--sh-t-sm);
  font-weight: 700;
  color: var(--sh-primary);
}
.sh-receipt-rule {
  width: 40%;
  border-top: 1.5px dashed var(--sh-total-rule);
  margin: 7px 0;
}
.sh-receipt-value {
  font-size: var(--sh-t-display-4);
  font-weight: 700;
  color: var(--sh-primary);
  letter-spacing: -.5px;
  font-variant-numeric: tabular-nums;
}
.sh-receipt-value small { font-size: var(--sh-t-h3); font-weight: 400; margin-right: 8px; }
.sh-receipt-note {
  margin-top: 8px;
  font-size: var(--sh-t-body);
  font-weight: 600;
  color: var(--sh-ink-2);
  font-variant-numeric: tabular-nums;
}
.sh-receipt-note b { color: var(--sh-primary); }
.sh-receipt-eg { margin-top: 3px; font-size: var(--sh-t-xs); color: var(--sh-muted); }

.sh-paylog { display: flex; flex-direction: column; gap: 9px; }
.sh-paylog-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
  padding: 13px 16px;
}
.sh-paylog-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.sh-paylog-id {
  border: 1px solid var(--sh-border);
  border-radius: var(--sh-radius-chip);
  padding: 2px 7px;
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  color: var(--sh-muted);
  font-variant-numeric: tabular-nums;
}
.sh-paylog-name { font-size: var(--sh-t-sm); font-weight: 700; }
.sh-paylog-date { margin-top: 5px; font-size: var(--sh-t-3xs); color: var(--sh-muted-2); }
.sh-paylog-amt {
  flex-shrink: 0;
  background: var(--sh-tint);
  color: var(--sh-primary);
  border-radius: var(--sh-r-2xs);
  padding: 8px 12px;
  font-size: var(--sh-t-sm);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.sh-paylog-amt--neg { background: var(--sh-surface-alt); color: var(--sh-ink-2); }

.sh-payhero {
  background: var(--sh-gold-bg);
  border: 2px solid var(--sh-gold-2);
  border-radius: var(--sh-r-box);
  padding: 12px 16px;
  text-align: center;
}
.sh-payhero-label { font-size: var(--sh-t-xs); font-weight: 700; color: var(--sh-gold-text); }
.sh-payhero-value {
  font-size: var(--sh-t-amount-1);
  font-weight: 700;
  line-height: 1.25;
  color: var(--sh-gold-text);
  font-variant-numeric: tabular-nums;
}
.sh-payhero-note { font-size: var(--sh-t-3xs); font-weight: 600; color: var(--sh-gold-text); }
.sh-bank-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 20px;
  padding: 0 7px;
  border-radius: var(--sh-radius-chip);
  background: var(--sh-bank-bg, var(--sh-ink-2));
  color: var(--sh-bank-ink, #fff);
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  letter-spacing: -.5px;
  flex-shrink: 0;
}
.sh-bank-badge[data-bank="신한"] { --sh-bank-bg: #0046FF; }
.sh-bank-badge[data-bank="국민"], .sh-bank-badge[data-bank="KB"] { --sh-bank-bg: #FFBC00; --sh-bank-ink: var(--sh-ink); }
.sh-bank-badge[data-bank="우리"] { --sh-bank-bg: #0083CB; }
.sh-bank-badge[data-bank="하나"] { --sh-bank-bg: #008485; }
.sh-bank-badge[data-bank="농협"], .sh-bank-badge[data-bank="NH"] { --sh-bank-bg: #01A064; }
.sh-bank-badge[data-bank="기업"], .sh-bank-badge[data-bank="IBK"] { --sh-bank-bg: #003675; }
.sh-bank-badge[data-bank="카카오"] { --sh-bank-bg: #FFE300; --sh-bank-ink: var(--sh-ink); }
.sh-bank-badge[data-bank="토스"] { --sh-bank-bg: #0064FF; }
.sh-bank-badge[data-bank="케이"] { --sh-bank-bg: #F73C4B; }
.sh-bank-badge[data-bank="새마을"] { --sh-bank-bg: #009944; }
.sh-bank-badge[data-bank="우체국"] { --sh-bank-bg: #E60012; }
.sh-bank-badge[data-bank="수협"] { --sh-bank-bg: #0083CB; }
.sh-bank-badge[data-bank="SC"] { --sh-bank-bg: #0F714D; }
.sh-bank-badge[data-bank="씨티"] { --sh-bank-bg: #003B70; }
.sh-bank-badge[data-bank="대구"] { --sh-bank-bg: #008ACD; }
.sh-bank-badge[data-bank="부산"], .sh-bank-badge[data-bank="경남"] { --sh-bank-bg: #D6001C; }
.sh-bank-badge[data-bank="광주"], .sh-bank-badge[data-bank="전북"] { --sh-bank-bg: #0072BC; }
.sh-bank-badge[data-bank="제주"] { --sh-bank-bg: #00A0E9; }
.sh-bullets {
  font-size: var(--sh-t-2xs);
  color: var(--sh-muted);
  line-height: 1.75;
}
.sh-bullets li { margin-top: 3px; }
.sh-stars-row { justify-content: center; gap: 8px; margin: 16px 0; }
.star { cursor: pointer; }

.sh-desc .sh-box .sh-bullets {
  font-size: var(--sh-t-sm);
  color: var(--sh-ink-2);
  line-height: 1.8;
}
.sh-desc .sh-box .sh-bullets li { position: relative; padding-left: 19px; margin-top: 5px; }
.sh-desc .sh-box .sh-bullets li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--sh-primary);
  font-weight: 700;
}
.sh-bullets b { color: var(--sh-ink-2); }
.sh-bullets a { font-weight: 700; text-decoration: underline; }

.sh-facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(104px, 1fr));
  gap: 8px 16px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--sh-line-hair);
}
.sh-fact { min-width: 0; }
.sh-fact > span {
  display: block;
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  color: var(--sh-muted-2);
}
.sh-fact > b {
  display: block;
  margin-top: 2px;
  font-size: var(--sh-t-xs);
  font-weight: 700;
  color: var(--sh-ink-2);
  font-variant-numeric: tabular-nums;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (max-width: 767px) {
  .sh-points { grid-template-columns: 1fr 1fr; min-height: 292px; }
  .sh-paygrid { gap: 7px; }
  .pay-method { padding: 12px 8px; font-size: var(--sh-t-body); }
  .sh-taxgrid { gap: 8px; }
  .pay-tax { padding: 12px 2px; font-size: var(--sh-t-xs); }
  .sh-receipt-body { padding: 13px 15px 15px; }
  .sh-receipt-value { font-size: var(--sh-t-amount-3); }
  .sh-receipt-note { font-size: var(--sh-t-xs); }
  .sh-paylog-item { padding: 12px 16px; }
  .sh-payhero-value { font-size: var(--sh-t-amount-2); }
  .sh-facts { grid-template-columns: repeat(auto-fit, minmax(88px, 1fr)); }
}

.sh-auth-page .sh-app { min-height: 100vh; min-height: 100dvh; }
.sh-auth-page .sh-main { margin-left: 0; }
.sh-auth-panel-foot {
  align-self: end;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.2);
  color: var(--sh-on-brand);
}
.sh-auth-panel-foot-title { font-size: var(--sh-t-3xs); font-weight: 700; }
.sh-auth-panel-foot-body {
  margin-top: 8px;
  font-size: var(--sh-t-4xs);
  line-height: 1.8;
  overflow-wrap: anywhere;
}
.sh-auth-panel-foot a { color: inherit; text-decoration: underline; }
.sh-auth-panel-foot-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid rgba(255,255,255,.2);
  font-size: var(--sh-t-3xs);
}

.sh-auth-inner {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--sh-sp-6);
  height: 100%;
}
.sh-auth-brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--sh-on-brand);
  font-size: var(--sh-t-h2);
  font-weight: 700;
  letter-spacing: -.4px;
}
.sh-auth-brand:hover { color: var(--sh-on-brand); }
.sh-auth-brand svg { width: 30px; height: 30px; }

.sh-auth-kicker {
  margin-bottom: 12px;
  font-size: var(--sh-t-xs);
  font-weight: 700;
  letter-spacing: .02em;
  color: var(--sh-on-brand);
}
.sh-auth-h {
  font-size: var(--sh-t-display-1);
  font-weight: 700;
  letter-spacing: -.6px;
  line-height: 1.25;
  text-wrap: balance;
}
.sh-auth-p {
  margin-top: var(--sh-sp-4);
  font-size: var(--sh-t-lead);
  line-height: 1.6;
  color: var(--sh-on-brand);
}
.sh-auth-list {
  display: grid;
  gap: 8px;
  margin-top: 24px;
  padding: 0;
  list-style: none;
  font-size: var(--sh-t-body);
  font-weight: 700;
  line-height: 1.5;
}
.sh-auth-list li {
  display: flex;
  align-items: center;
  gap: 8px;
}
.sh-auth-list li::before {
  width: 6px;
  height: 6px;
  border-radius: var(--sh-r-pill);
  background: var(--sh-primary);
  content: "";
  flex: 0 0 auto;
}
.sh-auth-shell:has(.sh-auth-main > .sh-grid) .sh-auth-list { font-weight: 600; color: var(--sh-ink-2); }
.sh-auth-rating {
  margin-top: 24px;
  font-size: var(--sh-t-sm);
  font-weight: 700;
  color: var(--sh-on-brand);
}
.sh-auth-rating span { color: var(--sh-gold); }
.sh-auth-chips {
  display: flex;
  flex-direction: column;
  gap: var(--sh-sp-2);
  margin-top: var(--sh-sp-5);
  max-width: 380px;
}
.sh-glass svg { width: 20px; height: 20px; flex-shrink: 0; color: var(--sh-gold); }
.sh-glass-label { font-size: var(--sh-t-body); font-weight: 700; color: var(--sh-on-brand); }

.sh-auth-card-head { margin-bottom: 20px; }
.sh-auth-card-head .sh-lead { margin-top: 8px; text-wrap: balance; }
.sh-auth-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  margin-bottom: 16px;
  border-radius: var(--sh-r-box);
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.sh-auth-icon svg { width: 23px; height: 23px; }
.sh-auth-foot {
  margin-top: 16px;
  text-align: center;
  font-size: var(--sh-t-sm);
  color: var(--sh-muted);
}
.sh-auth-foot a { font-weight: 700; }
.sh-auth-fine {
  margin-top: 16px;
  text-align: center;
  font-size: var(--sh-t-3xs);
  line-height: 1.8;
  color: var(--sh-muted-2);
}
.sh-auth-fine a { color: var(--sh-muted); text-decoration: underline; }
.sh-auth-foot a,
.sh-msg-files a,
.sh-user-name,
.sh-biz-title,
.sh-promo-dismiss {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
}
.sh-msg-files a { padding: 1px 0; }
.sh-promo-dismiss { position: relative; }
.sh-promo-dismiss::before {
  content: "";
  position: absolute;
  inset: -4px;
}
.sh-auth-foot > a:only-child:not([class]) { position: relative; }
.sh-auth-foot > a:only-child:not([class])::after {
  content: "";
  position: absolute;
  inset: -15px -6px;
}

.sh-h1 + .sh-lead,
.sh-h2 + .sh-lead,
.sh-h2 + .sh-sub,
.sh-h3 + .sh-lead { margin-top: 7px; }

.sh-live-note {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--sh-t-xs);
  font-weight: 700;
  color: var(--sh-ok-text);
  white-space: nowrap;
}

.sh-effect-icon--like { background: var(--sh-like-bg); color: var(--sh-like-ink); }
.sh-effect-icon--biz  { background: var(--sh-ok-bg-2); color: var(--sh-ok-strong); }

.sh-btn--gold .sh-spinner {
  border-color: rgba(58,40,0,.3);
  border-top-color: var(--sh-gold-ink);
}

@media (max-width: 767px) {
  .sh-auth-page { background: var(--sh-canvas-deep); }
  .sh-auth-page .sh-main { padding: 0; }
  .sh-auth-page .sh-main::after { display: none; }
  .sh-auth-shell { min-height: 0; grid-template-columns: 1fr; }
  .sh-auth-panel { grid-template-rows: auto auto; padding: var(--sh-sp-4); }
  .sh-auth-panel-content { align-self: start; margin-top: var(--sh-sp-5); }
  .sh-auth-panel-foot { display: none; }
  .sh-auth-main { display: block; padding: 0 16px 24px; overflow: visible; }
  .sh-auth-p, .sh-auth-list, .sh-auth-rating { display: none; }
  .sh-auth-kicker { margin-bottom: 8px; }
  .sh-auth-h { font-size: var(--sh-t-display-2); line-height: 1.25; }
  .sh-auth-card { border-radius: var(--sh-r-card); padding: 24px 16px; }
  .sh-auth-card-head { margin-bottom: 16px; }
  .sh-auth-icon { width: 40px; height: 40px; margin-bottom: 12px; }
}

.rtl-form,
.rtl-alert { direction: rtl; text-align: right; }

.rtl-content { direction: rtl; text-align: right; }

.search-dropdown,
.input-wrapper { position: relative; }

.service-name { font-weight: 600; }

.blog-contents img { display: block; margin-left: auto; margin-right: auto; }

.sh-btn-label { display: inline; }

.info-close-btn { cursor: pointer; }

.min-max { font-size: var(--sh-t-xs); color: var(--sh-muted-2); }

.sh-kicker {
  display: block;
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  letter-spacing: .4px;
  color: var(--sh-primary);
}
.sh-kicker--mute { color: var(--sh-muted); }
.sh-kicker--ok { color: var(--sh-ok-text); }

.sh-chip--sm {
  padding: 4px 11px;
  font-size: var(--sh-t-2xs);
  gap: 4px;
}

.sh-chip-glyph {
  width: 16px;
  height: 16px;
  border-radius: var(--sh-radius-chip);

  overflow: hidden;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.sh-chip-glyph svg { width: 10px; height: 10px; }

.sh-tabs--3 { grid-template-columns: repeat(3, 1fr); }
.sh-tabs--4 { grid-template-columns: repeat(4, 1fr); }

.sh-tabs--5 { grid-template-columns: repeat(5, 1fr); }
.sh-tab span { font-weight: 700; }

.sh-log { list-style: none; margin: 0; padding: 0; }
.sh-log li {
  display: flex;
  gap: 12px;
  align-items: baseline;
  padding: 8px 0;
  border-bottom: 1px solid var(--sh-line);
}
.sh-log li:last-child { border-bottom: 0; }
.sh-log-day {
  flex: 0 0 auto;
  min-width: 78px;
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  color: var(--sh-muted);
  font-variant-numeric: tabular-nums;
}
.sh-log-note { flex: 1 1 auto; font-size: var(--sh-t-2xs); color: var(--sh-ink); line-height: 1.6; }

.sh-notice-go {
  flex-shrink: 0;
  font-size: var(--sh-t-xs);
  font-weight: 700;
  color: var(--sh-sep);
  transition: color var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .sh-notice-row:hover .sh-notice-go { color: var(--sh-primary); }
}
.sh-notice-row--sm { padding: 11px 16px; font-size: var(--sh-t-sm); }

.sh-row-end {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}
.sh-row-end .sh-seg-item { padding: 8px 12px; border-radius: var(--sh-r-sm); }

.sh-segtabs--scroll {
  overflow-x: auto;
  scrollbar-width: none;
}
.sh-segtabs--scroll::-webkit-scrollbar { display: none; }
.sh-segtabs--scroll .sh-segtab { flex: 0 0 auto; min-width: 84px; }

.sh-money-short {
  margin-top: 8px;
  font-size: var(--sh-t-xs);
  font-weight: 700;
  color: var(--sh-danger);
}
.sh-money-head .sh-linkbtn { flex-shrink: 0; }

.sh-rating-sum {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.sh-rating-avg {
  font-size: var(--sh-t-display-3);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -.5px;
  color: var(--sh-star-ink);
  font-variant-numeric: tabular-nums;
}
.sh-rating-avg small {
  font-size: var(--sh-t-sm);
  font-weight: 700;
  color: var(--sh-muted);
  margin-left: 3px;
}
.sh-rating-meta { font-size: var(--sh-t-xs); color: var(--sh-muted); line-height: 1.7; }

.sh-rating-row {
  display: grid;
  grid-template-columns: 66px 1fr 38px;
  align-items: center;
  gap: 8px;
}
.sh-rating-name {
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  color: var(--sh-ink-2);
  white-space: nowrap;
}
.sh-rating-count {
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  color: var(--sh-muted);
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.sh-review-tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin: 16px 0;
  padding: 12px 0;
  border-top: 1px solid var(--sh-line-hair);
  border-bottom: 1px solid var(--sh-line-hair);
}
.sh-review-tools-group {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  min-width: 0;
}

.sh-review-tools .sh-chip { padding: 5px 12px; font-size: var(--sh-t-2xs); }
.sh-review-date {
  margin-top: 8px;
  font-size: var(--sh-t-3xs);
  color: var(--sh-muted-2);
  font-variant-numeric: tabular-nums;
}

[data-sh-recent] {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
[data-sh-recent] .sh-chip {
  max-width: 100%;
  overflow: hidden;
}
[data-sh-recent] .sh-chip > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

[data-sh-related] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
[data-sh-related] .sh-row {
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-sm);
  padding: 12px 16px;
  transition: border-color var(--sh-fast), background var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  [data-sh-related] .sh-row:hover { border-color: var(--sh-primary); }
}
[data-sh-related] .sh-row.active { border-color: var(--sh-primary); }

.sh-empty-cta {
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 16px;
}

.sh-faq-grid {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}
.sh-faq-nav {
  position: sticky;
  top: 20px;
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.sh-faq-navitem {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 12px 12px;
  border-radius: var(--sh-r-xs);
  font-size: var(--sh-t-sm);
  font-weight: 700;
  color: var(--sh-muted);
  text-align: left;
  cursor: pointer;
  transition: background var(--sh-fast), color var(--sh-fast), transform 120ms var(--sh-ease);
}
@media (hover: hover) and (pointer: fine) {
  .sh-faq-navitem:hover { background: var(--sh-canvas); color: var(--sh-ink); }
}
.sh-faq-navitem.active {
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.sh-faq-navitem b {
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  color: var(--sh-muted-2);
  font-variant-numeric: tabular-nums;
}
.sh-faq-navitem.active b { color: var(--sh-primary); }
.sh-faq-body { min-width: 0; max-width: 720px; }

.sh-faq-search { position: relative; }
.sh-faq-search .sh-input { padding-left: 38px; }
.sh-faq-search svg {
  position: absolute;
  left: 13px;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  color: var(--sh-muted-2);
  pointer-events: none;
}

.sh-faq-none { padding: 34px 16px; }

.sh-gh-hub, .sh-gh-reader { scroll-margin-top: 76px; }
.sh-gh-lists { display: flex; flex-direction: column; gap: var(--sh-sp-5); }
.sh-gh-group-title { margin: 0 0 var(--sh-sp-2); color: var(--sh-muted); font-size: var(--sh-t-sm); font-weight: 700; }
.sh-gh-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sh-sp-2); margin: 0; padding: 0; list-style: none; }
.sh-gh-cards--services { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sh-gh-cards--tools { grid-template-columns: minmax(0, 1fr); }
.sh-gh-cards > li { display: flex; min-width: 0; }
.sh-gh-card { display: flex; flex: 1 1 auto; align-items: center; gap: var(--sh-sp-3); box-sizing: border-box; width: 100%; min-width: 0; height: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); background: var(--sh-surface); color: var(--sh-ink); text-decoration: none; transition: border-color var(--sh-fast), background var(--sh-fast); }
@media (hover: hover) and (pointer: fine) {
  .sh-gh-card:hover { border-color: var(--sh-tint-line); background: var(--sh-tint-soft); }
}
.sh-gh-card-icon { flex: none; width: 32px; height: 32px; }
.sh-gh-card-icon .sh-plat-icon { width: 32px; height: 32px; border-radius: var(--sh-r-sm); }
.sh-gh-card-icon .sh-plat-icon svg { width: 20px; height: 20px; }
.sh-gh-card-copy { display: flex; flex: 1 1 auto; flex-direction: column; gap: 2px; min-width: 0; }
.sh-gh-card-title { overflow-wrap: anywhere; font-size: var(--sh-t-body); font-weight: 700; line-height: 1.4; }
.sh-gh-card-sum { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: var(--sh-muted); font-size: var(--sh-t-sm); line-height: 1.5; }
.sh-gh-cards--services .sh-gh-card-sum { display: none; }
.sh-gh-card-mark { flex: none; color: var(--sh-muted-2); font-weight: 700; }
.sh-gh-reader { display: flex; flex-direction: column; gap: var(--sh-sp-4); min-width: 0; max-width: 760px; }
.sh-gh-reader-head { display: flex; flex-direction: column; gap: var(--sh-sp-1); }
.sh-gh-reader .sh-gh-reader-title { margin: 0; color: var(--sh-ink); font-size: 22px; font-weight: 700; line-height: 1.35; }
.sh-gh-reader-title:focus { outline: none; }
.sh-gh-reader-title:focus-visible { outline: 3px solid var(--sh-focus); outline-offset: 2px; }
.sh-gh-doc { min-width: 0; overflow-wrap: anywhere; }
.sh-gh-doc > .sh-gh-sec + .sh-gh-sec { margin-top: var(--sh-sp-5); }
.sh-gh-doc > .sh-gh-sec--sub { margin-top: var(--sh-sp-4); }
.sh-desc.sh-gh-doc .sh-gh-sec > * + * { margin-top: 12px; }
.sh-gh-doc .sh-gh-sec > .sh-doc-h.sh-gh-h3 { color: var(--sh-ink-2); font-size: var(--sh-t-sm); font-weight: 700; }
.sh-gh-reader-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sh-sp-2) var(--sh-sp-4); padding-top: var(--sh-sp-3); border-top: 1px solid var(--sh-line); }
.sh-gh-back, .sh-gh-next, .sh-gh-link { gap: 4px; min-height: 44px; }
.sh-gh-back { align-self: flex-start; }
.sh-gh-line { display: flex; flex-wrap: wrap; gap: 0 var(--sh-sp-4); margin: var(--sh-sp-1) 0 0; }
.sh-gh-line--detail { margin-top: var(--sh-sp-3); }
.sh-faq-answer p { margin: 0; }
.sh-faq-answer p + p, .sh-faq-answer p + .sh-faq-list, .sh-faq-answer .sh-faq-list + p { margin-top: 6px; }
.sh-faq-list { margin: 0; padding-left: 20px; }
.sh-faq-list li + li { margin-top: 2px; }
.sh-faq-sub { display: block; color: var(--sh-muted); }

body:not(.sh-order-page) #main-content.sh-main [data-faq-root] .sh-faq-navitem b { opacity: 1; }
body:not(.sh-order-page) #main-content.sh-main [data-faq-root] .sh-segtabs > button.sh-segtab:not(.active) { color: var(--sh-muted); }
@media (max-width: 767px) {
  .sh-gh-cards { grid-template-columns: minmax(0, 1fr); }
  .sh-gh-cards--services { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sh-gh-card { padding: 12px; }
  .sh-gh-cards--services .sh-gh-card { gap: var(--sh-sp-2); padding: 10px; }
  .sh-gh-cards--services .sh-gh-card-title { font-size: var(--sh-t-sm); }
  .sh-gh-cards--services .sh-gh-card-mark { display: none; }
  .sh-gh-cards--usage .sh-gh-card-sum { -webkit-line-clamp: 1; }
  .sh-gh-reader .sh-gh-reader-title { font-size: var(--sh-t-h3); }
}

.sh-page--read { max-width: 760px; }

.sh-formsec { display: flex; flex-direction: column; gap: 16px; }
.sh-formsec-head { display: flex; flex-direction: column; gap: 4px; }
.sh-formsec-title { font-size: var(--sh-t-lead); font-weight: 700; letter-spacing: -.2px; }
.sh-formsec-desc {
  font-size: var(--sh-t-xs);
  line-height: 1.7;
  color: var(--sh-muted);
}

.sh-fieldrow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 8px;
}

.sh-form-actions--row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.sh-anchornav {
  position: sticky;
  top: 12px;
  z-index: var(--sh-z-rail);
  display: flex;
  align-items: center;
  gap: 4px;
  margin: 0 0 16px;
  padding: 5px;

  background: rgba(255,255,255,.97);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-pill);
  box-shadow: 0 2px 10px rgba(42,8,84,.06);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.sh-anchornav::-webkit-scrollbar { display: none; }
.sh-anchornav-item {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 16px;
  border-radius: var(--sh-r-pill);
  font-size: var(--sh-t-sm);
  font-weight: 700;
  color: var(--sh-muted);
  white-space: nowrap;
  cursor: pointer;
  transition: background var(--sh-fast), color var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .sh-anchornav-item:hover { background: var(--sh-canvas); color: var(--sh-ink); }
}
.sh-anchornav-item.active {
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.sh-anchornav-item:focus-visible {
  outline: 3px solid var(--sh-focus);
  outline-offset: -3px;
}

.sh-star-icon {
  display: inline-block;
  vertical-align: -1px;
  flex-shrink: 0;
  color: var(--sh-star);
}

.sh-hero .sh-star-icon,
.sh-mobar .sh-star-icon,
.sh-orderbar .sh-star-icon { color: var(--sh-star-on-dark); }

@media (max-width: 767px) {

  .sh-anchornav {
    top: calc(var(--sh-topbar) + 8px);
    margin-bottom: 12px;

    padding-right: 28px;
  }
  .sh-anchornav-item { padding: 0 12px; }

  .sh-reviews:not(.sh-reviews--best) {
    display: flex;
    grid-template-columns: none;
    gap: 8px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    margin-right: -16px;
    padding-right: 16px;
  }
  .sh-reviews:not(.sh-reviews--best)::-webkit-scrollbar { display: none; }

  .sh-reviews[tabindex="0"]:focus-visible { outline: 3px solid var(--sh-focus); outline-offset: -3px; border-radius: var(--sh-r-box); }
  .sh-reviews > .sh-review {
    flex: 0 0 272px;
    scroll-snap-align: start;
    padding: 16px 15px;
  }

  .sh-sheet .sh-reviews {
    display: flex;
    flex-direction: column;
    overflow: visible;
    margin-right: 0;
    padding-right: 0;
  }
  .sh-sheet .sh-reviews > .sh-review { flex: 0 0 auto; }

  .sh-row { flex-wrap: wrap; row-gap: 8px; }
  .sh-row-name,
  .sh-row > span:first-child,

  [data-sh-related] .sh-row > .sh-grow {
    order: 1;
    flex: 1 1 100%;
    white-space: normal;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }

  .sh-row-tag     { order: 2; max-width: 88px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .sh-row-variant { order: 3; }
  .sh-row-consult { order: 4; }

  .sh-row-down    { order: 4; }
  .sh-row-price   { order: 5; margin-left: auto; }

  [data-sh-related] .sh-row > .sh-sub { order: 5; margin-left: auto; }
  .sh-row .sh-favbtn { order: 6; }

  #fields [data-sh-added="repeat-head"].sh-repeat.on + #dripfeed-options {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 12px;
  }

  #dripfeed-options > .form-group:nth-child(3) { grid-column: 1 / -1; }

  .sh-brief { padding: 13px 16px 12px; }

  .sh-faq-grid { grid-template-columns: 1fr; gap: 16px; }

  .sh-faq-grid > * { min-width: 0; }
  .sh-faq-nav {
    position: static;
    flex-direction: row;
    gap: 8px;
    overflow-x: auto;
    scrollbar-width: none;

    margin: -4px -16px 0;
    padding: 4px 16px;
  }
  .sh-faq-nav::-webkit-scrollbar { display: none; }

  .sh-faq-nav {
    -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent);
            mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent);
  }
  .sh-faq-navitem {
    flex-shrink: 0;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-pill);
    padding: 8px 16px;
    font-size: var(--sh-t-xs);
  }
  .sh-faq-navitem.active { border-color: var(--sh-primary); }
  .sh-faq-body { max-width: none; }

  .sh-fieldrow { grid-template-columns: 1fr; }
  .sh-rating-row { grid-template-columns: 60px 1fr 36px; }
  .sh-review-tools { gap: 8px; }
  .sh-review-tools-group { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
  .sh-review-tools-group::-webkit-scrollbar { display: none; }
  .sh-review-tools-group > * { flex-shrink: 0; }
}

@media (max-width: 767px) {
  .sh-chip,
  .sh-cat,
  .sh-tab,
  .sh-fav,
  .sh-seg-item,
  .sh-btn,
  .sh-pager a,
  .sh-pager span,
  .pay-tax,
  .sh-burger,
  .sh-topbar-brand,
  .sh-point-pill {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .sh-cat {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
  }
  .sh-btn--block { display: flex; }
  .sh-statustabs > a { min-height: 44px; display: inline-flex; align-items: center; }
  .sh-check { min-height: 44px; }
  .sh-table .sh-td-c .sh-check { display: flex; justify-content: center; min-width: 44px; min-height: 44px; margin: 0 auto; }

  .sh-input,
  .sh-select,
  .form-control:not(textarea) { min-height: 44px; }

  .sh-cat { padding: 8px 15px; }
  .sh-pager a,
  .sh-pager span { min-width: 44px; }

  .sh-mobar .sh-btn { min-height: 44px; padding: 16px 24px; }

  .sh-linkbtn,
  .sh-nowrap:not(.sh-chip),
  .sh-back,
  a.sh-sub,
  .sh-modal-x { position: relative; }

  .sh-linkbtn::before,
  .sh-nowrap:not(.sh-chip)::before,
  .sh-back::before,
  a.sh-sub::before {
    content: "";
    position: absolute;
    inset: -13px -8px;
  }

  .sh-order-defs .sh-linkbtn {
    min-height: 44px;
    justify-content: center;
  }
  .sh-order-defs .sh-def:has(.sh-linkbtn) {
    min-height: 44px;
    align-items: center;
  }
  .sh-order-defs .sh-linkbtn::before { content: none; }
  .sh-eye-btn::before,
  .sh-modal-x::before {
    content: "";
    position: absolute;
    inset: -6px;
  }

  .sh-burger {
    width: 44px;
    padding-inline: 5px;
    margin-inline: -5px;
  }

  .sh-segtab { position: relative; }
  .sh-segtab::after {
    content: "";
    position: absolute;
    inset: -5px 0;
  }

  .sh-checkbox { position: relative; }
  .sh-checkbox::after {
    content: "";
    position: absolute;
    inset: -14px;
  }

  .sh-faq-navitem { position: relative; }
  .sh-faq-navitem::after {
    content: "";
    position: absolute;
    inset: -4px 0;
  }

  .sh-table td > a:only-child:not([class]) { position: relative; }
  .sh-table td > a:only-child:not([class])::after {
    content: "";
    position: absolute;
    inset: -15px -6px;
  }
}

@media (max-width: 359px) {
  #fields [data-sh-added="repeat-head"].sh-repeat.on + #dripfeed-options {
    grid-template-columns: 1fr;
  }
  .sh-rating-row { grid-template-columns: 56px 1fr 34px; }
}

.sh-steps3 {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.sh-steps3-item {
  position: relative;
  min-width: 0;
  padding: 16px;
  background: var(--sh-tint-soft);
  border: 1px solid var(--sh-tint-line);
  border-radius: var(--sh-r-box);
}
.sh-steps3-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}

.sh-steps3-head .sh-effect-icon { background: var(--sh-surface); }
.sh-steps3-item .sh-tile-title {
  display: inline-block;
  margin-top: 8px;
  padding-bottom: 7px;
  border-bottom: 2px solid var(--sh-primary);
}
.sh-steps3-item .sh-tile-body { margin-top: 8px; }
.sh-steps3-go {
  display: inline-block;
  margin-top: 12px;
  font-size: var(--sh-t-xs);
  font-weight: 700;
}

.sh-steps3-item:not(:last-child)::after {
  content: "";
  position: absolute;
  right: -8px;
  top: 34px;
  width: 6px;
  height: 6px;
  border-right: 2px solid var(--sh-muted-2);
  border-bottom: 2px solid var(--sh-muted-2);
  transform: rotate(-45deg);
}

.sh-rail .sh-steps3 { gap: 8px; }
.sh-rail .sh-steps3-item { padding: 16px 12px; }
.sh-rail .sh-steps3-item:not(:last-child)::after { right: -7px; }

@media (max-width: 767px) {
  .sh-steps3 { grid-template-columns: 1fr; gap: 4px; }
  .sh-steps3-item {
    display: grid;
    grid-template-columns: 40px 1fr;
    grid-template-rows: auto auto;
    column-gap: 12px;
    padding: 7px 12px 8px;
  }
  .sh-steps3-head {
    flex-direction: column;
    justify-content: flex-start;
    gap: 8px;
    margin: 0;
    grid-row: 1 / span 3;
  }

  .sh-steps3-head .sh-step-no { display: flex; }
  .sh-steps3-item::after { display: none; }
  .sh-steps3-item .sh-tile-kicker { display: none; }
  .sh-steps3-item .sh-tile-title {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    margin-top: 0;
    padding-bottom: 0;
    border-bottom: 0;
    line-height: 20px;
  }
  .sh-steps3-item .sh-tile-body { margin-top: 3px; font-size: var(--sh-t-3xs); line-height: 1.55; }

  .sh-steps3-item .sh-steps3-go {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
    align-self: baseline;
    margin: 0;
    font-size: var(--sh-t-2xs);
    line-height: 20px;
    white-space: nowrap;
  }
  .sh-steps3-item .sh-tile-title { grid-column: 2; grid-row: 1; padding-right: 96px; }
  .sh-steps3-item .sh-tile-body { grid-column: 2; grid-row: 2; }
}

.sh-caution3 { padding: 16px 16px; }
.sh-caution3-head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
}
.sh-caution3-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  display: inline-flex;
  color: var(--sh-star-ink);
}
.sh-caution3-icon svg { width: 100%; height: 100%; }
.sh-caution3-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}
.sh-caution3-list li {
  display: grid;
  grid-template-columns: 22px 1fr;
  column-gap: 12px;
  align-items: start;
}
.sh-caution3-list .sh-step-no { display: flex; }
.sh-caution3-list p {
  margin: 0;
  font-size: var(--sh-t-body);
  color: var(--sh-ink-2);
  line-height: 1.75;
}
@media (max-width: 767px) {
  .sh-caution3-list p { font-size: var(--sh-t-xs); line-height: 1.7; }
}

.sh-cms-note {
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
  background: var(--sh-surface);
}
.sh-cms-note--inline {
  margin-top: var(--sh-sp-2);
  border: 0;
  background: transparent;
}
.sh-cms-note--inline .sh-cms-note-head {
  justify-content: flex-start;
  padding: 0;
  color: var(--sh-ink);
}
.sh-cms-note--inline .sh-cms-note-more { color: var(--sh-ink); }
.sh-cms-note--inline .sh-cms-note-body {
  margin-top: var(--sh-sp-2);
  padding: var(--sh-sp-3);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
}
.sh-cms-note-head {
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  padding: 0 16px;
  cursor: pointer;
  font-size: var(--sh-t-sm);
  font-weight: 700;
  color: var(--sh-ink-2);
  user-select: none;
}
.sh-cms-note-head::-webkit-details-marker { display: none; }
.sh-cms-note-head::marker { content: ""; }
.sh-cms-note-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  color: var(--sh-primary);
  font-weight: 700;
  font-size: var(--sh-t-xs);
}
.sh-cms-note-more::after {
  content: "";
  width: 6px;
  height: 6px;
  margin-top: -3px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform var(--sh-fast);
}

.sh-cms-note-more:empty::before { content: "자세히 보기"; }
.sh-cms-note[open] .sh-cms-note-more:empty::before { content: "접기"; }
.sh-cms-note[open] .sh-cms-note-more::after { transform: rotate(-135deg); margin-top: 3px; }

.sh-cms-note-body {
  padding: 2px 16px 16px;
  font-size: var(--sh-t-sm);
  line-height: 1.7;
  color: var(--sh-ink-2);
}
.sh-cms-note-body > :first-child { margin-top: 0; }
.sh-cms-note-body > :last-child  { margin-bottom: 0; }

.sh-cms-note-body > p:first-of-type {
  position: relative;
  margin: 0 0 12px;
  padding: 12px 16px 12px 54px;
  min-height: 56px;
  border-radius: var(--sh-r-sm);
  background: var(--sh-tint-soft);
  color: var(--sh-ink);
  font-weight: 600;
  line-height: 1.65;
}
.sh-cms-note-body > p:first-of-type::before {
  content: "";
  position: absolute;
  left: 14px;
  top: 12px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--sh-surface);
  box-shadow: 0 1px 2px rgba(42,8,84,.08);
}

.sh-cms-note-body > p:first-of-type::after {
  content: "";
  position: absolute;
  left: 21px;
  top: 19px;
  width: 16px;
  height: 16px;
  background: var(--sh-primary);
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M12 11v5'/><path d='M12 8h.01'/></svg>") center / contain no-repeat;
          mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M12 11v5'/><path d='M12 8h.01'/></svg>") center / contain no-repeat;
}

.sh-cms-note-body ul,
.sh-cms-note-body ol {
  list-style: none;
  margin: 0 0 12px;
  padding: 0;
  display: grid;
  gap: 8px;
}
.sh-cms-note-body li {
  position: relative;
  margin: 0;
  padding: 12px 16px 12px 42px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
  color: var(--sh-ink-2);
  font-weight: 400;
  line-height: 1.6;
}
.sh-cms-note-body li::before {
  content: "";
  position: absolute;
  left: 13px;
  top: 11px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--sh-tint);
}
.sh-cms-note-body ul li::after {
  content: "";
  position: absolute;
  left: 17px;
  top: 15px;
  width: 10px;
  height: 10px;
  background: var(--sh-primary);
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12.5l4.5 4.5L19 7.5'/></svg>") center / contain no-repeat;
          mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12.5l4.5 4.5L19 7.5'/></svg>") center / contain no-repeat;
}

.sh-cms-note-body ol { counter-reset: shcms; }
.sh-cms-note-body ol li { counter-increment: shcms; }
.sh-cms-note-body ol li::after {
  content: counter(shcms);
  position: absolute;
  left: 13px;
  top: 11px;
  width: 18px;
  height: 18px;
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  line-height: 18px;
  text-align: center;
  color: var(--sh-primary);
}

.sh-cms-note-body h3,
.sh-cms-note-body h4 {
  display: inline-block;
  margin: 8px 0 12px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--sh-primary);
  font-size: var(--sh-t-h3);
  font-weight: 700;
  color: var(--sh-ink);
}

.sh-cms-note-body > h3:first-child,
.sh-cms-note-body > h4:first-child {
  display: block;
  margin: 8px 0 8px;
  padding: 0;
  border: 0;
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  letter-spacing: .4px;
  color: var(--sh-primary);
}
.sh-cms-note-body strong { color: var(--sh-primary); font-weight: 700; }
.sh-cms-note-body p { margin: 0 0 12px; }
.sh-cms-note-body a { color: var(--sh-primary); text-decoration: underline; text-underline-offset: 2px; }

.sh-cms-note-head > span:first-child { display: inline-flex; align-items: center; gap: 8px; }
.sh-cms-note-head > span:first-child::before {
  content: "";
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  background: var(--sh-primary);
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M12 11v5'/><path d='M12 8h.01'/></svg>") center / contain no-repeat;
          mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M12 11v5'/><path d='M12 8h.01'/></svg>") center / contain no-repeat;
}
@media (max-width: 767px) {
  .sh-cms-note-body { padding: 0 12px 12px; }
  .sh-cms-note-body > p:first-of-type { padding: 12px 12px 12px 50px; }
  .sh-cms-note-body > p:first-of-type::before { left: 12px; top: 10px; }
  .sh-cms-note-body > p:first-of-type::after  { left: 19px; top: 17px; }
  .sh-cms-note-body li { padding: 9px 12px 9px 40px; }
}

@media (min-width: 768px) and (max-width: 1535px) {
  .sh-grid { padding-right: 8px; }
  .sh-fab-stack, .sh-kakao-fab { right: 8px; }
  .sh-fab, .sh-kakao-fab { width: 44px; height: 44px; }
  .sh-fab svg, .sh-kakao-fab svg { width: 23px; height: 23px; }

}

@media (min-width: 768px) and (max-width: 1279px) {
  .sh-main { padding-right: 66px; }
}

.sh-skel {
  display: block;
  height: 11px;
  width: var(--w, 60%);
  max-width: 100%;
  border-radius: var(--sh-radius-chip);
  background: var(--sh-line);
  animation: sh-skel-fade 1.4s ease-in-out infinite;
}
.sh-skel + .sh-skel { margin-left: auto; }
.sh-skel--row { pointer-events: none; }
@keyframes sh-skel-fade {
  0%, 100% { opacity: 1; }
  50%      { opacity: .45; }
}

.sh-toast {
  position: fixed;
  z-index: calc(var(--sh-z-modal) + 1);
  right: 20px;
  bottom: 20px;
  display: flex;
  align-items: center;
  gap: 8px;
  max-width: min(360px, calc(100vw - 32px));
  padding: 12px 16px;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-ink);
  color: #fff;
  box-shadow: var(--sh-sh-dark);
  font-size: var(--sh-t-sm);
  font-weight: 700;
  opacity: 0;
  transform: translateY(12px);
  pointer-events: none;
  transition: opacity var(--sh-dur) var(--sh-ease-out), transform var(--sh-dur) var(--sh-ease-out);
}
.sh-toast.open { opacity: 1; transform: none; pointer-events: auto; }
.sh-toast.is-out { opacity: 0; transform: translateY(12px); }
.sh-toast-x { width: 44px; height: 44px; margin: -10px -10px -10px 0; display: inline-flex; align-items: center; justify-content: center; color: inherit; font-size: var(--sh-t-card); line-height: 1; }
@media (max-width: 767px) { .sh-toast { right: 14px; bottom: calc(var(--sh-tabbar-safe) + 14px); } }

:where(button:not([disabled]), a[href]:not([aria-disabled="true"]), summary,
       [role="button"]:not([aria-disabled="true"]), [role="tab"]:not([aria-disabled="true"]),
       [role="switch"]:not([aria-disabled="true"]), .sh-cat, .sh-row, .sh-today-tile,
       .sh-guide-card, .sh-guide-row) {
  min-inline-size: 44px;
  min-block-size: 44px;
  transition-duration: 160ms;
  transition-timing-function: var(--sh-ease-out);
}
a[href]:not(.sh-sr-only) { display: inline-flex; align-items: center; }
.sh-btn--block, .sh-navg-item, .sh-notice-row, .sh-tab-item, .sh-brand { display: flex; }
:where(.sh-input, .sh-select, .sh-textarea, .form-control:not(textarea), select:not(.sh-sr-only)) { min-block-size: 44px; }
.sh-check { min-inline-size: 44px; min-block-size: 44px; }
.sh-checkbox { transition: background 160ms var(--sh-ease-out), border-color 160ms var(--sh-ease-out), transform 160ms var(--sh-ease-out); }
.sh-switch { min-inline-size: 44px; min-block-size: 44px; }

:where(button:not([disabled]), a[href]:not([aria-disabled="true"]), summary,
       [role="button"]:not([aria-disabled="true"]), [role="tab"]:not([aria-disabled="true"]),
       [role="switch"]:not([aria-disabled="true"]), .sh-cat, .sh-row, .sh-today-tile,
       .sh-guide-card, .sh-guide-row):active {
  transform: scale(.97);
  transition-duration: 0ms;
}
.sh-checkbox:active, .sh-switch:active { transform: scale(.92); transition-duration: 0ms; }

.sh-table-wrap,
.sh-rows,
.sh-list,
.sh-notification-list { overscroll-behavior: contain; }

.sh-topbar { transition: box-shadow 160ms var(--sh-ease-out); }
.sh-topbar.is-scrolled { box-shadow: var(--sh-sh-card); }

.sh-skel-list { display: grid; gap: var(--sh-sp-2); }
.sh-skel-list-row {
  display: grid;
  align-content: center;
  gap: var(--sh-sp-2);
  min-height: 72px;
  padding: var(--sh-sp-3) var(--sh-sp-4);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0ms !important;
    animation-delay: 0ms !important;
    transition-duration: 0ms !important;
    transition-delay: 0ms !important;
    scroll-behavior: auto !important;
  }
  :where(button, a[href], summary, [role="button"], [role="tab"], [role="switch"],
         .sh-cat, .sh-row, .sh-today-tile, .sh-guide-card, .sh-guide-row):active,
  .sh-checkbox:active,
  .sh-switch:active { transform: none !important; }
}

.sh-biz--mobile { display: none; }
@media (max-width: 767px) {
  .sh-biz--mobile {
    display: block;
    margin: 20px -2px 0;
    padding: 16px 16px 4px;
    border-top: 1px solid var(--sh-line-hair-2);
  }
  .sh-biz--mobile .sh-biz-title { font-size: var(--sh-t-3xs); margin-bottom: 8px; }
  .sh-biz--mobile .sh-biz-body { font-size: var(--sh-t-4xs); line-height: 1.8; word-break: keep-all; }
  .sh-biz--mobile .sh-biz-links { margin-top: 8px; padding-top: 8px; }
}

.sh-scrim.is-closing { opacity: 0; transition: opacity 140ms var(--sh-ease); }

.sh-scrim.is-closing .sh-modal {
  animation: none;
  transform: scale(.98);
  transition: transform 140ms var(--sh-ease);
}

.sh-acc-q,
.sh-tab,
.sh-statustabs > a,
.sh-acc-mark { transition: transform 120ms var(--sh-ease); }
.sh-acc-q:active,
.sh-tab:active,
.sh-cat:active,
.sh-row:active,
.sh-faq-navitem:active,
.sh-statustabs > a:active,
.sh-segtab:active,
.sh-plat:active { transform: scale(.98); }

.sh-plat:active { transform: none; }
.sh-plat:active .sh-plat-icon { transform: scale(.96); }

@media (hover: hover) and (pointer: fine) {
  .sh-acc-item:not(.open) .sh-acc-q:hover { background: var(--sh-canvas); }
}
.sh-acc-q:active .sh-acc-mark { transform: scale(.9); }

.sh-svcguide { padding: 24px 26px; container-type: inline-size; }

.sh-svcguide {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  align-content: flex-start;
}
.sh-svcguide > * { flex: 0 0 100%; min-width: 0; }
.sh-svcguide .sh-guide-h2 {
  margin: 0 0 16px;
  font-size: var(--sh-t-h2);
  font-weight: 700;
  letter-spacing: -.3px;
  line-height: 1.25;
  color: var(--sh-ink);
}

.sh-svcguide .sh-guide-tabs {
  margin: 0 0 16px;

  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.sh-svcguide .sh-guide-tabs::-webkit-scrollbar { display: none; }

.sh-svcguide .sh-guide-pane { min-width: 0; }
.sh-svcguide .sh-guide-tabs .sh-segtab {
  flex: 1 1 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 34px;
  padding: 8px 12px;
  font-size: var(--sh-t-sm);
  font-weight: 700;
  line-height: 17px;
  white-space: nowrap;
  color: var(--sh-muted-2);
}
.sh-svcguide .sh-guide-tabs .sh-segtab.active { color: var(--sh-ink); }
@media (hover: hover) and (pointer: fine) {

  .sh-svcguide .sh-guide-tabs .sh-segtab:not(.active):hover { background: rgba(255,255,255,.6); }
}
.sh-svcguide .sh-guide-tabs .sh-segtab:focus-visible {
  outline: 2px solid var(--sh-focus);
  outline-offset: -2px;
}

.sh-svcguide .sh-guide-tab-ic {
  display: none;
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  border-radius: var(--sh-radius-chip);
  overflow: hidden;
  align-items: center;
  justify-content: center;
  background: var(--sh-plat-mark-bg, var(--sh-brand-etc));
  color: var(--sh-plat-mark-fg, #fff);
}
.sh-svcguide .sh-segtab.active .sh-guide-tab-ic { display: inline-flex; }
.sh-svcguide .sh-segtab .sh-guide-tab-ic:empty { display: none; }
.sh-svcguide .sh-guide-tab-ic svg { display: block; width: 16px; height: 16px; }
.sh-svcguide .sh-guide-tab-ic[data-sh-icon-on] svg { width: 10px; height: 10px; }

.sh-svcguide .sh-guide-modes { margin: 0 0 16px; }
.sh-svcguide .sh-guide-modes .sh-seg-item {
  padding: 5px 12px;
  border-radius: var(--sh-r-sm);
  font-size: var(--sh-t-xs);
  line-height: 15px;
  color: var(--sh-muted);
}
.sh-svcguide .sh-guide-modes .sh-seg-item.active {
  border-color: var(--sh-primary);
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-weight: 700;
}
@media (hover: hover) and (pointer: fine) {

  .sh-svcguide .sh-guide-modes .sh-seg-item:not(.active):hover {
    border-color: var(--sh-primary);
    color: var(--sh-muted);
  }
}
.sh-svcguide .sh-guide-modes .sh-seg-item:focus-visible {
  outline: 2px solid var(--sh-focus);
  outline-offset: 2px;
}

.sh-svcguide .sh-guide-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
  min-height: 138px;
}

.sh-svcguide .sh-guide-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
  padding: 12px;
  text-align: left;
  font: inherit;
  color: inherit;
  appearance: none;
  -webkit-appearance: none;
  background: var(--sh-surface);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-ctrl);
  cursor: pointer;
  transition: transform 160ms var(--sh-ease), box-shadow 160ms var(--sh-ease), border-color var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .sh-svcguide .sh-guide-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(42,8,84,.10);
    border-color: var(--sh-tint-line);
  }
}
.sh-svcguide .sh-guide-card:focus-visible {
  outline: 2px solid var(--sh-focus);
  outline-offset: 2px;
}
.sh-svcguide .sh-guide-card:active { transform: translateY(0); }

.sh-svcguide .sh-guide-card-title {
  align-self: flex-start;
  display: inline-block;
  padding-bottom: 7px;
  border-bottom: 2px solid var(--sh-primary);
  font-size: var(--sh-t-body);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -.2px;
  color: var(--sh-ink);
}
.sh-svcguide .sh-guide-card-body {
  flex: 1 0 auto;
  margin: 8px 0 0;
  font-size: var(--sh-t-xs);
  font-weight: 400;
  line-height: 1.6;
  color: var(--sh-ink-2);
}
.sh-svcguide .sh-guide-card-tail {
  margin: 0;
  padding-top: 8px;
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -.1px;
  font-variant-numeric: tabular-nums;
  color: var(--sh-muted-2);
}

.sh-svcguide .sh-guide-card.is-in { animation: sh-rise 180ms var(--sh-ease) backwards; }
.sh-svcguide .sh-guide-card.is-in:nth-child(2) { animation-delay: 40ms; }
.sh-svcguide .sh-guide-card.is-in:nth-child(3) { animation-delay: 80ms; }

.sh-svcguide .sh-guide-links {
  display: block;
  margin-top: 16px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
  background: var(--sh-surface);
}
.sh-svcguide .sh-guide-links-head {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 40px;
  padding: 0 16px;
  font-size: var(--sh-t-sm);
  font-weight: 700;
  color: var(--sh-ink-2);
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  border-radius: var(--sh-r-box);
  transition: background var(--sh-fast);
}
.sh-svcguide .sh-guide-links-head::-webkit-details-marker { display: none; }
.sh-svcguide .sh-guide-links-head::marker { content: ""; }
@media (hover: hover) and (pointer: fine) {
  .sh-svcguide .sh-guide-links-head:hover { background: var(--sh-canvas); }
}
.sh-svcguide .sh-guide-links-head:focus-visible {
  outline: 2px solid var(--sh-focus);
  outline-offset: -2px;
}

.sh-svcguide .sh-guide-links-head > [data-sh-guide-links-label] { flex: 0 1 auto; min-width: 0; }
.sh-svcguide .sh-guide-links-n {
  flex: 0 0 auto;
  margin-left: -2px;
  margin-right: auto;
  padding: 2px 8px;
  border-radius: var(--sh-r-pill);
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  line-height: 1.4;
  font-variant-numeric: tabular-nums;
  color: var(--sh-primary);
  background: var(--sh-tint);
}

.sh-svcguide .sh-guide-links-head::after {
  content: "";
  flex: 0 0 auto;
  width: 6px;
  height: 6px;
  margin-right: 3px;
  border-right: 2px solid var(--sh-muted-2);
  border-bottom: 2px solid var(--sh-muted-2);
  transform: translateY(-2px) rotate(45deg);
  transition: transform 150ms var(--sh-ease);
}
.sh-svcguide .sh-guide-links[open] > .sh-guide-links-head::after { transform: translateY(1px) rotate(-135deg); }
.sh-svcguide .sh-guide-links[open] > .sh-guide-links-head {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  background: var(--sh-canvas);
  border-bottom: 1px solid var(--sh-line);
}

.sh-svcguide .sh-guide-links { interpolate-size: allow-keywords; }
.sh-svcguide .sh-guide-links::details-content {
  block-size: 0;
  overflow: clip;
  transition: block-size 200ms var(--sh-ease), content-visibility 200ms allow-discrete;
}
.sh-svcguide .sh-guide-links[open]::details-content { block-size: auto; }
@media (prefers-reduced-motion: reduce) {
  .sh-svcguide .sh-guide-links::details-content { transition-duration: .001ms; }
}

.sh-svcguide .sh-guide-links-hint {
  flex: 0 0 auto;
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  color: var(--sh-muted-2);
}
.sh-svcguide .sh-guide-links-hint::before { content: "펼쳐 보기"; }
.sh-svcguide .sh-guide-links[open] .sh-guide-links-hint::before { content: "접기"; }

.sh-svcguide .sh-guide-links .sh-guide-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 12px;
}

.sh-svcguide .sh-guide-row {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 60px;
  padding: 12px 12px 12px 12px;
  text-align: left;
  font: inherit;
  color: inherit;
  appearance: none;
  -webkit-appearance: none;
  background: var(--sh-surface);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-sm);
  cursor: pointer;
  transition: transform 160ms var(--sh-ease), box-shadow 160ms var(--sh-ease), border-color var(--sh-fast);
}
@media (hover: hover) and (pointer: fine) {
  .sh-svcguide .sh-guide-row:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(42,8,84,.10);
    border-color: var(--sh-tint-line);
  }
  .sh-svcguide .sh-guide-row:hover::after { border-color: var(--sh-primary); }
}
.sh-svcguide .sh-guide-row:active { transform: translateY(0); }
.sh-svcguide .sh-guide-row:focus-visible {
  outline: 2px solid var(--sh-focus);
  outline-offset: 2px;
}

.sh-svcguide .sh-guide-row::after {
  content: "";
  flex: 0 0 auto;
  width: 6px;
  height: 6px;
  margin-right: 2px;
  border-right: 2px solid var(--sh-sep);
  border-bottom: 2px solid var(--sh-sep);
  transform: rotate(-45deg);
  transition: border-color var(--sh-fast);
}

.sh-svcguide .sh-guide-row > .guide-title {
  flex: 1 1 auto;
  min-width: 0;
  font-size: var(--sh-t-sm);
  font-weight: 700;
  color: var(--sh-ink-2);
}

.sh-svcguide .sh-guide-thumb {
  flex: 0 0 56px;
  width: 56px;
  height: 40px;
  border-radius: var(--sh-radius-chip);
  overflow: hidden;
  border: 1px solid var(--sh-line);
  background: var(--sh-canvas);
}
.sh-svcguide .sh-guide-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0;
}

.sh-svcguide .sh-guide-txt {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.sh-svcguide .sh-guide-chip {
  display: inline-block;
  max-width: 100%;
  padding: 2px 8px;
  border-radius: var(--sh-r-pill);
  border: 1px solid var(--sh-line);
  background: var(--sh-canvas);
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  line-height: 1.4;
  color: var(--sh-muted-2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sh-svcguide .sh-guide-head {
  font-size: var(--sh-t-body);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -.2px;
  color: var(--sh-ink);
}

.sh-svcguide .sh-guide-caution {
  padding: 16px 20px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-surface);
  font-size: var(--sh-t-sm);
  line-height: 2.1;
  color: var(--sh-ink-2);
}
.sh-svcguide .sh-guide-caution p {
  margin: 0;
  padding-left: 12px;
  text-indent: -12px;
}
.sh-svcguide .sh-guide-caution p::before { content: ""; display: inline-block; height: .8em; margin: 0 6px 0 0; border-left: 1px solid var(--sh-line); vertical-align: -.08em; }
.sh-phone-line-note::before { content: " "; }

.sh-svcguide .sh-guide-faq .sh-acc-q {
  min-height: 44px;
  padding: 12px 16px;
  line-height: 1.4;
}
.sh-svcguide .sh-guide-faq .sh-acc-a { line-height: 1.6; }
.sh-svcguide .sh-guide-faq .sh-acc-item.open .sh-acc-a { padding: 0 16px 12px; }
.sh-svcguide .sh-guide-faq .sh-acc-mark { line-height: 1; }
.sh-svcguide .sh-guide-faq-h {
  flex: 1 1 auto;
  order: 0;
  margin: 24px 0 12px;
  font-size: var(--sh-t-lead);
  font-weight: 700;
  letter-spacing: -.2px;
  line-height: 1.4;
  color: var(--sh-ink);
}

.sh-svcguide .sh-guide-faq-more {
  flex: 0 0 auto;
  order: 1;
  align-self: flex-end;
  margin: 24px 0 12px;
  white-space: nowrap;
}
.sh-svcguide .sh-guide-faq { order: 2; }
@media (min-width: 768px) {
  .sh-svcguide .sh-guide-faq { min-height: 296px; }
}

#category-container { scroll-margin-top: 12px; }

@media (min-width: 768px) {
  .sh-anchornav { display: none; }
}

.sh-restrict-note {
  margin: 12px 0 0;
  padding: 12px 16px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-sm);
  background: var(--sh-canvas);
  font-size: var(--sh-t-2xs);
  font-weight: 400;
  line-height: 1.6;
  text-align: center;
  color: var(--sh-muted-2);
}

@media (max-width: 1023px) {
  .sh-svcguide { padding: 24px 20px; }
}

@container (max-width: 469px) {
  .sh-svcguide .sh-guide-tabs .sh-segtab { padding: 8px 8px; }
  .sh-svcguide .sh-guide-cards {
    grid-template-columns: 1fr;
    gap: 8px;
    min-height: 0;
  }
  .sh-svcguide .sh-guide-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 12px;
    align-items: end;
    padding: 8px 12px;
  }

  .sh-svcguide .sh-guide-card-title { grid-column: 1; grid-row: 1; justify-self: start; font-size: var(--sh-t-body); padding-bottom: 4px; }
  .sh-svcguide .sh-guide-card-tail {
    grid-column: 2;
    grid-row: 1;
    align-self: end;
    padding: 0 0 8px;
    white-space: nowrap;
  }
  .sh-svcguide .sh-guide-card-body { grid-column: 1 / -1; grid-row: 2; flex: none; margin-top: 4px; font-size: var(--sh-t-xs); line-height: 1.5; }
}

@media (max-width: 767px) {
  .sh-svcguide { padding: 16px 16px; }
  .sh-svcguide .sh-guide-tabs {
    margin-bottom: 12px;
    scroll-snap-type: x proximity;
    padding-right: 20px;
    -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent);
    mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent);
  }
  .sh-svcguide .sh-guide-tabs .sh-segtab {
    flex: 0 0 auto;
    scroll-snap-align: start;
    padding: 8px 12px;
  }
  .sh-svcguide .sh-guide-tab-ic,
  .sh-svcguide .sh-guide-tab-ic svg { width: 14px; height: 14px; }
  .sh-svcguide .sh-guide-tab-ic { flex-basis: 14px; }
  .sh-svcguide .sh-guide-tab-ic[data-sh-icon-on] svg { width: 9px; height: 9px; }
  .sh-svcguide .sh-guide-modes { margin-bottom: 12px; }

  .sh-svcguide .sh-guide-modes .sh-seg-item { position: relative; min-height: 32px; }
  .sh-svcguide .sh-guide-modes .sh-seg-item::after {
    content: "";
    position: absolute;
    inset: -6px 0;
  }
  .sh-svcguide .sh-guide-links { margin-top: 12px; }
  .sh-svcguide .sh-guide-links-head { min-height: 44px; }
  .sh-svcguide .sh-guide-faq .sh-acc-q { padding: 12px; font-size: var(--sh-t-sm); }

  .sh-svcguide .sh-guide-links .sh-guide-grid { grid-template-columns: 1fr; gap: 8px; padding: 8px; }
  .sh-svcguide .sh-guide-row { min-height: 56px; }
  .sh-svcguide .sh-guide-caution { padding: 16px 16px; font-size: var(--sh-t-xs); line-height: 1.9; }
  .sh-svcguide .sh-guide-faq-h,
  .sh-svcguide .sh-guide-faq-more { margin: 16px 0 12px; }
  #category-container { scroll-margin-top: calc(var(--sh-topbar) + 12px); }
}

#link-guide > :last-child { margin-bottom: 0; }
.sh-svcguide .sh-guide-faq-h { margin-top: 16px; }
@media (max-width: 640px) {
  .sh-svcguide .sh-guide-faq-h,
  .sh-svcguide .sh-guide-faq-more { margin: 12px 0 8px; }

  #link-guide > .sh-h2 { margin-bottom: 12px; }
  #link-guide > .sh-segtabs { margin-bottom: 8px; }
  #link-guide > .sh-row-end { margin-bottom: 8px; }
}

.sh-desc-steps,
.sh-desc-step,
.sh-desc-step > div { min-width: 0; }

.sh-desc-eg { white-space: normal; overflow-wrap: anywhere; word-break: break-all; }

.sh-defs .sh-num,
.sh-def .sh-num { overflow-wrap: anywhere; word-break: break-all; }

a.sh-chip,
a.sh-chip:hover,
a.sh-chip:focus-visible { text-decoration: none; }

.sh-brief-foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 12px;
}
.sh-brief-foot .sh-note { margin: 0; }
.sh-desc-skip {
  display: inline-flex;
  margin-left: auto;
  border-color: var(--sh-primary-line, #DCC9FA);
}

.sh-desc .sh-note {
  position: relative;
  margin-top: 8px;
  padding-left: 15px;
}
.sh-desc .sh-note::before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
}

.sh-rate { display: inline-flex; align-items: center; gap: 8px; }
.sh-rate-btn {

  display: inline-block;
  min-height: 0;
  padding: 3px 12px;
  border-radius: var(--sh-r-pill);
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  line-height: 1.5;
  white-space: nowrap;
  vertical-align: middle;
}
@media (max-width: 767px) {

  .sh-rate-btn { position: relative; min-height: 0; }
  .sh-rate-btn::before { content: ""; position: absolute; inset: -11px -6px; }
}

.sh-review-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.sh-review-chip {
  padding: 4px 12px;
  border-radius: var(--sh-r-pill);
  background: var(--sh-surface-mute);
  font-size: var(--sh-t-3xs);
  font-weight: 600;
  color: var(--sh-ink-3);
  white-space: nowrap;
}
.sh-review-order {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding: 7px 11px;
  border-radius: var(--sh-r-box);
  background: var(--sh-canvas);
}
.sh-review-order-name {
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  color: var(--sh-ink-2);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sh-review-order-meta { font-size: var(--sh-t-3xs); color: var(--sh-muted-2); }

.sh-review-order::before {
  content: "✓";
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  color: var(--sh-ok, var(--sh-primary));
}

.sh-review-reply {
  margin-top: 12px;
  padding: 12px 12px;
  border-left: 3px solid var(--sh-primary-line, var(--sh-line));
  border-radius: 0 var(--sh-r-box) var(--sh-r-box) 0;
  background: var(--sh-tint);
}
.sh-review-reply-head {
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  color: var(--sh-primary);
  margin-bottom: 3px;
}
.sh-review-reply-body {
  font-size: var(--sh-t-3xs);
  line-height: 1.65;
  color: var(--sh-ink-2);
  word-break: keep-all;
}

.sh-svc-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 8px;
}
.sh-svc-tag {
  padding: 3px 9px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-pill);
  background: var(--sh-surface);
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  line-height: 1.5;
  color: var(--sh-ink-3);
  white-space: nowrap;
}

.sh-digest {
  margin-top: 12px;
  padding: 12px 16px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
  background: var(--sh-canvas);
}
.sh-digest-head {
  display: flex;
  align-items: baseline;
  gap: 8px;
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  color: var(--sh-ink-2);
  margin-bottom: 9px;
}

.sh-digest-beta {
  padding: 1px 8px;
  border-radius: var(--sh-r-pill);
  background: var(--sh-tint);
  font-size: var(--sh-t-4xs);
  font-weight: 700;
  letter-spacing: .04em;
  color: var(--sh-primary);
}
.sh-digest-list { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.sh-digest-list li {
  display: grid;
  grid-template-columns: max-content 1fr;
  align-items: baseline;
  gap: 4px 12px;
}
.sh-digest-list b {
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  color: var(--sh-primary);
  white-space: nowrap;
}
.sh-digest-say {
  font-size: var(--sh-t-3xs);
  line-height: 1.55;
  color: var(--sh-ink-2);
  word-break: keep-all;
}
.sh-digest-foot {
  margin-top: 12px;
  padding-top: 9px;
  border-top: 1px solid var(--sh-line-hair);
  font-size: var(--sh-t-4xs);
  line-height: 1.6;
  color: var(--sh-muted-2);
}
.sh-digest-bar {
  grid-column: 2;
  height: 4px;
  border-radius: 999px;
  background: var(--sh-surface-mute);
  overflow: hidden;
}
.sh-digest-bar > i {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: var(--sh-primary);
}
@media (max-width: 480px) {

  .sh-digest-list li { grid-template-columns: 1fr; }
  .sh-digest-bar { grid-column: 1; }
}

.sh-doc-h { display: flex; align-items: center; gap: 8px; }
.sh-doc-h-ic {
  display: inline-flex;
  flex: 0 0 auto;
  opacity: .85;
}

.sh-best-head {
  margin: 2px 0 12px;
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  color: var(--sh-primary);
}

.sh-reviews--best { grid-template-columns: minmax(0, 1fr); margin-bottom: 16px; }
.sh-reviews--best > * { min-width: 0; }

.sh-loyalty { margin-bottom: 16px; }
.sh-loyalty[aria-busy="true"] { min-height: 172px; }
.sh-loyalty-loading {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: var(--sh-t-xs);
  color: var(--sh-muted);
}
.sh-loyalty-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.sh-loyalty-meta { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.sh-loyalty-tier { flex-shrink: 0; margin-top: 2px; }
.sh-loyalty-warning { margin-top: 12px; }
.sh-loyalty--topup {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}
.sh-loyalty-topup-copy { min-width: 0; }
.sh-loyalty-topup-copy .sh-formsec-desc { margin-top: 4px; }
.sh-loyalty--topup .sh-loyalty-warning { flex-basis: 100%; }
.sh-loyalty-order {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--sh-ok-line);
  font-size: var(--sh-t-xs);
  line-height: 1.65;
}
.sh-loyalty-order b { color: var(--sh-ok-text); }

.sh-loyalty-root { min-width: 0; }
.sh-account-tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-bottom: 16px; padding: 4px; background: var(--sh-surface-mute); border: 1px solid var(--sh-line); border-radius: var(--sh-r-sm); }
.sh-account-tabs--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.sh-account-tab { min-width: 0; min-height: 42px; padding: 8px 8px; border: 0; border-radius: calc(var(--sh-r-sm) - 2px); background: transparent; color: var(--sh-muted); font: inherit; font-size: var(--sh-t-xs); font-weight: 700; line-height: 1.25; cursor: pointer; }
.sh-account-tab, .sh-statustabs > a, .sh-segtab, .sh-cat { transition: transform 180ms var(--sh-ease), color 180ms var(--sh-ease), background 180ms var(--sh-ease), box-shadow 180ms var(--sh-ease); }
.sh-input, .sh-select, .sh-textarea { transition: border-color 180ms var(--sh-ease), box-shadow 180ms var(--sh-ease); }
.sh-input:focus, .sh-select:focus, .sh-textarea:focus { box-shadow: 0 0 0 4px color-mix(in srgb, var(--sh-focus) 24%, transparent); }
.sh-input-error { animation: none; }
.sh-field-message.show { animation: sh-panel-in 180ms var(--sh-ease) both; }
.sh-list > :nth-child(-n+6), .sh-notification-list > :nth-child(-n+6) { animation: sh-rise 180ms var(--sh-ease) both; }
.sh-list > :nth-child(2), .sh-notification-list > :nth-child(2) { animation-delay: 24ms; }
.sh-list > :nth-child(3), .sh-notification-list > :nth-child(3) { animation-delay: 48ms; }
.sh-list > :nth-child(4), .sh-notification-list > :nth-child(4) { animation-delay: 72ms; }
.sh-list > :nth-child(5), .sh-notification-list > :nth-child(5) { animation-delay: 96ms; }
.sh-list > :nth-child(6), .sh-notification-list > :nth-child(6) { animation-delay: 120ms; }
.sh-account-tab.active { background: var(--sh-surface); color: var(--sh-ink); box-shadow: var(--sh-sh-card); }
.sh-account-tab [data-sh-coupon-count] { display: inline-flex; min-width: 16px; align-items: center; justify-content: center; margin-left: 2px; padding: 1px 4px; border-radius: var(--sh-r-pill); background: var(--sh-primary); color: var(--sh-on-brand); font-size: var(--sh-t-3xs); }
.sh-account-panel { min-width: 0; }
.sh-account-panel[hidden] { display: none; }
.sh-benefit-card { display: grid; gap: 16px; }

.sh-page--orders .sh-page-head,
.sh-page--topup .sh-page-head,
.sh-page--account .sh-page-head,
.sh-page--tickets .sh-page-head { margin-bottom: var(--sh-sp-2); }
.sh-page--orders .sh-order-prog b { font-size: var(--sh-t-h2); }
.sh-page--orders .sh-order-name { font-size: var(--sh-t-sm); color: var(--sh-muted); }
.sh-page--topup .sh-total-value { font-size: var(--sh-t-amount-1); color: var(--sh-ink); }
.sh-page--topup .sh-money-head .sh-step-title { color: var(--sh-muted); }
.sh-page--account .sh-benefit-card .sh-loyalty-head h2 { font-size: var(--sh-t-h2); color: var(--sh-ink); }
.sh-page--account .sh-loyalty-stats .sh-tile:not(:first-child) { opacity: 1; }
.sh-ticket--answered { background: var(--sh-tint); }
.sh-ticket--answered .sh-order-name { font-size: var(--sh-t-body); color: var(--sh-ink); }
.sh-order-subtabs { display: flex; gap: var(--sh-sp-2); padding: var(--sh-sp-2) var(--sh-sp-3); border-bottom: 1px solid var(--sh-line-hair); }
.sh-order-subtab { border: 1px solid var(--sh-line); border-radius: var(--sh-r-pill); background: var(--sh-surface); color: var(--sh-muted); padding: 5px 11px; font: inherit; font-size: var(--sh-t-xs); font-weight: 700; cursor: pointer; }
.sh-order-subtab.active { border-color: var(--sh-primary); background: var(--sh-tint); color: var(--sh-primary); }
.sh-order-subtab:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
.sh-row-group { display: flex; align-items: center; gap: var(--sh-sp-2); padding: var(--sh-sp-3) var(--sh-sp-3) var(--sh-sp-2); color: var(--sh-muted); font-size: var(--sh-t-xs); font-weight: 700; position: relative; background: var(--sh-canvas); }
.sh-row-group button { width: 24px; height: 24px; border: 1px solid var(--sh-line); border-radius: 50%; background: var(--sh-surface); color: var(--sh-muted); font: inherit; cursor: help; }
.sh-row-group button:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
.sh-tooltip { display: block; position: absolute; z-index: 3; left: var(--sh-sp-8); top: calc(100% - var(--sh-sp-1)); max-width: min(16rem, calc(100% - var(--sh-sp-4))); padding: var(--sh-sp-2) var(--sh-sp-3); border: 1px solid var(--sh-line); border-radius: var(--sh-r-sm); background: var(--sh-ink); color: var(--sh-surface); box-shadow: var(--sh-sh-card); font-size: var(--sh-t-xs); font-weight: 400; line-height: 1.45; }
.sh-tooltip[hidden] { display: none; }
.sh-row-attr { margin-left: var(--sh-sp-1); }
.sh-onboarding { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 12px; padding: 16px; border: 1px solid var(--sh-line); border-radius: var(--sh-r-sm); background: var(--sh-tint); }
.sh-onboarding h3 { margin: 4px 0 8px; }
.sh-onboarding ul { margin: 0; padding-left: 16px; color: var(--sh-muted); font-size: var(--sh-t-xs); line-height: 1.7; }
.sh-onboarding-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.sh-notification-head { padding: 24px 24px 8px; }
.sh-notification-list { margin-top: 12px; }

.sh-notification { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto 10px; align-items: center; gap: 16px; padding: 16px 26px; border-top: 1px solid var(--sh-line); }
.sh-notification h3 { margin: 0; font-size: var(--sh-t-sm); }
.sh-notification p { margin: 4px 0 0; overflow: hidden; color: var(--sh-muted); font-size: var(--sh-t-xs); text-overflow: ellipsis; white-space: nowrap; }
.sh-notification time { color: var(--sh-muted); font-size: var(--sh-t-2xs); white-space: nowrap; }
.sh-notification .sh-navg-dot { margin: 0; }
.sh-effect-icon--coupon { background: var(--sh-warn-bg); color: var(--sh-warn-text); }
.sh-effect-icon--tier { background: var(--sh-tier-normal-bg); color: var(--sh-tier-normal); }
.sh-effect-icon--tier-silver { background: var(--sh-tier-silver-bg); color: var(--sh-tier-silver); }
.sh-effect-icon--tier-gold { background: var(--sh-tier-gold-bg); color: var(--sh-tier-gold); }
.sh-effect-icon--tier-platinum { background: var(--sh-tier-platinum-bg); color: var(--sh-tier-platinum); }
.sh-effect-icon--tier-diamond { background: var(--sh-tier-diamond-bg); color: var(--sh-tier-diamond); }
.sh-effect-icon--tier-vip { background: var(--sh-tier-vip-bg); color: var(--sh-tier-vip); }
.sh-effect-icon--tier-vvip { background: var(--sh-tier-vvip-bg); color: var(--sh-tier-vvip); }
.sh-effect-icon--points { background: var(--sh-tint); color: var(--sh-primary); }
.sh-effect-icon--info { background: var(--sh-status-info-bg); color: var(--sh-status-info); }
.sh-effect-icon--kakao { background: var(--sh-kakao); color: var(--sh-kakao-ink); }
.sh-tierchip { background: var(--sh-tier-normal-bg); color: var(--sh-tier-normal); border-color: color-mix(in srgb, var(--sh-tier-normal) 28%, white); }
.sh-tierchip--silver { background: var(--sh-tier-silver-bg); color: var(--sh-tier-silver); border-color: color-mix(in srgb, var(--sh-tier-silver) 28%, white); }
.sh-tierchip--gold { background: var(--sh-tier-gold-bg); color: var(--sh-tier-gold); border-color: color-mix(in srgb, var(--sh-tier-gold) 28%, white); }
.sh-tierchip--platinum { background: var(--sh-tier-platinum-bg); color: var(--sh-tier-platinum); border-color: color-mix(in srgb, var(--sh-tier-platinum) 28%, white); }
.sh-tierchip--diamond { background: var(--sh-tier-diamond-bg); color: var(--sh-tier-diamond); border-color: color-mix(in srgb, var(--sh-tier-diamond) 28%, white); }
.sh-tierchip--vip { background: var(--sh-tier-vip-bg); color: var(--sh-tier-vip); border-color: color-mix(in srgb, var(--sh-tier-vip) 28%, white); }
.sh-tierchip--vvip { background: var(--sh-tier-vvip-bg); color: var(--sh-tier-vvip); border-color: color-mix(in srgb, var(--sh-tier-vvip) 28%, white); }
.sh-benefit-matrix tbody tr:nth-child(1) th[aria-current="true"] { background: var(--sh-tier-normal-bg); color: var(--sh-tier-normal); }
.sh-benefit-matrix tbody tr:nth-child(2) th[aria-current="true"] { background: var(--sh-tier-silver-bg); color: var(--sh-tier-silver); }
.sh-benefit-matrix tbody tr:nth-child(3) th[aria-current="true"] { background: var(--sh-tier-gold-bg); color: var(--sh-tier-gold); }
.sh-benefit-matrix tbody tr:nth-child(4) th[aria-current="true"] { background: var(--sh-tier-platinum-bg); color: var(--sh-tier-platinum); }
.sh-benefit-matrix tbody tr:nth-child(5) th[aria-current="true"] { background: var(--sh-tier-diamond-bg); color: var(--sh-tier-diamond); }
.sh-benefit-matrix tbody tr:nth-child(6) th[aria-current="true"] { background: var(--sh-tier-vip-bg); color: var(--sh-tier-vip); }
.sh-benefit-matrix tbody tr:nth-child(7) th[aria-current="true"] { background: var(--sh-tier-vvip-bg); color: var(--sh-tier-vvip); }
@media (max-width: 767px) { .sh-onboarding { display: block; } .sh-onboarding-actions { margin-top: 12px; } }
@media (max-width: 767px) { .sh-notification { grid-template-columns: 28px minmax(0, 1fr) 8px; padding: 13px 16px; } .sh-notification time { grid-column: 2; } }
.sh-benefit-matrix { width: 100%; border: 1px solid var(--sh-line); border-radius: var(--sh-r-sm); border-spacing: 0; font-size: var(--sh-t-sm); overflow: hidden; }
.sh-benefit-matrix th, .sh-benefit-matrix td { padding: 12px 16px; border-top: 1px solid var(--sh-line-hair); text-align: left; }
.sh-benefit-matrix tr:first-child th, .sh-benefit-matrix tr:first-child td { border-top: 0; }
.sh-benefit-matrix th { width: 88px; color: var(--sh-muted); font-size: var(--sh-t-xs); font-weight: 700; white-space: nowrap; }
.sh-benefit-matrix td { color: var(--sh-ink-2); line-height: 1.45; }
.sh-verified { display: inline-flex; align-items: center; min-height: 28px; padding: 5px 9px; border-radius: var(--sh-r-pill); background: var(--sh-ok-bg); color: var(--sh-ok-text); font-size: var(--sh-t-xs); font-weight: 700; white-space: nowrap; }
.sh-loyalty-stats { padding: 16px; }
.sh-loyalty-stats .sh-tile { background: var(--sh-surface); }
.sh-loyalty-grid { margin: 0; }
.sh-benefit-section { display: grid; gap: 5px; }
.sh-benefit-section .sh-h3 { margin: 0; }
.sh-benefit-section .sh-formsec-desc { margin: 0; }
.sh-progress-card { display: grid; gap: 9px; padding: 16px; border: 1px solid var(--sh-line); border-radius: var(--sh-r-sm); background: var(--sh-surface-mute); }
.sh-progress-card .sh-row-flex { gap: 12px; }
.sh-progress-rail { height: 8px; overflow: hidden; border-radius: var(--sh-r-pill); background: var(--sh-line); }
.sh-progress-fill { display: block; width: 0; height: 100%; border-radius: inherit; background: var(--sh-primary); transition: width 180ms var(--sh-ease); }
.sh-friend-card { display: grid; gap: 8px; padding: 16px; border: 1px solid var(--sh-line); border-radius: var(--sh-r-sm); background: var(--sh-tint); }
.sh-friend-card .sh-row-flex { flex-wrap: wrap; }
.sh-friend-card .sh-btn { white-space: normal; }
.sh-coupon-step { display: grid; gap: 12px; padding: 16px 0; border-top: 1px solid var(--sh-line); border-bottom: 1px solid var(--sh-line); }
.sh-coupon { display: grid; gap: 7px; margin-top: 12px; padding: 16px; border: 1px solid var(--sh-line); border-radius: var(--sh-r-sm); background: var(--sh-surface); }
.sh-coupon.is-off { background: var(--sh-surface-mute); color: var(--sh-muted); }
.sh-coupon.is-locked { border-style: dashed; border-color: var(--sh-border-strong); background: var(--sh-surface-mute); }
.sh-coupon-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.sh-coupon-name { min-width: 0; font-size: var(--sh-t-sm); }
.sh-coupon-value { color: var(--sh-primary); font-size: var(--sh-t-h3); font-weight: 700; }
.sh-coupon.is-off .sh-coupon-value, .sh-coupon.is-locked .sh-coupon-value { color: var(--sh-muted); }
.sh-coupon-cond { margin: 0; color: var(--sh-muted); font-size: var(--sh-t-xs); line-height: 1.55; }
.sh-code-claim { padding-top: 12px; border-top: 1px solid var(--sh-line); }
.sh-code-claim > summary { color: var(--sh-ink); font-size: var(--sh-t-sm); font-weight: 700; cursor: pointer; }
.sh-tier-details > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; list-style: none; min-height: 32px; }
.sh-tier-details > summary::-webkit-details-marker { display: none; }
.sh-tier-details > summary::marker { content: ''; }
.sh-tier-details > summary svg { width: 18px; height: 18px; flex: 0 0 auto; color: var(--sh-muted); transition: transform var(--sh-fast); }
.sh-tier-details[open] > summary svg { transform: rotate(180deg); }
.sh-tier-guide { align-items: center; }
.sh-lock-cta { display: grid; gap: 12px; padding: 16px; margin-top: 12px; border: 1px dashed var(--sh-border-strong); border-radius: var(--sh-r-sm); color: var(--sh-muted); }
.sh-check { display: inline-flex; align-items: center; gap: 8px; min-height: 28px; color: var(--sh-ink); font-size: var(--sh-t-sm); cursor: pointer; }
.sh-check input { width: 18px; height: 18px; accent-color: var(--sh-primary); }
.sh-verify { display: grid; gap: 16px; margin-top: 16px; }
.sh-verify-perks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.sh-perk { display: flex; align-items: center; min-height: 40px; padding: 9px 12px; border: 1px solid var(--sh-line); border-radius: var(--sh-r-sm); background: var(--sh-surface-mute); color: var(--sh-muted); font-size: var(--sh-t-xs); line-height: 1.4; }
.sh-code { letter-spacing: .24em; text-align: center; }
.sh-reward-order { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--sh-line); font-size: var(--sh-t-sm); }
.sh-reward-order:last-child { border-bottom: 0; }
.sh-reward-order strong { color: var(--sh-ok-text); white-space: nowrap; }
.sh-phone-verify {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--sh-line);
}
.sh-user-tier {
  display: inline-block;
  margin-top: 4px;
  color: var(--sh-ink);
  font-size: var(--sh-t-3xs);
  font-weight: 700;
}
.sh-fab-speed-items { display: flex; flex-direction: column; gap: 12px; align-items: flex-end; }
.sh-fab--contact { border: 1px solid var(--sh-primary-line); background: var(--sh-surface); color: var(--sh-primary); }
.sh-fab--toggle { display: none; border: 0; background: var(--sh-surface); color: var(--sh-primary); box-shadow: var(--sh-sh-card); }

.sh-product-landing {
  width: 100%;
  max-width: var(--sh-landing-max);
  margin: 0 auto;
  padding-bottom: calc(var(--sh-sp-8) + var(--sh-sp-8));
  display: grid;
  gap: var(--sh-sp-5);
}
.sh-landing-problem,
.sh-landing-method,
.sh-landing-cta { border-radius: var(--sh-r-hero); }
.sh-landing-problem {
  position: relative;
  isolation: isolate;
  min-height: 640px;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .82fr);
  align-items: center;
  gap: var(--sh-sp-8);
  padding: calc(var(--sh-sp-8) + var(--sh-sp-4));

  color: var(--sh-ink);
  background: var(--sh-tint);
  border: 1px solid var(--sh-tint-line);
  box-shadow: none;
}

.sh-landing-problem::after { content: none; }
.sh-landing-problem-copy { display: grid; justify-items: start; gap: var(--sh-sp-4); }
.sh-landing-eyebrow {
  display: inline-flex;
  min-height: 32px;
  align-items: center;
  padding: var(--sh-sp-1) var(--sh-sp-3);
  border: 1px solid var(--sh-tint-line);
  background: var(--sh-surface);
  border-radius: var(--sh-r-pill);
  color: var(--sh-primary);
  font-size: var(--sh-t-xs);
  font-weight: 700;
}
.sh-landing-problem h1 {
  max-width: 680px;
  color: var(--sh-ink);
  font-size: var(--sh-t-display-landing);
  line-height: 1.2;
  letter-spacing: -1px;
}
.sh-landing-problem-copy > p { max-width: 640px; color: var(--sh-ink-2); font-size: var(--sh-t-h3); line-height: 1.7; }
.sh-landing-price { display: flex; align-items: baseline; gap: var(--sh-sp-3); }
.sh-landing-price span { color: var(--sh-muted); font-size: var(--sh-t-sm); text-decoration: line-through; }

.sh-landing-price strong { color: var(--sh-primary); font-size: var(--sh-t-amount-1); font-weight: 700; font-variant-numeric: tabular-nums; }

[data-sh-landing="price"][data-sh-price-pending] { display: inline-flex; align-items: center; min-height: 1.2em; }
.sh-landing-price-skel { --sh-skel-h: 0.8em; width: 5.5em; }
.sh-landing-discount { color: var(--sh-primary); font-size: var(--sh-t-sm); font-style: normal; font-weight: 700; }
[data-sh-landing="price"][data-sh-price-fallback] { font-size: var(--sh-t-body); color: var(--sh-muted); font-weight: 600; }
.sh-landing-bundle {
  position: relative;
  display: grid;
  gap: var(--sh-sp-4);
  padding: var(--sh-sp-5);
  border: 1px solid var(--sh-tint-line);
  border-radius: var(--sh-r-card);
  background: var(--sh-surface);
  color: var(--sh-ink);
  box-shadow: var(--sh-sh-dark);
}
.sh-landing-bundle-head { display: flex; align-items: center; justify-content: space-between; gap: var(--sh-sp-3); }
.sh-landing-bundle-head span { color: var(--sh-muted); font-size: var(--sh-t-xs); }
.sh-landing-bundle-head b { color: var(--sh-primary); font-size: var(--sh-t-sm); }
.sh-landing-service-list { display: grid; }
.sh-landing-service-list li {
  min-height: 56px;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sh-sp-3);
  border-top: 1px solid var(--sh-line);
}
.sh-landing-service-icon { width: 32px; height: 32px; display: grid; place-items: center; border-radius: var(--sh-r-sm); background: var(--sh-tint); color: var(--sh-primary); }
.sh-landing-service-icon .sh-icon { width: 16px; height: 16px; }
.sh-landing-service-list strong { color: var(--sh-primary); font-variant-numeric: tabular-nums; }
.sh-landing-bundle > p { padding: var(--sh-sp-3); border-radius: var(--sh-r-sm); background: var(--sh-tint-soft); color: var(--sh-muted); font-size: var(--sh-t-xs); }
.sh-landing-method { padding: calc(var(--sh-sp-8) + var(--sh-sp-4)); border: 1px solid var(--sh-line); background: var(--sh-surface); box-shadow: var(--sh-sh-card); }
.sh-landing-section-head { max-width: 720px; margin-bottom: var(--sh-sp-6); }
.sh-landing-section-head h2,
.sh-landing-cta h2 { margin-top: var(--sh-sp-2); font-size: var(--sh-t-display-2); line-height: 1.3; }
.sh-landing-section-head p,
.sh-landing-cta > div > p { margin-top: var(--sh-sp-2); color: var(--sh-muted); font-size: var(--sh-t-sm); }
.sh-mechanism { display: grid; gap: var(--sh-sp-3); margin-bottom: var(--sh-sp-6); }
.sh-mechanism-route { display: grid; gap: var(--sh-sp-3); padding: var(--sh-sp-4); border: 1px solid var(--sh-line); border-radius: var(--sh-r-panel); background: var(--sh-surface-alt); }
.sh-mechanism-route h3 { font-size: var(--sh-t-sm); line-height: 1.4; }
.sh-mechanism-flow { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sh-sp-2); min-width: 0; }
.sh-mechanism-flow li { display: flex; align-items: center; gap: var(--sh-sp-2); min-width: 0; }
.sh-mechanism-flow li > span { max-width: 100%; padding: var(--sh-sp-2) var(--sh-sp-3); border: 1px solid var(--sh-line); border-radius: var(--sh-r-pill); background: var(--sh-surface); color: var(--sh-muted); font-size: var(--sh-t-xs); font-weight: 700; line-height: 1.4; overflow-wrap: anywhere; }
.sh-mechanism-link { width: 8px; height: 8px; flex: 0 0 auto; border-top: 1px solid currentColor; border-right: 1px solid currentColor; color: var(--sh-muted); transform: rotate(45deg); }
.sh-mechanism-flow .sh-mechanism-result > span { padding: var(--sh-sp-2) var(--sh-sp-4); border-width: 2px; font-size: var(--sh-t-sm); font-weight: 700; box-shadow: var(--sh-sh-soft); }
.sh-mechanism-flow .sh-mechanism-result--contrast > span { color: var(--sh-danger); border-color: var(--sh-danger-line); background: var(--sh-danger-bg); }
.sh-mechanism-route--contrast { border-color: var(--sh-line); }
.sh-mechanism-route--method { border-color: var(--sh-tint-line); background: var(--sh-tint-soft); }
.sh-mechanism-route--method h3 { color: var(--sh-primary); }
.sh-mechanism-route--method .sh-mechanism-flow li > span { color: var(--sh-primary); border-color: var(--sh-primary-line); background: var(--sh-surface); }
.sh-mechanism-route--method .sh-mechanism-flow .sh-mechanism-result--method > span { color: var(--sh-on-brand); border-color: var(--sh-primary); background: var(--sh-primary); box-shadow: var(--sh-sh-cta); }
.sh-mechanism-route--method .sh-mechanism-link { color: var(--sh-primary); }
.sh-landing-order-guide { display: grid; gap: var(--sh-sp-2); margin-bottom: var(--sh-sp-4); }
.sh-landing-order-guide > p { color: var(--sh-muted); font-size: var(--sh-t-sm); }
.sh-landing-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--sh-sp-4); }
.sh-landing-steps li { position: relative; display: grid; align-content: start; gap: var(--sh-sp-4); min-height: 200px; padding: var(--sh-sp-5); border: 1px solid var(--sh-line); border-radius: var(--sh-r-panel); background: var(--sh-surface-alt); }

.sh-landing-step-no { width: 40px; height: 40px; display: grid; place-items: center; border-radius: var(--sh-r-pill); border: 1.5px solid var(--sh-primary); background: var(--sh-surface); color: var(--sh-primary); font-weight: 700; }
.sh-landing-steps h3 { font-size: var(--sh-t-h3); line-height: 1.4; }
.sh-landing-steps p { margin-top: var(--sh-sp-2); color: var(--sh-muted); font-size: var(--sh-t-sm); line-height: 1.7; }
.sh-landing-cta { display: grid; grid-template-columns: minmax(0, 1fr) 320px; align-items: center; gap: var(--sh-sp-8); padding: calc(var(--sh-sp-8) + var(--sh-sp-4)); background: var(--sh-tint-soft); border: 1px solid var(--sh-tint-line); }
.sh-landing-cta ul { display: grid; gap: var(--sh-sp-2); margin-top: var(--sh-sp-5); }
.sh-landing-cta li { display: flex; align-items: flex-start; gap: var(--sh-sp-2); color: var(--sh-muted); font-size: var(--sh-t-xs); }
.sh-landing-cta li .sh-icon { width: 16px; height: 16px; flex: 0 0 auto; margin-top: var(--sh-sp-1); color: var(--sh-primary); }
.sh-landing-cta-action { display: grid; gap: var(--sh-sp-3); padding: var(--sh-sp-5); border-radius: var(--sh-r-card); background: var(--sh-surface); box-shadow: var(--sh-sh-card); }
.sh-landing-cta-action > span { color: var(--sh-muted); font-size: var(--sh-t-xs); }
.sh-landing-cta-action > strong { color: var(--sh-primary); font-size: var(--sh-t-amount-1); font-variant-numeric: tabular-nums; }
.sh-landing-sticky {
  position: fixed;
  z-index: var(--sh-z-bar);
  right: calc(var(--sh-sp-8) + var(--sh-sp-8));
  bottom: var(--sh-sp-5);
  display: flex;
  align-items: center;
  gap: var(--sh-sp-4);
  padding: var(--sh-sp-2);
  padding-left: var(--sh-sp-4);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-card);
  background: var(--sh-surface);
  box-shadow: var(--sh-sh-modal);
}
.sh-landing-sticky > div { display: grid; min-width: 200px; }
.sh-landing-sticky span { color: var(--sh-muted); font-size: var(--sh-t-xs); }
.sh-landing-sticky strong { color: var(--sh-ink); font-size: var(--sh-t-h3); font-variant-numeric: tabular-nums; }

@media (max-width: 1023px) {
  .sh-landing-problem { grid-template-columns: 1fr; }
  .sh-landing-bundle { max-width: 640px; }
  .sh-landing-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .sh-product-landing { gap: var(--sh-sp-3); padding-bottom: calc(var(--sh-tabbar-safe) + var(--sh-sp-8) + var(--sh-sp-8)); }
  .sh-landing-problem,
  .sh-landing-method,
  .sh-landing-cta { border-radius: var(--sh-r-card); }
  .sh-landing-problem { min-height: 0; gap: var(--sh-sp-6); padding: var(--sh-sp-5) var(--sh-sp-4); }
  .sh-landing-problem::after { width: 320px; }
  .sh-landing-problem h1 { font-size: var(--sh-t-display-1); letter-spacing: -.5px; }
  .sh-landing-problem-copy > p { font-size: var(--sh-t-body); }
  .sh-landing-problem-copy .sh-btn { width: 100%; }
  .sh-landing-bundle { padding: var(--sh-sp-4); }
  .sh-landing-bundle-head { align-items: flex-start; flex-direction: column; gap: var(--sh-sp-1); }
  .sh-landing-method { padding: var(--sh-sp-6) var(--sh-sp-4); }
  .sh-landing-section-head { margin-bottom: var(--sh-sp-5); }
  .sh-landing-section-head h2,
  .sh-landing-cta h2 { font-size: var(--sh-t-display-4); }
  .sh-mechanism { margin-bottom: var(--sh-sp-5); }
  .sh-mechanism-route { padding: var(--sh-sp-3); }
  .sh-mechanism-flow { display: grid; justify-items: start; align-items: stretch; gap: var(--sh-sp-1); }
  .sh-mechanism-flow li { flex-direction: column; align-items: flex-start; gap: var(--sh-sp-1); }
  .sh-mechanism-flow li > span { padding: var(--sh-sp-2); }
  .sh-mechanism-link { width: 6px; height: 6px; margin-left: var(--sh-sp-2); transform: rotate(135deg); }
  .sh-landing-steps { grid-template-columns: 1fr; gap: var(--sh-sp-2); }
  .sh-landing-steps li { min-height: 0; grid-template-columns: 40px minmax(0, 1fr); gap: var(--sh-sp-3); padding: var(--sh-sp-4); }
  .sh-landing-cta { grid-template-columns: 1fr; gap: var(--sh-sp-5); padding: var(--sh-sp-6) var(--sh-sp-4); }
  .sh-landing-sticky { right: var(--sh-sp-2); bottom: calc(var(--sh-tabbar-safe) + var(--sh-sp-2)); left: var(--sh-sp-2); justify-content: space-between; }
  .sh-landing-sticky > div { min-width: 0; }
  .sh-landing-sticky > div span { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .sh-product-landing .sh-btn { transition: background var(--sh-fast), color var(--sh-fast), border-color var(--sh-fast); }
  .sh-product-landing .sh-btn:hover,
  .sh-product-landing .sh-btn:active { transform: none; }
}

@media (max-width: 767px) {
  .sh-loyalty { padding: 20px 16px; }
  .sh-loyalty--topup { flex-direction: column; gap: 12px; }
  .sh-loyalty[aria-busy="true"] { min-height: 268px; }
  .sh-account-tabs { gap: 2px; padding: 3px; }
  .sh-account-tabs--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .sh-account-tab { min-height: 44px; padding: 8px 2px; font-size: var(--sh-t-3xs); }
  .sh-benefit-matrix th, .sh-benefit-matrix td { padding: 12px 9px; font-size: var(--sh-t-2xs); }
  .sh-verified { white-space: normal; }
  .sh-verify-perks { grid-template-columns: 1fr; }
  .sh-coupon-step { padding: 16px 0; }
  .sh-fab-stack { gap: 0; }
  .sh-fab-speed-items {
    height: 0;
    gap: 8px;
    overflow: hidden;
    pointer-events: none;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity var(--sh-fast), transform var(--sh-fast);
  }
  .sh-fab-stack.open .sh-fab-speed-items { height: auto; padding-bottom: 8px; pointer-events: auto; opacity: 1; transform: none; }
  .sh-fab--toggle { display: flex; }
}

:is(button:not([disabled]), a[href]:not([aria-disabled="true"]), summary,
    [role="button"]:not([aria-disabled="true"]), [role="tab"]:not([aria-disabled="true"]),
    [role="switch"]:not([aria-disabled="true"]), .sh-cat, .sh-row, .sh-today-tile,
    .sh-guide-card, .sh-guide-row):not(.sh-sr-only) {
  min-width: 44px;
  min-height: 44px;
}
a[href]:not(.sh-sr-only) { display: inline-flex; align-items: center; }
:is(.sh-input, .sh-select, .sh-textarea, .form-control:not(textarea), select:not(.sh-sr-only)) { min-height: 44px; }
.sh-check { min-width: 44px; min-height: 44px; }
.sh-account-tab { min-height: 44px; }

:is(.sh-num, .sh-total-value, .sh-orderbar-total, .sh-mobar-total, .sh-order-prog,
    .sh-user-point, .sh-reward-order, .sh-coupon-value, .sh-paylog-amt,
    .sh-table td, .sh-table th, .sh-stat-num, .sh-row-price, .sh-fact,
    .sh-tile-value, .sh-receipt-value, .sh-catgrp-n, [data-sh-money]) {
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
}

@media (min-width: 1024px) {
  :root { --sh-pad-card: 24px; --sh-gutter: 24px; }
}

.sh-row {
  min-height: 60px;
  padding: 12px var(--sh-gap-comp);
  gap: var(--sh-gap-comp);
  color: var(--sh-ink);
  font-weight: 600;
  border-bottom: 1px solid var(--sh-line-hair);
}
.sh-row:last-child { border-bottom: 0; }
.sh-row-name { line-height: 1.45; }
.sh-row-price {
  font-weight: 700;
  color: var(--sh-ink);
  font-variant-numeric: tabular-nums;
}
@media (hover: hover) and (pointer: fine) {
  .sh-row:hover { background: var(--sh-surface-alt); }
}
.sh-row:active { background: var(--sh-surface-alt); }

.sh-rows { max-height: 420px; }
@media (min-width: 1024px) { .sh-rows { max-height: 560px; } }

.sh-catgrp + .sh-catgrp { border-top: 1px solid var(--sh-line); }
.sh-catgrp-h {
  position: sticky;
  top: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sh-gap-comp);
  margin: 0;
  padding: 12px var(--sh-pad-card);
  background: var(--sh-surface-alt);
  border-bottom: 1px solid var(--sh-line);
  font-size: var(--sh-t-body);
  font-weight: 700;
  color: var(--sh-ink);
}
.sh-catgrp-n { font-size: var(--sh-t-sm); font-weight: 600; color: var(--sh-muted); }
.sh-catgrp-rows { margin: 0; padding: 0; list-style: none; }
.sh-catgrp-rows .sh-row { padding-left: var(--sh-pad-card); padding-right: var(--sh-pad-card); }
.sh-row-main { display: grid; gap: 2px; min-width: 0; }
.sh-row-rate { display: grid; gap: 2px; justify-items: end; text-align: right; flex: 0 0 auto; }
.sh-row-unit { font-size: var(--sh-t-xs); font-weight: 400; color: var(--sh-muted); white-space: nowrap; }
.sh-row-sub {
  font-size: var(--sh-t-sm);
  font-weight: 400;
  color: var(--sh-muted);
  line-height: 1.4;
}

@media (min-width: 1280px) {

  .sh-grid > .sh-rail:last-child { padding-right: 46px; }
}

@media (min-width: 768px) {
  .sh-auth-page .sh-orderbar { left: 320px; }
}
@media (min-width: 1280px) {
  .sh-auth-page .sh-orderbar { left: 408px; }
}

.sh-panel-login {
  display: grid;
  gap: var(--sh-gap-comp);
  padding: var(--sh-pad-card);
  margin-bottom: var(--sh-gap-group);
  background: var(--sh-tint);
  border: 1px solid var(--sh-tint-line);
  border-radius: var(--sh-r-card);
}
.sh-panel-login-h {
  font-size: var(--sh-t-h3);
  font-weight: 700;
  color: var(--sh-ink);
}
.sh-panel-login-sub {
  margin-top: calc(var(--sh-gap-text) * -1 + 2px);
  font-size: var(--sh-t-sm);
  color: var(--sh-muted);
}
.sh-panel-login-row { display: flex; gap: var(--sh-sp-2); }
.sh-panel-login-row > * { flex: 1 1 0; }

.sh-assure { display: grid; gap: var(--sh-gap-comp); }
.sh-assure-item {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: var(--sh-gap-comp);
  align-items: start;
}
.sh-assure-ic {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: var(--sh-r-2xs);
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.sh-assure-ic svg { width: 16px; height: 16px; }
.sh-assure-t { font-size: var(--sh-t-body); font-weight: 700; color: var(--sh-ink); }
.sh-assure-d {
  margin-top: 2px;
  font-size: var(--sh-t-sm);
  line-height: 1.5;
  color: var(--sh-muted);
}

.sh-assure-slot { display: none; }

:root { --sh-fixed-bottom: 0px; }
@media (max-width: 767px) {
  :root { --sh-fixed-bottom: var(--sh-tabbar-safe); }
  .sh-has-orderbar { --sh-fixed-bottom: calc(var(--sh-tabbar-safe) + 82px); }

  body:has(.sh-landing-sticky) { --sh-fixed-bottom: calc(var(--sh-tabbar-safe) + 74px); }
  .sh-fab-stack,
  .sh-kakao-fab { bottom: calc(var(--sh-fixed-bottom) + var(--sh-gap-comp)) !important; }

  .sh-main { padding-bottom: calc(var(--sh-fixed-bottom) + 44px + var(--sh-gap-group)) !important; }
}

@media (max-width: 767px) {
  body:not(.sh-order-page):not(.sh-auth-page) .sh-main { padding-left: 20px; padding-right: 20px; }
  .sh-page > .sh-page-head,
  .sh-page > .sh-card { margin-inline: 0; }

  .sh-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sh-gap-comp) var(--sh-sp-4); }
}

.sh-order-actions { gap: var(--sh-sp-2); }
.sh-order-actions > .sh-btn:not(:first-child) {
  border-color: transparent;
  background: none;
  color: var(--sh-muted);
  font-size: var(--sh-t-sm);
}
@media (hover: hover) and (pointer: fine) {
  .sh-order-actions > .sh-btn:not(:first-child):hover { color: var(--sh-ink); background: var(--sh-surface-alt); }
}

.sh-steps3-item { background: var(--sh-surface); border: 1px solid var(--sh-line); }

.sh-recap-row b,
.sh-recap b { text-decoration: none; color: var(--sh-ink); font-weight: 700; }

.sh-input--result {
  padding-left: 0;
  padding-right: 0;
  height: auto;
  min-height: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  font-size: var(--sh-t-amount-1);
  font-weight: 700;
  letter-spacing: -.5px;
  color: var(--sh-ink);
  font-variant-numeric: tabular-nums;
}
.sh-input--result:focus, .sh-input--result:focus-visible { outline: none; box-shadow: none; }

@keyframes sh-shake { 0%,100% { transform: none; } 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }
.sh-shake { animation: sh-shake 140ms var(--sh-ease-out) 2; }
@media (prefers-reduced-motion: reduce) { .sh-shake { animation: none; } }
.sh-input[aria-invalid="true"],
.sh-select[aria-invalid="true"] { border-color: var(--sh-danger); box-shadow: 0 0 0 3px var(--sh-danger-bg); }

@media (min-width: 560px) {
  .sh-plats--6 { grid-template-columns: repeat(6, var(--sh-plat-cell)); }
}
@media (max-width: 559px) {
  .sh-plats--6 { grid-template-columns: repeat(4, var(--sh-plat-cell)); }
}

@media (max-width: 767px) {
  :root { --sh-plat-tile: 64px; --sh-plat-glyph: 32px; --sh-plat-gap: 8px; }
}

@media (max-width: 767px) {
  .sh-picker-head > .sh-grow { flex: 1 1 0; min-width: 0; }
  .sh-picker-head .sh-input { min-width: 0; }
  .sh-picker-head > .sh-fav { flex: 0 0 auto; }
}

#sh_stat_today,
#total_order_today_mirror { color: var(--sh-ink); }
.sh-today-kicker { color: var(--sh-muted); }
.sh-today-tile--hot .sh-today-kicker { color: var(--sh-gold-text); }

.sh-check--switch .sh-checkbox {
  width: 44px;
  height: 24px;
  border: 0;
  border-radius: var(--sh-r-pill);
  background-color: var(--sh-border-off);
  background-image: radial-gradient(circle at 12px 50%, #fff 9.5px, transparent 10px);
  background-repeat: no-repeat;
  background-position: 0 0;
  transition: background-color 160ms var(--sh-ease-out), background-position 160ms var(--sh-ease-out);
}
.sh-check--switch .sh-checkbox:checked {
  background-color: var(--sh-primary);
  background-image: radial-gradient(circle at 12px 50%, #fff 9.5px, transparent 10px);
  background-position: 20px 0;
}
.sh-check--switch .sh-checkbox:disabled { background-color: var(--sh-line); opacity: .55; }
.sh-check--switch { justify-content: center; }
@media (prefers-reduced-motion: reduce) {
  .sh-check--switch .sh-checkbox { transition: background-color 160ms linear; }
}

.sh-def { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: var(--sh-gap-comp); justify-content: start; }
.sh-def > span { color: var(--sh-muted); }
.sh-def > b { text-align: left; }
.sh-defs--2 { gap: var(--sh-gap-comp) var(--sh-gap-group); }

.sh-landing-sticky { transition: opacity 200ms var(--sh-ease-out), transform 200ms var(--sh-ease-out); }
.sh-landing-sticky--hidden { opacity: 0; pointer-events: none; transform: translateY(8px); }
@media (prefers-reduced-motion: reduce) {
  .sh-landing-sticky { transition: opacity 200ms linear; }
  .sh-landing-sticky--hidden { transform: none; }
}

#link-guide .sh-guide-faq { gap: var(--sh-sp-2); }
#link-guide .sh-guide-faq .sh-acc-q { padding: 12px var(--sh-sp-4); line-height: 1.4; }
#link-guide .sh-guide-tabs .sh-segtab { padding: 8px 7px; }
#link-guide .sh-guide-tabs { margin-bottom: var(--sh-gap-comp); }
#link-guide .sh-guide-pane { padding-top: var(--sh-gap-comp); }

@media (min-width: 768px) {
  #link-guide .sh-guide-cards {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(180px, 1fr);
    gap: var(--sh-gap-comp);
    overflow-x: auto;
    scrollbar-width: none;
    padding-bottom: var(--sh-sp-1);
  }
  #link-guide .sh-guide-cards::-webkit-scrollbar { display: none; }
  #link-guide .sh-guide-card { min-width: 0; }
}

@media (max-width: 767px) {
  .sh-plats--6 {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: var(--sh-plat-cell);
    grid-template-rows: repeat(2, auto);
    justify-content: start;
    overflow-x: auto;
    scrollbar-width: none;
    padding-bottom: var(--sh-sp-1);
    scroll-snap-type: x proximity;
  }
  .sh-plats--6::-webkit-scrollbar { display: none; }
  .sh-plat { scroll-snap-align: start; }
}

.sh-tabs { gap: 0; border-bottom: 1px solid var(--sh-line); }
.sh-tab {
  position: relative;
  min-height: 44px;
  padding: 0 var(--sh-gap-comp);
  font-size: var(--sh-t-body);
  font-weight: 400;
  color: var(--sh-muted);
  background: none;
  border: 0;
  border-radius: 0;
}
.sh-tab::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: -1px;
  height: 2px;
  background: var(--sh-primary);
  transform: scaleX(0);
  transition: transform 180ms var(--sh-ease-out);
}
.sh-tab.active, .sh-tab[aria-selected="true"] {
  color: var(--sh-ink);
  font-weight: 700;
  background: none;
}
.sh-tab.active::after, .sh-tab[aria-selected="true"]::after { transform: scaleX(1); }

.sh-skel {
  --sh-skel-h: 16px;
  height: var(--sh-skel-h);
  border-radius: var(--sh-r-2xs);
  background:
    linear-gradient(90deg, var(--sh-surface-alt) 0%, var(--sh-line-soft) 38%, var(--sh-surface-alt) 76%)
    0 0 / 240% 100%;
  animation: sh-skel-slide 1200ms linear infinite;
}
.sh-skel--row { --sh-skel-h: 60px; border-radius: var(--sh-r-box); }
.sh-skel--line-sm { --sh-skel-h: 12px; width: 40%; }
.sh-skel-stack { display: grid; gap: var(--sh-sp-2); }
@keyframes sh-skel-slide { from { background-position: 100% 0; } to { background-position: -140% 0; } }

.sh-illus {
  display: block;
  width: 120px;
  height: 120px;
  margin: 0 auto var(--sh-gap-comp);
  color: var(--sh-primary);
}
@media (min-width: 768px) { .sh-illus { width: 160px; height: 160px; } }

.sh-illus :is(.sh-illus-ink, .sh-illus-hair, .sh-illus-brand) {
  fill: none;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.sh-illus .sh-illus-ink   { stroke: var(--sh-muted); }
.sh-illus .sh-illus-hair  { stroke: var(--sh-border-strong); }
.sh-illus .sh-illus-brand { stroke: var(--sh-primary); }
.sh-illus .sh-illus-fill  { fill: var(--sh-tint); stroke: none; }

@keyframes sh-rise { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes sh-row-in { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }

.sh-motion-rise { animation: sh-rise 240ms var(--sh-ease-out) both; }

.sh-rows .sh-row.is-new { animation: sh-row-in 160ms var(--sh-ease-out) both; }
.sh-rows .sh-row.is-new:nth-child(2) { animation-delay: 20ms; }
.sh-rows .sh-row.is-new:nth-child(3) { animation-delay: 40ms; }
.sh-rows .sh-row.is-new:nth-child(4) { animation-delay: 60ms; }
.sh-rows .sh-row.is-new:nth-child(5) { animation-delay: 80ms; }
.sh-rows .sh-row.is-new:nth-child(6) { animation-delay: 100ms; }
.sh-rows .sh-row.is-new:nth-child(7) { animation-delay: 120ms; }
.sh-rows .sh-row.is-new:nth-child(8) { animation-delay: 140ms; }

.sh-btn:active:not(:disabled),
.sh-chip:active,
.sh-plat:active,
.sh-tab:active { transform: scale(.97); transition-duration: 0ms; }
.sh-btn, .sh-chip, .sh-plat, .sh-tab {
  transition: transform 160ms var(--sh-ease-out),
              background-color 160ms var(--sh-ease-out),
              border-color 160ms var(--sh-ease-out),
              color 160ms var(--sh-ease-out);
}

@media (prefers-reduced-motion: reduce) {
  .sh-motion-rise,
  .sh-rows .sh-row.is-new,
  .sh-skel { animation: none; }
  .sh-btn:active:not(:disabled),
  .sh-chip:active,
  .sh-plat:active,
  .sh-tab:active { transform: none; }
  .sh-tab::after { transition: none; }
}

.sh-orderbar-body, .sh-mobar-body {
  padding: 12px var(--sh-gutter);
  border-radius: var(--sh-r-panel) var(--sh-r-panel) 0 0;
  box-shadow: var(--sh-sh-bar);
}
.sh-mobar-body { padding-bottom: calc(12px + env(safe-area-inset-bottom)); }

.sh-orderbar[data-sh-state="idle"] .sh-orderbar-total,
.sh-mobar[data-sh-state="idle"] .sh-mobar-total { color: var(--sh-muted); }

.sh-kb-open .sh-mobar,
.sh-kb-open .sh-fab-stack { display: none !important; }

.sh-btn {
  min-block-size: 48px;
  min-height: 48px;
  height: 48px;
  padding: 0 24px;
  border-radius: var(--sh-r-ctrl);
  font-size: var(--sh-t-body);
  font-weight: 700;
}
.sh-btn--primary,
.sh-btn--solid {
  background: var(--sh-primary);
  color: var(--sh-surface);
  box-shadow: none;
}
.sh-btn--soft {
  border-color: transparent;
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.sh-btn--neutral {
  border-color: transparent;
  background: var(--sh-disabled-bg);
  color: var(--sh-ink);
}
.sh-btn--quiet,
.sh-btn--ghost {
  border: 1px solid var(--sh-line);
  background: var(--sh-surface);
  color: var(--sh-ink);
  font-weight: 600;
}
.sh-btn:is(:disabled, [disabled], [aria-disabled="true"]),
.sh-btn--primary:is(:disabled, [disabled], [aria-disabled="true"]),
.sh-btn--solid:is(:disabled, [disabled], [aria-disabled="true"]),
.sh-btn--soft:is(:disabled, [disabled], [aria-disabled="true"]),
.sh-btn--neutral:is(:disabled, [disabled], [aria-disabled="true"]),
.sh-btn--quiet:is(:disabled, [disabled], [aria-disabled="true"]) {
  border-color: transparent;
  background: var(--sh-disabled-bg);
  color: var(--sh-disabled-fg);
  filter: none;
  box-shadow: none;
}
.sh-btn.sh-btn--sm:not(.sh-sr-only):not([hidden]) {
  min-block-size: 36px;
  min-height: 36px;
  height: 36px;
  padding: 0 16px;
  border-radius: var(--sh-r-sm);
  font-size: var(--sh-t-help);
}
.sh-btn.sh-btn--sm:not(.sh-sr-only):not([hidden])::after {
  content: "";
  position: absolute;
  inset: -4px 0;
}
.sh-btn--block { width: 100%; }

.sh-chip {
  position: relative;
  min-block-size: 36px;
  min-height: 36px;
  height: 36px;
  padding: 0 16px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-card);
  background: var(--sh-surface);
  color: var(--sh-ink);
  font-size: var(--sh-t-help);
  font-weight: 600;
}
.sh-chip::after {
  content: "";
  position: absolute;
  inset: -4px 0;
}
.sh-chip.active,
.sh-chip[aria-selected="true"] {
  border-color: var(--sh-ink);
  background: var(--sh-ink);
  color: var(--sh-surface);
}
.sh-segtabs {
  gap: 4px;
  padding: 4px;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-canvas);
}
.sh-segtabs button.sh-segtab:not(.sh-sr-only) {
  min-block-size: 36px;
  min-height: 36px;
  height: 36px;
  padding: 0 8px;
  border-radius: var(--sh-r-sm);
  color: var(--sh-muted);
  font-size: var(--sh-t-help);
  font-weight: 700;
}
.sh-segtab.active,
.sh-segtab[aria-selected="true"] {
  background: var(--sh-surface);
  color: var(--sh-ink);
  box-shadow: 0 1px 4px rgba(27,24,48,.10);
}
.sh-order-subtabs {
  gap: 8px;
  padding: 8px 12px;
}
.sh-order-subtabs button.sh-order-subtab:not(.sh-sr-only) {
  position: relative;
  min-block-size: 32px;
  min-height: 32px;
  height: 32px;
  padding: 0 12px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: transparent;
  color: var(--sh-muted);
  font-size: var(--sh-t-help);
  font-weight: 600;
}
.sh-order-subtabs button.sh-order-subtab:not(.sh-sr-only)::after {
  content: "";
  position: absolute;
  inset: -6px 0;
}
.sh-order-subtab.active,
.sh-order-subtab[aria-selected="true"] {
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-weight: 700;
}

.sh-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: fit-content;
  min-height: 24px;
  height: 24px;
  padding: 0 8px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-size: var(--sh-t-caption);
  font-weight: 700;
}
.sh-badge--ok,
.sh-badge--success { background: var(--sh-ok-bg); color: var(--sh-ok-text); }
.sh-badge--info,
.sh-badge--state-info { background: var(--sh-status-info-bg); color: var(--sh-status-info); }
.sh-badge--warn,
.sh-badge--warning,
.sh-badge--partial,
.sh-badge--gold { background: var(--sh-gold-bg); color: var(--sh-gold-text); }
.sh-badge--danger { background: var(--sh-danger-bg); color: var(--sh-danger); }
.sh-badge--tint { background: var(--sh-tint); color: var(--sh-primary); }
.sh-badge--wait { background: var(--sh-disabled-bg); color: var(--sh-muted); }
.sh-badge--dot {
  background: var(--sh-disabled-bg);
  color: var(--sh-muted);
}
.sh-badge--dot::before {
  content: "";
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-radius: 50%;
  background: currentColor;
}

.sh-plats,
.sh-plats--6 {
  grid-template-columns: repeat(auto-fill, 60px);
  justify-content: start;
  gap: 12px 12px;
}
.sh-plat {
  width: 60px;
  min-width: 60px;
  gap: 8px;
  padding: 0;
  border: 0;
  background: transparent;
}
.sh-plat-icon {
  width: 56px;
  height: 56px;
  border-radius: var(--sh-r-ctrl);
}
.sh-plat.active {
  border: 0;
  background: transparent;
  color: var(--sh-primary);
  box-shadow: none;
}
.sh-plat.active .sh-plat-icon {
  box-shadow: 0 0 0 2px var(--sh-surface), 0 0 0 4px var(--sh-primary);
}
.sh-plat-label {
  color: var(--sh-ink-2);
  font-size: var(--sh-t-caption);
  font-weight: 400;
}
.sh-plat.active .sh-plat-label {
  color: var(--sh-primary);
  font-weight: 700;
}
.sh-crumb { gap: 8px; font-size: var(--sh-t-help); }
.sh-crumb-plat,
.sh-crumb-step { color: var(--sh-ink); font-weight: 700; }
.sh-cats {
  gap: 2px;
  padding: 8px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-surface);
}
.sh-cats button.sh-cat:not(.sh-sr-only) {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  min-height: 44px;
  height: 44px;
  padding: 0 16px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: transparent;
  color: var(--sh-ink);
  font-size: var(--sh-t-body);
  font-weight: 400;
}
.sh-cat.active,
.sh-cat[aria-selected="true"] {
  border: 0;
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-weight: 700;
}
.sh-cat-count {
  margin-left: auto;
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
  font-variant-numeric: tabular-nums;
}
.sh-cat.active .sh-cat-count { color: var(--sh-primary); }

button.sh-row:not(.sh-sr-only):not([hidden]) {
  min-block-size: 72px;
  min-height: 72px;
  padding: 16px 16px;
  gap: 16px;
  border: 1px solid transparent;
  border-bottom-color: var(--sh-line-hair);
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-surface);
  color: var(--sh-ink);
  font-weight: 600;
}
.sh-picker button.sh-row:not(.sh-sr-only) { min-block-size: 72px; min-height: 72px; }
.sh-row.active,
.sh-row.is-selected {
  border-color: var(--sh-primary-line);
  background: var(--sh-tint);
  color: var(--sh-ink);
  box-shadow: none;
  font-weight: 700;
}
.sh-row-name,
.sh-row-main { color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 600; }
.sh-row.active .sh-row-name,
.sh-row.is-selected .sh-row-name { font-weight: 700; }
.sh-row-sub,
.sh-row-meta,
.sh-row-rating { color: var(--sh-muted); font-size: var(--sh-t-caption); font-weight: 400; }
.sh-row-price {
  color: var(--sh-ink);
  font-size: var(--sh-t-card);
  font-weight: 700;
  letter-spacing: -.2px;
  font-variant-numeric: tabular-nums;
}
.sh-row.active .sh-row-price,
.sh-row.is-selected .sh-row-price { color: var(--sh-ink); font-weight: 700; }
.sh-row-unit {
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
  font-weight: 400;
}
.sh-row.active .sh-row-rating,
.sh-row.is-selected .sh-row-rating { color: var(--sh-muted); }

.sh-input,
.sh-select,
.form-control:not(textarea) {
  min-height: 48px;
  height: 48px;
  padding-top: 0;
  padding-bottom: 0;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-ctrl);
  font-size: var(--sh-t-body);
}
.sh-input:focus,
.sh-select:focus,
.form-control:focus {
  border: 1.5px solid var(--sh-primary);
  box-shadow: none;
}
.sh-input[aria-invalid="true"],
.sh-select[aria-invalid="true"],
.form-control[aria-invalid="true"],
.sh-input.sh-input-error {
  border: 1.5px solid var(--sh-danger-3);
  background: var(--sh-danger-bg);
  box-shadow: none;
}
.sh-help--error,
.sh-field-message,
.has-error .help-block { color: var(--sh-danger); font-size: var(--sh-t-caption); }
.sh-qty {
  display: flex;
  align-items: center;
  min-height: 48px;
  height: 48px;
  overflow: hidden;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-surface);
}
.sh-qty > :is(button, .sh-qty-control) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  color: var(--sh-muted);
}
.sh-qty > :first-child { border-right: 1px solid var(--sh-line); }
.sh-qty > :last-child { border-left: 1px solid var(--sh-line); color: var(--sh-primary); }
.sh-qty-value {
  flex: 1;
  text-align: center;
  color: var(--sh-ink);
  font-size: var(--sh-t-card);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.sh-qty-presets { display: flex; gap: 8px; }
.sh-qty-presets .sh-chip {
  min-height: 28px;
  height: 28px;
  padding: 0 12px;
  border-radius: var(--sh-r-sm);
  font-size: var(--sh-t-caption);
}
.sh-total {
  padding: 16px 16px;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-canvas);
}
.sh-total-cap { color: var(--sh-muted); font-size: var(--sh-t-help); font-weight: 400; }
.sh-total-value {
  color: var(--sh-ink);
  font-size: var(--sh-t-page);
  font-weight: 700;
  letter-spacing: -.3px;
}

.sh-desc { gap: 16px; }
.sh-desc-title,
.sh-desc .sh-doc-h,
.sh-desc .sh-kicker {
  color: var(--sh-primary);
  font-size: var(--sh-t-caption);
  font-weight: 700;
  letter-spacing: .2px;
}
.sh-desc-steps { gap: 8px; }
.sh-desc-step { gap: 12px; color: var(--sh-ink); font-size: var(--sh-t-body); line-height: 1.55; }
.sh-desc-step > b {
  width: 22px;
  height: 22px;
  margin-top: 0;
  border-radius: var(--sh-r-sm);
  background: var(--sh-canvas);
  color: var(--sh-ink);
  font-size: var(--sh-t-caption);
}
.sh-desc-checks { display: grid; gap: 8px; }
.sh-desc-checks > li { display: flex; gap: 12px; color: var(--sh-ink); font-size: var(--sh-t-body); line-height: 1.55; }
.sh-desc-checks > li::before {
  content: "✓";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  border-radius: 50%;
  background: var(--sh-ok-bg);
  color: var(--sh-ok-text);
  font-size: var(--sh-t-caption);
  font-weight: 700;
}
.sh-desc-eg,
.sh-desc code {
  padding: 12px 12px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: var(--sh-canvas);
  color: var(--sh-ink-2);
  font-size: var(--sh-t-help);
}
.sh-desc tip,
.sh-desc-warn {
  padding: 12px 12px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: var(--sh-gold-bg);
  color: var(--sh-gold-text);
  font-size: var(--sh-t-caption);
  line-height: 1.5;
}
.sh-desc tip::before { display: none; }
.sh-desc-facts {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-canvas);
}
.sh-desc-fact { display: flex; justify-content: space-between; gap: 12px; color: var(--sh-muted); font-size: var(--sh-t-help); }
.sh-desc-fact > :last-child { color: var(--sh-ink); font-weight: 700; font-variant-numeric: tabular-nums; }

.sh-order-row {
  display: grid;
  grid-template-columns: 96px minmax(0,1fr) 120px 140px 96px 88px;
  align-items: center;
  gap: 16px;
  padding: 16px 16px;
  border-bottom: 1px solid var(--sh-line-hair);
}
.sh-page--orders .sh-order {
  display: grid;
  grid-template-columns: 96px minmax(0,1fr) 120px 140px 96px 88px;
  align-items: center;
  gap: 8px 16px;
  padding: 16px 16px;
  border: 0;
  border-bottom: 1px solid var(--sh-line-hair);
  border-radius: 0;
}
.sh-page--orders .sh-order-top,
.sh-page--orders .sh-order-top > .sh-grow,
.sh-page--orders .sh-order-meta { display: contents; }
.sh-page--orders .sh-order-no { grid-column: 1; grid-row: 1 / span 2; }
.sh-page--orders .sh-order-name { grid-column: 2; grid-row: 1; margin: 0; color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 600; }
.sh-page--orders .sh-order-sub { grid-column: 2; grid-row: 2; margin: 0; }
.sh-page--orders .sh-order-meta > .sh-badge { grid-column: 4; grid-row: 1; }
.sh-page--orders .sh-order-prog { grid-column: 4; grid-row: 2; display: flex; align-items: baseline; gap: 8px; text-align: left; }
.sh-page--orders .sh-order-prog b { color: var(--sh-ink); font-size: var(--sh-t-caption); }
.sh-page--orders .sh-order-prog span { margin: 0; }
.sh-page--orders .sh-bar { grid-column: 4; grid-row: 3; height: 4px; margin: 0; }
.sh-page--orders .sh-facts { display: contents; }
.sh-page--orders .sh-fact { font-size: var(--sh-t-caption); }
.sh-page--orders .sh-fact:nth-child(1) { grid-column: 5; grid-row: 1 / span 2; align-self: center; text-align: right; }
.sh-page--orders .sh-fact:nth-child(2) { grid-column: 3; grid-row: 1; }
.sh-page--orders .sh-fact:nth-child(3) { grid-column: 3; grid-row: 2; }
.sh-page--orders .sh-fact:nth-child(4) { grid-column: 3; grid-row: 3; }
.sh-page--orders .sh-order-actions { grid-column: 6; grid-row: 1 / span 3; margin: 0; }
.sh-page--orders .sh-order-actions .sh-btn--soft {
  width: 88px;
  min-block-size: 32px;
  min-height: 32px;
  height: 32px;
  padding: 0 12px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-size: var(--sh-t-caption);
}
.sh-page--orders .sh-order-actions .sh-btn--soft::after { inset: -6px 0; }

.sh-reviews { gap: 12px; }
.sh-review {
  padding: 16px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-surface);
}
.sh-review-top { gap: 12px; }
.sh-review .sh-avatar,
.sh-review .sh-avatar--sm {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 50%;
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-size: var(--sh-t-body);
  font-weight: 700;
}
.sh-review-id { color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; }
.sh-review .sh-stars,
.sh-review-date { color: var(--sh-muted); font-size: var(--sh-t-caption); }
.sh-review-body { margin-top: 12px; color: var(--sh-ink); font-size: var(--sh-t-body); line-height: 1.6; }
.sh-review-chips { gap: 8px; margin-top: 12px; }
.sh-review-chip {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  height: 22px;
  padding: 0 8px;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-size: var(--sh-t-caption);
  font-weight: 700;
}
.sh-review-order { margin-top: 12px; padding: 0; background: transparent; color: var(--sh-muted); }
.sh-review-order::before {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: var(--sh-radius-chip);
  background: var(--sh-ok-bg);
  color: var(--sh-ok-text);
}
.sh-review-reply {
  margin-top: 12px;
  padding: 12px 12px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: var(--sh-canvas);
}
.sh-review-reply-head { color: var(--sh-ink); font-size: var(--sh-t-help); }
.sh-review-reply-body { color: var(--sh-ink-2); font-size: var(--sh-t-help); }

.sh-empty {
  padding: 28px 20px;
  border: 1px dashed var(--sh-line);
  border-radius: var(--sh-r-ctrl);
  color: var(--sh-muted);
  font-size: var(--sh-t-help);
  line-height: 1.5;
}
.sh-empty .sh-empty-icon {
  width: 72px;
  height: 56px;
  margin: 0 auto 12px;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.sh-empty .sh-empty-icon .sh-icon { width: 72px; height: 56px; color: var(--sh-primary); }
.sh-empty .sh-illus { width: 72px; height: 56px; margin-bottom: 12px; }
.sh-empty b { margin-bottom: 8px; color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; }
.sh-empty .sh-btn { min-height: 40px; height: 40px; margin-top: 4px; padding: 0 16px; border-radius: var(--sh-r-sm); font-size: var(--sh-t-help); }

.sh-tile {
  padding: 16px 16px;
  border: 0;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-canvas);
  box-shadow: none;
}
.sh-tile-value,
.sh-tile > .sh-num {
  color: var(--sh-ink);
  font-size: var(--sh-t-page);
  font-weight: 700;
  letter-spacing: -.3px;
  font-variant-numeric: tabular-nums;
}
.sh-toast {
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-ink);
  color: var(--sh-surface);
  font-size: var(--sh-t-body);
  font-weight: 600;
  box-shadow: var(--sh-sh-card);
}
.sh-notice-line,
.sh-notice-row {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  padding: 12px 16px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: var(--sh-canvas);
  color: var(--sh-ink);
  font-size: var(--sh-t-help);
}
.sh-onboarding {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 16px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-surface);
}
.sh-onboarding .sh-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: var(--sh-r-sm);
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-size: var(--sh-t-help);
  font-weight: 700;
}
.sh-onboarding h3 { margin: 2px 0; color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; }
.sh-onboarding .sh-note { color: var(--sh-muted); font-size: var(--sh-t-caption); }

.sh-contact .sh-btn--solid {
  border: 1px solid var(--sh-line);
  background: var(--sh-surface);
  color: var(--sh-primary);
}

.sh-orderbar,
.sh-mobar {
  border-top: 0;
  background: var(--sh-surface);
  box-shadow: 0 -8px 24px rgba(27,24,48,.08);
}
.sh-orderbar-name { color: var(--sh-muted); font-size: var(--sh-t-body); font-weight: 400; }
.sh-mobar-name { color: var(--sh-muted); font-size: var(--sh-t-caption); font-weight: 400; }
.sh-orderbar-total { color: var(--sh-ink); font-size: var(--sh-t-page); font-weight: 700; }
.sh-mobar-total { color: var(--sh-ink); font-size: var(--sh-t-page); font-weight: 700; }
.sh-orderbar .sh-btn,
.sh-mobar .sh-btn {
  min-height: 52px;
  height: 52px;
  border-radius: var(--sh-r-ctrl);
  font-size: var(--sh-t-card);
  font-weight: 700;
}
.sh-tabbar { min-height: 60px; background: var(--sh-surface); backdrop-filter: none; -webkit-backdrop-filter: none; }
.sh-tabbar-inner { min-height: 60px; padding: 4px 8px calc(4px + env(safe-area-inset-bottom)); }
.sh-navg-item {
  min-height: 44px;
  padding: 0 12px;
  border-radius: var(--sh-r-ctrl);
}
.sh-navg-item.is-current,
.sh-navg-item[aria-current="page"] { background: var(--sh-tint); color: var(--sh-primary); }
.sh-navg-label { color: var(--sh-muted); font-size: var(--sh-t-caption); font-weight: 700; }

@media (min-width: 768px) and (max-width: 1023px) {
  .sh-page--orders .sh-order {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    padding: 16px;
    border: 1px solid var(--sh-line);
    border-radius: var(--sh-r-ctrl);
  }
  .sh-page--orders .sh-order-top { display: flex; }
  .sh-page--orders .sh-order-top > .sh-grow { display: block; }
  .sh-page--orders .sh-order-meta { display: flex; }
  .sh-page--orders .sh-order-name { margin-top: 7px; font-size: var(--sh-t-body); font-weight: 700; }
  .sh-page--orders .sh-order-sub { margin-top: 3px; }
  .sh-page--orders .sh-order-prog { display: flex; flex-direction: row-reverse; }
  .sh-page--orders .sh-bar { width: 100%; height: 6px; }
  .sh-page--orders .sh-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 16px; }
  .sh-page--orders .sh-fact { text-align: left; }
  .sh-page--orders .sh-order-actions { display: flex; margin-top: 0; }
}

@media (max-width: 767px) {
  .sh-plats,
  .sh-plats--6 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: none;
    grid-auto-flow: row;
    grid-auto-columns: auto;
    justify-content: stretch;
    gap: 12px 8px;
    overflow-x: visible;
  }
  .sh-plat { width: auto; min-width: 0; }
  .sh-plat-icon { width: 64px; height: 64px; border-radius: var(--sh-r-card); }
  .sh-plat-label { font-size: var(--sh-t-caption); }

  .sh-picker-body { display: block; min-height: 0; }
  .sh-cats {
    display: flex;
    flex-direction: row;
    gap: 8px;
    max-height: none;
    padding: 0 0 8px;
    overflow-x: auto;
    border: 0;
    border-radius: 0;
    background: transparent;
    scrollbar-width: none;
  }
  .sh-cats::-webkit-scrollbar { display: none; }
  .sh-cats button.sh-cat:not(.sh-sr-only) {
    display: inline-flex;
    flex-direction: row;
    width: auto;
    min-width: max-content;
    min-height: 36px;
    height: 36px;
    padding: 0 16px;
    border: 1px solid var(--sh-line);
    border-radius: var(--sh-r-card);
    background: var(--sh-surface);
    color: var(--sh-ink);
    font-size: var(--sh-t-help);
    font-weight: 600;
    white-space: nowrap;
  }
  .sh-cat-name { display: block; width: auto; overflow: visible; white-space: nowrap; }
  .sh-cat.active,
  .sh-cat[aria-selected="true"] {
    border-color: var(--sh-ink);
    background: var(--sh-ink);
    color: var(--sh-surface);
  }
  .sh-cat.active .sh-cat-count { color: var(--sh-surface); opacity: .75; }
  .sh-rows {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-height: 268px;
    padding: 0;
    overflow-y: auto;
    border: 0;
    border-radius: 0;
  }
  button.sh-row:not(.sh-sr-only):not([hidden]),
  .sh-picker button.sh-row:not(.sh-sr-only) {
    min-block-size: 64px;
    min-height: 64px;
    padding: 0 16px;
    gap: 12px;
    border: 1px solid var(--sh-line);
    border-radius: var(--sh-r-ctrl);
  }
  .sh-row.active,
  .sh-row.is-selected { border-color: var(--sh-primary-line); }
  .sh-row-name,
  .sh-row-main { font-size: var(--sh-t-body); }
  .sh-row-sub,
  .sh-row-meta,
  .sh-row-rating { font-size: var(--sh-t-caption); }
  .sh-row-price { font-size: var(--sh-t-card); }

  .sh-page--orders .sh-order {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    padding: 16px;
    border: 1px solid var(--sh-line);
    border-radius: var(--sh-r-ctrl);
  }
  .sh-page--orders .sh-order-top { display: flex; }
  .sh-page--orders .sh-order-top > .sh-grow { display: block; }
  .sh-page--orders .sh-order-meta { display: flex; }
  .sh-page--orders .sh-order-name { margin-top: 7px; font-size: var(--sh-t-body); font-weight: 700; }
  .sh-page--orders .sh-order-sub { margin-top: 3px; }
  .sh-page--orders .sh-order-prog { display: flex; flex-direction: row-reverse; }
  .sh-page--orders .sh-bar { width: 100%; height: 6px; }
  .sh-page--orders .sh-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 16px; }
  .sh-page--orders .sh-fact { text-align: left; }
  .sh-page--orders .sh-order-actions { display: flex; margin-top: 0; }

  .sh-order-row {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    padding: 16px;
    border: 1px solid var(--sh-line);
    border-radius: var(--sh-r-ctrl);
  }
  .sh-desc-facts { margin-top: 4px; }
  .sh-onboarding { align-items: flex-start; }
  .sh-onboarding-actions { margin-top: 0; }
}

.sh-only-mobile  { display: none; }
.sh-only-desktop { display: block; }
@media (max-width: 767px) {
  .sh-only-mobile  { display: block; }
  .sh-only-desktop { display: none; }
}
@media (min-width: 768px) and (max-width: 900px) {
  :is(.sh-page--child-panel, .sh-page--refill) .sh-only-mobile  { display: block; }
  :is(.sh-page--child-panel, .sh-page--refill) .sh-only-desktop { display: none; }
  .sh-page--refill .sh-card-head .sh-search { flex: 1 1 100%; max-width: none; }
}

.sh-auth-visual { display: none; }
.sh-auth-panel .sh-auth-panel-foot,
.sh-auth-panel .sh-auth-panel-foot a { color: var(--sh-muted); }
.sh-auth-panel .sh-auth-panel-foot b,
.sh-auth-panel .sh-auth-panel-foot-title { color: var(--sh-ink); }
.sh-auth-card--signup { max-width: 560px; }
.sh-auth-card--signup .sh-alert--info {
  border-color: transparent;
  background: var(--sh-canvas);
  color: var(--sh-ink-2);
}
.sh-auth-card--signup .sh-signup-verify {
  border-color: transparent;
  background: var(--sh-canvas);
}
.sh-signup-step-dot { position: relative; }
.sh-signup-step-dot:not(:last-child)::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 11px;
  left: calc(50% + 18px);
  width: calc(100% - 30px);
  height: 1px;
  background: var(--sh-line);
}
.sh-signup-step-dot b { position: relative; z-index: 1; }
.sh-signup-step-dot.is-complete { color: var(--sh-ink); }
.sh-signup-step-dot.is-complete b {
  border: 1px solid var(--sh-border);
  background: var(--sh-surface);
  color: var(--sh-primary);
  font-size: 0;
}
.sh-signup-step-dot.is-complete b::before { content: "✓"; font-size: var(--sh-t-help); font-weight: 700; }
.sh-signup-step-dot.is-complete::after { background: var(--sh-primary); }
.sh-auth-card--signup [data-sh-signup-resend]:disabled {
  border-color: transparent;
  background: var(--sh-surface-alt);
  color: var(--sh-muted);
}
.sh-auth-card--signup .sh-code,
.sh-auth-page #code {
  text-align: center;
  font-size: var(--sh-t-page);
  font-weight: 700;
  letter-spacing: .22em;
  font-variant-numeric: tabular-nums;
}
@media (min-width: 1024px) {
  .sh-auth-panel:has(+ .sh-auth-main) {
    grid-template-rows: auto auto auto auto;
    gap: var(--sh-sp-4);
    overflow-y: auto;
  }
  .sh-auth-visual {
    display: none;
  }
  .sh-auth-panel-content { align-self: start; }
}
@media (max-width: 767px) {
  .sh-auth-card--signup { max-width: none; }
  .sh-signup-nav { flex-wrap: wrap; }
  .sh-signup-nav .sh-btn--primary { flex: 1 1 100%; order: -1; }
  .sh-signup-nav .sh-btn:not(.sh-btn--primary) { flex: 1 1 calc(50% - var(--sh-sp-2)); }
}

.sh-faq-grid { grid-template-columns: minmax(0, 1fr); gap: var(--sh-sp-4); }
.sh-faq-nav {
  position: static;
  display: flex;
  flex-wrap: wrap;
  gap: var(--sh-sp-2);
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.sh-faq-navitem {
  width: auto;
  min-height: 36px;
  padding: 0 16px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-pill);
  background: var(--sh-surface);
  color: var(--sh-ink-2);
  font-size: var(--sh-t-help);
  font-weight: 600;
}
.sh-faq-navitem.active {
  border-color: var(--sh-ink);
  background: var(--sh-ink);
  color: var(--sh-surface);
}
.sh-faq-navitem.active b { color: inherit; }
.sh-faq-body { max-width: none; }
.sh-faq-body .sh-acc-item,
#noticeList .sh-acc-item {
  border: 0;
  border-bottom: 1px solid var(--sh-line-hair);
  border-radius: 0;
  background: var(--sh-surface);
}
.sh-faq-body .sh-acc-item.open,
#noticeList .sh-acc-item.open {
  border-color: var(--sh-line-hair);
  background: var(--sh-surface);
}
.sh-faq-body .sh-acc-item button.sh-acc-q,
#noticeList .sh-acc-item button.sh-acc-q {
  min-height: 56px;
  padding: 0 var(--sh-sp-4);
  color: var(--sh-ink);
  font-size: var(--sh-t-body);
  font-weight: 600;
  line-height: 1.45;
}
.sh-faq-body .sh-acc-item.open .sh-acc-q,
#noticeList .sh-acc-item.open .sh-acc-q { color: var(--sh-ink); font-weight: 700; }
.sh-faq-body .sh-acc-a,
#noticeList .sh-acc-a { font-size: var(--sh-t-body); line-height: 1.6; }
.sh-faq-body .sh-acc-item.open .sh-acc-a,
#noticeList .sh-acc-item.open .sh-acc-a { padding: 0 var(--sh-sp-4) var(--sh-sp-4); }
.sh-faq-none .sh-illus { width: 72px; height: 56px; margin-bottom: var(--sh-sp-3); }
.sh-faq-none > b { display: block; color: var(--sh-ink); font-size: var(--sh-t-body); }

.sh-content-row { display: flex; align-items: center; gap: var(--sh-sp-2); min-width: 0; flex: 1; }
.sh-content-title { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sh-content-row time,
.sh-post-meta,
#history-search ~ * time {
  margin-left: auto;
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
  font-weight: 400;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.sh-content-new {
  display: inline-flex;
  flex: 0 0 auto;
  min-height: 24px;
  margin-left: var(--sh-sp-2);
  vertical-align: middle;
}
.sh-posts { gap: 0; }
.sh-post {
  min-height: 88px;
  padding: var(--sh-sp-3) 0;
  border: 0;
  border-bottom: 1px solid var(--sh-line-hair);
  border-radius: 0;
}
.sh-post:last-child { border-bottom: 0; }
.sh-post-title { color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 600; }
.sh-post-meta .sh-tag { padding: 0; border: 0; background: transparent; color: var(--sh-muted); font-size: var(--sh-t-caption); font-variant-numeric: tabular-nums; }
.sh-post-excerpt { color: var(--sh-muted); font-size: var(--sh-t-help); line-height: 1.5; }
.sh-post-go { color: var(--sh-muted); font-size: var(--sh-t-caption); }
.blog-contents,
.sh-guide-page .sh-cms {
  max-width: 65ch;
  margin-inline: auto;
  font-size: var(--sh-t-body);
  line-height: 1.7;
}
.blog-contents img,
.sh-guide-page .sh-cms img { border-radius: var(--sh-r-ctrl); }
.sh-page:has(.blog-contents) > .sh-page-head .sh-h1 { font-size: var(--sh-t-display-1); }
#history-search + * { min-width: 0; }
.sh-page:has(#history-search) .sh-table tbody tr { min-height: 56px; }
.sh-page:has(#history-search) .sh-table td { padding-top: 16px; padding-bottom: 16px; }
.sh-page:has(#history-search) .service-name { color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 600; }
.sh-page:has(#history-search) .sh-td-num { font-size: var(--sh-t-caption); font-variant-numeric: tabular-nums; }
.sh-skeleton-set { display: grid; gap: var(--sh-sp-2); }

#noticeList .sh-skeleton-set { gap: 0; }
#noticeList .sh-skeleton-set > .sh-skel--row {
  --sh-skel-h: 53px;
  width: 100%;
  margin: 0;
  padding: 8px 0;
  background-clip: content-box;
}
@media (max-width: 767px) {
  #noticeList .sh-skeleton-set > .sh-skel--row { --sh-skel-h: 65px; }
}

.sh-page--read:has(.sh-legal-layout) { max-width: 1120px; }
.sh-legal-layout { display: grid; grid-template-columns: 220px minmax(0, 65ch); gap: var(--sh-sp-7); align-items: start; }
.sh-legal-toc {
  position: sticky;
  top: var(--sh-sp-5);
  padding: var(--sh-sp-4);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
  background: var(--sh-surface);
}
.sh-legal-toc > b { display: block; margin-bottom: var(--sh-sp-3); color: var(--sh-ink); font-size: var(--sh-t-help); }
.sh-legal-toc ol { display: grid; gap: var(--sh-sp-2); margin: 0; padding: 0; list-style: none; }
.sh-legal-toc a {
  display: block;
  min-height: 0;
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
  font-weight: 600;
  line-height: 1.45;
}
.sh-legal-card { min-width: 0; }
.sh-legal-card .sh-cms { max-width: 65ch; font-size: var(--sh-t-body); line-height: 1.7; }
.sh-legal-card .sh-cms h2 { scroll-margin-top: var(--sh-sp-5); }
@media (max-width: 767px) {
  .sh-legal-layout { grid-template-columns: minmax(0, 1fr); gap: var(--sh-sp-4); }
  .sh-legal-toc {
    position: static;
    display: flex;
    gap: var(--sh-sp-2);
    overflow-x: auto;
    padding: var(--sh-sp-2) 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    scrollbar-width: none;
  }
  .sh-legal-toc::-webkit-scrollbar { display: none; }
  .sh-legal-toc > b { display: none; }
  .sh-legal-toc ol { display: flex; gap: var(--sh-sp-2); }
  .sh-legal-toc li { flex: 0 0 auto; }
  .sh-legal-toc a {
    min-height: 36px;
    padding: 9px 16px;
    border: 1px solid var(--sh-line);
    border-radius: var(--sh-r-pill);
    background: var(--sh-surface);
    white-space: nowrap;
  }
}

.sh-drawer { box-shadow: var(--sh-sh-modal); }
.sh-drawer .sh-navg-item { min-height: 44px; }
.sh-scrim .sh-modal { border-radius: var(--sh-r-card); box-shadow: var(--sh-sh-modal); }
.sh-scrim .sh-modal :is(.sh-input, .sh-select) { min-height: 48px; height: 48px; }
.sh-scrim .sh-modal .sh-btn:not(.sh-btn--sm) { min-height: 48px; }
.sh-toast {
  min-height: 48px;
  padding: var(--sh-sp-3) var(--sh-sp-4);
  border-radius: var(--sh-r-ctrl);
  box-shadow: var(--sh-sh-modal);
}
.sh-offline-banner {
  position: fixed;
  z-index: calc(var(--sh-z-modal) - 1);
  left: 50%;
  bottom: calc(var(--sh-fixed-bottom) + var(--sh-sp-5));
  display: flex;
  align-items: center;
  gap: var(--sh-sp-3);
  width: min(520px, calc(100vw - 32px));
  min-height: 56px;
  padding: var(--sh-sp-2) var(--sh-sp-2) var(--sh-sp-2) var(--sh-sp-4);
  border: 1px solid var(--sh-gold-line);
  border-radius: var(--sh-r-box);
  background: var(--sh-gold-bg);
  color: var(--sh-gold-text);
  box-shadow: var(--sh-sh-modal);
  transform: translateX(-50%);
}
.sh-offline-banner[hidden] { display: none; }
.sh-offline-banner b { color: var(--sh-ink); }
.sh-skel--card { --sh-skel-h: 160px; border-radius: var(--sh-r-card); }
.sh-skel--tile { --sh-skel-h: 72px; border-radius: var(--sh-r-box); }
@media (max-width: 767px) {
  .sh-offline-banner {
    bottom: calc(var(--sh-fixed-bottom) + var(--sh-sp-3));
    align-items: flex-start;
    font-size: var(--sh-t-help);
  }
  .sh-offline-banner .sh-btn { flex: 0 0 auto; }
}

.sh-page:has(#pay-redirect-title) { max-width: 520px; }
.sh-page:has(#pay-redirect-title) > .sh-card { margin-top: var(--sh-sp-8); }

@media (prefers-reduced-motion: reduce) {
  .sh-signup-step-dot:not(:last-child)::after { transition: none; }
}

.sh-grid .sh-picker-head {
  align-items: center;
  flex-wrap: wrap;
}
.sh-grid .sh-picker-head > .sh-crumb {
  flex: 1 1 100%;
  min-width: 0;
}
.sh-grid .sh-picker-head > .sh-crumb > :is(button, span) {
  min-width: 0;
  max-width: none;
  white-space: normal;
  text-overflow: clip;
}
.sh-grid .sh-picker-head > .sh-crumb > :last-child {
  flex: 0 0 auto;
  white-space: nowrap;
}
.sh-grid .sh-picker-body {
  grid-template-columns: 200px minmax(0, 1fr);
}
.sh-grid .sh-picker .sh-cat-name {
  width: auto;
  min-width: 0;
  flex: 1 1 auto;
  line-height: 1.35;
}
.sh-grid .sh-picker .sh-cat-count {
  flex: 0 0 auto;
  margin-left: 8px;
}
.sh-grid .sh-picker .sh-row > .sh-row-main {
  display: grid;
  flex: 1 1 auto;
  gap: 4px;
  min-width: 0;
  overflow: visible;
  white-space: normal;
  -webkit-line-clamp: unset;
  line-clamp: unset;
}
.sh-grid .sh-picker .sh-row-name {
  order: 0;
  min-width: 0;
  font-size: var(--sh-t-body);
  font-weight: 600;
  line-height: 1.35;
  white-space: normal;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
.sh-grid .sh-picker .sh-row.active .sh-row-name { font-weight: 700; }
.sh-grid .sh-picker .sh-row-meta {
  order: 1;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 3px;
  min-width: 0;
  overflow: visible;
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
  line-height: 1.35;
}
.sh-grid .sh-picker .sh-row-meta > * { flex: 0 0 auto; }
.sh-grid .sh-picker .sh-row-meta > :is(.sh-row-tag, .sh-row-variant, .sh-chip) {
  min-height: 20px;
  height: 20px;
  padding: 0 2px;
  font-size: var(--sh-t-caption);
  line-height: 20px;
}
.sh-grid .sh-picker .sh-row-meta > .sh-row-tag {
  max-width: none;
  overflow: visible;
  text-overflow: clip;
}
.sh-grid .sh-picker .sh-row-meta > .sh-row-rating {
  font-size: var(--sh-t-caption);
  white-space: nowrap;
}
.sh-grid .sh-picker .sh-row-price {
  flex: 0 0 auto;
  font-size: var(--sh-t-card);
  font-weight: 700;
}
.sh-grid .sh-picker button.sh-row:not(.sh-sr-only) {
  height: 72px;
  min-height: 72px;
  padding: 3px 12px;
  gap: 8px;
  overflow: hidden;
}

.sh-grid #link-guide .sh-guide-cards {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-flow: row;
  grid-auto-columns: unset;
  overflow: visible;
}
.sh-grid #link-guide .sh-guide-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-height: 174px;
  padding: 16px;
}
.sh-grid #link-guide .sh-guide-card-title {
  order: 0;
  align-self: flex-start;
  padding-bottom: 5px;
  font-size: var(--sh-t-body);
  font-weight: 700;
  line-height: 1.35;
}
.sh-grid #link-guide .sh-guide-card-tail {
  order: 1;
  margin-top: 8px;
  padding: 0;
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
  font-weight: 400;
  line-height: 1.4;
  white-space: normal;
}
.sh-grid #link-guide .sh-guide-card-body {
  order: 2;
  flex: 0 0 auto;
  margin-top: 8px;
  color: var(--sh-ink-2);
}

.sh-d2b-page .sh-h1 {
  font-size: var(--sh-t-display-1);
  font-weight: 700;
  color: var(--sh-ink);
  letter-spacing: -.025em;
}
.sh-d2b-page .sh-page-head { margin-bottom: 24px; }
.sh-d2b-page .sh-page-head .sh-lead { max-width: 720px; }
.sh-d2b-page .sh-card + .sh-card { margin-top: 16px; }
.sh-d2b-balance-card { border-color: var(--sh-line); background: var(--sh-surface); }
.sh-navg-dot[data-sh-notification-dot] { box-shadow: 0 0 0 3px var(--sh-surface); }

.sh-d2b-order-stats {
  margin-bottom: 16px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-card);
  background: var(--sh-surface);
  overflow: clip;
}
.sh-d2b-order-stats summary {
  display: flex;
  min-height: 48px;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  color: var(--sh-ink);
  font-size: var(--sh-t-body);
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}
.sh-d2b-order-stats summary::-webkit-details-marker { display: none; }
.sh-d2b-order-stats-toggle { color: var(--sh-muted); font-size: var(--sh-t-caption); font-weight: 600; }
.sh-d2b-order-stats:not([open]) .sh-d2b-order-stats-toggle::before { content: "펼치기"; }
.sh-d2b-order-stats:not([open]) .sh-d2b-order-stats-toggle { font-size: 0; }
.sh-d2b-order-stats:not([open]) .sh-d2b-order-stats-toggle::before { font-size: var(--sh-t-caption); }
.sh-d2b-order-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid var(--sh-line);
}
.sh-d2b-order-stats-grid > div { min-width: 0; padding: 16px 16px; }
.sh-d2b-order-stats-grid > div + div { border-left: 1px solid var(--sh-line); }
.sh-d2b-order-stats-grid span { display: block; color: var(--sh-muted); font-size: var(--sh-t-caption); }
.sh-d2b-order-stats-grid b { display: block; margin-top: 5px; color: var(--sh-ink); font-size: var(--sh-t-card); }
.sh-page--orders .sh-d2b-order-detail { grid-column: 1 / -1; min-width: 0; }
.sh-page--orders .sh-d2b-order-detail summary {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  color: var(--sh-primary);
  font-size: var(--sh-t-help);
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}
.sh-page--orders .sh-d2b-order-detail summary::-webkit-details-marker { display: none; }
.sh-page--orders .sh-d2b-order-detail summary::after { content: "›"; margin-left: 5px; transition: transform var(--sh-fast); }
.sh-page--orders .sh-d2b-order-detail[open] summary::after { transform: rotate(90deg); }
.sh-d2b-order-detail-body {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  padding: 16px;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-canvas);
}
.sh-d2b-order-detail-body div { min-width: 0; }
.sh-d2b-order-detail-body span { display: block; color: var(--sh-muted); font-size: var(--sh-t-caption); }
.sh-d2b-order-detail-body b { display: block; margin-top: 4px; overflow-wrap: anywhere; color: var(--sh-ink); font-size: var(--sh-t-help); }
.sh-page--orders .sh-d2b-empty { min-height: 260px; padding: 28px 20px; }
.sh-page--orders .sh-d2b-empty > svg { width: 72px; height: 56px; }

.sh-d2b-page--topup .sh-d2b-topup-context { margin-bottom: 16px; }
.sh-d2b-page--topup .sh-d2b-money-output {
  height: 48px;
  border-style: dashed;
  background: var(--sh-canvas);
  color: var(--sh-ink);
  font-size: var(--sh-t-page);
  font-weight: 700;
  cursor: default;
}
.sh-d2b-page--topup .sh-points { min-height: 0; gap: 12px 8px; }
.sh-d2b-page--topup .pay-point {
  position: relative;
  min-height: 28px;
  height: 28px;
  padding: 0 12px;
  border-radius: var(--sh-r-ctrl);
  font-size: var(--sh-t-caption);
}
.sh-d2b-page--topup .pay-point::after { content: ""; position: absolute; inset: -8px 0; }
.sh-d2b-page--topup .pay-point i { display: none; }
.sh-d2b-page--topup .sh-coupon-step { border-top: 1px solid var(--sh-line); }
.sh-d2b-topup-bar .sh-mobar-inner { box-shadow: var(--sh-shadow); }

.sh-page--account .sh-account-tabs { position: sticky; top: 12px; z-index: 4; background: var(--sh-canvas); }

.sh-page--account .sh-d2b-benefits-host:empty::before,
.sh-page--account .sh-d2b-benefits-host > .sh-loyalty-loading:only-child { min-height: 770px; }
@media (max-width: 767px) {
  .sh-page--account .sh-d2b-benefits-host:empty::before,
  .sh-page--account .sh-d2b-benefits-host > .sh-loyalty-loading:only-child { min-height: 1000px; }
}
.sh-page--account :is(.sh-d2b-benefits-host, .sh-d2b-coupons-host, .sh-d2b-rewards-host):empty::before {
  content: "정보를 불러오는 중이에요.";
  display: block;
  padding: 24px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-card);
  background: var(--sh-surface);
  color: var(--sh-muted);
  font-size: var(--sh-t-help);
}
.sh-page--account .sh-loyalty-card,
.sh-page--account .sh-coupon-card,
.sh-page--account .sh-reward-row { border-color: var(--sh-line); box-shadow: none; }
.sh-page--account .sh-d2b-code-value {
  width: 100%;
  padding: 12px 16px;
  border-radius: var(--sh-r-sm);
  background: var(--sh-canvas);
  overflow-wrap: anywhere;
  color: var(--sh-ink);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: var(--sh-t-help);
  line-height: 1.5;
}

.sh-grid #sh-order-coach {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  scroll-margin-block: 24px calc(var(--sh-fixed-bottom) + 24px);
}
.sh-grid #sh-order-coach > :first-child {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  column-gap: 12px;
  align-items: center;
}
.sh-grid #sh-order-coach .sh-kicker {
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  padding: 0;
  border-radius: 50%;
  background: var(--sh-primary);
  color: var(--sh-surface);
  font-size: var(--sh-t-caption);
  font-weight: 700;
}
.sh-grid #sh-order-coach h3,
.sh-grid #sh-order-coach p { grid-column: 2; }
.sh-grid #sh-order-coach .sh-onboarding-actions {
  justify-content: flex-end;
  margin: 0;
}

.sh-catalog-search { width: min(320px, 100%); }
.sh-catalog-filters {
  padding: 12px var(--sh-pad-card);
  border-top: 1px solid var(--sh-line);
  border-bottom: 1px solid var(--sh-line);
}
.sh-catalog-filters .sh-chip {
  flex: 0 0 auto;
  white-space: nowrap;
}
.sh-catalog-filters .sh-chip.active {
  border-color: var(--sh-primary);
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.sh-catgrp-rows .sh-row > .sh-row-main {
  display: grid;
  flex: 1 1 auto;
  min-width: 0;
  overflow: visible;
  white-space: normal;
  -webkit-line-clamp: unset;
  line-clamp: unset;
}
.sh-catgrp-rows .sh-row-name {
  white-space: normal;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
.sh-catalog-empty { margin: 0; border-radius: 0; }

.sh-product-landing { gap: 24px; }
.sh-product-landing .sh-landing-problem h1 {
  font-size: var(--sh-t-display-1);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.6px;
}
.sh-landing-assure,
.sh-landing-reviews {
  padding: calc(var(--sh-sp-8) + var(--sh-sp-4));
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-hero);
  background: var(--sh-surface);
  box-shadow: var(--sh-sh-card);
}
.sh-landing-assure .sh-landing-section-head h2,
.sh-landing-reviews .sh-landing-section-head h2 {
  margin: 0;
  font-size: var(--sh-t-display-2);
  line-height: 1.3;
}
.sh-product-landing .sh-landing-section-head h2 {
  word-break: keep-all;
  text-wrap: balance;
}
.sh-landing-assure .sh-assure {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sh-sp-5);
}
.sh-landing-reviews [data-sh-review-site] {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  max-height: none;
  overflow: visible;
}

@media (max-width: 767px) {
  .sh-grid .sh-picker-head > .sh-crumb { display: none; }
  .sh-grid .sh-picker-body {
    position: relative;
    display: block;
  }
  .sh-grid .sh-picker-body::after {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    width: 32px;
    height: 36px;
    pointer-events: none;
    background: linear-gradient(90deg, transparent, var(--sh-surface));
  }
  .sh-grid .sh-picker .sh-cats {
    padding-right: 32px;
    scroll-padding-right: 32px;
  }
  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only) {
    height: 36px;
    min-height: 36px;
  }
  .sh-grid .sh-picker button.sh-row:not(.sh-sr-only) {
    height: 64px;
    min-height: 64px;
    padding: 1px 12px;
    gap: 12px;
  }
  .sh-grid .sh-picker .sh-row-name { font-size: var(--sh-t-body); }
  .sh-grid .sh-picker .sh-row-meta { font-size: var(--sh-t-caption); }
  .sh-grid .sh-picker .sh-row-price { font-size: var(--sh-t-card); }
  .sh-grid #link-guide .sh-guide-cards {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: minmax(260px, 85%);
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }
  .sh-grid #link-guide .sh-guide-cards::-webkit-scrollbar { display: none; }
  .sh-grid #link-guide .sh-guide-card { scroll-snap-align: start; }
  .sh-grid #link-guide .sh-guide-card { min-height: 0; }
  .sh-grid #sh-order-coach { padding: 16px; }
  .sh-grid #sh-order-coach .sh-onboarding-actions {
    display: grid;
    gap: 4px;
  }
  .sh-catalog-search { width: 100%; }
  [data-sh-catalog-browser] .sh-card-head { align-items: stretch; }
  .sh-catalog-filters { padding-inline: var(--sh-sp-4); }
  [data-sh-catalog-browser] .sh-catgrp-rows a.sh-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    min-height: 64px;
    padding-block: 4px;
    flex-wrap: nowrap;
  }
  [data-sh-catalog-browser] .sh-catgrp-rows a.sh-row > .sh-row-main {
    order: 0;
    min-width: 0;
  }
  [data-sh-catalog-browser] .sh-catgrp-rows a.sh-row > .sh-row-rate {
    order: 1;
    align-self: center;
    margin-left: 0;
  }
  [data-sh-catalog-browser] .sh-catgrp-rows .sh-row-main > .sh-row-name {
    order: 0;
    overflow: visible;
    display: block;
    white-space: normal;
    -webkit-line-clamp: unset;
    line-clamp: unset;
  }
  [data-sh-catalog-browser] .sh-catgrp-rows .sh-row-main > .sh-row-sub { order: 1; }
  .sh-landing-assure,
  .sh-landing-reviews {
    padding: var(--sh-sp-6) var(--sh-sp-4);
    border-radius: var(--sh-r-card);
  }
  .sh-landing-assure .sh-landing-section-head h2,
  .sh-landing-reviews .sh-landing-section-head h2 { font-size: var(--sh-t-display-4); }
  .sh-landing-assure .sh-assure,
  .sh-landing-reviews [data-sh-review-site] { grid-template-columns: 1fr; }
.sh-d2b-email-confirm {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
}
.sh-d2b-email-confirm > .sh-alert { grid-column: 1 / -1; }
.sh-d2b-email-confirm-copy .sh-lead { margin-top: 5px; }
.sh-d2b-page--notifications { max-width: 1120px; }
.sh-d2b-notification-table .sh-table th[scope="row"] { color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 600; text-align: left; }
.sh-d2b-notification-table .sh-check--switch {
  min-width: 44px;
  min-height: 44px;
  align-items: center;
  justify-content: center;
}
.sh-d2b-notification-table td { height: 58px; }

.sh-page--tickets .sh-card-head { align-items: center; }
.sh-page--tickets .sh-d2b-ticket-row { padding: 16px 16px; border-color: var(--sh-line); }
.sh-page--tickets .sh-d2b-ticket-row:hover { border-color: var(--sh-primary-line); background: var(--sh-tint-soft); }
.sh-d2b-page--ticket-detail { max-width: 1040px; }
.sh-d2b-thread { gap: 16px; }
.sh-d2b-thread .sh-msg-body { max-width: min(680px, 88%); }
.sh-d2b-thread .sh-msg--staff .sh-msg-body { border: 1px solid var(--sh-line); background: var(--sh-surface); }
.sh-d2b-attachment-chip {
  display: inline-flex;
  min-height: 32px;
  align-items: center;
  padding: 0 12px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-card);
  background: var(--sh-surface);
  color: var(--sh-primary);
  font-size: var(--sh-t-caption);
  font-weight: 700;
}
.sh-d2b-thread .sh-d2b-attachment-chip {
  max-width: 100%;
  overflow: hidden;
  color: var(--sh-primary);
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sh-d2b-page--secondary .sh-table-wrap { border-color: var(--sh-line); }
.sh-d2b-page--secondary .sh-empty { min-height: 220px; }

@media (max-width: 767px) {
  .sh-d2b-page .sh-h1 { font-size: var(--sh-t-page); }
  .sh-d2b-page .sh-page-head { margin-bottom: 0; }
  .sh-d2b-page .sh-card + .sh-card { margin-top: 12px; }
  .sh-d2b-order-stats { margin-bottom: 0; border-radius: var(--sh-r-ctrl); }
  .sh-d2b-order-stats summary { min-height: 44px; padding: 0 16px; }
  .sh-d2b-order-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sh-d2b-order-stats-grid > div { padding: 12px 16px; }
  .sh-d2b-order-stats-grid > div:nth-child(3) { border-left: 0; border-top: 1px solid var(--sh-line); }
  .sh-d2b-order-stats-grid > div:nth-child(4) { border-top: 1px solid var(--sh-line); }
  .sh-d2b-order-stats-grid b { font-size: var(--sh-t-body); }
  .sh-page--orders .sh-d2b-order-detail { width: 100%; }
  .sh-d2b-order-detail-body { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sh-page--orders .sh-d2b-empty { min-height: 0; padding: 16px 12px; }
  body:has(.sh-d2b-page) .sh-fab-stack { display: none; }
  .sh-page--orders .sh-d2b-empty .sh-empty-cta { width: 100%; }
  .sh-page--orders .sh-d2b-empty .sh-btn { width: 100%; min-height: 44px; }
  .sh-d2b-page--topup { padding-bottom: 108px; }
  .sh-d2b-page--topup .sh-points { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sh-d2b-topup-bar .sh-mobar-inner { padding-bottom: max(12px, env(safe-area-inset-bottom)); }
  .sh-d2b-topup-bar .sh-btn { min-height: 52px; border-radius: var(--sh-r-ctrl); }
  .sh-page--account .sh-account-tabs { top: 0; margin-inline: -12px; padding-inline: 12px; overflow-x: auto; scrollbar-width: none; }
  .sh-page--account .sh-account-tabs::-webkit-scrollbar { display: none; }
  .sh-page--account .sh-account-tab { min-width: max-content; }
  .sh-d2b-email-confirm { grid-template-columns: 1fr; }
  .sh-d2b-email-confirm form .sh-btn { width: 100%; }
  .sh-d2b-notification-table { margin-inline: -4px; }
  .sh-d2b-notification-table .sh-table { min-width: 0; table-layout: fixed; }
  .sh-d2b-notification-table .sh-table :is(th, td):not(:first-child) { width: 72px; padding-inline: 4px; }
  .sh-d2b-notification-table .sh-table th[scope="row"] { padding-inline: 12px 4px; overflow-wrap: anywhere; }
  .sh-page--tickets .sh-card-head { align-items: stretch; }
  .sh-page--tickets .sh-search { max-width: none; }
  .sh-page--tickets .sh-d2b-ticket-row { padding: 16px; }
  .sh-d2b-thread .sh-msg-body { max-width: 92%; }
  .sh-d2b-page--refunds .sh-table { min-width: 0; table-layout: fixed; }
  .sh-d2b-page--refunds .sh-table :is(th, td) { padding-inline: 8px; font-size: var(--sh-t-caption); }
  .sh-d2b-page--refunds .sh-table :is(th, td):last-child { overflow-wrap: anywhere; }
}
}

@media (min-width: 1024px) {
  .sh-auth-page .sh-auth-panel {
    grid-template-rows: repeat(4, max-content);
    align-content: start;
  }
  .sh-auth-page .sh-auth-visual {
    display: none;
  }
}

.sh-auth-card--signup [data-sh-signup-next]:disabled {
  border-color: transparent;
  background: var(--sh-surface-alt);
  color: var(--sh-faint);
}
.sh-auth-page #code::placeholder {
  font-size: var(--sh-t-body);
  font-weight: 400;
  letter-spacing: normal;
}
.sh-d3b-email {
  font-size: var(--sh-t-card);
  letter-spacing: -.2px;
  overflow-wrap: normal;
  word-break: normal;
}

.sh-d2b-order-stats { background: var(--sh-canvas); }
.sh-d2b-order-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sh-d2b-order-stats-grid b { font-size: var(--sh-t-page); font-weight: 700; }
.sh-d2b-order-stats-grid b small { margin-left: 3px; color: var(--sh-muted); font-size: var(--sh-t-help); font-weight: 600; }
.sh-d3b-order-scope { color: var(--sh-muted); font-size: var(--sh-t-caption); }
.sh-page--orders .sh-statustabs > a {
  min-height: 36px;
  height: 36px;
  padding: 0 16px;
  font-size: var(--sh-t-help);
}
.sh-page--orders .sh-statustabs > a.active {
  border-color: var(--sh-ink);
  background: var(--sh-ink);
  color: var(--sh-surface);
}
.sh-d3b-order-head {
  display: grid;
  grid-template-columns: 96px minmax(0,1fr) 120px 140px 96px 88px;
  gap: 16px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--sh-line);
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
  font-weight: 700;
}
.sh-d3b-order-head span:nth-child(5) { text-align: right; }
.sh-page--orders .sh-fact > span { display: none; }
.sh-page--orders .sh-order-actions { flex-wrap: nowrap; }
.sh-order-more { position: relative; }
.sh-order-more summary {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: var(--sh-r-sm);
  color: var(--sh-muted);
  cursor: pointer;
  list-style: none;
}
.sh-order-more summary::-webkit-details-marker { display: none; }
.sh-order-more-menu {
  position: absolute;
  z-index: 6;
  top: calc(100% + 6px);
  right: 0;
  display: grid;
  min-width: 148px;
  gap: 4px;
  padding: 8px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-surface);
  box-shadow: var(--sh-shadow);
}
.sh-order-more-menu .sh-btn { justify-content: flex-start; width: 100%; }

.sh-d2b-page--topup .sh-d2b-money-output {
  display: block;
  height: auto;
  min-height: 36px;
  border: 0;
  background: transparent;
  color: var(--sh-ink);
  font-size: var(--sh-t-display-1);
  font-weight: 700;
  line-height: 1.25;
  font-variant-numeric: tabular-nums;
}
.sh-d2b-page--topup [data-sh-topup-coupons] > .sh-card {
  display: grid;
  height: auto;
  justify-items: center;
  gap: 12px;
  text-align: center;
}
.sh-d2b-page--topup [data-sh-topup-coupons] > .sh-card > .sh-empty { padding-bottom: 0; border: 0; }
.sh-d2b-page--topup [data-sh-topup-coupons] > .sh-card > .sh-row-flex { margin-top: 0; }

.sh-page--account .sh-account-tabs {
  top: 12px;
  gap: 4px;
  padding: 4px;
  border-radius: var(--sh-r-sm);
}
.sh-page--account .sh-account-tab {
  min-height: 36px;
  height: 36px;
  padding: 0 8px;
  border-radius: var(--sh-r-sm);
  font-weight: 700;
}
.sh-page--account .sh-account-tab.active { box-shadow: 0 1px 4px rgba(27,24,48,.10); }

.sh-page--tickets .sh-textarea { border-color: var(--sh-line); }
.sh-d2b-page :is(.sh-card, .sh-input, .sh-select, .sh-textarea, .sh-table-wrap) { border-color: var(--sh-line); }
.sh-d2b-page .sh-card,
.sh-auth-page .sh-auth-card,
.sh-d2b-page .sh-scrim .sh-modal { border-radius: var(--sh-r-card); }
.sh-d2b-page :is(td, output, [data-sh-money], [data-sh-count], input[readonly]) {
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
}
.sh-auth-page :is([data-sh-money], [data-sh-count], input[inputmode="numeric"]) {
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
}

.sh-check--switch .sh-checkbox,
.sh-check--switch .sh-checkbox:checked {
  position: relative;
  padding: 0;
  background-image: none;
  background-position: 0 0;
}
.sh-check--switch .sh-checkbox::after {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--sh-surface);
  box-shadow: 0 1px 3px rgba(23,20,31,.18);
  transform: translateX(0);
  transition: transform 160ms var(--sh-ease-out);
}
.sh-check--switch .sh-checkbox:checked::after { transform: translateX(20px); }

@media (max-width: 1023px) {
  .sh-d3b-order-head { display: none; }
  .sh-page--orders .sh-fact > span { display: block; }
  .sh-order-more-menu { right: auto; left: 0; }
  .sh-page--account .sh-tiles--3 { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
  .sh-page--orders .sh-only-mobile { display: none; }
  .sh-page--orders .sh-only-desktop { display: block; min-width: 0; }
  .sh-page--orders .sh-statustabs { overflow-x: auto; flex-wrap: nowrap; }
  .sh-page--orders .sh-order-actions { flex-wrap: wrap; }
  .sh-page--account .sh-account-tabs { top: 0; }
}

:root {
  --sh-line-soft: var(--sh-line);
  --sh-line-hair: var(--sh-line);
  --sh-r-card: 20px;
  --sh-r-hero: var(--sh-r-card);
}
.sh-card { border-radius: var(--sh-r-card); }
.sh-stat,
.sh-tile { background: var(--sh-canvas); }
.sh-stat-num,
.sh-tile-value,
.sh-tile > .sh-num { font-size: var(--sh-t-page); }
.sh-chip { min-height: 36px; height: 36px; padding: 0 var(--sh-sp-4); font-size: var(--sh-t-xs); }
.sh-chip.active,
.sh-chip[aria-pressed="true"],
.sh-statustabs > .active,
.sh-statustabs > [aria-current="true"] { border-color: var(--sh-ink); background: var(--sh-ink); color: var(--sh-surface); }
.sh-input[aria-invalid="true"],
.sh-select[aria-invalid="true"],
.sh-textarea[aria-invalid="true"],
.form-control[aria-invalid="true"],
.sh-input[aria-invalid="true"]:focus,
.sh-input[aria-invalid="true"]:focus-visible,
.sh-select[aria-invalid="true"]:focus,
.sh-select[aria-invalid="true"]:focus-visible,
.sh-textarea[aria-invalid="true"]:focus,
.sh-textarea[aria-invalid="true"]:focus-visible,
.form-control[aria-invalid="true"]:focus,
.form-control[aria-invalid="true"]:focus-visible {
  border-color: var(--sh-danger) !important;
  box-shadow: 0 0 0 3px var(--sh-danger-bg) !important;
  outline: 0 !important;
}
.sh-segtabs,
.sh-account-tabs { min-height: 36px; padding: var(--sh-sp-1); border: 0; border-radius: var(--sh-r-sm); background: var(--sh-canvas); }
.sh-segtab,
.sh-account-tab { min-height: 36px; height: 36px; border: 0; border-radius: var(--sh-r-xs); font-size: var(--sh-t-xs); font-weight: 700; }
.sh-segtab.active,
.sh-segtab[aria-selected="true"],
.sh-account-tab.active,
.sh-account-tab[aria-selected="true"] { background: var(--sh-surface); color: var(--sh-ink); box-shadow: var(--sh-sh-card); }
.sh-tabs,
.sh-order-subtabs,
.sh-guide-modes { min-height: 32px; gap: var(--sh-sp-1); padding: 0; border: 0; background: transparent; }
.sh-tab,
.sh-order-subtab,
.sh-guide-modes .sh-seg-item {
  min-height: 32px;
  height: 32px;
  padding: 0 var(--sh-sp-3);
  border: 0;
  border-radius: var(--sh-r-xs);
  background: transparent;
  color: var(--sh-muted);
  font-size: var(--sh-t-xs);
  font-weight: 700;
}
.sh-tab::after,
.sh-order-subtab::after { display: none; }
.sh-tab.active,
.sh-tab[aria-selected="true"],
.sh-order-subtab.active,
.sh-order-subtab[aria-selected="true"],
.sh-guide-modes .sh-seg-item.active,
.sh-guide-modes .sh-seg-item[aria-selected="true"] { border: 0; background: var(--sh-tint); color: var(--sh-primary); box-shadow: none; }
.sh-onboarding {
  box-shadow: var(--sh-sh-card);
  transition: transform var(--sh-dur-fast) var(--sh-ease-out), opacity var(--sh-dur-fast) var(--sh-ease-out);
}
.sh-onboarding.is-entering { opacity: 0; transform: translateX(var(--sh-sp-2)); }
#sh-order-coach:focus,
#sh-order-coach .sh-btn:focus { outline: 0; }
#sh-order-coach .sh-btn:focus-visible { outline: 3px solid var(--sh-focus); outline-offset: 2px; }
.sh-ticker-roll {
  min-height: 20px;
  overflow: hidden;
  transition: transform 200ms var(--sh-ease-out), opacity var(--sh-dur-fast) var(--sh-ease-out);
}
.sh-catalog-layout {
  display: grid;
  grid-template-columns: minmax(220px, 264px) minmax(0, 1fr);
  align-items: start;
  border-top: 1px solid var(--sh-line);
}
.sh-catalog-nav {
  position: sticky;
  top: var(--sh-sp-3);
  max-height: calc(100vh - var(--sh-sp-6));
  overflow-y: auto;
  border-right: 1px solid var(--sh-line);
  background: var(--sh-surface);
}
.sh-catalog-filters { display: grid; padding: var(--sh-sp-2); }
.sh-catalog-filter {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: center;
  gap: var(--sh-sp-2);
  width: 100%;
  min-height: 44px;
  padding: 0 var(--sh-sp-3);
  border: 0;
  border-radius: var(--sh-r-sm);
  background: transparent;
  color: var(--sh-ink-2);
  font: inherit;
  font-size: var(--sh-t-xs);
  font-weight: 600;
  text-align: left;
  cursor: pointer;
}
.sh-catalog-filter > span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sh-catalog-filter-count { color: var(--sh-muted); font-size: var(--sh-t-2xs); }
.sh-catalog-filter.active,
.sh-catalog-filter[aria-pressed="true"] { background: var(--sh-ink); color: var(--sh-surface); }
.sh-catalog-filter.active .sh-catalog-filter-count,
.sh-catalog-filter[aria-pressed="true"] .sh-catalog-filter-count { color: var(--sh-on-brand-2); }
.sh-catalog-more { display: none; }
[data-sh-catalog-browser] .sh-catgrp-rows .sh-row-name { font-weight: 600; }
[data-sh-catalog-browser] .sh-catgrp-rows .sh-row[aria-current="true"] .sh-row-name { font-weight: 700; }
[data-sh-catalog-browser] .sh-row-meta { display: flex; align-items: center; gap: var(--sh-sp-1); min-width: 0; }

.sh-plat-icon[data-brand="event"],
.sh-guide-tab-ic[data-brand="event"] {
  --sh-plat-mark-bg: linear-gradient(135deg, #FFD43B, #FFB326);
  --sh-plat-mark-fg: var(--sh-gold-ink);
  color: var(--sh-gold-ink);
}

.sh-signin-first { order: -10; }
.sh-signin-first-form { display: grid; gap: var(--sh-sp-4); }
.sh-signin-first-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sh-sp-3); }
.sh-signin-first-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: center;
  gap: var(--sh-sp-3);
}
.sh-signin-first-actions .sh-btn { grid-column: 1 / -1; }
.sh-signin-more > summary { display: none; }
.sh-signin-more-body { display: contents; }
body[data-route="signin"] :is(.sh-orderbar, .sh-mobar) { display: none !important; }
.sh-sidebar [data-sh-loyalty-side-summary],
.sh-drawer [data-sh-loyalty-side-summary] { display: none !important; }
.sh-sidebar .sh-user-row,
.sh-drawer .sh-user-row { align-items: flex-start; }
.sh-sidebar .sh-avatar,
.sh-drawer .sh-avatar { align-self: flex-start; }
.sh-num,
td,
.sh-stat-num,
[data-sh-money] { font-variant-numeric: tabular-nums; font-feature-settings: "tnum" 1; }
@media (max-width: 767px) {
  body[data-route="signin"] .sh-main { padding-inline: var(--sh-gutter); }
  .sh-signin-first-fields { grid-template-columns: 1fr; }
  .sh-signin-first .sh-card-head { align-items: flex-start; }
  .sh-signin-more { display: block; border: 1px solid var(--sh-line); border-radius: var(--sh-r-card); background: var(--sh-surface); }
  .sh-signin-more > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 52px;
    padding: 0 var(--sh-sp-4);
    color: var(--sh-ink);
    font-size: var(--sh-t-xs);
    font-weight: 700;
    cursor: pointer;
  }
  .sh-signin-more > summary::after { content: "+"; color: var(--sh-primary); font-size: var(--sh-t-h3); }
  .sh-signin-more[open] > summary::after { content: "−"; }
  .sh-signin-more-body { display: grid; gap: var(--sh-sp-3); padding: 0 var(--sh-sp-3) var(--sh-sp-3); }
  .sh-catalog-layout { display: block; }
  .sh-catalog-nav {
    position: relative;
    top: auto;
    max-height: none;
    overflow: hidden;
    border-right: 0;
    border-bottom: 1px solid var(--sh-line);
  }
  .sh-catalog-nav::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    width: var(--sh-sp-7);
    height: 44px;
    pointer-events: none;
    background: linear-gradient(90deg, transparent, var(--sh-surface));
  }
  .sh-catalog-filters {
    display: flex;
    gap: var(--sh-sp-2);
    overflow-x: auto;
    padding: var(--sh-sp-2) var(--sh-sp-7) var(--sh-sp-2) var(--sh-sp-4);
    scrollbar-width: none;
  }
  .sh-catalog-filters::-webkit-scrollbar { display: none; }
  .sh-catalog-filter {
    display: inline-flex;
    flex: 0 0 auto;
    width: auto;
    min-width: 88px;
    max-width: 224px;
    min-height: 36px;
    border: 1px solid var(--sh-line);
    border-radius: var(--sh-r-pill);
  }
  .sh-catalog-filter > span:first-child { max-width: 192px; text-overflow: ellipsis; }
  .sh-catalog-filter-count,
  .sh-catalog-filter--more { display: none; }
  .sh-catalog-expanded .sh-catalog-filter--more { display: inline-flex; }
  .sh-catalog-more {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    margin: 0 var(--sh-sp-4) var(--sh-sp-2);
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--sh-primary);
    font: inherit;
    font-size: var(--sh-t-xs);
    font-weight: 700;
  }
}
@media (prefers-reduced-motion: reduce) {
  .sh-onboarding,
  .sh-ticker-roll { transition: none; }
  .sh-onboarding.is-entering { opacity: 1; transform: none; }
}

.sh-stack--cards { gap: var(--sh-sp-5); }
.sh-stack--section { gap: 20px; }
.sh-stack--elements { gap: var(--sh-sp-3); }
.sh-rail--main { min-width: 0; }

.sh-btn {
  transition: filter 120ms var(--sh-ease-out), transform 120ms var(--sh-ease-out), box-shadow 120ms var(--sh-ease-out), border-color 120ms var(--sh-ease-out);
}
@media (hover: hover) {
  .sh-btn:not(:disabled):hover { filter: brightness(.96); }
}
.sh-btn:not(:disabled):active { transform: translateY(1px); box-shadow: 0 1px 3px rgba(17, 24, 39, .18); }
.sh-btn[class*="sh-btn--"]:not(:disabled):active { transform: translateY(1px); box-shadow: 0 1px 3px rgba(17, 24, 39, .18); }
.sh-btn:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }

.sh-plat { transition: transform 160ms var(--sh-ease-out), box-shadow 160ms var(--sh-ease-out), color 160ms var(--sh-ease-out); }
@media (hover: hover) {
  .sh-plat:not(.active):hover { transform: translateY(-2px); box-shadow: var(--sh-sh-card); }
}
.sh-plat.active .sh-plat-icon { box-shadow: 0 0 0 2px var(--sh-surface), 0 0 0 6px var(--sh-primary); }
.sh-plat.active .sh-plat-label { color: var(--sh-primary); font-weight: 700; }

.sh-row { transition: background-color 160ms var(--sh-ease-out), border-color 160ms var(--sh-ease-out), box-shadow 160ms var(--sh-ease-out); }
@media (hover: hover) {
  .sh-grid .sh-picker button.sh-row:not(.active):hover { background: var(--sh-canvas); }
}
.sh-row.active,
.sh-row.is-selected { border: 1px solid var(--sh-primary); background: var(--sh-tint); }
.sh-grid .sh-picker button.sh-row.active,
.sh-grid .sh-picker button.sh-row.is-selected { border: 1px solid var(--sh-primary); background: var(--sh-tint); }
.sh-row.active .sh-row-name,
.sh-row.is-selected .sh-row-name { font-weight: 700; }
.sh-row.active .sh-row-rating,
.sh-row.is-selected .sh-row-rating { color: var(--sh-primary); }
.sh-row-tags {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 20px;
  max-height: 20px;
  overflow: hidden;
  white-space: nowrap;
}
.sh-grid .sh-picker button.sh-row { height: 80px; min-height: 80px; }

.sh-chip,
.sh-segtab,
.sh-catalog-filter { transition: background-color 120ms var(--sh-ease-out), border-color 120ms var(--sh-ease-out), color 120ms var(--sh-ease-out), box-shadow 120ms var(--sh-ease-out); }
@media (hover: hover) {
  .sh-chip:not(.active):hover,
  .sh-segtab:not(.active):hover,
  .sh-catalog-filter:not(.active):hover { border-color: var(--sh-ink-muted); }
}
.sh-chip.active,
.sh-chip[aria-pressed="true"],
.sh-chip[aria-selected="true"] { background: var(--sh-ink); color: var(--sh-surface); }
.sh-catalog-filter.active,
.sh-catalog-filter[aria-pressed="true"] { background: var(--sh-ink); color: var(--sh-surface); }
.sh-segtab.active,
.sh-segtab[aria-selected="true"] { background: var(--sh-surface); box-shadow: var(--sh-sh-sm); }

.sh-check { min-inline-size: 44px; min-block-size: 44px; }
.sh-checkbox:checked { border-color: var(--sh-primary); background: var(--sh-primary); }

.sh-static-guide-list { display: grid; gap: var(--sh-sp-3); margin: 0; padding: 0; list-style: none; }
.sh-static-guide-step { display: grid; grid-template-columns: 28px 1fr; align-items: center; gap: var(--sh-sp-3); color: var(--sh-ink); font-size: var(--sh-t-sm); line-height: 1.5; }
.sh-static-guide-step b { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--sh-tint); color: var(--sh-primary); font-size: var(--sh-t-xs); }
.sh-static-guide-caution { position: relative; padding-left: 16px; color: var(--sh-ink-muted); font-size: var(--sh-t-xs); line-height: 1.5; }
.sh-static-guide-caution::before { content: ""; position: absolute; top: .62em; left: 0; width: 4px; height: 4px; border-radius: 50%; background: var(--sh-ink-muted); }
.sh-static-guide-list--caution { gap: var(--sh-sp-2); }
.sh-static-guide-contract { display: none !important; }
.sh-static-guide .sh-linkbtn { justify-content: flex-start; min-height: 44px; }

.sh-rail-notice {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 16px;
  border: 0;
  border-radius: var(--sh-r-card);
  background: var(--sh-surface);
  box-shadow: 0 1px 2px rgba(2, 9, 27, .04);
  overflow: hidden;
  white-space: nowrap;
  font-weight: 600;
}
.sh-rail-notice .sh-truncate { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.sh-rail-notice-ic {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: var(--sh-r-sm);
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.sh-rail-notice-ic svg { width: 15px; height: 15px; }
.sh-rail-notice .sh-notice-go { flex: 0 0 auto; color: var(--sh-muted-2); font-weight: 600; }
.sh-ticker,
.sh-strip { color: rgba(255, 255, 255, .72); font-size: var(--sh-t-help); }

@media (min-width: 1024px) {
  .sh-stack--cards { gap: var(--sh-sp-6); }
}
.sh-rail--aside.sh-stack--cards { gap: var(--sh-sp-5); }

:root {
  --sh-rail-live-from: #241238;
  --sh-rail-live-mid: #3A1A66;
  --sh-rail-live-to: #4B24C7;
  --sh-rail-live-muted: #BFA8F2;
  --sh-rail-live-foot: #D9CBF7;
  --sh-rail-live-ok: #39D98A;
  --sh-rail-quote: #F7F8FA;
  --sh-rail-card-shadow: var(--sh-surface-raised);
  --sh-rail-know-row-gap: 14px;
  --sh-rail-icon-size: 34px;
  --sh-rail-icon-glyph-size: var(--sh-t-body);
  --sh-rail-price-icon-glyph-size: var(--sh-t-2xs);
  --sh-rail-copy-line-height: 1.55;
  --sh-rail-live-title: 17px;
  --sh-rail-live-number: 24px;
  --sh-rail-live-number-line-height: 1.25;
  --sh-rail-live-gradient-stop: 70%;
  --sh-rail-live-head-gap: var(--sh-sp-3);
  --sh-rail-live-stats-top: 18px;
  --sh-rail-live-stat-block-pad: 2px;
  --sh-rail-live-stat-divider: rgba(255, 255, 255, .14);
  --sh-rail-live-label-top: 3px;
  --sh-rail-live-foot-gap: var(--sh-sp-2);
  --sh-rail-live-foot-top: var(--sh-sp-4);
  --sh-rail-live-foot-pad: 14px;
  --sh-rail-live-foot-divider: rgba(255, 255, 255, .12);
  --sh-rail-live-dot-size: var(--sh-r-2xs);
  --sh-rail-price-icon-size: 26px;
  --sh-rail-price-row-pad: 11px;
  --sh-rail-price-sub-top: 6px;
  --sh-rail-price-list-top: 10px;
  --sh-rail-price-row-gap: 10px;
  --sh-rail-price-tilde-gap: 1px;
  --sh-rail-price-tilde-size: 11px;
  --sh-rail-price-note-top: var(--sh-sp-2);
  --sh-rail-price-note-size: var(--sh-t-2xs);
  --sh-rail-review-score-top: var(--sh-sp-3);
  --sh-rail-review-score-gap: var(--sh-sp-2);
  --sh-rail-review-star-spacing: 1px;
  --sh-rail-quote-top: var(--sh-sp-3);
  --sh-rail-quote-pad: 14px var(--sh-sp-4);
  --sh-rail-quote-line-height: 1.65;
  --sh-rail-quote-meta-gap: var(--sh-sp-2);
  --sh-rail-quote-meta-top: 10px;
  --sh-rail-reset: 0;
  --sh-rail-circle-radius: 50%;
  --sh-rail-rule-width: 1px;
  --sh-rail-weight-medium: 500;
  --sh-rail-weight-semibold: 600;
  --sh-rail-weight-bold: 700;
  --sh-rail-weight-heavy: 800;
}
.sh-rail--aside :is(.sh-rail-know, .sh-rail-price, .sh-rail-review) {
  border: var(--sh-rail-reset);
  border-radius: var(--sh-r-panel);
  box-shadow: var(--sh-rail-card-shadow);
}
.sh-rail-know .sh-h3 { font-size: var(--sh-t-h3); }
.sh-rail-know .sh-assure { gap: var(--sh-rail-know-row-gap); }
.sh-rail-know .sh-assure-item { grid-template-columns: var(--sh-rail-icon-size) minmax(var(--sh-rail-reset), 1fr); gap: var(--sh-sp-3); }
.sh-rail-know .sh-assure-ic { width: var(--sh-rail-icon-size); height: var(--sh-rail-icon-size); border-radius: var(--sh-r-sm); }
.sh-rail-know .sh-assure-ic svg { width: var(--sh-rail-icon-glyph-size); height: var(--sh-rail-icon-glyph-size); }
.sh-rail-know .sh-assure-t { font-size: var(--sh-t-sm); }
.sh-rail-know .sh-assure-d { font-size: var(--sh-t-xs); line-height: var(--sh-rail-copy-line-height); color: var(--sh-muted-2); }

.sh-rail-live {
  border: var(--sh-rail-reset);
  border-radius: var(--sh-r-panel);
  padding: var(--sh-sp-5);
  color: var(--sh-on-brand);
  background: linear-gradient(135deg, var(--sh-rail-live-from), var(--sh-rail-live-mid) var(--sh-rail-live-gradient-stop), var(--sh-rail-live-to));
  box-shadow: var(--sh-surface-flat);
}
.sh-rail-live-head { display: flex; align-items: center; justify-content: space-between; gap: var(--sh-rail-live-head-gap); }
.sh-rail-live .sh-h2 { color: var(--sh-on-brand); font-size: var(--sh-rail-live-title); }
.sh-rail-live .sh-live-note { color: var(--sh-rail-live-muted); font-size: var(--sh-t-3xs); font-weight: var(--sh-rail-weight-medium); }
.sh-rail-live-stats { display: grid; grid-template-columns: repeat(3, minmax(var(--sh-rail-reset), 1fr)); margin-top: var(--sh-rail-live-stats-top); }
.sh-rail-live-stat { min-width: var(--sh-rail-reset); padding: var(--sh-rail-live-stat-block-pad) var(--sh-sp-3); }
.sh-rail-live-stat:first-child { padding-left: var(--sh-rail-reset); }
.sh-rail-live-stat:last-child { padding-right: var(--sh-rail-reset); }
.sh-rail-live-stat + .sh-rail-live-stat { border-left: var(--sh-rail-rule-width) solid var(--sh-rail-live-stat-divider); }
.sh-rail-live .sh-stat-num { color: var(--sh-on-brand); font-size: var(--sh-rail-live-number); font-weight: var(--sh-rail-weight-heavy); line-height: var(--sh-rail-live-number-line-height); }
.sh-rail-live :is(#sh_stat_today, #total_order_today_mirror) { color: var(--sh-on-brand); }
.sh-rail-live .sh-stat-label { margin-top: var(--sh-rail-live-label-top); color: var(--sh-rail-live-muted); font-size: var(--sh-t-2xs); }
.sh-rail-live-foot { display: flex; align-items: center; gap: var(--sh-rail-live-foot-gap); margin-top: var(--sh-rail-live-foot-top); padding-top: var(--sh-rail-live-foot-pad); border-top: var(--sh-rail-rule-width) solid var(--sh-rail-live-foot-divider); color: var(--sh-rail-live-foot); font-size: var(--sh-t-2xs); }
.sh-rail-live-foot i { width: var(--sh-rail-live-dot-size); height: var(--sh-rail-live-dot-size); border-radius: var(--sh-rail-circle-radius); background: var(--sh-rail-live-ok); }

.sh-rail-price .sh-sub--card { margin-top: var(--sh-rail-price-sub-top); color: var(--sh-muted-2); font-size: var(--sh-t-xs); }
.sh-rail-price-list { margin-top: var(--sh-rail-price-list-top); }
.sh-rail-price-row { display: flex; align-items: center; gap: var(--sh-rail-price-row-gap); padding: var(--sh-rail-price-row-pad) var(--sh-rail-reset); border-bottom: var(--sh-rail-rule-width) solid var(--sh-line-soft); }
.sh-rail-price-row:last-child { border-bottom: var(--sh-rail-reset); }
.sh-rail-price-row .sh-plat-icon { width: var(--sh-rail-price-icon-size); height: var(--sh-rail-price-icon-size); flex: var(--sh-rail-reset) var(--sh-rail-reset) var(--sh-rail-price-icon-size); border-radius: var(--sh-r-xs); }
.sh-rail-price-row .sh-plat-icon svg { width: var(--sh-rail-price-icon-glyph-size); height: var(--sh-rail-price-icon-glyph-size); box-shadow: inset 0 0 0 1px rgba(25,31,40,.08); }
.sh-rail-price-row > span:nth-child(2) { flex: 1 1 auto; min-width: var(--sh-rail-reset); color: var(--sh-muted); font-size: var(--sh-t-sm); }
.sh-rail-price-row b { color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: var(--sh-rail-weight-heavy); font-variant-numeric: tabular-nums; white-space: nowrap; }
.sh-rail-price-row b small { margin-left: var(--sh-rail-price-tilde-gap); color: var(--sh-faint); font-size: var(--sh-rail-price-tilde-size); font-weight: var(--sh-rail-weight-semibold); }

.sh-rail-price-row b[data-sh-price-pending] { display: inline-flex; align-items: center; min-height: 1.5em; }
.sh-rail-price-skel { --sh-skel-h: 14px; width: 52px; }
.sh-rail-price .sh-fine { margin-top: var(--sh-rail-price-note-top); font-size: var(--sh-rail-price-note-size); color: var(--sh-faint); }

.sh-rail-review .sh-card-head { margin-bottom: var(--sh-rail-reset); }
.sh-rail-review-link { color: var(--sh-primary); font-size: var(--sh-t-sm); font-weight: var(--sh-rail-weight-bold); white-space: nowrap; }
.sh-rail-review-score { display: flex; align-items: center; gap: var(--sh-rail-review-score-gap); margin-top: var(--sh-rail-review-score-top); }
.sh-rail-review-score > span { color: var(--sh-star); font-size: var(--sh-t-body); letter-spacing: var(--sh-rail-review-star-spacing); }
.sh-rail-review-score b { font-size: var(--sh-t-body); font-weight: var(--sh-rail-weight-bold); font-variant-numeric: tabular-nums; }
.sh-rail-review-score small { color: var(--sh-muted-2); font-size: var(--sh-t-xs); }

.sh-rail-review-quote { margin-top: var(--sh-rail-quote-top); }
.sh-rail-review-quote .sh-reviews { display: block; }

@media (min-width: 1280px) {

  .sh-rail--aside > .sh-signin-more { display: block; border: 0; background: transparent; }
  .sh-rail--aside > .sh-signin-more > .sh-signin-more-body {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 0;
  }
  .sh-rail--aside > .sh-signin-more > .sh-signin-more-body > * { margin-top: 0; margin-bottom: 0; }
  .sh-rail--aside > .sh-signin-more > summary { display: none; }

  .sh-grid > .sh-rail.sh-rail--aside:last-child > .sh-signin-more { order: 1; }
  .sh-rail--aside > #link-guide { order: 9; }
}
@media (min-width: 1280px) {

  .sh-grid > .sh-rail.sh-rail--aside:last-child > * { order: 9; }
  .sh-grid > .sh-rail.sh-rail--aside:last-child > .sh-banner--side { order: 0; }
  .sh-grid > .sh-rail.sh-rail--aside:last-child > .sh-rail-know { order: 1; }
  .sh-grid > .sh-rail.sh-rail--aside:last-child > #sh-sec-live { order: 2; }
  .sh-grid > .sh-rail.sh-rail--aside:last-child > #sh-sec-price { order: 3; }
  .sh-grid > .sh-rail.sh-rail--aside:last-child > #sh-sec-review { order: 4; }
  .sh-grid > .sh-rail.sh-rail--aside:last-child > :is([data-sh-rail-notice], #link-guide, #sh-sec-why, .sh-cta-block, #benefits) { order: 9; }
}

@media (prefers-reduced-motion: reduce) {
  .sh-btn,
  .sh-chip,
  .sh-segtab,
  .sh-plat,
  .sh-row,
  .sh-checkbox { transition-duration: 0ms !important; }
}

.sh-d4b-signup-benefit {
  padding: var(--sh-sp-3);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-sm);
  background: var(--sh-tint);
  color: var(--sh-ink-2);
  font-size: var(--sh-t-xs);
  line-height: 1.55;
}
.sh-d4b-skipped-card,
.sh-d4b-verify-banner,
.sh-d4b-first-topup {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: center;
  gap: var(--sh-sp-4);
  border-color: var(--sh-primary-soft);
  background: var(--sh-tint);
}
.sh-d4b-skipped-card {
  padding: var(--sh-sp-4);
  border: 1px solid var(--sh-primary-soft);
  border-radius: var(--sh-r-card);
}
.sh-d4b-signup-completion {
  display: grid;
  gap: var(--sh-sp-4);
  margin-bottom: var(--sh-sp-4);
  border-color: var(--sh-primary-soft);
  background: var(--sh-surface);
}
.sh-d4b-completion-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sh-sp-3);
}
.sh-d4b-completion-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sh-sp-3);
}
.sh-d4b-completion-benefit {
  display: grid;
  align-content: start;
  gap: var(--sh-sp-2);
  min-height: 112px;
  padding: var(--sh-sp-4);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-sm);
  background: var(--sh-canvas);
}
.sh-d4b-completion-benefit b { color: var(--sh-ink); font-size: var(--sh-t-sm); }
.sh-d4b-completion-benefit span { color: var(--sh-muted); font-size: var(--sh-t-xs); line-height: 1.55; }
.sh-d4b-welcome-notification { background: var(--sh-tint); }
.sh-d4b-progress-copy { margin: 0; color: var(--sh-primary); font-size: var(--sh-t-xs); font-weight: 700; }
.sh-d4b-dday { margin-left: var(--sh-sp-2); }
.sh-d2b-page--topup .pay-point i[data-sh-bonus-max] {
  display: inline-flex;
  color: var(--sh-primary);
  font-size: var(--sh-t-3xs);
  font-style: normal;
  font-weight: 700;
}
@media (max-width: 767px) {
  .sh-d4b-completion-grid { grid-template-columns: 1fr; }
  .sh-d4b-completion-benefit { min-height: 0; }
  .sh-d4b-skipped-card,
  .sh-d4b-verify-banner,
  .sh-d4b-first-topup { grid-template-columns: 1fr; }
  .sh-d4b-skipped-card .sh-btn,
  .sh-d4b-verify-banner .sh-btn,
  .sh-d4b-first-topup .sh-btn { width: 100%; }
}

:root {
  --sh-line-soft: var(--sh-line);
  --sh-line-hair: #F2F4F6;
  --sh-line-hair-2: var(--sh-line-hair);
  --sh-border: var(--sh-line);
}

.sh-segtabs,
.sh-account-tabs,
.sh-cats,
.sh-statustabs,
.sh-row-end:has(> .sh-seg-item) {
  min-height: 36px;
  padding: var(--sh-sp-1);
  border: 0;
  border-radius: var(--sh-r-sm);
  background: var(--sh-canvas);
}
.sh-segtab,
.sh-seg-item,
.sh-account-tab,
.sh-segtabs > .sh-segtab,
.sh-segtabs > .sh-segtab[aria-pressed],
.sh-row-end > .sh-seg-item,
.sh-card-head .sh-row-end > .sh-seg-item[data-sh-tab],
.sh-cats > .sh-cat,
.sh-picker-body .sh-cats > .sh-cat[role="tab"],
.sh-page--orders .sh-statustabs > a,
.sh-page--account .sh-account-tabs > .sh-account-tab[role="tab"] {
  box-sizing: border-box;
  position: relative;
  min-height: 36px;
  height: 36px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: transparent;
  color: var(--sh-muted);
  font-size: var(--sh-t-xs);
  font-weight: 700;
}
body .sh-page--orders .sh-statustabs > a.order-category {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  height: 36px;
  padding: 0 var(--sh-sp-3);
}
.sh-segtab::after,
.sh-seg-item::after,
.sh-account-tab::after,
.sh-cats > .sh-cat::after,
.sh-page--orders .sh-statustabs > a.order-category::after {
  content: "";
  position: absolute;
  inset: -4px 0;
}
.sh-segtab.active,
.sh-segtab[aria-selected="true"],
.sh-segtab[aria-pressed="true"],
.sh-seg-item.active,
.sh-seg-item[aria-selected="true"],
.sh-seg-item[aria-pressed="true"],
.sh-account-tab.active,
.sh-account-tab[aria-selected="true"],
.sh-cat.active,
.sh-cat[aria-selected="true"],
.sh-cat[aria-pressed="true"],
.sh-segtabs > .sh-segtab.active[aria-pressed],
.sh-card-head .sh-row-end > .sh-seg-item.active[data-sh-tab],
.sh-page--account .sh-account-tabs > .sh-account-tab.active[role="tab"],
.sh-picker-body .sh-cats > .sh-cat.active[role="tab"] {
  border: 0;
  background: var(--sh-surface);
  color: var(--sh-ink);
  box-shadow: var(--sh-sh-card);
}
.sh-page--orders .sh-statustabs > a.active,
.sh-page--orders .sh-statustabs > a[aria-current="true"] {
  border: 0;
  background: var(--sh-surface);
  color: var(--sh-ink);
  box-shadow: var(--sh-sh-card);
}

.sh-tabs,
.sh-order-subtabs {
  min-height: 44px;
  gap: var(--sh-sp-4);
  padding: 0;
  border: 0;
  border-bottom: 1px solid var(--sh-line-hair);
  border-radius: 0;
  background: transparent;
}
.sh-tab,
.sh-order-subtab {
  position: relative;
  min-height: 44px;
  height: 44px;
  padding: 0 var(--sh-sp-2);
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--sh-muted);
  font-size: var(--sh-t-body);
  font-weight: 700;
}
.sh-tab::after,
.sh-order-subtab::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  display: block;
  width: auto;
  height: 2px;
  border-radius: 0;
  background: transparent;
}
.sh-tab.active,
.sh-tab[aria-selected="true"],
.sh-order-subtab.active,
.sh-order-subtab[aria-selected="true"] {
  border: 0;
  background: transparent;
  color: var(--sh-primary);
  box-shadow: none;
}
.sh-tab.active::after,
.sh-tab[aria-selected="true"]::after,
.sh-order-subtab.active::after,
.sh-order-subtab[aria-selected="true"]::after { background: var(--sh-primary); }

.sh-banner-dots {
  gap: var(--sh-sp-2);
  background: transparent;
}
.sh-banner-dot { width: 24px; height: 24px; }
.sh-banner-dot::before {
  width: 8px;
  height: 8px;
  background: rgba(255, 255, 255, .7);
}
.sh-banner-dot.on::before { background: var(--sh-primary); }

.sh-signin-order-more > summary { display: none; }
.sh-signin-order-more-body { display: contents; }

@media (max-width: 767px) {
  body[data-route="signin"] .sh-fab-stack { display: none; }
  .sh-step-title > .sh-nowrap { display: inline; }
  .sh-signin-order-more {
    display: block;
    border: 1px solid var(--sh-line);
    border-radius: var(--sh-r-card);
    background: var(--sh-surface);
  }
  .sh-signin-order-more > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 52px;
    padding: 0 var(--sh-sp-4);
    color: var(--sh-ink);
    font-size: var(--sh-t-xs);
    font-weight: 700;
    cursor: pointer;
  }
  .sh-signin-order-more > summary::after { content: "+"; color: var(--sh-primary); font-size: var(--sh-t-h3); }
  .sh-signin-order-more[open] > summary::after { content: "−"; }
  .sh-signin-order-more:not([open]) > .sh-signin-order-more-body { display: none; }
  .sh-signin-order-more[open] > .sh-signin-order-more-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--sh-sp-3);
    min-width: 0;
    padding: 0 var(--sh-sp-3) var(--sh-sp-3);
  }
  .sh-signin-more:not([open]) > .sh-signin-more-body { display: none; }
  .sh-signin-more[open] > .sh-signin-more-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    min-width: 0;
  }
  .sh-signin-order-more-body > *,
  .sh-signin-more-body > * { min-width: 0; }
}

:root { --sh-gap-text: var(--sh-sp-2); }

.sh-main > :is(.sh-page, .sh-product-landing) {
  width: 100%;
  max-width: 1046px;
  margin-inline: 0 auto;
}

.sh-main > .sh-grid {
  width: 100%;
  max-width: 2200px;
  margin-inline: 0;
}
.sh-main > .sh-page--read > :not(#sh-eventband) { max-width: 760px; }
.sh-main > .sh-page--read > #sh-eventband { max-width: 760px; }

#sh-eventband {
  width: 100%;
  max-width: 100%;
  margin-bottom: var(--sh-sp-2);
}

.sh-sidebar .sh-navg-label { padding: 0 var(--sh-sp-3); line-height: 16px; }
.sh-sidebar .sh-navg-group + .sh-navg-group { margin-top: var(--sh-sp-2); }

.sh-d2b-order-stats {
  width: min(100%, 420px);
  background: var(--sh-canvas);
}
.sh-d2b-order-stats-grid > div { min-width: 180px; }
.sh-d2b-order-stats-grid b {
  display: inline-flex;
  align-items: baseline;
  gap: var(--sh-sp-1);
  font-size: var(--sh-t-page);
  font-weight: 700;
}
.sh-d2b-order-stats-grid b small { margin-left: 0; }
.sh-page--orders .sh-fact > span {
  display: block;
  color: var(--sh-muted);
  font-size: var(--sh-t-3xs);
  font-weight: 700;
}

.sh-catgrp { border-top: 1px solid var(--sh-line); }
.sh-catgrp:first-child { border-top: 0; }
.sh-catgrp + .sh-catgrp { border-top: 1px solid var(--sh-line); }
.sh-catgrp-h { list-style: none; cursor: pointer; }
.sh-catgrp-h::-webkit-details-marker { display: none; }
.sh-catgrp-h::after {
  content: "+";
  margin-left: var(--sh-sp-2);
  color: var(--sh-primary);
  font-size: var(--sh-t-h3);
}
.sh-catgrp[open] > .sh-catgrp-h::after { content: "−"; }
.sh-catalog-empty > span { display: block; }

.sh-chip { min-height: 36px; height: 36px; border-radius: var(--sh-r-pill); }
.sh-row-tag,
.sh-row-variant,
.sh-chip.sh-row-consult,
.sh-row-consult,
.sh-chip.sh-row-down,
.sh-row-down {
  min-height: 22px;
  border-radius: var(--sh-r-2xs);
  font-size: var(--sh-t-caption);
  font-weight: 700;
}
.sh-checkbox,
.sh-badge--new,
.sh-badge--dot,
.sh-chip-glyph,
.sh-skel,
.sh-cms code { border-radius: var(--sh-r-2xs); }

@media (max-width: 767px) {
  .sh-main > :is(.sh-page, .sh-grid, .sh-product-landing) { max-width: 100%; }
  .sh-product-landing > * { min-width: 0; }
  #sh-eventband { flex-wrap: wrap; min-width: 0; }
  #sh-eventband > .sh-grow { flex: 1 0 100%; }
  .sh-grid > .sh-rail--main .sh-h1,
  .sh-product-landing .sh-landing-problem h1 { transform: translateX(calc(-1 * var(--sh-sp-4) - 1px)); }
  .sh-burger i { border-radius: var(--sh-sp-1); }
}

.sh-num,
.sh-sidebar,
.sh-main,
.sh-drawer,
.sh-topbar,
.sh-strip,
.sh-tabbar,
.sh-orderbar,
.sh-mobar,
.sh-fab-stack,
.sh-modal,
.sh-toast {
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
}

@media (min-width: 1280px) {
  .sh-grid { grid-template-columns: minmax(0, 1fr) minmax(360px, 440px); }
}

.sh-eventband {
  display: flex;
  align-items: center;
  gap: var(--sh-sp-2);
  min-height: 44px;
  padding: 0 var(--sh-sp-1) 0 14px;

  border: 0;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-tint);
  color: var(--sh-primary-ink);
  font-size: var(--sh-t-sm);
  font-weight: 600;
  line-height: 1.4;
}
.sh-eventband[hidden] { display: none; }

.sh-eventband--pending > * { visibility: hidden; }

.sh-d2b-balance-card > .sh-user-wallet[data-sh-wallet-side][hidden] { display: flex !important; }
.sh-d2b-balance-card > .sh-user-wallet[data-sh-wallet-side] b:empty::before { content: "\00a0"; }
.sh-eventband-ico { flex: 0 0 auto; color: var(--sh-primary); }
.sh-eventband > .sh-grow { min-width: 0; }
.sh-eventband-cta { flex: 0 0 auto; white-space: nowrap; }

.sh-eventband .sh-eventband-cta { background: var(--sh-surface); color: var(--sh-primary); }
.sh-eventband .sh-eventband-cta:hover { background: var(--sh-surface); color: var(--sh-primary-hover); }
.sh-eventband-cta[hidden] { display: none; }

.sh-eventband-chip {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: var(--sh-sp-1);
  height: 32px;
  padding: 0 12px 0 10px;
  border-radius: var(--sh-r-sm);
  background:
    radial-gradient(circle at 0 50%, var(--sh-tint) 5px, transparent 5.5px),
    radial-gradient(circle at 100% 50%, var(--sh-tint) 5px, transparent 5.5px),
    var(--sh-surface);
  box-shadow: 0 0 0 1px var(--sh-primary-line);
  color: var(--sh-primary);
  line-height: 1;
  white-space: nowrap;
}
.sh-eventband-chip > b { font-size: var(--sh-t-card); font-weight: 700; letter-spacing: -0.02em; }
.sh-eventband-chip > small {
  padding-left: var(--sh-sp-1);
  border-left: 1px dashed var(--sh-primary-line);
  color: var(--sh-primary-ink);
  font-size: var(--sh-t-2xs);
  font-weight: 700;
}
.sh-eventband-chip[hidden] { display: none; }
.sh-eventband--chip { min-height: 48px; padding-left: 10px; }
.sh-eventband--chip .sh-eventband-ico { display: none; }
.sh-eventband-x {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: transparent;
  color: var(--sh-muted);
  cursor: pointer;
}
.sh-eventband-x:hover { background: var(--sh-tint); color: var(--sh-primary-ink); }
@media (max-width: 767px) {

  .sh-eventband {
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr) 44px;
    column-gap: var(--sh-sp-2);
    row-gap: 0;
    align-items: start;
    padding: 10px 0 2px 12px;
  }
  .sh-eventband-ico { grid-column: 1; grid-row: 1; margin-top: 3px; }
  .sh-eventband > .sh-grow { grid-column: 2; grid-row: 1; padding-top: 1px; }
  .sh-eventband-x { grid-column: 3; grid-row: 1; margin-top: -10px; }
  .sh-eventband-cta { grid-column: 2; grid-row: 2; justify-self: start; margin: 4px 0 8px; }
  .sh-eventband--chip { grid-template-columns: auto minmax(0, 1fr) 44px; padding-top: 10px; }
  .sh-eventband--chip .sh-eventband-chip { grid-column: 1; grid-row: 1; }
  .sh-eventband--chip > .sh-grow { padding-top: 7px; }
}

@media (min-width: 768px) {
  .sh-signin-more > summary {
    display: block;
    position: absolute;
    width: 1px;
    height: 1px;
    min-width: 0;
    min-height: 0;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    pointer-events: none;
    list-style: none;
  }
  .sh-signin-more > summary::-webkit-details-marker { display: none; }
  .sh-signin-more > summary::marker { content: ""; }
}

@media (min-width: 1280px) {

  .sh-grid { grid-template-columns: minmax(0, 1fr) minmax(360px, min(44%, 1112px)); }
}

.sh-brief-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sh-sp-3);
}
.sh-brief-main { flex: 1 1 auto; min-width: 0; }
.sh-brief-main .sh-svc-tags { margin-top: 6px; }
.sh-brief-head .sh-rate {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
}

#sh-brief .sh-brief-head .sh-rate-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  height: 32px;
  min-height: 32px;
  padding: 0 10px 0 9px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-pill);
  background: var(--sh-surface);
  color: var(--sh-ink);
  font-size: var(--sh-t-2xs);
  font-weight: 700;
  line-height: 1;
}
.sh-brief-head .sh-rate-btn:hover { border-color: var(--sh-primary-line); background: var(--sh-tint-soft); }
.sh-brief-head .sh-rate-btn b { color: var(--sh-ink); font-weight: 700; }
.sh-rate-star { color: var(--sh-star-ink); font-size: var(--sh-t-help); }
.sh-rate-sep { color: var(--sh-muted); font-weight: 400; }
.sh-brief-head .sh-fine { font-size: var(--sh-t-3xs); color: var(--sh-muted); }
#sh-brief .sh-brief-head .sh-rate-btn::before { content: ""; position: absolute; inset: -6px -4px; }
@media (max-width: 767px) {

  .sh-brief-head { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; column-gap: var(--sh-sp-2); }
  .sh-brief-main { display: contents; }
  .sh-brief-head #sh-svc-title { grid-column: 1; grid-row: 1; min-width: 0; max-width: 100%; word-break: keep-all; overflow-wrap: anywhere; }
  .sh-brief-main .sh-svc-tags { grid-column: 1 / -1; grid-row: 2; }
  .sh-brief-head .sh-rate { grid-column: 2; grid-row: 1; }
  .sh-brief-head .sh-fine { display: none; }
  .sh-order-page .sh-order-summary .sh-brief-head { grid-template-columns: minmax(0, 1fr); padding-right: 0; row-gap: var(--sh-sp-2); }
  .sh-order-page .sh-order-summary #sh-svc-title { grid-column: 1; grid-row: 1; padding-right: 0; }
  .sh-order-page .sh-order-summary .sh-rate { grid-column: 1; grid-row: 2; justify-self: start; align-items: flex-start; }
}

.sh-picker + .sh-onboarding,
.sh-brief + .sh-onboarding { margin-top: 24px; }
.sh-ticker {
  height: 40px;
  min-height: 40px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-card);
}

@media (min-width: 768px) {
  .sh-signin-more { display: block; }
  .sh-signin-more-body { display: flex; flex-direction: column; gap: 24px; }
  .sh-signin-more-body > * { margin-top: 0; margin-bottom: 0; }
  .sh-signin-more-body > .sh-anchornav { display: none; }
}

.sh-ticker-row {
  display: flex;
  align-items: center;
  gap: var(--sh-sp-2);
  min-width: 0;
  padding-right: 8px;
  border-radius: var(--sh-r-ctrl);
  background: linear-gradient(90deg, #241238, #3A1A66);
}
.sh-ticker-row.sh-only-desktop { display: flex; }
.sh-ticker-row > .sh-ticker { flex: 1 1 auto; min-width: 0; }
.sh-ticker {
  height: 44px;
  min-height: 44px;
  padding: 0 14px 0 10px;
  gap: 10px;
  border: 0;
  border-radius: var(--sh-r-ctrl);
  background: transparent;
}
.sh-ticker-flag {
  flex: 0 0 auto;
  height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .14);
  color: #E8DEFF;
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  letter-spacing: -0.01em;
}
.sh-ticker-msg { flex: 1 1 auto; }
.sh-ticker-roll { height: 24px; }
.sh-ticker-line {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 24px;
  font-size: var(--sh-t-sm);
  font-weight: 400;
  color: rgba(255, 255, 255, .72);
}
.sh-ticker-line > * { flex: 0 0 auto; }
.sh-ticker-line > .sh-ticker-txt { flex: 0 1 auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sh-ticker-ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: var(--sh-radius-chip);
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.sh-ticker-ico svg { width: 14px; height: 14px; }
.sh-ticker-ico--topup { background: var(--sh-tint); color: var(--sh-primary); }
.sh-ticker-ago { color: rgba(255, 255, 255, .72); font-weight: 600; font-variant-numeric: tabular-nums; }
.sh-ticker-txt b { font-weight: 700; color: #fff; }
.sh-live-pill {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  height: 28px;
  padding: 0 11px;
  border: 0;
  border-radius: var(--sh-r-pill);
  background: rgba(255, 255, 255, .12);
  color: #E8DEFF;
  font-size: var(--sh-t-xs);
  font-weight: 600;
  white-space: nowrap;
}
.sh-live-pill b { color: #fff; font-weight: 700; font-variant-numeric: tabular-nums; }

.sh-strip { min-height: 40px; gap: var(--sh-sp-2); }
.sh-strip .sh-ticker-msg { flex: 1 1 auto; min-width: 0; }
.sh-strip .sh-ticker-tail {
  flex: 0 0 auto;
  padding: 3px 9px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .12);
  color: #E8DEFF;
  font-size: var(--sh-t-3xs);
  font-weight: 600;
}
.sh-strip .sh-ticker-tail b { color: #fff; }
@media (max-width: 767px) {
  .sh-ticker-row.sh-only-desktop { display: none; }
  .sh-strip .sh-ticker-line { font-size: var(--sh-t-xs); }
}

.sh-ticker-ico { background: var(--sh-plat-mark-bg, var(--sh-tint)); color: var(--sh-plat-mark-fg, #fff); }
.sh-ticker-ico--topup { --sh-plat-mark-bg: var(--sh-tint); --sh-plat-mark-fg: var(--sh-primary); }
.sh-ticker-ico[data-brand="event"] { --sh-plat-mark-bg: linear-gradient(135deg, #FFD43B, #FFB326);--sh-plat-mark-fg: var(--sh-gold-ink); }
.sh-ticker-ico[data-brand="instagram"] { --sh-plat-mark-bg: linear-gradient(135deg, #7024C4, #C21975 55%, #F24141); }
.sh-ticker-ico[data-brand="youtube"] { --sh-plat-mark-bg: #FF0000; }
.sh-ticker-ico[data-brand="facebook"] { --sh-plat-mark-bg: #1877F2; }
.sh-ticker-ico[data-brand="tiktok"] { --sh-plat-mark-bg: #111111; }
.sh-ticker-ico[data-brand="x"] { --sh-plat-mark-bg: #111111; }
.sh-ticker-ico[data-brand="thread"] { --sh-plat-mark-bg: #111111; }
.sh-ticker-ico[data-brand="telegram"] { --sh-plat-mark-bg: #229ED9; }
.sh-ticker-ico[data-brand="kakao"] { --sh-plat-mark-bg: #FEE500;--sh-plat-mark-fg: #191919; }
.sh-ticker-ico[data-brand="nportal"] { --sh-plat-mark-bg: #03C75A; }
.sh-ticker-ico[data-brand="nplace"] { --sh-plat-mark-bg: #FFFFFF; }
.sh-ticker-ico[data-brand="ndist"] { --sh-plat-mark-bg: #FFFFFF; }
.sh-ticker-ico[data-brand="nshop"] { --sh-plat-mark-bg: #0E4139; }
.sh-ticker-ico[data-brand="coupang"] { --sh-plat-mark-bg: #FFFFFF; }
.sh-ticker-ico[data-brand="musinsa"] { --sh-plat-mark-bg: #000000; }
.sh-ticker-ico[data-brand="oliveyoung"] { --sh-plat-mark-bg: #82DC28; }
.sh-ticker-ico[data-brand="kurly"] { --sh-plat-mark-bg: #5F0080; }
.sh-ticker-ico[data-brand="baemin"] { --sh-plat-mark-bg: #0BEFD3; }
.sh-ticker-ico[data-brand="ohou"] { --sh-plat-mark-bg: #FFFFFF; }
.sh-ticker-ico[data-brand="traffic"] { --sh-plat-mark-bg: #5D00C8; }
.sh-ticker-ico[data-brand="seo"] { --sh-plat-mark-bg: #315CA8; }
.sh-ticker-ico[data-brand="appmarketing"] { --sh-plat-mark-bg: #43008F; }
.sh-ticker-ico[data-brand="etc"] { --sh-plat-mark-bg: var(--sh-brand-etc); }
@media (max-width: 1535px) {

  .sh-ticker-flag { display: none; }
}

@media (max-width: 767px) {
  :root {
    --sh-mob1-event-h: 72px;
    --sh-mob1-row-h: 56px;
    --sh-mob1-touch-h: 44px;
  }
  html {
    scroll-padding-bottom: calc(var(--sh-tabbar-safe) + 24px);
  }
  html:has(body.sh-has-orderbar) {
    scroll-padding-bottom: calc(var(--sh-tabbar-safe) + 108px);
  }
  .sh-main {
    padding-right: var(--sh-sp-4);
    padding-bottom: calc(var(--sh-tabbar-safe) + 24px);
    padding-left: var(--sh-sp-4);
  }
  .sh-has-orderbar .sh-main {
    padding-bottom: calc(var(--sh-tabbar-safe) + 108px);
  }

  .sh-strip {
    gap: 0;
    padding-inline: var(--sh-sp-4);
    background: linear-gradient(90deg, #241238, #3A1A66);
    color: rgba(255, 255, 255, .72);
    font-size: calc(var(--sh-t-3xs) - 1px);
  }
  .sh-strip .sh-ticker-msg,
  .sh-strip .sh-ticker-roll,
  .sh-strip .sh-ticker-line {
    width: 100%;
    max-width: none;
    letter-spacing: -0.03em;
    text-overflow: clip;
  }
  .sh-strip .sh-ticker-tail { display: none; }

  #sh-eventband.sh-eventband {
    grid-template-columns: auto minmax(0, 1fr) 32px;
    grid-template-rows: calc(var(--sh-mob1-event-h) - var(--sh-mob1-touch-h) - 4px) var(--sh-mob1-touch-h);
    min-height: 68px;
    max-height: var(--sh-mob1-event-h);
    gap: 0 var(--sh-sp-2);
    padding: 2px 0 2px var(--sh-sp-2);
    overflow: hidden;
  }
  #sh-eventband .sh-eventband-ico { display: none; }
  #sh-eventband .sh-eventband-chip {
    grid-column: 1;
    grid-row: 1;
    height: 24px;
  }
  #sh-eventband > .sh-grow {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    padding-top: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  #sh-eventband .sh-eventband-x {
    grid-column: 3;
    grid-row: 1;
    width: 32px;
    height: 32px;
    margin-top: 0;
  }
  #sh-eventband .sh-eventband-cta {
    grid-column: 1 / 3;
    grid-row: 2;
    justify-self: start;
    min-height: var(--sh-mob1-touch-h);
    height: var(--sh-mob1-touch-h);
    margin: 0;
    padding: 0 var(--sh-sp-3);
  }

  body[data-page="/neworder"] #order-form,
  body[data-route="signin"] .sh-rail--main > section.sh-card:first-of-type {
    padding-right: 0;
    padding-left: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  body[data-page="/neworder"] #order-form > *,
  body[data-route="signin"] .sh-rail--main > section.sh-card:first-of-type > * {
    min-width: 0;
  }
  .sh-grid > .sh-rail--main .sh-h1,
  .sh-product-landing .sh-landing-problem h1 {
    transform: none;
  }

  .sh-grid .sh-plats,
  .sh-grid .sh-plats--6 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: var(--sh-sp-2) var(--sh-sp-1);
  }
  .sh-grid .sh-plat-icon {
    width: 56px;
    height: 56px;
    border-radius: var(--sh-r-box);
  }
  .sh-grid .sh-plat-label { font-size: var(--sh-t-caption); }

  .sh-grid #sh-order-coach,
  .sh-grid .sh-picker + .sh-onboarding,
  .sh-grid .sh-brief + .sh-onboarding {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    min-height: var(--sh-mob1-row-h);
    height: var(--sh-mob1-row-h);
    margin-top: var(--sh-sp-3);
    margin-bottom: var(--sh-sp-3);
    padding: var(--sh-sp-2) var(--sh-sp-3);
    overflow: hidden;
  }
  .sh-grid #sh-order-coach > :first-child {
    grid-template-columns: 32px minmax(0, 1fr);
    column-gap: var(--sh-sp-2);
  }
  .sh-grid #sh-order-coach .sh-kicker {
    width: 32px;
    height: 32px;
  }
  .sh-grid #sh-order-coach h3,
  .sh-grid .sh-onboarding h3 {
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .sh-grid #sh-order-coach .sh-note,
  .sh-grid .sh-onboarding ul,
  .sh-grid #sh-order-coach .sh-btn--quiet { display: none; }
  .sh-grid #sh-order-coach .sh-onboarding-actions,
  .sh-grid .sh-onboarding-actions {
    display: flex;
    margin: 0;
  }
  .sh-grid #sh-order-coach .sh-btn,
  .sh-grid .sh-onboarding .sh-btn {
    min-height: 36px;
    height: 36px;
    padding: 0 var(--sh-sp-3);
  }

  .sh-grid .sh-picker .sh-cats {
    scroll-padding-right: 32px;
    scroll-snap-type: x mandatory;
  }
  .sh-grid .sh-picker .sh-cats > .sh-cat { scroll-snap-align: start; }
  .sh-grid .sh-picker .sh-rows {
    gap: var(--sh-sp-1);
    max-height: 244px;
  }
  .sh-grid .sh-picker button.sh-row:not(.sh-sr-only) {
    flex-wrap: nowrap;
    min-block-size: var(--sh-mob1-row-h);
    min-height: var(--sh-mob1-row-h);
    height: var(--sh-mob1-row-h);
    padding: 0 var(--sh-sp-3);
    gap: var(--sh-sp-2);
    overflow: hidden;
  }
  .sh-grid .sh-picker .sh-row > .sh-row-main {
    order: 1;
    flex: 1 1 0;
    min-width: 0;
  }
  .sh-grid .sh-picker .sh-row-name {
    min-width: 0;
    font-size: var(--sh-t-body);
    line-height: 1.35;
  }

  .sh-grid .sh-picker .sh-row-variant { display: inline-flex; }
  .sh-grid .sh-picker .sh-row-consult,
  .sh-grid .sh-picker .sh-row-down {
    order: 2;
    flex: 0 0 auto;
  }
  .sh-grid .sh-picker .sh-row-price {
    order: 3;
    flex: 0 0 auto;
    align-self: center;
    margin-left: auto;
    font-size: var(--sh-t-body);
  }
  .sh-grid .sh-picker .sh-row .sh-favbtn {
    order: 4;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    align-self: center;
  }
  .sh-grid .sh-picker > [data-sh-sheet-open="consultSheet"] {
    justify-content: flex-start;
    width: 100%;
    min-height: var(--sh-mob1-touch-h);
    height: var(--sh-mob1-touch-h);
    margin-top: 0;
    padding: 0 var(--sh-sp-3);
    border: 0;
    border-top: 1px solid var(--sh-line);
    border-radius: 0;
    background: var(--sh-surface);
    color: var(--sh-muted);
    font-size: var(--sh-t-help);
  }
  body[data-page="/neworder"] #order-form .sh-picker > [data-sh-sheet-open="consultSheet"] {
    min-height: var(--sh-mob1-touch-h);
    height: var(--sh-mob1-touch-h);
  }

  body[data-page="/neworder"] .sh-fab-stack { display: none; }

  .sh-auth-card--signup {
    width: 100%;
    max-width: none;
    padding: var(--sh-sp-4);
  }
  .sh-auth-card--signup .sh-signup-nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sh-auth-card--signup .sh-signup-nav .sh-btn--primary {
    grid-column: 1 / -1;
    width: 100%;
  }
  .sh-auth-card--signup .sh-signup-nav .sh-btn:not(.sh-btn--primary) {
    width: 100%;
  }

  :is(.sh-page--orders, .sh-page--topup, .sh-page--account) :is(.sh-table-wrap, .sh-stats, .sh-tiles) {
    max-width: 100%;
  }
  :is(.sh-page--orders, .sh-page--topup, .sh-page--account) .sh-table-wrap {
    overflow-x: clip;
  }
}

@media (max-width: 767px) {
  #sh-eventband .sh-eventband-chip > small { display: none; }
  #sh-eventband .sh-eventband-chip { padding: 0 8px; }
}

@media (max-width: 767px) {
  body:is([data-route="signin"], [data-page="/neworder"]) h1 + .sh-lead { display: none; }
  body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main > .sh-ticker-row + *,
  body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main > #sh-eventband + * { margin-top: 0; }
  body:is([data-route="signin"], [data-page="/neworder"]) h1 { font-size: var(--sh-t-page); }
}

@media (min-width: 768px) {

  .sh-grid .sh-picker-body .sh-cats > .sh-cat[role="tab"], .sh-grid .sh-picker .sh-cats > .sh-cat { font-size: var(--sh-t-body); font-weight: 600; }
  .sh-grid .sh-picker .sh-cats > .sh-cat:is([aria-selected="true"], .active, .is-active) { font-weight: 700; }
  .sh-grid .sh-picker .sh-row .sh-row-price { font-size: var(--sh-t-card); }
}

@media (min-width: 768px) {
  body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main .sh-card-head:has(.sh-h1) {
    align-items: flex-start;
    flex-wrap: nowrap;
    min-height: 0;
  }
  body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main .sh-card-head:has(.sh-h1) > div {
    flex: 1 1 auto;
    min-width: 0;
  }
  body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main .sh-card-head:has(.sh-h1) .sh-lead {
    max-width: none;
    margin-top: var(--sh-sp-1);
    overflow: hidden;
    color: var(--sh-muted);
    font-size: var(--sh-t-body);
    line-height: 1.4;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main .sh-card--stack:has(> .sh-card-head .sh-h1) {
    gap: var(--sh-sp-4);
  }
  body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main .sh-card--stack:has(> .sh-card-head .sh-h1) .sh-step {
    margin-bottom: var(--sh-sp-2);
  }
}

.sh-grid #sh-order-coach {
  box-sizing: border-box;
  grid-template-columns: minmax(0, 1fr) auto;
  min-height: 56px;
  height: 56px;
  margin-bottom: var(--sh-sp-2);
  padding: var(--sh-sp-2) var(--sh-sp-3);
  overflow: hidden;
}
.sh-grid #sh-order-coach > :first-child {
  grid-template-columns: 32px minmax(0, 1fr);
  column-gap: var(--sh-sp-2);
  min-width: 0;
}
.sh-grid #sh-order-coach .sh-kicker {
  width: 32px;
  height: 32px;
}
.sh-grid #sh-order-coach h3 {
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sh-grid #sh-order-coach .sh-note {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}
.sh-grid #sh-order-coach .sh-onboarding-actions {
  display: flex;
  flex-wrap: nowrap;
  gap: var(--sh-sp-1);
  margin: 0;
}
.sh-grid #sh-order-coach .sh-btn {
  min-height: 36px;
  height: 36px;
  padding: 0 var(--sh-sp-3);
}

@media (max-width: 767px) {
  body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main > .sh-banner {
    order: initial;
    width: 100%;
    aspect-ratio: 1.85 / 1;
    border-radius: var(--sh-r-card);
  }
  body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main .sh-card-head:has(.sh-h1) {
    align-items: center;
    flex-wrap: nowrap;
  }
  body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main .sh-card-head:has(.sh-h1) > div {
    flex: 1 1 auto;
    min-width: 0;
  }

  .sh-grid #sh-order-coach {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    margin-top: var(--sh-sp-2);
    margin-bottom: var(--sh-sp-2);
  }
  .sh-grid #sh-order-coach .sh-note {
    display: block;
  }
  .sh-grid #sh-order-coach .sh-btn--quiet {
    display: inline-flex;
  }
  .sh-grid #sh-order-coach .sh-btn {
    padding: 0 var(--sh-sp-2);
  }

  .sh-grid .sh-picker {
    border: 1px solid var(--sh-line);
    border-radius: var(--sh-r-card);
    overflow: hidden;
    background: var(--sh-surface);
  }
  .sh-grid .sh-picker-head {
    flex-wrap: nowrap;
    min-height: 56px;
    height: 56px;
    padding: var(--sh-sp-1) var(--sh-sp-2);
    border-bottom: 1px solid var(--sh-line);
  }
  .sh-grid .sh-picker-head > .sh-grow {
    flex: 1 1 auto;
    min-width: 0;
    max-width: none;
  }
  .sh-grid .sh-picker-body {
    position: relative;
    display: grid;
    grid-template-columns: 124px minmax(0, 1fr);
    grid-template-rows: 312px;
    min-height: 312px;
    height: 312px;
  }
  .sh-grid .sh-picker-body::after {
    display: none;
  }
  .sh-grid .sh-picker .sh-cats {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
    min-width: 0;
    height: 100%;
    max-height: none;
    padding: 0;
    overflow-x: hidden;
    overflow-y: auto;
    scroll-padding: 0;
    scroll-snap-type: none;
    border: 0;
    border-right: 1px solid var(--sh-line);
    border-radius: 0;
    background: var(--sh-canvas);
    scrollbar-width: thin;
    overscroll-behavior: contain;
  }
  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only) {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 52px;
    height: auto;
    padding: var(--sh-sp-2) var(--sh-sp-2) var(--sh-sp-2) 13px;
    border: 0;
    border-bottom: 1px solid var(--sh-line-hair);
    border-left: 3px solid transparent;
    border-radius: 0;
    background: transparent;
    color: var(--sh-ink-2);
    font-size: var(--sh-t-help);
    font-weight: 600;
    line-height: 1.35;
    text-align: left;
    white-space: normal;
  }
  .sh-grid .sh-picker .sh-cats button.sh-cat:last-child {
    border-bottom: 0;
  }
  .sh-grid .sh-picker .sh-cats button.sh-cat:is(.active, [aria-selected="true"]) {
    border-left-color: var(--sh-primary);
    background: var(--sh-tint);
    color: var(--sh-primary);
    font-weight: 700;
    box-shadow: none;
  }
  .sh-grid .sh-picker .sh-cat-name {
    display: -webkit-box;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    white-space: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }
  .sh-grid .sh-picker .sh-row:is(.active, .is-selected) .sh-row-name {
    font-weight: 600;
  }

  .sh-grid .sh-picker .sh-rows {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
    min-width: 0;
    height: 100%;
    min-height: 0;
    max-height: none;
    padding: 0;
    overflow-x: hidden;
    overflow-y: auto;
    border: 0;
    border-radius: 0;
    background: var(--sh-surface);
    overscroll-behavior: contain;
  }
  .sh-grid .sh-picker button.sh-row:not(.sh-sr-only) {
    flex: 0 0 auto;
    flex-wrap: nowrap;
    min-block-size: 80px;
    min-height: 80px;
    height: 80px;
    padding: var(--sh-sp-2) var(--sh-sp-1) var(--sh-sp-2) 10px;
    gap: var(--sh-sp-1);
    border: 0;
    border-bottom: 1px solid var(--sh-line-hair);
    border-radius: 0;
    overflow: hidden;
  }
  .sh-grid .sh-picker button.sh-row:last-child {
    border-bottom: 0;
  }
  .sh-grid .sh-picker button.sh-row:is(.active, .is-selected) {
    border: 0;
    border-bottom: 1px solid var(--sh-primary-line);
    background: var(--sh-tint-soft);
    box-shadow: inset 3px 0 0 var(--sh-primary);
  }
  .sh-grid .sh-picker .sh-row > .sh-row-main {
    order: 1;
    display: grid;
    flex: 1 1 auto;
    gap: var(--sh-sp-1);
    min-width: 0;
  }
  .sh-grid .sh-picker .sh-row-name {
    min-width: 0;
    color: var(--sh-ink);
    font-size: var(--sh-t-body);
    font-weight: 600;
    line-height: 1.3;
    white-space: normal;
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }
  .sh-grid .sh-picker .sh-row-meta,
  .sh-grid .sh-picker .sh-row-rating {
    min-height: 16px;
    color: var(--sh-muted);
    font-size: var(--sh-t-caption);
    font-weight: 400;
    line-height: 1.3;
  }
  .sh-grid .sh-picker .sh-row-meta > :is(.sh-row-tag, .sh-row-variant, .sh-row-refill),
  .sh-grid .sh-picker .sh-row > .sh-row-attr {
    display: none;
  }
  .sh-grid .sh-picker .sh-row-price {
    order: 2;
    flex: 0 0 auto;
    align-self: center;
    margin-left: auto;
    color: var(--sh-ink);
    font-size: var(--sh-t-body);
    font-weight: 700;
  }
  .sh-grid .sh-picker .sh-row .sh-favbtn {
    order: 3;
    display: inline-flex;
    flex: 0 0 44px;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin: 0;
    align-self: center;
  }
  .sh-grid .sh-picker .sh-row .sh-favbtn .sh-star-icon {
    width: 24px;
    height: 24px;
  }
  .sh-grid .sh-picker-body > .sh-row-empty {
    z-index: 1;
    grid-column: 2;
    grid-row: 1;
    display: grid;
    place-items: center;
    min-width: 0;
    height: 100%;
    padding: var(--sh-sp-4);
    background: var(--sh-surface);
  }
  .sh-grid .sh-picker-body > .sh-row-empty[hidden] {
    display: none;
  }
}

@media (max-width: 767px) {

  .sh-main .sh-grid .sh-plats, .sh-main .sh-plats {
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: none;
    grid-template-rows: repeat(2, auto);
    grid-auto-columns: 68px;
    gap: 12px 10px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    scroll-padding-left: 16px;
    padding: 6px 16px 10px;
    margin: 0 -16px;
    scrollbar-width: none;
    -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent);
            mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent);
  }
  .sh-plats::-webkit-scrollbar { display: none; }
  .sh-plats .sh-plat { scroll-snap-align: start; width: 68px; }
  .sh-plats .sh-plat-icon { width: 64px; height: 64px; border-radius: var(--sh-r-card); }
  .sh-plats .sh-plat-icon svg { width: 30px; height: 30px; }
  .sh-plats .sh-plat-label { font-size: var(--sh-t-help); }
}
@media (min-width: 768px) {

  .sh-grid .sh-picker-body .sh-cats > .sh-cat[role="tab"], .sh-grid .sh-picker .sh-cats > .sh-cat {
    height: auto;
    min-height: 40px;
    padding: 9px 14px;
    line-height: 1.3;
    overflow: visible;
    white-space: normal;
    text-align: left;
  }
}

@media (max-width: 767px) {
  #sh-eventband.sh-eventband {
    grid-template-columns: auto minmax(0, 1fr) 32px 32px;
    grid-template-rows: 40px;
    min-height: 44px;
    max-height: none;
    align-items: center;
    padding: 2px 4px 2px 8px;
    gap: 0 6px;
  }
  #sh-eventband .sh-eventband-chip { grid-column: 1; grid-row: 1; height: 26px; }
  #sh-eventband > .sh-grow { grid-column: 2; grid-row: 1; padding: 0; font-size: var(--sh-t-help); }
  #sh-eventband .sh-eventband-cta {
    grid-column: 3;
    grid-row: 1;
    width: 32px;
    min-width: 32px;
    height: 32px;
    min-height: 32px;
    margin: 0;
    padding: 0;
    font-size: 0;
    border-radius: var(--sh-r-sm);
  }
  #sh-eventband .sh-eventband-cta::after { content: "→"; font-size: var(--sh-t-body); font-weight: 700; }
  #sh-eventband .sh-eventband-x { grid-column: 4; grid-row: 1; width: 32px; height: 32px; margin: 0; }
}
@media (max-width: 767px) {
  #sh-eventband .sh-eventband-cta { display: inline-flex; align-items: center; justify-content: center; line-height: 1; }
  #sh-eventband .sh-eventband-cta::after { line-height: 1; margin: 0; }
}

@media (max-width: 767px) {
  .sh-topbar .sh-burger { display: none; }
  .sh-topbar .sh-topbar-brand { margin-right: auto; margin-left: 0; padding-left: 0; }
  .sh-topbar { padding-left: 16px; }
}

.sh-kv,
.sh-list-row {
  display: flex;
  align-items: center;
  min-height: 52px;
  gap: var(--sh-sp-3);
  border-bottom: 1px solid var(--sh-line-hair);
}
.sh-kv:last-child,
.sh-list-row:last-child { border-bottom: 0; }
.sh-kv > :first-child { color: var(--sh-muted); font-size: var(--sh-t-xs); font-weight: 700; }
.sh-kv > :last-child { margin-left: auto; color: var(--sh-ink); font-variant-numeric: tabular-nums; text-align: right; }
.sh-section-head { display: grid; gap: var(--sh-sp-2); margin-bottom: var(--sh-sp-4); }
.sh-step-eyebrow {
  color: var(--sh-muted);
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.sh-benefit-card,
.sh-consent-card,
.sh-step-card,
.sh-description-card,
.sh-ticket-card {
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
  background: var(--sh-surface);
}
.sh-benefit-card { overflow: hidden; }
.sh-benefit-row {
  display: flex;
  align-items: center;
  min-height: 52px;
  gap: var(--sh-sp-3);
  padding: var(--sh-sp-3) var(--sh-sp-4);
  border-bottom: 1px solid var(--sh-line-hair);
  color: var(--sh-ink-2);
  font-size: var(--sh-t-sm);
  font-weight: 700;
}
.sh-benefit-row:last-child { border-bottom: 0; }
.sh-benefit-icon,
.sh-setting-icon {
  display: inline-grid;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: var(--sh-r-xs);
  background: var(--sh-tint);
  color: var(--sh-primary);
}
.sh-benefit-icon--gold { border: 1px solid var(--sh-gold-line); background: var(--sh-gold-bg); color: var(--sh-gold-text); }
.sh-benefit-icon .sh-icon,
.sh-setting-icon .sh-icon { width: 18px; height: 18px; }
.sh-consent-card { overflow: hidden; }
.sh-consent-row { min-height: 52px; padding: var(--sh-sp-3) var(--sh-sp-4); }
.sh-consent-check { display: flex; align-items: center; gap: var(--sh-sp-3); min-height: 44px; cursor: pointer; }
.sh-consent-view { min-height: 44px; margin: -8px -8px -8px auto; padding: 0 8px; color: var(--sh-primary); font-size: var(--sh-t-xs); font-weight: 700; line-height: 44px; white-space: nowrap; }
.sh-benefit-chip-row,
.sh-info-row {
  display: flex;
  align-items: center;
  gap: var(--sh-sp-3);
  min-height: 44px;
  margin: 0;
  padding: var(--sh-sp-3) var(--sh-sp-4);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-sm);
  background: var(--sh-tint-soft);
  color: var(--sh-ink-2);
  font-size: var(--sh-t-xs);
  line-height: 1.5;
}
.sh-benefit-chip-row { border-color: var(--sh-gold-line); background: var(--sh-gold-bg); color: var(--sh-gold-text); font-weight: 700; }
.sh-info-row.sh-mt-8 { margin-top: var(--sh-sp-2); }
.sh-auth-foot--lined { justify-content: center; margin-top: var(--sh-sp-5); border-top: 1px solid var(--sh-line); }
.sh-auth-card > .sh-info-row { display: block; margin-top: var(--sh-sp-4); text-align: center; }
.sh-auth-card .sh-step-card {
  display: grid;
  gap: var(--sh-sp-4);
  margin-top: var(--sh-sp-4);
  padding: var(--sh-sp-4);
  background: var(--sh-surface-mute);
}
.sh-auth-card .sh-step-card > .sh-field,
.sh-auth-card .sh-step-card > .sh-field + .sh-field { margin: 0; }
.sh-setting-list { display: grid; gap: var(--sh-sp-3); }
.sh-setting-row {
  display: grid;
  grid-template-columns: minmax(180px, .8fr) minmax(260px, 1.2fr);
  gap: var(--sh-sp-4);
  padding: var(--sh-sp-4);
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-box);
  background: var(--sh-surface);
}
.sh-setting-row.is-disabled { background: var(--sh-surface-alt); }
.sh-setting-head { display: flex; align-items: flex-start; gap: var(--sh-sp-3); }
.sh-setting-desc { margin: var(--sh-sp-1) 0 0; color: var(--sh-muted); font-size: var(--sh-t-xs); }
.sh-setting-options { overflow: hidden; border: 1px solid var(--sh-line-hair); border-radius: var(--sh-r-sm); background: var(--sh-surface); }
.sh-setting-option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 48px;
  gap: var(--sh-sp-3);
  padding: 0 var(--sh-sp-3);
  border-bottom: 1px solid var(--sh-line-hair);
  color: var(--sh-ink-2);
  font-size: var(--sh-t-sm);
  font-weight: 700;
}
.sh-setting-option:last-child { border-bottom: 0; }
.sh-setting-option .sh-check { flex: 0 0 auto; }
.sh-ticket-card { position: relative; padding: var(--sh-sp-4); background: var(--sh-tint-soft); }
.sh-ticket-card::before,
.sh-ticket-card::after {
  position: absolute;
  top: 50%;
  width: 10px;
  height: 20px;
  border: 1px solid var(--sh-line);
  background: var(--sh-surface);
  content: "";
  transform: translateY(-50%);
}
.sh-ticket-card::before { left: -1px; border-left: 0; border-radius: 0 10px 10px 0; }
.sh-ticket-card::after { right: -1px; border-right: 0; border-radius: 10px 0 0 10px; }
.sh-description-card { margin: 0; padding: var(--sh-sp-3) var(--sh-sp-4); color: var(--sh-ink-2); line-height: 1.6; }
.sh-landing-summary .sh-landing-service-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; overflow: hidden; border: 1px solid var(--sh-line); border-radius: var(--sh-r-box); background: var(--sh-line-hair); }
.sh-landing-summary .sh-landing-service-list > li { min-width: 0; border: 0; background: var(--sh-surface); }
.sh-landing-summary > .sh-info-row { margin-top: var(--sh-sp-3); }
.sh-product-landing .sh-landing-steps > .sh-list-row { align-items: flex-start; min-height: 72px; }
.sh-legal-toc ol { display: flex; flex-wrap: wrap; gap: var(--sh-sp-2); }
.sh-legal-toc li { border: 1px solid var(--sh-line); border-radius: var(--sh-r-pill); background: var(--sh-surface); }
.sh-legal-card #inner_content > h3 { margin-top: var(--sh-sp-5); padding-top: var(--sh-sp-5); border-top: 1px solid var(--sh-line); }
.sh-legal-card #inner_content > h3:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.sh-acc-q { min-height: 52px; }
.sh-content-row time { display: inline-flex; align-items: center; min-height: 26px; padding: 3px 8px; border-radius: var(--sh-r-2xs); background: var(--sh-surface-alt); color: var(--sh-muted); font-variant-numeric: tabular-nums; }
.sh-d2b-ticket-row,
.sh-order,
.sh-paylog-item { border-bottom: 1px solid var(--sh-line-hair); }
.sh-msg-body { border: 1px solid var(--sh-line); }
.sh-msg--me .sh-msg-body { border-color: var(--sh-tint-line); background: var(--sh-tint); }
.sh-d2b-thread .sh-msg-files { min-width: 0; }
.sh-d2b-thread .sh-d2b-attachment-chip { min-height: 44px; padding-block: var(--sh-sp-2); overflow-wrap: anywhere; line-height: 1.35; white-space: normal; }
.sh-row-rate,
.sh-td-num,
.sh-paylog-amount,
.sh-order-no { font-variant-numeric: tabular-nums; }

@media (max-width: 767px) {
  .sh-benefit-row { align-items: flex-start; }
  .sh-consent-row { align-items: flex-start; }
  .sh-landing-summary .sh-landing-service-list { grid-template-columns: 1fr; }
  .sh-product-landing .sh-landing-steps > .sh-list-row { min-height: 64px; }
  #sh-eventband .sh-eventband-cta { position: relative; }
  #sh-eventband .sh-eventband-cta::before { position: absolute; inset: -6px; content: ""; }
}
@media (max-width: 900px) {
  .sh-setting-row { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
  #sh-eventband.sh-eventband { grid-template-columns: auto minmax(0, 1fr) auto 32px; }
  #sh-eventband .sh-eventband-cta { width: auto; min-width: 44px; padding: 0 10px; font-size: var(--sh-t-caption); font-weight: 700; }
  #sh-eventband .sh-eventband-cta::after { content: none; }
  .sh-strip .sh-ticker-tail { display: inline-flex; }
  .sh-signin-more > summary { display: none; }
  .sh-signin-more { border: 0; background: transparent; }
  .sh-signin-more-body { padding: 0; }
}

.sh-sidebar .sh-navg-label, .sh-drawer .sh-navg-label {
  padding: 0 var(--sh-sp-3);
  margin: 0 0 6px;
  font-size: var(--sh-t-caption);
  font-weight: 700;
  line-height: 18px;
  letter-spacing: 0;
  color: var(--sh-muted);
}
.sh-sidebar .sh-navg-group + .sh-navg-group, .sh-drawer .sh-navg-group + .sh-navg-group {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--sh-line);
}

.sh-rail--aside .sh-card.sh-card--tight,
.sh-rail--aside .sh-signin-more-body > .sh-card.sh-card--tight { padding: 24px; }
.sh-rail--aside .sh-card.sh-card--tight > .sh-card-head,
.sh-rail--aside .sh-card.sh-card--tight > h2:first-child { margin-bottom: 16px; }
@media (max-width: 767px) {
  .sh-rail--aside .sh-card.sh-card--tight,
  .sh-rail--aside .sh-signin-more-body > .sh-card.sh-card--tight { padding: 20px; }
}

.sh-banner {
  background: var(--sh-tint);
  border: 1px solid var(--sh-primary-line);
  box-shadow: 0 8px 24px rgba(93, 0, 200, .08);
}
.sh-banner > .sh-banner-dots { z-index: 2; }

.sh-plat-label { font-size: var(--sh-t-help); font-weight: 600; }
.sh-plat.active .sh-plat-label { font-weight: 700; }

.sh-banner .sh-banner-link:active { transform: none; }

.sh-main > .sh-page { max-width: 1120px; }
.sh-main > .sh-page--read { margin-inline: auto; }

.sh-notice-sheet-body {
  white-space: pre-line;
  font-size: var(--sh-t-sm);
  line-height: 1.7;
  color: var(--sh-ink-2);
  overflow-wrap: anywhere;
}

.sh-auth-page .sh-auth-shell {
  display: block;
  min-height: 100vh;
  min-height: 100dvh;
  background: var(--sh-surface);
}
.sh-auth-page .sh-auth-panel { display: none; }
.sh-auth-page .sh-auth-main {
  min-height: 100vh;
  min-height: 100dvh;
  padding: 48px 24px;
  overflow: visible;
}
.sh-auth-card--auth1 {
  max-width: 460px;
  padding: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.sh-auth-card--auth1 .sh-auth-icon { display: none; }
.sh-auth-card--auth1 .sh-auth-card-head { margin-bottom: 28px; }
.sh-auth-card--auth1 .sh-auth-card-head .sh-h1 {
  font-size: var(--sh-t-display-2);
  line-height: 1.28;
  letter-spacing: -.55px;
}
.sh-auth-card--auth1 .sh-auth-card-head .sh-lead { color: var(--sh-muted); }
.sh-auth-card--auth1 :is(.sh-info-row, .sh-auth-fine) {
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--sh-muted-2);
  font-size: var(--sh-t-xs);
  line-height: 1.55;
}
.sh-auth-card--auth1 .sh-auth-fine { margin-top: 14px; }
.sh-auth-card--auth1 .sh-step-card,
.sh-auth-card--auth1 .sh-signup-verify,
.sh-auth-card--auth1 .sh-d4b-skipped-card {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.sh-auth-card--auth1 .sh-benefit-card {
  display: grid;
  gap: 10px;
  padding: 0;
  border: 0;
  background: transparent;
}
.sh-auth-card--auth1 .sh-benefit-row { font-size: var(--sh-t-xs); color: var(--sh-ink-2); }
.sh-auth-card--auth1 .sh-benefit-icon { width: 28px; height: 28px; border-radius: var(--sh-r-xs); }
.sh-auth-card--auth1 .sh-signup-steps { margin-bottom: 14px; }
.sh-auth-card--auth1 .sh-step-eyebrow { margin-bottom: 20px; color: var(--sh-muted); }
.sh-auth-card--auth1 .sh-signup-stage > .sh-h3 { font-size: var(--sh-t-h2); }
.sh-auth-card--auth1 .sh-auth-foot { margin-top: 20px; }

@media (min-width: 1280px) {
  .sh-auth-page .sh-auth-shell {
    display: grid;
    grid-template-columns: 520px minmax(0, 1fr);
    height: 100vh;
    height: 100dvh;
    overflow: hidden;
  }
  .sh-auth-page .sh-auth-panel {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: 28px;
    min-width: 0;
    padding: 36px 30px 28px;
    color: var(--sh-ink);
    background: linear-gradient(145deg, #ECE4FB 0%, #E3D8F8 100%);
    border-right: 0;
    overflow: hidden;
  }
  .sh-auth-page .sh-auth-panel > :not(.sh-auth-dots) { position: relative; z-index: 1; }
  .sh-auth-page .sh-auth-brand { color: var(--sh-ink); font-size: var(--sh-t-h2); }
  .sh-auth-page .sh-auth-brand:hover { color: var(--sh-ink); }
  .sh-auth-page .sh-auth-visual {
    display: block;
    width: min(100%, 460px);
    max-width: 460px;
    min-height: 0;
    aspect-ratio: 1.2 / 1;
    align-self: center;
    justify-self: center;
    border: 0;
    border-radius: 0;
    background-color: transparent;
    background-image: none;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }
  .sh-auth-page .sh-auth-panel-content {
    align-self: start;
    max-width: 430px;
  }
  .sh-auth-page .sh-auth-kicker { margin-bottom: 8px; color: var(--sh-primary); }
  .sh-auth-page .sh-auth-h { font-size: var(--sh-t-display-2); line-height: 1.3; }
  .sh-auth-page .sh-auth-p { margin-top: 10px; font-size: var(--sh-t-body); color: var(--sh-ink-2); }
  .sh-auth-page .sh-auth-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 20px;
    font-size: var(--sh-t-4xs);
    font-weight: 700;
    line-height: 1.45;
    color: var(--sh-ink-2);
  }
  .sh-auth-page .sh-auth-list li { display: block; padding-top: 8px; border-top: 1px solid rgba(67, 0, 143, .14); }
  .sh-auth-page .sh-auth-list li::before { display: none; }
  .sh-auth-page .sh-auth-rating { display: none; }
  .sh-auth-page .sh-auth-panel-foot {
    padding-top: 14px;
    border-top-color: rgba(67, 0, 143, .14);
    color: var(--sh-muted);
  }
  .sh-auth-page .sh-auth-main { padding: 48px; overflow: auto; }
  .sh-auth-card--auth1 { padding: 0; }
}

@media (max-width: 1279px) {
  .sh-auth-page .sh-auth-panel { display: none; }
}

@media (max-width: 390px) {
  .sh-auth-page .sh-auth-main { padding: 24px 16px 32px; align-items: flex-start; }
  .sh-auth-card--auth1 { width: 100%; max-width: none; }
  .sh-auth-card--auth1 .sh-input,
  .sh-auth-card--auth1 .sh-select,
  .sh-auth-card--auth1 .sh-btn { min-height: 44px; }
}

@media (min-width: 768px) {
  .sh-grid .sh-picker .sh-picker-body { column-gap: 16px; }
  .sh-grid .sh-picker .sh-cats { border-right: 1px solid var(--sh-line); padding-right: 8px; }
}

.sh-d2b-order-stats-grid > div > span {
  display: block;
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
}
.sh-d2b-order-stats-grid b .sh-num {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
}

.sh-main > :is(.sh-page, .sh-product-landing) { max-width: 1120px; }
.sh-main > .sh-page--read {
  width: 100%;
  max-width: 760px;
  margin-inline: auto;
}
.sh-main > .sh-page--read > :not(#sh-eventband),
.sh-main > .sh-page--read > #sh-eventband { max-width: 100%; }
@media (min-width: 1024px) {
  .sh-main > .sh-page--read { transform: translateX(-125px); }
}

body:not(.sh-auth-page) .sh-main :is(.sh-page, .sh-grid) .sh-h1 {
  font-size: var(--sh-t-display-1);
  letter-spacing: -.4px;
}

[data-sh-submit-order][data-sh-order-cta="incomplete"] {
  background: var(--sh-canvas);
  color: var(--sh-muted);
  cursor: not-allowed;
}
.sh-orderbar .sh-btn[data-sh-order-cta="incomplete"],
.sh-mobar .sh-btn[data-sh-order-cta="incomplete"] {
  background: var(--sh-tint);
  color: var(--sh-primary);
  cursor: pointer;
}
.sh-orderbar .sh-btn,
.sh-mobar .sh-btn { min-height: 48px; height: 48px; border-radius: var(--sh-r-ctrl); font-size: var(--sh-t-body); font-weight: 700; }

.sh-mobile-jumps { display: none; }

.sh-grid .sh-picker .sh-cats > .sh-cat {
  min-height: 56px;
  height: auto;
  align-items: flex-start;
  overflow: visible;
}

@media (min-width: 1280px) {
  .sh-auth-page .sh-auth-shell {
    grid-template-columns: minmax(360px, 34%) minmax(0, 1fr);
    width: 100%;
    max-width: 2200px;
    margin-inline: auto;
  }
  .sh-auth-page .sh-auth-main {
    transform: translateX(calc(-1 * min(17vw, 374px)));
  }
  .sh-auth-card--auth1 .sh-auth-card-head .sh-h1 {
    font-size: var(--sh-t-display-1);
    letter-spacing: -.4px;
  }
}

@media (min-width: 1024px) {
  #noticeSheet.open { justify-content: flex-end; background: rgba(23, 22, 28, .24); }
  #noticeSheet .sh-sheet-inner {
    width: min(100%, 480px);
    max-width: 480px;
    min-height: 100%;
    margin-left: auto;
    background: var(--sh-canvas);
    box-shadow: -16px 0 40px rgba(23, 20, 31, .16);
  }
}

.sh-sidebar .sh-navg-group + .sh-navg-group,
.sh-drawer .sh-navg-group + .sh-navg-group { border-top-color: var(--sh-line-hair); }

.sh-page--account .sh-account-tabs { justify-content: flex-start; }
.sh-page--account .sh-account-tabs > .sh-account-tab { flex: 0 0 auto; }

@media (max-width: 767px) {
  body:not(.sh-auth-page) .sh-main :is(.sh-page, .sh-grid) .sh-h1 {
    font-size: var(--sh-t-page);
    letter-spacing: -.4px;
  }
  .sh-mobile-jumps {
    position: sticky;
    top: 0;
    z-index: 8;
    display: flex;
    gap: var(--sh-sp-2);
    overflow-x: auto;
    margin: 0 calc(-1 * var(--sh-sp-1)) var(--sh-sp-4);
    padding: var(--sh-sp-2) var(--sh-sp-1);
    border-bottom: 1px solid var(--sh-line);
    background: color-mix(in srgb, var(--sh-surface) 94%, transparent);
    backdrop-filter: blur(10px);
  }
  .sh-mobile-jumps > a {
    flex: 0 0 auto;
    min-height: 36px;
    padding: 8px 12px;
    border-radius: var(--sh-r-sm);
    background: var(--sh-canvas);
    color: var(--sh-ink-2);
    font-size: var(--sh-t-caption);
    font-weight: 700;
  }
  .sh-auth-card--auth1 .sh-auth-card-head .sh-h1 { font-size: var(--sh-t-page); letter-spacing: -.4px; }
  .sh-auth-card--signup .sh-benefit-row { margin-block: 16px; }
}

.sh-order-card .sh-card-head {
  align-items: baseline;
  flex-wrap: nowrap;
}
.sh-order-card .sh-card-head .sh-h1 {
  font-size: var(--sh-t-page);
  font-weight: 700;
  letter-spacing: -.02em;
}
.sh-order-card .sh-card-head .sh-lead {
  color: var(--sh-subtle);
  font-size: var(--sh-t-body);
}
.sh-order-card .sh-guide-link {
  flex: 0 0 auto;
  color: var(--sh-primary);
  font-size: var(--sh-t-help);
  font-weight: 700;
}
.sh-order-card .sh-step { gap: 8px; margin-bottom: 14px; }
.sh-order-card .sh-step-no {
  width: 22px;
  height: 22px;
  border: 0;
  background: var(--sh-ink);
  color: var(--sh-surface);
  font-size: var(--sh-t-caption);
  font-weight: 700;
}
.sh-order-card .sh-step-title { font-size: var(--sh-t-card); font-weight: 700; }
.sh-order-card > .sh-order-divider {
  align-self: stretch;
  flex: 0 0 10px;
  height: 10px;
  margin: -4px calc(-1 * var(--sh-sp-5));
  background: var(--sh-canvas);
}
.sh-order-card .sh-picker {
  border: 0;
  border-radius: 0;
  overflow: visible;
}
.sh-order-card .sh-picker-head {
  padding: 0 0 12px;
  border-bottom: 0;
}
.sh-order-card .sh-picker-body {
  grid-template-columns: 196px minmax(0, 1fr);
  gap: 16px;
  min-height: 160px;
}
.sh-order-card .sh-cats {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 8px;
  border: 0;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-surface-alt);
}
.sh-order-card .sh-cats > .sh-cat,
.sh-order-card .sh-picker-body .sh-cats > .sh-cat[role="tab"] {
  display: block;
  min-height: 0;
  height: auto;
  padding: 11px 12px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: transparent;
  color: var(--sh-muted-2);
  font-size: var(--sh-t-body);
  font-weight: 600;
  line-height: 1.35;
}
.sh-order-card .sh-cats > .sh-cat.active,
.sh-order-card .sh-cats > .sh-cat[aria-selected="true"] {
  background: var(--sh-surface);
  color: var(--sh-ink);
  font-weight: 700;
  box-shadow: 0 1px 4px rgba(2, 9, 27, .08);
}
.sh-grid .sh-order-card .sh-picker .sh-cats > button.sh-cat:is(.active, [aria-selected="true"]) {
  border-left-color: transparent;
  border-bottom-color: transparent;
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
  color: var(--sh-ink);
  font-size: var(--sh-t-body);
  font-weight: 700;
  box-shadow: 0 1px 4px rgba(2, 9, 27, .08);
}
.sh-order-card .sh-rows {
  padding: 2px;
  border: 0;
  border-radius: 0;
  background: var(--sh-surface);
}
.sh-order-card .sh-row,
.sh-grid .sh-order-card .sh-picker button.sh-row {
  min-height: 62px;
  height: auto;
  margin: 0;
  padding: 14px 14px;
  gap: 12px;
  border: 0;
  border-bottom: 1px solid var(--sh-line-row);
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-surface);
  color: var(--sh-ink);
}
.sh-order-card .sh-row:last-child { border-bottom-color: transparent; }
.sh-order-card .sh-row-main {
  order: 1;
  flex: 1 1 0;
  min-width: 0;
}
.sh-order-card .sh-row-name {
  display: -webkit-box;
  overflow: hidden;
  color: var(--sh-ink);
  font-size: var(--sh-t-body);
  font-weight: 700;
  line-height: 1.4;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
.sh-order-card .sh-row-price {
  order: 3;
  flex: 0 0 auto;
  color: var(--sh-ink);
  font-size: var(--sh-t-card);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.sh-order-card .sh-row-consult,
.sh-order-card .sh-row-down {
  order: 2;
  flex: 0 0 auto;
  min-height: 0;
  padding: 2px 7px;
  border: 0;
  border-radius: var(--sh-radius-chip);
  background: var(--sh-decision-bg);
  color: var(--sh-decision-ink);
  font-size: var(--sh-t-caption);
  font-weight: 700;
  line-height: 1.45;
  white-space: nowrap;
}
.sh-grid .sh-order-card .sh-picker .sh-row .sh-row-consult,
.sh-grid .sh-order-card .sh-picker .sh-row .sh-row-down {
  min-width: 0;
  min-height: 0;
  height: auto;
}

.sh-order-card .sh-row-main > .sh-chip.sh-row-consult,
.sh-order-card .sh-row-main > .sh-chip.sh-row-down {
  display: inline-flex;
  flex: none;

  width: fit-content;
  max-width: max-content;
  min-width: 0;
  white-space: nowrap;
  margin-left: 8px;
  vertical-align: 2px;
}
.sh-order-card .sh-row-down { background: var(--sh-danger-bg); color: var(--sh-danger); }
.sh-order-card .sh-row .sh-favbtn {
  order: 4;
  flex: 0 0 auto;
  color: var(--sh-border-strong);
  font-size: var(--sh-t-card);
}
.sh-order-card .sh-row.active,
.sh-order-card .sh-row.is-selected,
.sh-grid .sh-order-card .sh-picker button.sh-row.active,
.sh-grid .sh-order-card .sh-picker button.sh-row.is-selected {
  border: 0;
  background: var(--sh-selection-surface);
  box-shadow: inset 0 0 0 2px var(--sh-primary);
}
.sh-order-card .sh-row.active .sh-row-price,
.sh-order-card .sh-row.is-selected .sh-row-price { color: var(--sh-ink); }
.sh-order-card .sh-row-tags,
.sh-order-card .sh-row-rating,
.sh-order-card .sh-row-tag,
.sh-order-card .sh-row-variant,
.sh-order-card .sh-row-refill,
.sh-order-card .sh-row-attr { display: none; }
.sh-order-card .sh-picker > .sh-order-divider {
  height: 10px;
  margin: 20px calc(-1 * var(--sh-sp-5));
  background: var(--sh-canvas);
}
.sh-order-card .sh-brief {
  padding: 0;
  border-top: 0;
}
.sh-order-card .sh-brief .sh-h3 {
  color: var(--sh-ink);
  font-size: var(--sh-t-card);
  font-weight: 700;
}
.sh-order-card .sh-brief .sh-lead {
  max-width: 560px;
  color: var(--sh-muted);
  font-size: var(--sh-t-body);
  line-height: 1.7;
}
.sh-order-card .sh-svc-tags .sh-chip,
.sh-order-card #sh-svc-tags .sh-chip {
  min-height: 0;
  height: auto;
  padding: 4px 10px;
  border: 1px solid var(--sh-line);
  background: var(--sh-surface);
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
  font-weight: 600;
}
.sh-order-card .sh-brief-foot { margin-top: 16px; }
.sh-order-card .sh-brief-foot .sh-note { color: var(--sh-subtle); font-size: var(--sh-t-help); }
.sh-order-card .sh-brief-foot .sh-note b { color: var(--sh-muted); }
.sh-order-card .sh-desc-skip {
  height: 36px;
  min-height: 36px;
  padding: 0 16px;
  border: 1px solid var(--sh-line);
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
  color: var(--sh-muted);
  font-size: var(--sh-t-help);
  font-weight: 700;
}

@media (max-width: 767px) {
  .sh-order-card { padding: 20px 18px; }
  .sh-order-card .sh-card-head .sh-h1 { font-size: var(--sh-t-page); }
  .sh-order-card .sh-card-head .sh-lead { display: none; }
  .sh-order-card .sh-guide-link { font-size: var(--sh-t-caption); }
  .sh-order-card .sh-step { gap: 7px; margin-bottom: 12px; }
  .sh-order-card .sh-step-no { width: 20px; height: 20px; font-size: var(--sh-t-caption); }
  .sh-order-card .sh-step-title { font-size: var(--sh-t-body); }
  .sh-order-card > .sh-order-divider {
    flex-basis: 8px;
    height: 8px;
    margin: 0 -16px;
  }
  .sh-order-card .sh-mobile-jumps { display: none; }
  .sh-order-card .sh-plats {
    grid-auto-flow: column;
    grid-template-columns: none;
    grid-template-rows: repeat(2, 76px);
    grid-auto-columns: 62px;
    justify-content: start;
    gap: 12px 10px;
    overflow-x: auto;
    margin: -2px;
    padding: 2px;
  }
  .sh-order-card .sh-plat {
    width: 62px;
    min-width: 62px;
    gap: 6px;
  }
  .sh-order-card .sh-plat-icon {
    width: 58px;
    height: 58px;
    border-radius: var(--sh-r-card);
  }
  .sh-order-card .sh-plat-label { font-size: var(--sh-t-caption); }

  .sh-order-card .sh-picker-head {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    min-height: 52px;
  }
  .sh-order-card .sh-picker-head > .sh-grow { flex: 1 1 auto; min-width: 0; max-width: none; }
  .sh-order-card .sh-picker-body {
    grid-template-columns: 118px minmax(0, 1fr);
    gap: 10px;
  }
  .sh-order-card .sh-cats { padding: 6px; border-radius: var(--sh-r-ctrl); }
  .sh-order-card .sh-cats > .sh-cat,
  .sh-order-card .sh-picker-body .sh-cats > .sh-cat[role="tab"] {
    padding: 10px;
    border-radius: var(--sh-r-sm);
    font-size: var(--sh-t-caption);
  }
  .sh-grid .sh-order-card .sh-picker-body .sh-cats > button.sh-cat.active[role="tab"],
  .sh-grid .sh-order-card .sh-picker-body .sh-cats > button.sh-cat[aria-selected="true"][role="tab"] {
    border-left: 0;
  }
  .sh-order-card .sh-rows { padding: 2px; }
  .sh-order-card .sh-row,
  .sh-grid .sh-order-card .sh-picker button.sh-row {
    flex-wrap: wrap;
    min-height: 0;
    padding: 11px 12px;
    row-gap: 5px;
  }
  .sh-grid .sh-order-card .sh-picker .sh-row > .sh-row-main { flex: 1 0 100%; }
  .sh-order-card .sh-row-name { font-size: var(--sh-t-help); }
  .sh-order-card .sh-row-consult,
  .sh-order-card .sh-row-down { font-size: var(--sh-t-caption); }
  .sh-order-card .sh-row-price { margin-left: auto; font-size: var(--sh-t-body); }
  .sh-grid .sh-order-card .sh-picker .sh-row .sh-favbtn {
    order: 4;
    flex-basis: auto;
    width: auto;
    height: auto;
  }
  .sh-grid .sh-order-card .sh-picker .sh-row .sh-favbtn .sh-star-icon {
    width: 17px;
    height: 17px;
  }
  .sh-order-card .sh-picker > .sh-order-divider {
    height: 8px;
    margin: 16px -16px;
  }
  .sh-order-card .sh-brief-head { gap: 8px; }
  .sh-order-card .sh-brief .sh-h3 { font-size: var(--sh-t-card); }
  .sh-order-card .sh-brief .sh-lead { font-size: var(--sh-t-body); }
  .sh-order-card .sh-brief-head .sh-fine { display: none; }
  .sh-order-card .sh-brief-foot { margin-top: 14px; }
  .sh-order-card .sh-desc-skip { padding: 0 12px; }
  .sh-has-orderbar .sh-mobar-body > .sh-grow { min-width: 0; }
  .sh-has-orderbar .sh-mobar-name {
    overflow: visible;
    font-size: var(--sh-t-caption);
    line-height: 1.35;
    text-overflow: clip;
    white-space: normal;
  }
  .sh-has-orderbar .sh-mobar-total { font-size: var(--sh-t-card); font-weight: 700; }
}

#sh-sec-effect .sh-effects { gap: 0; }
#sh-sec-effect .sh-effect { align-items: center; gap: 12px; padding: 11px 0; }
#sh-sec-effect .sh-effect + .sh-effect { border-top: 1px solid #EFF1F4; }
#sh-sec-effect .sh-effect-icon { width: 30px; height: 30px; border-radius: var(--sh-r-sm); }
#sh-sec-effect .sh-effect-icon svg { width: 16px; height: 16px; }
#sh-sec-effect .sh-effect-body { margin: 0; color: var(--sh-muted); font-size: var(--sh-t-body); line-height: 1.6; }

.sh-reviews.review-list .sh-review-top { flex-wrap: wrap; }

.sh-sidebar,
.sh-drawer {
  --sh-side-card: #F9FAFB;
  --sh-side-card-radius: 14px;
  --sh-side-card-pad: 14px;
  --sh-side-row-h: 40px;
  --sh-side-row-pad: 10px;
  --sh-side-icon: 18px;
  --sh-side-label-size: 11px;
  --sh-side-tile-h: 38px;
  --sh-side-tile-icon: 22px;
}

.sh-sidebar .sh-user,
.sh-drawer .sh-user {
  display: block;
  border: 0;
  border-radius: var(--sh-side-card-radius);
  padding: var(--sh-side-card-pad);
  background: var(--sh-side-card);
}

.sh-sidebar .sh-user-row,
.sh-drawer .sh-user-row { align-items: center; gap: 9px; min-height: 50px; }

.sh-sidebar .sh-user a.sh-user-name,
.sh-drawer .sh-user a.sh-user-name,
.sh-sidebar .sh-user-name,
.sh-drawer .sh-user-name {
  display: flex;
  align-items: center;
  min-width: 0;
  min-height: 24px;
  font-size: var(--sh-t-body);
  font-weight: 700;
  line-height: 1.3;
}
.sh-sidebar .sh-user-point,
.sh-drawer .sh-user-point { margin-top: 12px; color: var(--sh-muted-2); font-size: var(--sh-side-label-size); font-weight: 400; }

.sh-sidebar .sh-user-balance,
.sh-drawer .sh-user-balance {
  display: block;
  margin-top: 2px;
  color: var(--sh-ink);
  font-size: var(--sh-t-page);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -.02em;
  font-variant-numeric: tabular-nums;
}
.sh-sidebar .sh-user > .sh-btn,
.sh-drawer .sh-user > .sh-btn,
.sh-sidebar .sh-user > .sh-2col,
.sh-drawer .sh-user > .sh-2col { margin-top: 10px; }
.sh-sidebar .sh-user--guest .sh-note,
.sh-drawer .sh-user--guest .sh-note { margin-top: 10px; margin-bottom: 0; font-size: var(--sh-side-label-size); line-height: 1.5; }

.sh-sidebar [data-sh-loyalty-side-summary],
.sh-drawer [data-sh-loyalty-side-summary] { display: inline-flex !important; }
.sh-sidebar [data-sh-loyalty-side-summary][hidden],
.sh-drawer [data-sh-loyalty-side-summary][hidden] { display: none !important; }
.sh-sidebar .sh-user a.sh-user-tier,
.sh-drawer .sh-user a.sh-user-tier,
.sh-sidebar .sh-user-tier,
.sh-drawer .sh-user-tier {
  display: flex;
  align-items: center;
  min-width: 0;
  min-height: 24px;
  margin-top: 1px;
  flex-wrap: nowrap;
  gap: 0;
}
.sh-sidebar .sh-user-tier > span:not(.sh-tierchip),
.sh-drawer .sh-user-tier > span:not(.sh-tierchip) { display: none; }
.sh-sidebar .sh-user-tier .sh-tierchip,
.sh-drawer .sh-user-tier .sh-tierchip {
  min-height: 0;
  padding: 1px 7px;
  border-width: 0;
  border-radius: var(--sh-r-pill);
  font-size: var(--sh-t-caption);
  font-weight: 700;
  line-height: 16px;
}

.sh-sidebar .sh-today,
.sh-drawer .sh-today { gap: 5px; margin: 10px 0 0; }
.sh-sidebar .sh-today-tile,
.sh-drawer .sh-today-tile {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 9px;
  min-height: var(--sh-side-tile-h);
  border: 0;
  border-radius: var(--sh-r-sm);
  padding: 8px var(--sh-side-row-pad);
  background: var(--sh-tint);
}
.sh-sidebar .sh-today-ic,
.sh-drawer .sh-today-ic {
  width: var(--sh-side-tile-icon);
  height: var(--sh-side-tile-icon);
  flex: 0 0 var(--sh-side-tile-icon);
  border-radius: var(--sh-r-sm);
  box-shadow: none;
}
.sh-sidebar .sh-today-ic svg,
.sh-drawer .sh-today-ic svg { width: 12px; height: 12px; }

.sh-sidebar .sh-today-tile--hot .sh-today-ic,
.sh-drawer .sh-today-tile--hot .sh-today-ic {
  --sh-plat-mark-bg: linear-gradient(135deg, var(--sh-gold), var(--sh-gold-2));
  --sh-plat-mark-fg: var(--sh-gold-ink);
  color: var(--sh-gold-ink);
}
.sh-sidebar .sh-today-name,
.sh-drawer .sh-today-name {
  flex: 1 1 auto;
  min-width: 0;
  color: var(--sh-ink);
  font-size: var(--sh-t-help);
  font-weight: 700;
  line-height: 1.35;
}
.sh-sidebar .sh-today-go,
.sh-drawer .sh-today-go { flex: 0 0 auto; color: var(--sh-primary); font-size: var(--sh-t-caption); opacity: .6; }
.sh-sidebar .sh-today-hot,
.sh-drawer .sh-today-hot {
  flex: 0 0 auto;
  padding: 1px 6px;
  border-radius: var(--sh-r-pill);
  background: var(--sh-gold-2);
  color: var(--sh-gold-ink);
  font-size: var(--sh-t-caption);
  font-weight: 700;
  letter-spacing: .02em;
}
@media (hover: hover) and (pointer: fine) {
  .sh-sidebar .sh-today-tile:hover,
  .sh-drawer .sh-today-tile:hover { background: var(--sh-tint-line); }
  .sh-sidebar .sh-today-tile--hot:hover,
  .sh-drawer .sh-today-tile--hot:hover { background: var(--sh-gold-line); }
}

.sh-sidebar .sh-navg,
.sh-drawer .sh-navg { margin-top: 0; padding-top: 14px; border-top: 1px solid var(--sh-line-hair); }
.sh-sidebar .sh-navg-group + .sh-navg-group,
.sh-drawer .sh-navg-group + .sh-navg-group { margin-top: 12px; padding-top: 0; border-top: 0; }
.sh-sidebar .sh-navg-label,
.sh-drawer .sh-navg-label {
  margin: 0 0 6px;
  padding: 0 var(--sh-side-row-pad);
  color: var(--sh-faint);
  font-size: var(--sh-side-label-size);
  font-weight: 700;
  line-height: 16px;
  letter-spacing: .05em;
}
.sh-sidebar .sh-navg-item,
.sh-drawer .sh-navg-item {
  gap: 10px;
  min-height: var(--sh-side-row-h);
  padding: 0 var(--sh-side-row-pad);
  color: var(--sh-muted);
  font-size: var(--sh-t-body);
  font-weight: 600;
}
.sh-sidebar .sh-navg-item svg,
.sh-drawer .sh-navg-item svg {
  width: var(--sh-side-icon);
  height: var(--sh-side-icon);
  flex: 0 0 var(--sh-side-icon);
  color: var(--sh-muted-2);
}
.sh-sidebar .sh-navg-item.is-current,
.sh-sidebar .sh-navg-item[aria-current="page"],
.sh-drawer .sh-navg-item.is-current,
.sh-drawer .sh-navg-item[aria-current="page"] { background: var(--sh-tint); color: var(--sh-primary); font-weight: 700; }
.sh-sidebar .sh-navg-item.is-current svg,
.sh-sidebar .sh-navg-item[aria-current="page"] svg,
.sh-drawer .sh-navg-item.is-current svg,
.sh-drawer .sh-navg-item[aria-current="page"] svg { color: currentColor; }
.sh-sidebar .sh-navg-badge,
.sh-drawer .sh-navg-badge { padding: 1px 7px; font-size: var(--sh-t-caption); line-height: 16px; }
.sh-sidebar .sh-navg-dot,
.sh-drawer .sh-navg-dot { width: 6px; height: 6px; }

.sh-sidebar .sh-side-foot,
.sh-drawer .sh-side-foot {
  margin-top: 16px;
  padding-top: 12px;
  border-top-color: var(--sh-line-hair);
  color: var(--sh-muted);
  font-size: var(--sh-side-label-size);
  line-height: 1.6;
}

.sh-sidebar .sh-side-foot { margin-top: auto; }

.sh-sidebar > .sh-navg { flex: 1 0 auto; }

.sh-sidebar > .sh-navg { align-content: start; }
.sh-sidebar > .sh-navg ~ .sh-side-foot { margin-top: 24px; }
.sh-sidebar .sh-biz { margin-top: 0; padding-top: 10px; }
.sh-sidebar .sh-biz-title { margin-bottom: 0; min-height: 32px; font-size: var(--sh-side-label-size); color: var(--sh-muted); }
.sh-sidebar .sh-biz-body { margin-top: 6px; }
.sh-sidebar .sh-biz-links { margin-top: 10px; padding-top: 10px; font-size: var(--sh-side-label-size); }

.sh-review-prod {
  display: inline-block;
  max-width: 100%;
  margin-top: 7px;
  padding: 3px 9px;
  border-radius: var(--sh-r-pill);
  background: var(--sh-surface-alt);
  color: var(--sh-muted-2);
  font-size: var(--sh-t-caption);
  font-weight: 600;
  line-height: 16px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: top;
}
.sh-rail-review-quote { margin-top: var(--sh-sp-3); }
.sh-rail-review-quote .sh-reviews { display: block; }
.sh-rail-review-quote .sh-review {
  display: block;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid var(--sh-line-hair);
  padding: 13px 0;
  background: transparent;
}

.sh-rail-review-quote .sh-review:nth-of-type(n + 3) { display: none; }
.sh-rail-review-quote .sh-review:nth-of-type(2) { border-bottom: 0; padding-bottom: 2px; }
.sh-rail-review-quote .sh-review:only-of-type { border-bottom: 0; padding-bottom: 2px; }
.sh-rail-review-quote .sh-review-top {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 7px;
  margin: 0;
}
.sh-rail-review-quote .sh-review-top .sh-avatar {
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  border-radius: 50%;
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-size: var(--sh-t-caption);
  font-weight: 700;
}
.sh-rail-review-quote .sh-review-id { flex: 0 0 auto; color: var(--sh-ink); font-size: var(--sh-t-help); font-weight: 700; }
.sh-rail-review-quote .sh-stars { display: inline-flex; flex: 0 0 auto; gap: 1px; }
.sh-rail-review-quote .sh-review-date { flex: 0 0 auto; margin-left: auto; color: var(--sh-faint); font-size: var(--sh-t-caption); }

.sh-rail-review-quote .sh-review-body {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-top: 7px;
  color: var(--sh-muted);
  font-size: var(--sh-t-body);
  line-height: 1.6;
  text-wrap: pretty;
}
.sh-rail-review-quote .sh-review-prod { display: inline-block; }
.sh-rail-review-quote :is(.sh-review-chips, .sh-review-order, [data-sh-review-more]) { display: none; }

.sh-rail-review a.sh-rail-review-more,
.sh-rail-review-more {
  display: flex;
  align-items: center;
  gap: var(--sh-sp-2);
  min-height: 44px;
  margin-top: 4px;
  padding-top: 12px;
  border-top: 1px solid var(--sh-line-hair);

  color: var(--sh-ink);
  font-size: var(--sh-t-help);
  font-weight: 700;
}
.sh-rail-review-more .sh-notice-go { color: var(--sh-muted-2); }

.sh-rail-price-row > span:nth-child(2) { font-size: var(--sh-t-body); }

.sh-static-guide .sh-h3 {
  font-size: var(--sh-t-body);
  font-weight: 700;
  line-height: 20px;
  color: var(--sh-ink);
  letter-spacing: -.01em;
}
.sh-static-guide-list { gap: 10px; }
.sh-static-guide-step {
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  color: var(--sh-muted);
  font-size: var(--sh-t-body);
  line-height: 1.6;
}
.sh-static-guide-step b {
  width: 24px;
  height: 24px;
  margin-top: 0;
  border-radius: 50%;
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-size: var(--sh-t-caption);
  font-weight: 700;
  line-height: 24px;
}
.sh-static-guide-list--caution {
  gap: 8px;
  border-radius: var(--sh-r-box);
  padding: 12px 14px;
  background: var(--sh-surface-alt);
}
.sh-static-guide-caution {
  padding-left: 14px;
  color: var(--sh-muted);
  font-size: var(--sh-t-body);
  line-height: 1.6;
}
.sh-static-guide-caution::before { top: .68em; width: 3px; height: 3px; background: var(--sh-muted-2); }

.sh-static-guide a.sh-linkbtn,
.sh-static-guide .sh-linkbtn {
  display: flex;
  align-items: center;
  gap: var(--sh-sp-2);
  min-height: 44px;
  margin-top: 2px;
  padding: 0;
  border-top: 1px solid var(--sh-line-hair);
  padding-top: 12px;

  color: var(--sh-ink);
  font-size: var(--sh-t-help);
  font-weight: 700;
  text-decoration: none;
}
.sh-static-guide .sh-linkbtn .guide-title { flex: 1 1 auto; min-width: 0; }
.sh-static-guide .sh-linkbtn .sh-notice-go { flex: 0 0 auto; color: var(--sh-muted-2); }

.sh-desc-price {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 14px;
  padding: 14px 18px;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-tint);
}
.sh-desc .sh-desc-price .sh-desc-was {
  color: #6B5A8E;
  font-size: var(--sh-t-help);
  font-weight: 400;
  text-decoration: line-through;
}
.sh-desc-price .sh-desc-arrow { color: #B39DDB; font-size: var(--sh-t-body); }
.sh-desc-price .sh-desc-now {
  color: var(--sh-primary);
  font-size: var(--sh-t-card);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.02em;
}
.sh-desc-price .sh-desc-price-note { color: #6B5A8E; font-size: var(--sh-t-caption); font-weight: 700; }

.sh-desc-price .sh-desc-price-fallback { color: var(--sh-muted); font-size: var(--sh-t-body); font-weight: 600; }

.sh-desc-price .sh-desc-price-label {
  flex: 1 0 100%;
  color: #4B2E86;
  font-size: var(--sh-t-caption);
  font-weight: 700;
  letter-spacing: -.01em;
}
.sh-desc-price--labeled { padding-top: 12px; }

.sh-desc-price .sh-desc-price-raw { color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; }

#sh-sec-effect .sh-effects { gap: 6px; }
#sh-sec-effect .sh-effect {
  align-items: flex-start;
  gap: 13px;
  padding: 12px 14px;
  border-radius: var(--sh-r-ctrl);
  background: #F9FAFB;
}
#sh-sec-effect .sh-effect + .sh-effect { border-top: 0; }
#sh-sec-effect .sh-effect-icon { width: 36px; height: 36px; flex: 0 0 36px; border-radius: var(--sh-r-ctrl); }
#sh-sec-effect .sh-effect-icon svg { width: 18px; height: 18px; }
#sh-sec-effect .sh-effect-body { min-width: 0; margin: 0; }
#sh-sec-effect .sh-effect-t { display: block; color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; }

#sh-sec-effect .sh-effect-d {
  display: block;
  margin-top: 2px;
  color: var(--sh-muted);
  font-size: var(--sh-t-body);
  line-height: 1.55;
}

.sh-rel-logo {
  position: relative;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: var(--sh-r-sm);
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.sh-rel-logo svg { width: 15px; height: 15px; }
.sh-rel-logo::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 0 1px var(--sh-plat-mark-ring, transparent);
  pointer-events: none;
}
[data-sh-related] .sh-row--rel,
.sh-row--rel { gap: 11px; padding: 12px 0; background: transparent; border-bottom: 0; }

.sh-row--rel > .sh-rel-logo,
[data-sh-related] .sh-row--rel > span.sh-rel-logo {
  flex: 0 0 28px;
  width: 28px;
  min-width: 28px;
  height: 28px;
}
.sh-row--rel > .sh-grow { flex: 1 1 auto; min-width: 0; font-size: var(--sh-t-body); font-weight: 600; color: var(--sh-ink); }
[data-sh-related] .sh-row--rel > .sh-rel-price,
.sh-row--rel > .sh-rel-price {
  flex: 0 0 auto;
  margin-left: auto;
  color: var(--sh-ink);
  font-size: var(--sh-t-body);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.sh-row--rel > .sh-rel-chev { flex: 0 0 auto; color: #D1D6DB; font-size: var(--sh-t-body); }

#sh-sec-effect .sh-effect-icon,
#sh-sec-effect .sh-effect-icon--like,
#sh-sec-effect .sh-effect-icon--ok,
#sh-sec-effect .sh-effect-icon--biz { background: var(--sh-tint); color: var(--sh-primary); }

.sh-tabpanel[data-sh-key="review"] .sh-review-head { justify-content: flex-end; }
.sh-tabpanel[data-sh-key="review"] .sh-review-rating { margin-top: 8px; }

.sh-desc {
  --sh-d4-tint-ink:  #3F2A66;
  --sh-d4-tint-ring: #DCC9FA;
  --sh-d4-tint-line: #E9E2F7;
  --sh-d4-table-bg:  #F9FAFB;
  --sh-d4-dot:       #C79A3B;
}

.sh-desc .sh-d4-lead > .sh-lead { margin: 0; color: var(--sh-ink); font-size: var(--sh-t-card); line-height: 1.7; }
.sh-desc .sh-d4-lead > .sh-lead-sub {
  margin: 10px 0 0;
  color: var(--sh-muted);
  font-size: var(--sh-t-card);
  line-height: 1.7;
  white-space: pre-line;
  word-break: keep-all;
  overflow-wrap: break-word;
}

.sh-desc .sh-d4-sec { border: 0; border-radius: 0; padding: 0; background: none; }

.sh-desc-body .sh-desc.sh-desc-read > * + * { margin-top: 32px; }
.sh-desc-body .sh-desc.sh-desc-read > * + .sh-d4-call { margin-top: 24px; }
.sh-desc-body .sh-desc.sh-desc-read > .sh-d4-lead + .sh-d4-sec { margin-top: 24px; }

.sh-desc-body .sh-desc.sh-desc-read > .sh-d4-sec { padding: 0; }
.sh-desc-body .sh-desc.sh-desc-read > .sh-d4-call { padding: 16px 20px; }
.sh-desc-body .sh-desc.sh-desc-read > .sh-d4-call--info { padding: 13px 20px; }
.sh-desc-body .sh-desc.sh-desc-read > .sh-desc-price { padding: 14px 18px; }
.sh-desc .sh-d4-sec > .sh-doc-h,
.sh-desc-read .sh-d4-sec > .sh-doc-h,
.sh-desc-body .sh-desc .sh-d4-sec > .sh-doc-h {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  padding: 0;
  border: 0;
  color: var(--sh-ink);
  font-size: var(--sh-t-card);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -.01em;
}

.sh-desc .sh-d4-sec > .sh-doc-h > .sh-doc-h-ic {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  border-radius: 0;
  background: none;
  color: var(--sh-primary);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
}
.sh-desc .sh-d4-sec > * + * { margin-top: 12px; }
.sh-desc .sh-d4-sec > .sh-doc-h + .sh-d4-tl { margin-top: 14px; }
.sh-desc .sh-d4-sec .sh-prose { margin: 0; color: var(--sh-muted); font-size: var(--sh-t-card); line-height: 1.65; }

.sh-desc .sh-d4-row { display: flex; gap: 8px; align-items: flex-start; }
.sh-desc .sh-d4-mk {
  flex: 0 0 24px;
  width: 24px;
  display: inline-flex;
  align-items: flex-start;
  justify-content: center;
}
.sh-desc .sh-d4-tx {
  flex: 1 1 auto;
  min-width: 0;
  color: var(--sh-muted);
  font-size: var(--sh-t-card);
  line-height: 1.65;
  word-break: keep-all;
  overflow-wrap: break-word;
}
.sh-desc .sh-d4-tx b { color: var(--sh-ink); font-weight: 700; }

.sh-desc .sh-d4-facts {
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-d4-table-bg);
  padding: 6px 20px;
}
.sh-desc .sh-d4-fact {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 42px;
  padding: 8px 0;
  border-bottom: 1px solid var(--sh-line-soft);
}
.sh-desc .sh-d4-fact:last-child { border-bottom: 0; }
.sh-desc .sh-d4-fact-k { flex: 0 0 36%; color: var(--sh-muted-2); font-size: var(--sh-t-body); font-weight: 400; }
.sh-desc .sh-d4-fact-v {
  flex: 1 1 auto;
  min-width: 0;
  color: var(--sh-ink);
  font-size: var(--sh-t-body);
  font-weight: 600;
  line-height: 1.5;
  font-variant-numeric: tabular-nums;
  word-break: keep-all;
  overflow-wrap: break-word;
}
.sh-desc .sh-d4-fact-v--strong { font-weight: 700; }

.sh-desc .sh-d4-fact-more {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  color: var(--sh-primary);
  font: inherit;
  font-size: var(--sh-t-help);
  font-weight: 700;
  cursor: pointer;
}
.sh-desc .sh-d4-fact-more::before { content: ""; display: inline-block; height: .8em; margin: 0 6px 0 0; border-left: 1px solid var(--sh-line); vertical-align: -.08em; }
.sh-desc .sh-d4-fact-detail { margin-top: 12px; }
.sh-desc .sh-d4-fact-detail > * + * { margin-top: 12px; }

.sh-desc .sh-d4-facts--qty .sh-d4-fact-k { flex: 1 1 auto; min-width: 0; color: var(--sh-muted-2); font-size: var(--sh-t-body); }
.sh-desc .sh-d4-facts--qty .sh-d4-fact-v--num {
  flex: 0 0 auto;
  text-align: right;
  color: var(--sh-ink);
  font-size: var(--sh-t-body);
  font-weight: 700;
  white-space: nowrap;
}
.sh-desc .sh-d4-facts--qty .sh-d4-fact--full .sh-d4-fact-k { color: var(--sh-ink); font-weight: 600; }

.sh-desc .sh-d4-call {
  display: grid;
  grid-template-columns: 20px 1fr;
  column-gap: 8px;
  align-items: start;
  border: 0;
  border-radius: var(--sh-r-ctrl);
  padding: 16px 20px;
}
.sh-desc .sh-d4-call-ic { display: inline-flex; align-items: center; justify-content: center; margin-top: 2px; }
.sh-desc .sh-d4-call-t { display: block; font-size: var(--sh-t-body); font-weight: 700; line-height: 1.4; }
.sh-desc .sh-d4-call--act { background: var(--sh-tint); color: var(--sh-d4-tint-ink); }
.sh-desc .sh-d4-call--act .sh-d4-call-ic { color: var(--sh-primary); }
.sh-desc .sh-d4-call--act .sh-d4-call-t { color: var(--sh-d4-tint-ink); }
.sh-desc .sh-d4-call--act .sh-d4-tx { color: var(--sh-d4-tint-ink); font-size: var(--sh-t-body); line-height: 1.6; }
.sh-desc .sh-d4-call--act .sh-d4-tx b { color: inherit; font-weight: 700; }
.sh-desc .sh-d4-call--act .sh-d4-numlist { margin-top: 10px; }

.sh-desc .sh-d4-call--warn { background: var(--sh-gold-bg); color: var(--sh-gold-sub); }
.sh-desc .sh-d4-call--warn .sh-d4-call-ic { color: var(--sh-gold-text); }
.sh-desc .sh-d4-call--warn .sh-d4-call-t { color: #3A2800; }
.sh-desc .sh-d4-call--warn .sh-d4-tx { color: var(--sh-gold-sub); font-size: var(--sh-t-body); line-height: 1.6; }
.sh-desc .sh-d4-call--warn .sh-d4-tx b { color: #3A2800; font-weight: 700; }
.sh-desc .sh-d4-dotlist { margin-top: 8px; display: flex; flex-direction: column; gap: 6px; }
.sh-desc .sh-d4-dotlist .sh-d4-mk { padding-top: 8px; }
.sh-desc .sh-d4-dot { width: 4px; height: 4px; border-radius: 50%; background: var(--sh-d4-dot); }

.sh-desc .sh-d4-call--info { background: var(--sh-d4-table-bg); padding: 13px 20px; }
.sh-desc .sh-d4-call--info .sh-d4-call-ic { color: var(--sh-muted-2); }
.sh-desc .sh-d4-info-p {
  margin: 0;
  color: var(--sh-muted-2);
  font-size: var(--sh-t-body);
  line-height: 1.65;
  word-break: keep-all;
  overflow-wrap: break-word;
}
.sh-desc .sh-d4-info-p + .sh-d4-info-p { margin-top: 6px; }

.sh-desc .sh-d4-checks { display: flex; flex-direction: column; gap: 8px; }
.sh-desc .sh-d4-check { color: var(--sh-primary); font-size: var(--sh-t-help); font-weight: 700; padding-top: 2px; line-height: 1.4; }

.sh-desc .sh-d4-tl { display: block; }
.sh-desc .sh-d4-tl-row { position: relative; padding-bottom: 14px; }
.sh-desc .sh-d4-tl-row::before {
  content: '';
  position: absolute;
  left: 11px;
  top: 21px;
  bottom: -1px;
  width: 2px;
  background: var(--sh-d4-tint-line);
}
.sh-desc .sh-d4-tl-row--last { padding-bottom: 0; }
.sh-desc .sh-d4-tl-row--last::before { content: none; }

.sh-desc .sh-d4-tl .sh-d4-mk { padding-top: 8px; position: relative; z-index: 1; }
.sh-desc .sh-d4-tl-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--sh-primary);
  box-shadow: 0 0 0 4px var(--sh-tint);
}

.sh-desc .sh-d4-numlist { display: flex; flex-direction: column; gap: 8px; }
.sh-desc .sh-d4-num {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  margin-top: 1px;
  border-radius: 50%;
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-size: var(--sh-t-caption);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.sh-desc .sh-d4-num--ring {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  margin-top: 2px;
  background: var(--sh-surface);
  box-shadow: 0 0 0 1px var(--sh-d4-tint-ring);
}
.sh-desc .sh-d4-tx > .sh-desc-eg {
  display: inline-block;
  margin-top: 8px;
  padding: 6px 11px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: #F2F4F6;
  color: #333D4B;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: var(--sh-t-help);
  line-height: 1.4;
  word-break: break-all;
}

.sh-desc .sh-d4-sec .sh-desc-kv,
.sh-desc-read .sh-d4-sec .sh-desc-kv {
  margin: 0;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-d4-table-bg);
  padding: 6px 20px;
}
.sh-desc .sh-d4-sec .sh-desc-kv > div,
.sh-desc-read .sh-d4-sec .sh-desc-kv > div {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 42px;
  padding: 8px 0;
  border-top: 0;
  border-bottom: 1px solid var(--sh-line-soft);
}
.sh-desc .sh-d4-sec .sh-desc-kv > div:last-child { border-bottom: 0; }
.sh-desc .sh-d4-sec .sh-desc-kv dt { flex: 0 0 36%; color: var(--sh-muted-2); font-size: var(--sh-t-body); font-weight: 400; }
.sh-desc .sh-d4-sec .sh-desc-kv dd {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  color: var(--sh-ink);
  font-size: var(--sh-t-body);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  word-break: keep-all;
  overflow-wrap: break-word;
}

@media (max-width: 420px) {
  .sh-desc .sh-d4-facts,
  .sh-desc .sh-d4-sec .sh-desc-kv { padding: 4px 16px; }
  .sh-desc .sh-d4-fact,
  .sh-desc .sh-d4-sec .sh-desc-kv > div {
    display: block;
    min-height: 0;
    padding: 11px 0;
  }
  .sh-desc .sh-d4-fact-k,
  .sh-desc .sh-d4-sec .sh-desc-kv dt { display: block; margin-bottom: 3px; }

  .sh-desc .sh-d4-facts--qty .sh-d4-fact { display: flex; align-items: center; gap: 12px; }
  .sh-desc .sh-d4-facts--qty .sh-d4-fact-k { display: block; margin-bottom: 0; }
  .sh-desc .sh-d4-call { padding: 14px 16px; }
  .sh-desc .sh-d4-call--info { padding: 12px 16px; }
}

#sh-precheck-host .sh-d4-call { margin: 0; }

.sh-benefit-matrix--cols { border-collapse: collapse; border-spacing: 0; }
.sh-benefit-matrix--cols thead th {
  width: auto;
  padding: 10px 10px;
  border-top: 0;
  border-bottom: 1px solid var(--sh-line);
  background: var(--sh-surface-mute);
  color: var(--sh-muted-2);
  font-size: var(--sh-t-3xs);
  font-weight: 700;
  white-space: nowrap;
}
.sh-benefit-matrix--cols thead th:not(:first-child) { text-align: right; }
.sh-benefit-matrix--cols tbody th {
  width: auto;
  padding: 11px 10px;
  color: var(--sh-ink);
  font-size: var(--sh-t-sm);
  font-weight: 700;
}
.sh-benefit-matrix--cols tbody td {
  padding: 11px 10px;
  color: var(--sh-ink-2);
  font-size: var(--sh-t-sm);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  text-align: right;
  white-space: nowrap;
}
.sh-benefit-matrix--cols tbody td:first-of-type { color: var(--sh-muted); font-weight: 400; }
.sh-benefit-matrix--cols tbody td:last-child { color: var(--sh-primary); font-weight: 700; }
.sh-benefit-matrix--cols tbody tr + tr th,
.sh-benefit-matrix--cols tbody tr + tr td { border-top: 1px solid var(--sh-line-hair); }

.sh-tier-mark {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 7px;
  border-radius: 50%;
  background: var(--sh-tier-normal);
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .55);
  vertical-align: -3px;
  background-size: cover;
  background-position: center;
}
.sh-tier-mark[data-tier="normal"]   { background-color: var(--sh-tier-normal); background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-normal.webp); }
.sh-tier-mark[data-tier="silver"]   { background-color: var(--sh-tier-silver); background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-silver.webp); }
.sh-tier-mark[data-tier="gold"]     { background-color: var(--sh-tier-gold); background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-gold.webp); }
.sh-tier-mark[data-tier="platinum"] { background-color: var(--sh-tier-platinum); background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-platinum.webp); }
.sh-tier-mark[data-tier="diamond"]  { background-color: var(--sh-tier-diamond); background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-diamond.webp); }
.sh-tier-mark[data-tier="vip"]      { background-color: var(--sh-tier-vip); background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-vip.webp); }
.sh-tier-mark[data-tier="vvip"]     { background-color: var(--sh-tier-vvip); background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-vvip.webp); }

.sh-tierchip { gap: 5px; }
.sh-tierchip::before {
  content: "";
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  border-radius: 50%;
  background: var(--sh-tier-normal) url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-normal.webp) center / cover no-repeat;
}
.sh-tierchip--silver::before   { background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-silver.webp); }
.sh-tierchip--gold::before     { background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-gold.webp); }
.sh-tierchip--platinum::before { background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-platinum.webp); }
.sh-tierchip--diamond::before  { background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-diamond.webp); }
.sh-tierchip--vip::before      { background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-vip.webp); }
.sh-tierchip--vvip::before     { background-image: url(https://imhxdysqwmpnzmionjio.supabase.co/storage/v1/object/public/content/theme/sh/8d9d5bf2e1ec/images/bd-tier-vvip.webp); }
@media (max-width: 480px) {
  .sh-benefit-matrix--cols thead th,
  .sh-benefit-matrix--cols tbody th,
  .sh-benefit-matrix--cols tbody td { padding: 10px 9px; font-size: var(--sh-t-xs); }
  .sh-tier-mark { margin-right: 5px; }
}

@media (max-width: 360px) {
  .sh-benefit-matrix--cols thead th,
  .sh-benefit-matrix--cols tbody th,
  .sh-benefit-matrix--cols tbody td { padding: 9px 6px; font-size: var(--sh-t-3xs); }
  .sh-benefit-matrix--cols .sh-tier-mark { display: none; }
}

@media (min-width: 1600px) {
  .sh-desc-body .sh-desc.sh-desc-read { max-width: none; }

  .sh-desc-read > :is(.sh-lead, .sh-prose, p),
  .sh-desc-read .sh-dsec > :is(.sh-prose, p),
  .sh-desc-read .sh-lead { max-width: 720px; }

  .sh-desc-read :is(.sh-d4-spec, .sh-desc-price, .sh-desc-section, .sh-alert, .sh-d4-tl, .sh-d4-numlist, .sh-desc-steps, table) { max-width: none; }
}

.sh-rail-review a.sh-rail-review-more,
.sh-rail-review-more,
.sh-static-guide .sh-linkbtn {
  justify-content: center;
  gap: 6px;
  min-height: 42px;
  margin-top: 14px;
  padding: 0 14px;
  border: 1px solid var(--sh-border);
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
  color: var(--sh-ink-2);
  font-size: var(--sh-t-help);
  font-weight: 700;
  text-decoration: none;
  transition: border-color 120ms var(--sh-ease-out), background-color 120ms var(--sh-ease-out);
}
.sh-rail-review a.sh-rail-review-more { border-top: 1px solid var(--sh-border); }
.sh-static-guide .sh-linkbtn { border-top: 1px solid var(--sh-border); }
@media (hover: hover) and (pointer: fine) {
  .sh-rail-review a.sh-rail-review-more:hover,
  .sh-static-guide .sh-linkbtn:hover { border-color: var(--sh-primary); background: var(--sh-tint-soft); color: var(--sh-primary); }
}
.sh-rail-review-more .sh-notice-go,
.sh-static-guide .sh-linkbtn .sh-notice-go { color: inherit; }
.sh-static-guide .sh-linkbtn .guide-title { flex: 0 1 auto; min-width: 0; }

.sh-rail-live .sh-h2 { display: inline-flex; align-items: center; gap: 8px; }
.sh-live-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #39D98A;
  box-shadow: 0 0 0 0 rgba(57, 217, 138, .55);
  animation: sh-live-pulse 2.4s ease-out infinite;
}
@keyframes sh-live-pulse {
  0%   { box-shadow: 0 0 0 0 rgba(57, 217, 138, .5); }
  70%  { box-shadow: 0 0 0 7px rgba(57, 217, 138, 0); }
  100% { box-shadow: 0 0 0 0 rgba(57, 217, 138, 0); }
}
@media (prefers-reduced-motion: reduce) { .sh-live-dot { animation: none; } }

.sh-grid .sh-picker .sh-cats > .sh-cat,
.sh-picker .sh-cats > .sh-cat {
  flex: 0 0 auto;
  min-height: 44px;
  padding-block: 11px;
  line-height: 1.35;
}
.sh-picker .sh-cats {

  position: relative;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}

.sh-desc .sh-desc-eg-line {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-top: 8px;
  flex-wrap: wrap;
}
.sh-desc .sh-desc-eg-label {
  flex: 0 0 auto;
  color: var(--sh-muted-2);
  font-size: var(--sh-t-help);
  font-weight: 600;
}
.sh-desc .sh-desc-eg-line > .sh-desc-eg { margin: 0; }

.sh-tierchip::before { align-self: center; }
.sh-sidebar .sh-tierchip,
.sh-drawer .sh-tierchip { min-height: 24px; height: 24px; line-height: 1; }

.sh-sidebar .sh-user-row, .sh-drawer .sh-user-row { min-height: 52px; }

.sh-sidebar .sh-user-row,
.sh-drawer .sh-user-row { align-items: flex-start; min-height: 92px; }
.sh-sidebar .sh-user-row > .sh-grow.sh-truncate,
.sh-drawer .sh-user-row > .sh-grow.sh-truncate {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  overflow: visible;
  white-space: normal;
  width: 100%;
}

.sh-sidebar .sh-user-row > .sh-grow.sh-truncate > .sh-user-name,
.sh-drawer .sh-user-row > .sh-grow.sh-truncate > .sh-user-name {
  min-width: 0;
  max-width: 100%;
}
.sh-sidebar .sh-user-row > .sh-grow.sh-truncate > .sh-user-name > span,
.sh-drawer .sh-user-row > .sh-grow.sh-truncate > .sh-user-name > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  max-width: 100%;
}

.sh-static-guide .sh-linkbtn {
  justify-content: space-between;
  align-items: center;
  text-align: left;
  line-height: 1.3;
}
.sh-static-guide .sh-linkbtn .guide-title { flex: 1 1 auto; text-align: left; }

@media (min-width: 1280px) {
  .sh-grid > .sh-rail.sh-rail--aside:last-child > #link-guide { order: 3; }
  .sh-grid > .sh-rail.sh-rail--aside:last-child > #sh-sec-price { order: 4; }
  .sh-grid > .sh-rail.sh-rail--aside:last-child > #sh-sec-review { order: 5; }
  .sh-rail--aside > #link-guide { order: 3; }
}

.sh-seo {
  max-width: var(--sh-maxw);
  margin: var(--sh-sp-6) auto 0;
  padding: var(--sh-sp-5);
  background: var(--sh-surface);
  border: 1px solid var(--sh-line-soft);
  border-radius: var(--sh-r-card);
  box-shadow: var(--sh-sh-card);
}
.sh-seo > .sh-h2 { margin: 0; }

.sh-order-information > .sh-seo { max-width: none; width: 100%; margin-left: 0; margin-right: 0; align-self: stretch; }
.sh-order-information > .sh-seo .sh-seo-p,
.sh-order-information > .sh-seo .sh-seo-body .sh-acc,
.sh-order-information > .sh-seo .sh-acc-a { max-width: none; }
.sh-seo-lead { margin-top: 6px; }

.sh-seo-hub-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sh-sp-3);
  cursor: pointer;
  list-style: none;
  color: var(--sh-ink);
}
.sh-seo-hub-summary::-webkit-details-marker { display: none; }
.sh-seo-hub-summary::marker { content: ""; }
.sh-seo-hub-summary .sh-h2 { margin: 0; }
.sh-seo-hub[open] > .sh-seo-hub-summary {
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--sh-line-hair);
}
.sh-seo-hub-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  color: var(--sh-muted-2);
  font-size: var(--sh-t-sm);
  font-weight: 600;
}
.sh-seo-hub-toggle::before { content: "펼치기"; }
.sh-seo-hub[open] .sh-seo-hub-toggle::before { content: "접기"; }
.sh-seo-hub-toggle::after {
  content: "";
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform 140ms var(--sh-ease-out);
}
.sh-seo-hub[open] .sh-seo-hub-toggle::after { transform: translateY(2px) rotate(-135deg); }
@media (hover: hover) and (pointer: fine) {
  .sh-seo-hub-summary:hover .sh-seo-hub-toggle { color: var(--sh-primary); }
}

.sh-seo-fold { margin-top: 16px; border-top: 1px solid var(--sh-line-soft); }
.sh-seo-fold > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 48px;
  cursor: pointer;
  color: var(--sh-ink);
  font-size: var(--sh-t-sm);
  font-weight: 700;
  list-style: none;
}
.sh-seo-fold > summary::-webkit-details-marker { display: none; }
.sh-seo-fold > summary::marker { content: ""; }
.sh-seo-fold > summary::after { content: "+"; color: var(--sh-primary); font-size: var(--sh-t-h3); font-weight: 700; }
.sh-seo-fold[open] > summary::after { content: "−"; }

.sh-seo-body > .sh-segtabs { width: fit-content; max-width: 100%; margin-bottom: 20px; }
.sh-seo-body .sh-tabpanel > :first-child { margin-top: 0; }
.sh-seo-body .sh-h3 { margin: var(--sh-sp-6) 0 12px; }
.sh-seo-body .sh-acc { max-width: 46em; }
.sh-seo-p {
  max-width: 46em;
  margin: 0 0 14px;
  color: var(--sh-muted);
  font-size: var(--sh-t-card);
  line-height: 1.65;
  overflow-wrap: break-word;
  word-break: keep-all;
}
.sh-seo-p:last-child { margin-bottom: 0; }
.sh-seo-more { margin-top: 16px; }

@media (max-width: 767px) {
  .sh-seo { margin-top: var(--sh-sp-4); padding: 20px; }
  .sh-seo-p { font-size: var(--sh-t-body); }
}

.sh-seo .sh-seo-p,
.sh-seo .sh-sub,
.sh-seo .sh-seo-lead,
.sh-seo .sh-acc-a { max-width: 720px; }

.sh-seo .sh-h3 { margin: 32px 0 12px; font-size: var(--sh-t-card); font-weight: 700; }
.sh-seo .sh-h3:first-of-type { margin-top: 20px; }
.sh-seo .sh-seo-p { margin: 0 0 14px; font-size: var(--sh-t-card); line-height: 1.65; color: var(--sh-muted); }
.sh-seo .sh-seo-p:last-child { margin-bottom: 0; }

.sh-seo-fold > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 44px;
  cursor: pointer;
  color: var(--sh-muted-2);
  font-size: var(--sh-t-help);
  font-weight: 700;
  list-style: none;
}
.sh-seo-fold > summary::-webkit-details-marker { display: none; }
.sh-seo-fold[open] > summary { margin-bottom: 4px; border-bottom: 1px solid var(--sh-line-hair); }
.sh-seo .sh-segtabs { margin-top: 14px; }
.sh-seo .sh-tabpanel { padding-top: 4px; }

.sh-seo-links { display: flex; flex-direction: column; gap: 2px; margin-top: 20px; padding-top: 14px; border-top: 1px solid var(--sh-line-hair); max-width: 720px; }
.sh-seo-link {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  min-height: 44px; padding: 0 12px; border-radius: var(--sh-r-sm);
  color: var(--sh-ink-2); font-size: var(--sh-t-body); font-weight: 600; text-decoration: none;
}
.sh-seo-link .sh-notice-go { color: var(--sh-muted-2); }
@media (hover: hover) and (pointer: fine) { .sh-seo-link:hover { background: var(--sh-surface-mute); color: var(--sh-primary); } }

.sh-order-card .sh-step { gap: 10px; margin-bottom: 18px; align-items: center; }
.sh-order-card .sh-step-no { flex: 0 0 22px; line-height: 1; }
.sh-order-card .sh-step-title { font-size: var(--sh-t-card); font-weight: 700; line-height: 22px; }

.sh-order-card .sh-step + .sh-plats,
.sh-order-card .sh-step + .sh-picker,
.sh-order-card .sh-step + * { margin-top: 4px; }

.sh-grid .sh-picker .sh-cats > .sh-cat,
.sh-picker .sh-cats > .sh-cat {
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
  box-shadow: inset 0 0 0 1px var(--sh-line);
  color: var(--sh-ink-2);
  font-weight: 600;
}
@media (hover: hover) and (pointer: fine) {
  .sh-picker .sh-cats > .sh-cat:hover { box-shadow: inset 0 0 0 1px var(--sh-border-strong); }
}
.sh-picker .sh-cats > .sh-cat.active,
.sh-picker .sh-cats > .sh-cat[aria-selected="true"] {
  background: var(--sh-tint);
  box-shadow: inset 0 0 0 1.5px var(--sh-primary);
  color: var(--sh-primary);
  font-weight: 700;
}

.sh-picker .sh-cat-group {
  margin: var(--sh-sp-3) 0 var(--sh-sp-1);
}
.sh-picker .sh-cat-group:first-child { margin-top: 0; }
.sh-picker .sh-cat-group-head {
  display: flex;
  align-items: center;
  gap: var(--sh-sp-2);
  padding: 0 var(--sh-sp-1);
  color: var(--sh-ink);
}
.sh-picker .sh-cat-group-head > span { min-width: 0; }
.sh-cat-group-icon { width: 20px; height: 20px; object-fit: contain; border-radius: var(--sh-r-xs); }
.sh-cat-group-title { display: block; margin: 0; font-size: var(--sh-t-sm); font-weight: 700; line-height: 1.35; white-space: normal; word-break: keep-all; }
.sh-cat-group-subtitle { display: block; margin-top: 1px; color: var(--sh-muted); font-size: var(--sh-t-xs); font-weight: 400; line-height: 1.35; }
.sh-cat-group-badges { display: inline-flex; flex: 0 0 auto; flex-wrap: wrap; gap: 4px; margin-left: auto; }
.sh-cat-group-badges .sh-badge { min-height: 20px; height: 20px; padding: 0 6px; font-size: var(--sh-t-caption); }
.sh-cat-group-badges .sh-badge--hot { background: var(--sh-danger-bg); color: var(--sh-danger); }
.sh-cat-group-badges .sh-badge--best { background: var(--sh-gold-bg); color: var(--sh-gold-text); }
.sh-picker .sh-cat-group-tabs { display: flex; flex-direction: column; }
.sh-grid .sh-picker .sh-cat-group-tabs > .sh-cat,
.sh-picker .sh-cat-group-tabs > .sh-cat {
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
  box-shadow: inset 0 0 0 1px var(--sh-line);
  color: var(--sh-ink-2);
  font-weight: 600;
}
.sh-picker .sh-cat-group-tabs > .sh-cat.active,
.sh-picker .sh-cat-group-tabs > .sh-cat[aria-selected="true"] {
  background: var(--sh-tint);
  box-shadow: inset 0 0 0 1.5px var(--sh-primary);
  color: var(--sh-primary);
  font-weight: 700;
}

.sh-order-card .sh-guide-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid var(--sh-border);
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
  color: var(--sh-ink-2);
  font-size: var(--sh-t-help);
  font-weight: 700;
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  .sh-order-card .sh-guide-link:hover { border-color: var(--sh-primary); background: var(--sh-tint-soft); color: var(--sh-primary); }
}

.sh-rail--aside section.sh-card > .sh-h2:first-child,
.sh-rail--aside section.sh-card > .sh-h3:first-child {
  margin-bottom: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--sh-line-hair);
}

.sh-rail--aside .sh-rail-live .sh-h2 { margin-bottom: 0; padding-bottom: 0; border-bottom: 0; }

@media (min-width: 768px) {
  body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main .sh-card--stack:has(> .sh-card-head .sh-h1) .sh-step {
    margin-bottom: 16px;
  }
}

.sh-rail--aside section.sh-card > :is(.sh-h2, .sh-h3):first-child {
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--sh-line-hair);
}
.sh-rail--aside section.sh-card > :is(.sh-h2, .sh-h3):first-child + * { margin-top: 0; }

.sh-rail--aside section.sh-card:is(.sh-stack, .sh-card--stack) { row-gap: 24px; }
.sh-rail--aside section.sh-card:is(.sh-stack, .sh-card--stack) > :is(.sh-h2, .sh-h3):first-child {
  margin-bottom: -10px;
}

.sh-rail--aside section.sh-card.sh-rail-live > :is(.sh-h2, .sh-h3),
.sh-rail--aside section.sh-card.sh-cta-block > :is(.sh-h2, .sh-h3) {
  border-bottom: 0;
  padding-bottom: 0;
  margin-bottom: 8px;
}
.sh-rail--aside section.sh-card.sh-rail-live > :is(.sh-h2, .sh-h3) { margin-bottom: 0; }

.sh-rail--main > .sh-seo,
.sh-rail--aside > .sh-seo {
  max-width: none;
  margin: 0;
  width: 100%;
}

.sh-rail--main > .sh-seo :is(.sh-seo-p, .sh-sub, .sh-seo-lead, .sh-acc-a) { max-width: 68ch; }

.sh-rail--aside > .sh-seo > .sh-h2 {
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--sh-line-hair);
}
.sh-rail--aside > .sh-seo > .sh-seo-lead { margin-top: 0; }
.sh-rail--aside > .sh-seo :is(.sh-seo-p, .sh-sub, .sh-seo-lead, .sh-acc-a, .sh-acc) { max-width: none; }

@media (min-width: 768px) {
  .sh-grid .sh-picker .sh-picker-body,
  .sh-picker .sh-picker-body {
    display: grid;

    grid-template-columns: clamp(172px, 30%, 264px) minmax(0, 1fr);
    gap: 20px;
    align-items: start;
    position: static;
  }
  .sh-picker .sh-picker-body::after { content: none; }

  .sh-grid .sh-picker .sh-cats,
  .sh-picker .sh-cats {
    display: flex;
    flex-direction: column;
    gap: 2px;
    width: auto;
    height: auto;
    max-height: none;
    overflow: visible;
    background: transparent;
    border: 0;
    border-right: 1px solid var(--sh-line-hair);
    border-radius: 0;
    padding: 0 16px 0 0;
    margin: 0;
    align-self: start;
  }

  .sh-picker .sh-picker-body:has(.sh-cats:not(:has(> .sh-cat:nth-of-type(2))):not(:has(> .sh-cat-group))) {
    grid-template-columns: minmax(0, 1fr);
  }

  .sh-grid .sh-picker-body .sh-cats > .sh-cat[role="tab"],
  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only),
  .sh-picker .sh-cats > .sh-cat {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 42px;
    padding: 8px 12px;
    border: 0;
    border-radius: var(--sh-r-sm);
    background: transparent;
    color: var(--sh-muted);
    font-size: var(--sh-t-body);
    font-weight: 600;
    line-height: 1.35;
    text-align: left;
    white-space: normal;
    word-break: keep-all;
  }
  .sh-picker .sh-cats > .sh-cat::after { content: none; }
  .sh-picker .sh-cats > .sh-cat .sh-cat-name {
    overflow: visible;
    white-space: normal;
    display: block;
  }

  .sh-grid .sh-picker-body .sh-cats > .sh-cat[role="tab"]:is(.active, [aria-selected="true"]),
  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only):is(.active, [aria-selected="true"]),
  .sh-picker .sh-cats > .sh-cat:is(.active, [aria-selected="true"]) {
    background: var(--sh-tint-soft);
    color: var(--sh-primary);
    font-weight: 700;
  }

  .sh-grid .sh-picker .sh-rows,
  .sh-picker .sh-rows {
    height: auto;
    max-height: none;
    overflow: visible;
  }
}

@media (max-width: 767px) {
  .sh-grid .sh-picker .sh-picker-body,
  .sh-order-card .sh-picker-body,
  .sh-picker .sh-picker-body {
    display: block;
    grid-template-columns: none;
  }
  .sh-grid .sh-picker .sh-cats,
  .sh-picker .sh-cats {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 8px;
    overflow-x: auto;
    overflow-y: hidden;
    height: auto;
    max-height: none;
    background: transparent;
    border: 0;
    border-bottom: 1px solid var(--sh-line-hair);
    border-radius: 0;
    padding: 0 0 12px;
    margin: 0 0 12px;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
  }
  .sh-picker .sh-cats::-webkit-scrollbar { display: none; }
  .sh-order-card .sh-picker .sh-cats { padding: 0 0 12px; border-radius: 0; background: transparent; }

  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only),
  .sh-order-card .sh-picker .sh-cats > .sh-cat,
  .sh-picker .sh-cats > .sh-cat {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: auto;
    min-width: max-content;
    height: 36px;
    min-height: 36px;
    padding: 0 14px;
    border: 1px solid var(--sh-line);
    border-radius: 999px;
    background: var(--sh-surface);
    color: var(--sh-ink-2);
    font-size: var(--sh-t-body);
    font-weight: 600;
    white-space: nowrap;
    overflow: visible;
    scroll-snap-align: start;
  }
  .sh-picker .sh-cats > .sh-cat::after { content: none; }
  .sh-picker .sh-cats > .sh-cat .sh-cat-name { white-space: nowrap; overflow: visible; }
  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only):is(.active, [aria-selected="true"]),
  .sh-order-card .sh-picker .sh-cats > .sh-cat:is(.active, [aria-selected="true"]),
  .sh-picker .sh-cats > .sh-cat:is(.active, [aria-selected="true"]) {
    background: var(--sh-primary);
    border-color: var(--sh-primary);
    color: #fff;
    font-weight: 700;
  }
  .sh-grid .sh-picker .sh-rows,
  .sh-order-card .sh-rows,
  .sh-picker .sh-rows { height: auto; max-height: none; overflow: visible; }
}
@media (hover: hover) and (pointer: fine) {
  .sh-picker .sh-cats > .sh-cat:not(.active):not([aria-selected="true"]):hover {
    background: var(--sh-canvas);
    color: var(--sh-ink);
  }
}

.sh-main > .sh-page:not(.sh-page--read) { max-width: none; }

#benefits .sh-tiles .sh-tile { text-align: left; align-items: flex-start; }
#benefits .sh-tiles .sh-tile-kicker { margin-bottom: 5px; }
#benefits .sh-tiles .sh-tile-title { line-height: 1.5; }

#benefits > .sh-mt-14:last-child { display: block; }
#benefits > .sh-mt-14:last-child > .sh-btn { display: flex; width: 100%; }

.sh-static-guide .sh-linkbtn.guide-item,
.sh-static-guide a.sh-linkbtn {
  padding: 0 14px;
  border: 1px solid var(--sh-border);
  border-radius: var(--sh-r-sm);
  min-height: 44px;
  margin-top: 12px;
}

.sh-rail--aside > .sh-seo .sh-seo-more,
.sh-order-information > .sh-seo .sh-seo-more,
.sh-rail--main > .sh-seo .sh-seo-more {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 44px;
  padding: 0 14px;
  border: 1px solid var(--sh-border);
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
  color: var(--sh-ink);
  font-size: var(--sh-t-help);
  font-weight: 700;
  text-decoration: none;
}
.sh-rail--aside > .sh-seo .sh-seo-more > *,
.sh-order-information > .sh-seo .sh-seo-more > *,
.sh-rail--main > .sh-seo .sh-seo-more > * { color: inherit; }
@media (hover: hover) and (pointer: fine) {
  .sh-rail--aside > .sh-seo .sh-seo-more:hover,
  .sh-order-information > .sh-seo .sh-seo-more:hover,
  .sh-rail--main > .sh-seo .sh-seo-more:hover {
    border-color: var(--sh-primary);
    background: var(--sh-tint-soft);
    color: var(--sh-primary);
  }
}

.sh-order-card .sh-card-head > a.sh-guide-link.sh-nowrap,
.sh-card-head > a.sh-guide-link.sh-nowrap:not(.sh-chip) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 44px;
  padding: 0 14px;
  border-radius: var(--sh-r-sm);
  line-height: 1;
  margin: 0;
}

.sh-seo-cards {
  display: grid;

  display: block;
  columns: 1;
  column-gap: 14px;
  margin-top: 16px;
}
.sh-seo-cards > .sh-seo-card {
  break-inside: avoid;
  display: inline-block;
  width: 100%;
  margin: 0 0 14px;
}
.sh-seo-cards > .sh-seo-card:last-child { margin-bottom: 0; }
.sh-seo-card {
  min-width: 0;
  padding: 16px 18px 18px;
  background: var(--sh-surface-alt);
  border-radius: var(--sh-r-ctrl);
}

.sh-seo .sh-seo-card > .sh-h3,
.sh-seo .sh-seo-card > .sh-h3:first-of-type {
  margin: 0 0 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--sh-line-hair);
  font-size: var(--sh-t-body);
  font-weight: 700;
}
.sh-seo .sh-seo-card > .sh-seo-p {
  max-width: none;
  margin: 0 0 10px;
  font-size: var(--sh-t-body);
  line-height: 1.6;
}
.sh-seo .sh-seo-card > .sh-seo-p:last-child { margin-bottom: 0; }

.sh-grid .sh-picker .sh-row-main > .sh-row-variant,
.sh-order-card .sh-row-main > .sh-row-variant {
  flex: 0 0 auto;
  max-width: none;
  margin-left: 6px;
  padding: 0 8px;
  min-height: 22px;
  border-radius: 999px;
  background: var(--sh-surface-alt);
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
  font-weight: 600;
  white-space: nowrap;
}

.sh-rail--aside .sh-card,
.sh-rail--aside .sh-signin-more-body .sh-card,
.sh-rail--aside > .sh-seo {
  border: 0;
}

.sh-rail--aside { --sh-rail-inset: 24px; }
.sh-rail--aside .sh-rail-notice {
  padding-left: var(--sh-rail-inset);
  padding-right: var(--sh-rail-inset);
}
.sh-rail--aside .sh-cta-block {
  padding-left: var(--sh-rail-inset);
  padding-right: var(--sh-rail-inset);
}

.sh-rail--aside .sh-cta-block .sh-btn { display: flex; width: 100%; }

.sh-contact { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.sh-contact > .sh-contact-wide { grid-column: 1 / -1; }
.sh-contact > .sh-btn { width: 100%; }

.sh-tabpanel[data-sh-key="review"] .sh-review-date,
.sh-review-date,
.sh-rail-review .sh-review-date { color: var(--sh-muted-2); }

.sh-crumb { align-items: center; gap: 6px; }
.sh-crumb-ic {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  border-radius: var(--sh-radius-chip);
  background: var(--sh-plat-mark-bg, var(--sh-surface-alt));
  color: var(--sh-plat-mark-fg, var(--sh-ink-2));
  overflow: hidden;
}
.sh-crumb-ic > svg { width: 13px; height: 13px; }

.sh-picker-head > .sh-crumb {
  align-self: start;
  width: fit-content;
  max-width: 100%;
  padding: 7px 14px 7px 8px;
  border: 1px solid var(--sh-line);
  border-radius: 999px;
  background: var(--sh-surface);
  color: var(--sh-ink-2);
  font-size: var(--sh-t-help);
  font-weight: 600;
  line-height: 1.3;
}
.sh-picker-head > .sh-crumb > i { color: var(--sh-line-strong, var(--sh-border)); }

.sh-seo .sh-segtabs { gap: 6px; }
.sh-seo .sh-segtab { display: inline-flex; align-items: center; gap: 6px; }
.sh-segtab-ic {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  border-radius: var(--sh-radius-chip);
  background: var(--sh-plat-mark-bg, var(--sh-surface-alt));
  color: var(--sh-plat-mark-fg, var(--sh-ink-2));
  overflow: hidden;
}
.sh-segtab-ic > svg { width: 12px; height: 12px; }

.sh-seo .sh-seo-links {
  display: grid;
  gap: 8px;
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid var(--sh-line-hair);
}
.sh-seo .sh-seo-links > .sh-seo-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  min-height: 46px;
  padding: 0 14px;
  border: 1px solid var(--sh-border);
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
  color: var(--sh-ink);
  font-size: var(--sh-t-help);
  font-weight: 700;
  text-decoration: none;
}
.sh-seo .sh-seo-links > .sh-seo-link > * { color: inherit; }
@media (hover: hover) and (pointer: fine) {
  .sh-seo .sh-seo-links > .sh-seo-link:hover {
    border-color: var(--sh-primary);
    background: var(--sh-tint-soft);
    color: var(--sh-primary);
  }
}

@media (min-width: 768px) {
  #benefits .sh-tiles--3 .sh-tile-kicker {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    min-height: 34px;
    text-align: left;
  }
  #benefits .sh-tiles--3 .sh-tile-title {
    min-height: 44px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
  }
}

.sh-order-card .sh-row .sh-row-main,
.sh-grid .sh-picker .sh-row .sh-row-main { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; min-width: 0; }
.sh-order-card .sh-row-main > .sh-row-variant,
.sh-grid .sh-picker .sh-row-main > .sh-row-variant,
.sh-picker .sh-row-main > .sh-row-variant {
  display: inline-flex;
  align-items: center;
  order: 0;
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0 8px;
  min-height: 22px;
  height: auto;
  border-radius: 999px;
  background: var(--sh-surface-alt);
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
  font-weight: 600;
  white-space: nowrap;
}

.sh-rail--aside { --sh-rail-title-size: 19px; --sh-rail-title-weight: 700; }
.sh-rail--aside section.sh-card > :is(.sh-h2, .sh-h3):first-child,
.sh-rail--aside > .sh-seo > .sh-h2 {
  font-size: var(--sh-rail-title-size);
  font-weight: var(--sh-rail-title-weight);
  line-height: 1.35;
}

.sh-rail--aside .sh-rail-notice {
  border: 1px solid var(--sh-border);
}

@media (max-width: 767px) {
  .sh-order-card .sh-picker .sh-cats > .sh-cat,
  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only),
  .sh-picker .sh-cats > .sh-cat { height: 44px; min-height: 44px; }

  .sh-btn.sh-btn--sm:not(.sh-sr-only):not([hidden]),
  .sh-btn.sh-eventband-cta:not(.sh-sr-only):not([hidden]),
  .sh-btn.sh-rate-btn:not(.sh-sr-only):not([hidden]),
  .sh-btn.sign-in-open-btn:not(.sh-sr-only):not([hidden]),
  .sh-chip.sh-step-side:not(.sh-sr-only):not([hidden]) {
    min-block-size: 44px;
    min-height: 44px;
    height: auto;
  }

  .sh-eventband { padding-top: 6px; padding-bottom: 6px; }
}

@media (max-width: 767px) {
  #sh-eventband .sh-btn.sh-eventband-cta { min-height: 44px; height: auto; }
  #sh-brief .sh-brief-head .sh-btn.sh-rate-btn { min-height: 44px; height: auto; }
  .sh-segtabs button.sh-segtab:not(.sh-sr-only),
  .sh-seo .sh-segtabs button.sh-segtab:not(.sh-sr-only) {
    min-block-size: 44px;
    min-height: 44px;
    height: auto;
  }
  .sh-chip.sh-step-side:not(.sh-sr-only):not([hidden]),
  .sh-step .sh-chip.sh-step-side { min-height: 44px; height: auto; }
}

@media (max-width: 767px) {
  #sh-desc-sec .sh-step-side,
  #sh-desc-sec .sh-chip.sh-step-side { min-height: 44px; height: auto; }
}

@media (min-width: 768px) {
  .sh-orderbar {
    background: transparent;
    border-top: 0;
    box-shadow: none;
  }
  .sh-orderbar-inner {
    pointer-events: none;
    display: grid;

    grid-template-columns: minmax(0, 1fr) minmax(0, calc(var(--sh-aside-w, 45%) + 32px));
    max-width: none;
    padding-left: 0;
    padding-right: 0;
  }
  .sh-orderbar-body {
    grid-column: 1;
    pointer-events: auto;
    padding: var(--sh-sp-2) var(--sh-sp-5);
    background: var(--sh-surface);
    border: 1px solid var(--sh-line);
    border-bottom: 0;
    border-radius: 16px 16px 0 0;
    box-shadow: 0 -8px 24px rgba(27, 24, 48, .10);
  }
}

@media (min-width: 1280px) {
  .sh-grid > .sh-rail:last-child { padding-right: 28px; }
}
@media (min-width: 1536px) {
  .sh-grid > .sh-rail:last-child { padding-right: 64px; }
}

.sh-rail-price-row b small { color: var(--sh-muted-2); }
.sh-review-rating .sh-rating-name,
.sh-rail-rating-dist .sh-rating-name { color: var(--sh-muted-2); }
.sh-order-card .sh-brief-foot .sh-note { color: var(--sh-muted-2); }
.sh-restrict-note,
.sh-review-prod,
.sh-d4-fact-k { color: var(--sh-muted); }

@media (min-width: 768px) {

  .sh-picker .sh-picker-head,
  .sh-order-card .sh-picker-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "crumb fav"
      "search search";
    align-items: center;
    gap: 10px 12px;
    padding: 0 0 14px;
    margin: 0;
    border-bottom: 1px solid var(--sh-line);
  }
  .sh-picker-head > .sh-crumb { grid-area: crumb; }
  .sh-picker-head > :is(.sh-fav, [class*="sh-fav"]) { grid-area: fav; }
  .sh-picker-head > .sh-grow { grid-area: search; max-width: none; flex: none; }

  .sh-picker .sh-picker-body { padding-top: 14px; }

  .sh-grid .sh-picker .sh-cats,
  .sh-picker .sh-cats {
    gap: 0;
    padding: 0 16px 0 0;
    border-right: 1px solid var(--sh-line);
  }
  .sh-grid .sh-picker-body .sh-cats > .sh-cat[role="tab"],
  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only),
  .sh-picker .sh-cats > .sh-cat {
    border-radius: 8px 0 0 8px;
    background: transparent;
    box-shadow: inset 0 -1px 0 var(--sh-line-hair);
    padding: 11px 12px 11px 13px;
  }
  .sh-picker .sh-cats > .sh-cat:last-child { box-shadow: none; }
  .sh-grid .sh-picker-body .sh-cats > .sh-cat[role="tab"]:is(.active, [aria-selected="true"]),
  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only):is(.active, [aria-selected="true"]),
  .sh-picker .sh-cats > .sh-cat:is(.active, [aria-selected="true"]) {
    background: var(--sh-tint-soft);
    box-shadow: inset 0 -1px 0 var(--sh-line-hair);
    color: var(--sh-primary);
  }

  .sh-grid .sh-picker .sh-rows,
  .sh-picker .sh-rows { padding: 0; }
  .sh-grid .sh-picker .sh-rows > .sh-row,
  .sh-picker .sh-rows > .sh-row {
    border-radius: 0;
    border: 0;
    background: transparent;
    box-shadow: inset 0 -1px 0 var(--sh-line-hair);
    padding: 12px 12px 12px 13px;
  }
  .sh-picker .sh-rows > .sh-row:last-child { box-shadow: none; }
  .sh-grid .sh-picker .sh-rows > .sh-row:is(.active, [aria-selected="true"]),
  .sh-picker .sh-rows > .sh-row:is(.active, [aria-selected="true"]) {
    background: var(--sh-tint-soft);
    box-shadow: inset 3px 0 0 var(--sh-primary), inset 0 -1px 0 var(--sh-line-hair);
  }

  .sh-picker .sh-rows > .sh-rowgrp,
  .sh-picker .sh-rows > .sh-catgrp-head {
    padding: 8px 13px;
    background: var(--sh-canvas);
    color: var(--sh-muted-2);
    font-size: var(--sh-t-caption);
    font-weight: 700;
  }
}
@media (hover: hover) and (pointer: fine) {
  .sh-picker .sh-rows > .sh-row:not(.active):not([aria-selected="true"]):hover,
  .sh-picker .sh-cats > .sh-cat:not(.active):not([aria-selected="true"]):hover {
    background: var(--sh-canvas);
  }
}

@media (min-width: 768px) {
  .sh-order-card .sh-picker .sh-rows > button.sh-row,
  .sh-grid .sh-order-card .sh-picker .sh-rows > button.sh-row {
    margin: 0;
    padding: 12px 12px 12px 13px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: inset 0 -1px 0 var(--sh-line-hair);
  }
  .sh-order-card .sh-picker .sh-rows > button.sh-row:last-child,
  .sh-grid .sh-order-card .sh-picker .sh-rows > button.sh-row:last-child { box-shadow: none; }
  .sh-order-card .sh-picker .sh-rows > button.sh-row:is(.active, .is-selected, [aria-selected="true"]),
  .sh-grid .sh-order-card .sh-picker .sh-rows > button.sh-row:is(.active, .is-selected, [aria-selected="true"]) {
    border: 0;
    border-radius: 0;
    background: var(--sh-tint-soft);
    box-shadow: inset 3px 0 0 var(--sh-primary), inset 0 -1px 0 var(--sh-line-hair);
  }

  .sh-order-card .sh-picker .sh-cats > button.sh-cat,
  .sh-grid .sh-order-card .sh-picker .sh-cats > button.sh-cat {
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: inset 0 -1px 0 var(--sh-line-hair);
    padding: 11px 12px 11px 13px;
  }
  .sh-order-card .sh-picker .sh-cats > button.sh-cat:last-child,
  .sh-grid .sh-order-card .sh-picker .sh-cats > button.sh-cat:last-child { box-shadow: none; }
  .sh-order-card .sh-picker .sh-cats > button.sh-cat:is(.active, [aria-selected="true"]),
  .sh-grid .sh-order-card .sh-picker .sh-cats > button.sh-cat:is(.active, [aria-selected="true"]) {
    border: 0;
    border-radius: 0;
    background: var(--sh-tint-soft);
    box-shadow: inset 0 -1px 0 var(--sh-line-hair);
    color: var(--sh-primary);
  }
}

.sh-seo-tablewrap { overflow-x: auto; margin: 12px 0 0; -webkit-overflow-scrolling: touch; }
.sh-seo-table {
  width: 100%;
  min-width: 320px;
  border-collapse: collapse;
  font-size: var(--sh-t-help);
  line-height: 1.45;
}
.sh-seo-table th,
.sh-seo-table td {
  padding: 8px 10px;
  border-bottom: 1px solid var(--sh-line-hair);
  text-align: left;
  white-space: nowrap;
}
.sh-seo-table thead th {
  color: var(--sh-muted-2);
  font-size: var(--sh-t-caption);
  font-weight: 700;
  border-bottom: 1px solid var(--sh-line);
}
.sh-seo-table tbody th {
  color: var(--sh-ink);
  font-weight: 600;
  white-space: normal;
  word-break: keep-all;
}
.sh-seo-table td.sh-num { text-align: right; font-variant-numeric: tabular-nums; color: var(--sh-muted); }
.sh-seo-table tbody tr:last-child :is(th, td) { border-bottom: 0; }

.sh-seo-list { margin: 8px 0 0; padding-left: 18px; }
.sh-seo-list > li {
  margin: 0 0 6px;
  color: var(--sh-muted);
  font-size: var(--sh-t-body);
  line-height: 1.6;
  word-break: keep-all;
}
.sh-seo-list > li:last-child { margin-bottom: 0; }

.sh-seo-zone { margin-top: 28px; }
.sh-seo-zone > .sh-seo {
  max-width: none;
  margin: 0;
  width: 100%;
}

.sh-picker-head > .sh-crumb {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.sh-picker-head > .sh-crumb > * { flex: 0 0 auto; }
.sh-picker-head > .sh-crumb > .sh-truncate,
.sh-picker-head > .sh-crumb > span:not(.sh-crumb-ic) { min-width: 0; }

body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main .sh-card-head:has(.sh-h1) {
  align-items: center;
}
body:is([data-route="signin"], [data-page="/neworder"]) .sh-rail--main .sh-card-head:has(.sh-h1) > * {
  align-self: center;
}

.sh-orderbar-copy { align-items: center; }

.sh-brief-head { align-items: center; }
@media (min-width: 768px) {
  .sh-order-card .sh-brief-head { align-items: center; }
}

.sh-step { align-items: center; }
.sh-step > * { align-self: center; }

.sh-desc .sh-d4-row > .sh-d4-mk {
  align-items: center;
  min-height: calc(var(--sh-d4-line, 1.65) * 1em);
  padding-top: 0;
}
.sh-desc .sh-d4-dotlist .sh-d4-mk,
.sh-desc .sh-d4-tl .sh-d4-mk { padding-top: 0; }

.sh-effect { align-items: flex-start; }
.sh-effect > .sh-effect-icon { align-self: flex-start; margin-top: 0; }

.sh-desc .sh-step,
.sh-desc-section .sh-step { align-items: center; }
.sh-desc .sh-step > *,
.sh-desc-section .sh-step > * { align-self: center; }

#sh-desc-sec .sh-step,
#sh-desc-host .sh-step,
#sh-desc-sec [id^="order_step"] .sh-step,
#sh-desc-host [id^="order_step"] .sh-step { align-items: center; }
#sh-desc-sec .sh-step > *,
#sh-desc-host .sh-step > *,
#sh-desc-sec [id^="order_step"] .sh-step > *,
#sh-desc-host [id^="order_step"] .sh-step > * { align-self: center; }

#sh-desc-sec > .sh-step,
#sh-desc-sec > #order_step3 > .sh-step,
#sh-desc-host > .sh-step,
#sh-desc-host > #order_step3 > .sh-step { align-items: center; }

.sh-orderbar-copy,
.sh-orderbar .sh-orderbar-copy { align-items: center; }
.sh-orderbar-copy > * { align-self: center; }
.sh-repeat-head { align-items: center; }
.sh-repeat-head > * { align-self: center; }

.sh-orderbar-copy > .sh-money-short,
.sh-orderbar .sh-money-short { margin-top: 0; align-self: center; }

.sh-entry-modal {
  --sh-modal-pad: 0;
  position: relative;
  overflow-x: hidden;
  overflow-y: auto;
  width: min(480px, 100%);
  max-width: 480px;
  padding: 0;
  text-align: left;
}
.sh-entry-x {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  width: 44px;
  height: 44px;
  border-radius: var(--sh-r-pill);
  background: var(--sh-surface);
  color: var(--sh-ink);
}
.sh-entry-art {
  position: relative;
  display: block;
  aspect-ratio: 4 / 5;
  background: var(--sh-surface-alt);
  overflow: hidden;
}
.sh-entry-art > img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}
.sh-entry-cta {
  display: block;
  color: inherit;
}
.sh-entry-cta:focus-visible {
  outline: 3px solid var(--sh-primary);
  outline-offset: -3px;
}
.sh-entry-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 var(--sh-sp-4) env(safe-area-inset-bottom);
  background: var(--sh-surface);
}
.sh-entry-hide, .sh-entry-close {
  min-height: 44px;
  padding: var(--sh-sp-2);
  color: var(--sh-muted);
  font-size: var(--sh-t-sm);
}
.sh-entry-hide:hover, .sh-entry-close:hover {
  color: var(--sh-primary);
}
@media (max-width: 767px) {
  .sh-entry-modal { border-radius: var(--sh-r-card) var(--sh-r-card) 0 0; }
}
@media (max-width: 390px) {
  .sh-entry-art { aspect-ratio: 3 / 4; }
}

.sh-entry-scrim.open { animation: sh-entry-in 180ms var(--sh-ease-out) both; }
.sh-entry-scrim .sh-entry-modal { animation: none; }
@keyframes sh-entry-in { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) {
  .sh-entry-scrim, .sh-entry-modal { animation: none; transition: none; }
}

.sh-chip--brand {
  border-color: var(--sh-tint-line, var(--sh-line));
  background: var(--sh-tint-soft);
  color: var(--sh-primary);
  font-weight: 700;
}

.sh-banner,
.sh-banner--side {
  border: 0;
  box-shadow: var(--sh-sh-card, 0 2px 12px rgba(27, 24, 48, .06));
}
.sh-banner-arrow {
  background: rgba(255, 255, 255, .92);
  color: var(--sh-ink);
  box-shadow: 0 2px 8px rgba(27, 24, 48, .18);
  transition: background-color 120ms var(--sh-ease-out), transform 120ms var(--sh-ease-out);
}
.sh-banner-arrow > svg { color: inherit; }
@media (hover: hover) and (pointer: fine) {
  .sh-banner-arrow:hover { background: #fff; transform: scale(1.06); }
}
.sh-banner-arrow:active { transform: scale(.94); background: var(--sh-tint-soft); }
.sh-banner-arrow:focus-visible { outline: 2px solid var(--sh-primary); outline-offset: 2px; }

.sh-banner,
.sh-banner--side {
  aspect-ratio: auto;
  overflow: visible;
  background: transparent;
  box-shadow: none;
}
.sh-banner-stage {

  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 2.334 / 1;
  overflow: hidden;
  border-radius: var(--sh-r-card, 16px);
  background: var(--sh-canvas);
  box-shadow: var(--sh-sh-card, 0 2px 12px rgba(27, 24, 48, .06));
}
@media (max-width: 767px) {
  .sh-banner-stage { aspect-ratio: 1.85 / 1; }
}
.sh-banner-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  margin-top: 8px;
}

.sh-banner-nav .sh-banner-arrow {
  position: static;
  transform: none;
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  border-radius: var(--sh-r-sm);
  background: transparent;
  box-shadow: none;
  color: var(--sh-muted-2);
  transition: background-color 120ms var(--sh-ease-out), color 120ms var(--sh-ease-out);
}
@media (hover: hover) and (pointer: fine) {
  .sh-banner-nav .sh-banner-arrow:hover { background: var(--sh-canvas); color: var(--sh-ink); transform: none; }
}
.sh-banner-nav .sh-banner-arrow:active { background: var(--sh-tint-soft); color: var(--sh-primary); transform: none; }
.sh-banner-nav .sh-banner-dots {
  position: static;
  transform: none;
  display: flex;
  align-items: center;
  gap: 2px;
  padding: 0;
  background: transparent;
}

.sh-banner-nav .sh-banner-dot::before { background: var(--sh-border); }
.sh-banner-nav .sh-banner-dot.on::before { background: var(--sh-primary); width: 18px; border-radius: 999px; }

.sh-banner-stage { container-type: inline-size; }

.sh-banner-stage picture { display: block; width: 100%; height: 100%; }
@media (min-width: 768px) {
  .sh-banner-stage:has(.sh-banner-link > picture:only-child) { aspect-ratio: 2.1 / 1; }
}
.sh-banner-link { color: inherit; text-decoration: none; }
.sh-banner-scrim {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(6, 2, 20, .86) 0%, rgba(6, 2, 20, .62) 34%, rgba(6, 2, 20, 0) 60%);
}
.sh-banner-copy {
  position: absolute;
  left: 7.5%;
  top: 50%;
  z-index: 2;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 58%;
  color: #fff;
  text-align: left;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .25);
  pointer-events: none;

  --sh-bn-a: #C4B5FD; --sh-bn-b: #A78BFA;
  --sh-bn-cta-a: #5B21B6; --sh-bn-cta-b: #7C3AED;
  --sh-bn-glow: rgba(139, 92, 246, .42);
}
.sh-banner-copy--blue  { --sh-bn-a: #93C5FD; --sh-bn-b: #38BDF8; --sh-bn-cta-a: #1D4ED8; --sh-bn-cta-b: #2563EB; --sh-bn-glow: rgba(59, 130, 246, .42); }
.sh-banner-copy--cyan  { --sh-bn-a: #A5F3FC; --sh-bn-b: #22D3EE; --sh-bn-cta-a: #155E75; --sh-bn-cta-b: #0E7490; --sh-bn-glow: rgba(6, 182, 212, .4); }
.sh-banner-copy--teal  { --sh-bn-a: #99F6E4; --sh-bn-b: #2DD4BF; --sh-bn-cta-a: #115E59; --sh-bn-cta-b: #0F766E; --sh-bn-glow: rgba(20, 184, 166, .4); }
.sh-banner-copy--coral { --sh-bn-a: #FF9A3D; --sh-bn-b: #FF4D4D; --sh-bn-cta-a: #DC2626; --sh-bn-cta-b: #C2410C; --sh-bn-glow: rgba(255, 80, 60, .4); }
.sh-banner-copy--amber { --sh-bn-a: #FDE68A; --sh-bn-b: #F59E0B; --sh-bn-cta-a: #92400E; --sh-bn-cta-b: #B45309; --sh-bn-glow: rgba(245, 158, 11, .4); }
.sh-banner-kicker {
  font-size: max(2cqw, 11px);
  font-weight: 600;
  letter-spacing: .01em;
  color: rgba(255, 255, 255, .74);
  margin-bottom: 1.5cqw;
}
.sh-banner-title {
  display: block;
  margin: 0;
  font-size: max(4.3cqw, 19px);
  line-height: 1.16;
  font-weight: 700;
  letter-spacing: -.015em;
  text-wrap: balance;
}
.sh-banner-accent {
  font-style: normal;
  background: linear-gradient(90deg, var(--sh-bn-a) 0%, var(--sh-bn-b) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: none;
}
.sh-banner-sub {
  font-size: max(1.85cqw, 11.5px);
  font-weight: 400;
  color: rgba(255, 255, 255, .88);
  margin: 2.2cqw 0 3cqw;
}
.sh-banner-cta {
  display: inline-flex;
  align-items: center;
  height: 5.4cqw;
  padding: 0 3.8cqw;
  border-radius: 1cqw;
  font-size: max(2.05cqw, 12px);
  font-weight: 700;
  color: #fff;
  text-shadow: none;
  background: linear-gradient(90deg, var(--sh-bn-cta-a), var(--sh-bn-cta-b));
  box-shadow: 0 .7cqw 2cqw var(--sh-bn-glow), inset 0 1px 0 rgba(255, 255, 255, .25);
  transition: transform 180ms var(--sh-ease-out), filter 180ms var(--sh-ease-out), box-shadow 180ms var(--sh-ease-out);
}
@media (hover: hover) and (pointer: fine) {
  .sh-banner-link:hover .sh-banner-cta { transform: translateY(-2px); filter: brightness(1.08); box-shadow: 0 1cqw 2.6cqw var(--sh-bn-glow), inset 0 1px 0 rgba(255, 255, 255, .25); }

  .sh-banner-link:hover img { opacity: 1; }
}
.sh-banner-link:focus-visible { outline: 3px solid var(--sh-primary); outline-offset: 2px; }
.sh-banner-link:focus-visible .sh-banner-cta { outline: 2px solid #fff; outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { .sh-banner-cta { transition: none; } }

@container (max-width: 430px) {
  .sh-banner-stage img { object-position: 100% 50%; }
  .sh-banner-scrim { background: linear-gradient(90deg, rgba(6, 2, 20, .94) 0%, rgba(6, 2, 20, .84) 40%, rgba(6, 2, 20, .45) 62%, rgba(6, 2, 20, 0) 84%); }
  .sh-banner-copy { max-width: 62%; }
  .sh-banner-kicker { font-size: 3.1cqw; margin-bottom: 1.4cqw; }
  .sh-banner-title { font-size: 6.2cqw; line-height: 1.18; }
  .sh-banner-sub { font-size: 3.2cqw; margin: 2cqw 0 3.2cqw; }
  .sh-banner-cta { font-size: 3.3cqw; height: 8.6cqw; padding: 0 4.8cqw; border-radius: 2cqw; }
}

.sh-seo .sh-segtabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  width: 100%;
  max-width: none;
  margin-bottom: 16px;
  padding: 4px;
  border-radius: var(--sh-r-ctrl);
  background: var(--sh-canvas);
  overflow: visible;
}
.sh-seo .sh-segtabs > .sh-segtab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  height: auto;
  padding: 0 6px;
  border: 0;
  border-radius: var(--sh-r-sm);
  background: transparent;
  color: var(--sh-muted);
  font-size: var(--sh-t-help);
  font-weight: 700;
  white-space: nowrap;
}
.sh-seo .sh-segtabs > .sh-segtab:is(.active, [aria-selected="true"]) {
  background: var(--sh-surface);
  color: var(--sh-ink);
  box-shadow: 0 1px 3px rgba(27, 24, 48, .10);
}
.sh-seo .sh-segtab-ic { width: 20px; height: 20px; border-radius: var(--sh-radius-chip); }
.sh-seo .sh-segtab-ic > svg { width: 13px; height: 13px; }

.sh-seo .sh-seo-fold {
  margin-top: 14px;
  padding-top: 0;
  border-top: 0;
}
.sh-seo .sh-seo-fold > summary {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 46px;
  padding: 0 16px;
  border: 1px solid var(--sh-border);
  border-radius: var(--sh-r-sm);
  background: var(--sh-surface);
  color: var(--sh-ink);
  font-size: var(--sh-t-body);
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}
.sh-seo .sh-seo-fold > summary::after {
  content: "";
  width: 8px;
  height: 8px;
  border-right: 2px solid var(--sh-primary);
  border-bottom: 2px solid var(--sh-primary);
  transform: translateY(-2px) rotate(45deg);
  transition: transform 140ms var(--sh-ease-out);
}
.sh-seo .sh-seo-fold[open] > summary::after { transform: translateY(2px) rotate(-135deg); }
.sh-seo .sh-seo-fold[open] > summary { margin-bottom: 14px; }
@media (hover: hover) and (pointer: fine) {
  .sh-seo .sh-seo-fold > summary:hover { border-color: var(--sh-primary); background: var(--sh-tint-soft); color: var(--sh-primary); }
}

.sh-rail--aside > .sh-seo .sh-seo-card { padding: 18px 20px 20px; }
.sh-rail--aside > .sh-seo .sh-seo-p { font-size: var(--sh-t-body); line-height: 1.62; }
.sh-rail--aside > .sh-seo .sh-seo-card > .sh-h3 { font-size: var(--sh-t-card); }

.sh-banner-nav { max-width: 100%; flex-wrap: wrap; }
.sh-banner-nav .sh-banner-arrow {
  position: static;
  left: auto;
  right: auto;
  top: auto;
  flex: 0 0 auto;
}

.sh-rail--aside > .sh-seo .sh-seo-card { padding: 20px 22px 22px; }
.sh-rail--aside > .sh-seo .sh-seo-card > .sh-h3 {
  font-size: var(--sh-t-card);
  line-height: 1.4;
  margin-bottom: 13px;
}
.sh-rail--aside > .sh-seo .sh-seo-p { margin-bottom: 15px; }
.sh-rail--aside > .sh-seo .sh-seo-p:last-child { margin-bottom: 0; }

.sh-rail--aside > .sh-seo :is(.sh-seo-tablewrap, .sh-seo-list) { margin: 15px 0 0; }

.sh-banner-nav { display: none; }
.sh-banner-stage > .sh-banner-dots {

  position: absolute;
  left: auto;
  right: 8px;
  bottom: 6px;
  transform: none;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 0;
  padding: 0;

  background: none;
}
.sh-banner-stage > .sh-banner-dots > .sh-banner-dot {
  width: 14px;
  height: 14px;
  min-width: 0;
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.sh-banner-stage > .sh-banner-dots > .sh-banner-dot::before {
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .5);
  box-shadow: 0 0 0 1px rgba(10, 6, 24, .28), 0 1px 2px rgba(10, 6, 24, .45);
  transition: width 160ms var(--sh-ease-out), background-color 160ms var(--sh-ease-out);
}
.sh-banner-stage > .sh-banner-dots > .sh-banner-dot.on::before {
  width: 13px;
  background: #fff;
}

@media (max-width: 767px) {

  .sh-banner .sh-banner-stage > .sh-banner-dots > .sh-banner-dot {
    width: 44px;
    min-width: 44px;
    height: 44px;
  }
  .sh-banner-stage > .sh-banner-dots { right: 6px; bottom: 0; }
}

.sh-tiles--benefit { gap: 10px; }
.sh-tiles--benefit > .sh-tile--benefit,
.sh-card .sh-tiles--benefit > .sh-tile--benefit { text-align: left; align-items: flex-start; }
.sh-tile--benefit {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  padding: 16px 14px 15px;
  text-align: left;
  border: 1px solid var(--sh-primary-line, #DCC9FA);
  border-radius: var(--sh-r-box);
  background:
    linear-gradient(180deg, rgba(93, 0, 200, .055) 0%, rgba(93, 0, 200, 0) 62%),
    var(--sh-surface);
}
.sh-tiles--benefit > .sh-tile--benefit > .sh-tile-ic {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  margin-bottom: 11px;
  border-radius: var(--sh-r-sm);
  background: var(--sh-tint, #F4EDFD);
  color: var(--sh-primary);
}
.sh-tiles--benefit > .sh-tile--benefit > .sh-tile-ic > svg { width: 17px; height: 17px; }
.sh-tiles--benefit > .sh-tile--benefit > .sh-tile-kicker {
  margin: 0 0 5px;
  font-size: var(--sh-t-caption);
  line-height: 1.35;
  letter-spacing: -.1px;
}
.sh-tiles--benefit > .sh-tile--benefit > .sh-tile-title {
  margin: 0;
  font-size: var(--sh-t-body);
  font-weight: 700;
  line-height: 1.5;
  color: var(--sh-ink);
}

.sh-tiles--benefit .sh-tile-num {
  margin-right: 3px;
  font-size: var(--sh-t-card);
  font-weight: 700;
  color: var(--sh-primary);
  letter-spacing: -.4px;
  font-variant-numeric: tabular-nums;
}
.sh-tiles--benefit .sh-tile-line { display: block; }
.sh-tiles--benefit .sh-tile-line + .sh-tile-line { margin-top: 2px; }

@media (max-width: 767px) {

  .sh-tiles--benefit { grid-template-columns: 1fr; gap: 8px; }
  .sh-tile--benefit { flex-direction: row; align-items: center; gap: 12px; padding: 13px 14px; }
  .sh-tile--benefit > .sh-tile-ic { margin-bottom: 0; flex: 0 0 auto; }
  .sh-tile--benefit > .sh-tile-kicker { margin-bottom: 2px; }
  .sh-tile--benefit > :is(.sh-tile-kicker, .sh-tile-title) { flex: 0 1 auto; }
}

@media (max-width: 767px) {

  .sh-grid .sh-picker .sh-picker-body,
  .sh-grid .sh-picker-body,
  .sh-order-card .sh-picker-body,
  .sh-picker .sh-picker-body {
    display: grid;
    grid-template-columns: minmax(0, 40%) minmax(0, 1fr);
    grid-template-rows: auto;
    align-items: stretch;
    height: auto;
    min-height: 0;
    border-top: 1px solid var(--sh-line-hair);
  }

  .sh-picker .sh-picker-body:has(.sh-cats:not(:has(> .sh-cat:nth-of-type(2))):not(:has(> .sh-cat-group))) { grid-template-columns: minmax(0, 1fr); }

  .sh-grid .sh-picker .sh-cats,
  .sh-order-card .sh-picker .sh-cats,
  .sh-picker .sh-cats {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0;
    margin: 0;
    padding: 0;
    height: auto;
    max-height: none;
    overflow: visible;

    align-self: start;
    border: 0;
    border-radius: 0;
    background: var(--sh-canvas);
    scroll-snap-type: none;
    -webkit-mask-image: none;
            mask-image: none;
  }
  .sh-grid .sh-picker-body .sh-cats > .sh-cat[role="tab"],
  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only),
  .sh-order-card .sh-picker .sh-cats > .sh-cat,
  .sh-picker .sh-cats > .sh-cat {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    width: 100%;
    min-width: 0;
    height: auto;
    min-height: 44px;
    padding: 10px 8px 10px 10px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: inset 0 -1px 0 var(--sh-line-hair);
    color: var(--sh-ink-2);
    font-size: var(--sh-t-caption);
    font-weight: 400;
    line-height: 1.3;
    text-align: left;
    white-space: normal;
    scroll-snap-align: none;
  }
  .sh-picker .sh-cats > .sh-cat:last-child { box-shadow: none; }
  .sh-picker .sh-cats > .sh-cat .sh-cat-name {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    height: auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    overflow: hidden;
    white-space: normal;
    word-break: keep-all;
    line-height: 1.3;
  }
  .sh-grid .sh-picker-body .sh-cats > .sh-cat[role="tab"]:is(.active, [aria-selected="true"]),
  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only):is(.active, [aria-selected="true"]),
  .sh-order-card .sh-picker .sh-cats > .sh-cat:is(.active, [aria-selected="true"]),
  .sh-picker .sh-cats > .sh-cat:is(.active, [aria-selected="true"]) {
    background: var(--sh-tint-soft);
    border: 0;
    border-radius: 0;
    box-shadow: inset 0 -1px 0 var(--sh-line-hair);
    color: var(--sh-primary);
    font-size: var(--sh-t-caption);
    font-weight: 600;
  }
  .sh-picker .sh-cats > .sh-cat:is(.active, [aria-selected="true"]) .sh-cat-name { background: transparent; border: 0; }
  .sh-picker .sh-cats > .sh-cat:focus-visible { outline: 2px solid var(--sh-primary); outline-offset: -2px; }
  .sh-picker .sh-cats > .sh-cat:focus-visible .sh-cat-name { outline: 0; }

  .sh-grid .sh-picker .sh-rows,
  .sh-order-card .sh-rows,
  .sh-picker .sh-rows {
    align-self: stretch;
    height: auto;
    max-height: none;
    overflow: visible;
    padding: 0;
    min-width: 0;
    border-left: 1px solid var(--sh-line);
  }

  .sh-picker .sh-picker-body:has(.sh-cats:not(:has(> .sh-cat:nth-of-type(2)))) .sh-rows { border-left: 0; }

  .sh-grid .sh-picker .sh-rows,
  .sh-order-card .sh-rows,
  .sh-picker .sh-rows { gap: 0; }
  .sh-grid .sh-order-card .sh-picker button.sh-row,
  .sh-grid .sh-picker .sh-rows > button.sh-row,
  .sh-order-card .sh-picker .sh-rows > button.sh-row,
  .sh-picker .sh-rows > .sh-row {
    margin: 0;
    padding: 10px 10px 10px 12px;
    row-gap: 4px;
    column-gap: 8px;
    min-height: 44px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: inset 0 -1px 0 var(--sh-line-hair);
  }
  .sh-grid .sh-order-card .sh-picker button.sh-row:last-child,
  .sh-grid .sh-picker .sh-rows > button.sh-row:last-child,
  .sh-order-card .sh-picker .sh-rows > button.sh-row:last-child,
  .sh-picker .sh-rows > .sh-row:last-child { box-shadow: none; }
  .sh-grid .sh-order-card .sh-picker button.sh-row:is(.active, .is-selected, [aria-selected="true"]),
  .sh-grid .sh-picker .sh-rows > button.sh-row:is(.active, .is-selected, [aria-selected="true"]),
  .sh-order-card .sh-picker .sh-rows > button.sh-row:is(.active, .is-selected, [aria-selected="true"]),
  .sh-picker .sh-rows > .sh-row:is(.active, .is-selected, [aria-selected="true"]) {
    border: 0;
    border-radius: 0;
    background: var(--sh-tint-soft);
    box-shadow: inset 3px 0 0 var(--sh-primary), inset 0 -1px 0 var(--sh-line-hair);
  }
  .sh-grid .sh-picker .sh-row-name,
  .sh-order-card .sh-picker .sh-row-name,
  .sh-picker .sh-row-name {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    white-space: normal;
    word-break: keep-all;
    font-size: var(--sh-t-help);
    line-height: 1.3;
  }
  .sh-grid .sh-picker .sh-row-price,
  .sh-order-card .sh-picker .sh-row-price,
  .sh-picker .sh-row-price { font-size: var(--sh-t-help); }

  .sh-grid .sh-picker .sh-rows > .sh-row .sh-row-main,
  .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-main,
  .sh-picker .sh-rows > .sh-row .sh-row-main { display: contents; }

  .sh-grid .sh-picker .sh-rows > .sh-row .sh-row-name,
  .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-name,
  .sh-picker .sh-rows > .sh-row .sh-row-name { flex: 1 1 calc(100% - 33px); min-width: 0; order: 0; }
  .sh-grid .sh-picker .sh-rows > .sh-row .sh-favbtn,
  .sh-order-card .sh-picker .sh-rows > .sh-row .sh-favbtn,
  .sh-grid .sh-picker .sh-row .sh-favbtn,
  .sh-picker .sh-rows > .sh-row .sh-favbtn { order: 0; margin-left: 8px; align-self: flex-start; }
  .sh-picker .sh-rows > .sh-row .sh-row-variant,
  .sh-picker .sh-rows > .sh-row .sh-row-consult,
  .sh-picker .sh-rows > .sh-row .sh-badge { order: 1; margin-left: 0; padding-left: 6px; padding-right: 6px; }
  .sh-grid .sh-picker .sh-rows > .sh-row .sh-row-price,
  .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-price,
  .sh-picker .sh-rows > .sh-row .sh-row-price { order: 2; margin-left: auto; }

  .sh-grid .sh-picker .sh-row .sh-favbtn,
  .sh-order-card .sh-picker .sh-row .sh-favbtn,
  .sh-picker .sh-row .sh-favbtn { font-size: var(--sh-t-card); }
  .sh-picker .sh-rows > .sh-row .sh-row-variant,
  .sh-picker .sh-rows > .sh-row .sh-badge { font-size: var(--sh-t-caption); }
}

.sh-sidebar .sh-navg-label,
.sh-drawer .sh-navg-label { color: var(--sh-muted-2); }
.sh-sidebar .sh-user-point,
.sh-drawer .sh-user-point { color: var(--sh-muted); }

.sh-grid .sh-picker .sh-cats,
.sh-order-card .sh-picker .sh-cats,
.sh-picker .sh-cats,
.sh-grid .sh-picker .sh-rows,
.sh-order-card .sh-picker .sh-rows,
.sh-order-card .sh-rows,
.sh-picker .sh-rows {
  height: auto;
  max-height: none;
  overflow: visible;
}
.sh-grid .sh-picker-body,
.sh-picker .sh-picker-body {
  grid-template-rows: auto;
  height: auto;
  min-height: 0;
}

@media (max-width: 767px) {
  .sh-grid .sh-rail-price-row .sh-plat-icon,
  .sh-rail-price-row .sh-plat-icon {
    width: var(--sh-rail-price-icon-size);
    height: var(--sh-rail-price-icon-size);
    min-width: var(--sh-rail-price-icon-size);
    min-height: 0;
    flex: 0 0 var(--sh-rail-price-icon-size);
    border-radius: var(--sh-r-xs);
  }
  .sh-grid .sh-rail-price-row .sh-plat-icon svg,
  .sh-rail-price-row .sh-plat-icon svg { width: var(--sh-rail-price-icon-glyph-size); height: var(--sh-rail-price-icon-glyph-size); }
}

@media (max-width: 767px) {
  .sh-app { max-width: none; margin: 0; }
  .sh-tabbar-inner,
  .sh-mobar-inner { max-width: none; }
}

.sh-banner-stage { background: #0B0612; }

.sh-banner-stage.sh-banner-stage--wait { background: var(--sh-surface-alt); }
.sh-banner-stage--wait .sh-banner-slide img,
.sh-banner-stage--wait :is(.sh-banner-scrim, .sh-banner-copy) { visibility: hidden; }

.sh-banner-slide {
  opacity: 1;
  visibility: hidden;
  transform: translateX(100%);
  transition: transform 420ms var(--sh-ease), visibility 0s 420ms;
  will-change: transform;
}
.sh-banner-slide.on { visibility: visible; transform: translateX(0); transition: transform 420ms var(--sh-ease), visibility 0s 0s; }
.sh-banner-slide.out { visibility: visible; transition: transform 420ms var(--sh-ease), visibility 0s 420ms; }
.sh-banner-stage { touch-action: pan-y; }
@media (prefers-reduced-motion: reduce) {
  .sh-banner-slide, .sh-banner-slide.on, .sh-banner-slide.out { transition: none; }
}

.sh-switch {
  inline-size: 44px;
  block-size: 24px;
  min-inline-size: 44px;
  min-block-size: 24px;
  width: 44px;
  height: 24px;
}
textarea.sh-input,
textarea.form-control,
.sh-textarea {
  height: auto;
  min-height: 110px;
  min-block-size: 110px;
  padding: 12px 16px;
  line-height: 1.5;
  resize: vertical;
}
@media (max-width: 767px) {
  .sh-order-card .sh-picker,
  .sh-picker {
    border-radius: var(--sh-r-card, 16px);
    overflow: hidden;
  }
  .sh-order-card .sh-picker > .sh-btn.sh-btn--soft.sh-btn--sm,
  .sh-grid .sh-picker > .sh-btn.sh-btn--soft.sh-btn--sm,
  .sh-picker > .sh-btn.sh-btn--soft.sh-btn--sm,
  .sh-picker > .sh-btn--soft {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 48px;
    margin: 0;
    padding: 0 16px;
    border: 0;
    border-radius: 0;
    background: var(--sh-surface);
    box-shadow: inset 0 1px 0 var(--sh-line-hair);
    color: var(--sh-muted);
    font-size: var(--sh-t-help);
    font-weight: 600;
  }

  .sh-picker > .sh-btn.sh-btn--soft.sh-btn--sm::after,
  .sh-picker > .sh-btn--soft::after { content: none; }
  .sh-picker .sh-brief { border-top: 1px solid var(--sh-line-hair); }
}

@media (max-width: 767px) {
  .sh-grid .sh-picker .sh-cats,
  .sh-order-card .sh-picker .sh-cats,
  .sh-picker .sh-cats { background: var(--sh-surface); }
  .sh-order-card .sh-picker > .sh-btn.sh-btn--soft.sh-btn--sm,
  .sh-grid .sh-picker > .sh-btn.sh-btn--soft.sh-btn--sm,
  .sh-picker > .sh-btn.sh-btn--soft.sh-btn--sm,
  .sh-picker > .sh-btn--soft { margin: 0; }
  .sh-picker .sh-brief { margin-top: 0; padding-top: 16px; border-top: 1px solid var(--sh-line-hair); }
}

@media (max-width: 767px) {

  .sh-order-card .sh-picker > .sh-order-divider,
  .sh-picker > .sh-order-divider { display: none; }
  .sh-order-card .sh-picker .sh-brief,
  .sh-picker .sh-brief { margin: 0; padding: 16px 16px 16px; border-top: 1px solid var(--sh-line-hair); }
  .sh-picker > .sh-sr-only { position: absolute; }
}

@media (max-width: 767px) {

  body[data-page="/neworder"] #order-form,
  body[data-route="signin"] .sh-rail--main > section.sh-card:first-of-type,
  .sh-grid .sh-rail--main .sh-order-card,
  .sh-rail--main .sh-order-card,
  .sh-card.sh-order-card,
  .sh-order-card {
    border: 0;
    background: var(--sh-surface);
    border-radius: var(--sh-r-card, 16px);
    padding: 20px 16px;
    box-shadow: var(--sh-sh-card, 0 2px 12px rgba(27, 24, 48, .06));
  }
  .sh-order-card .sh-picker,
  .sh-picker {
    border: 1px solid var(--sh-line-hair-2, var(--sh-line));
    border-radius: var(--sh-r-ctrl);
  }

  .sh-order-card .sh-plats { margin-left: -16px; margin-right: -16px; padding-left: 16px; padding-right: 16px; }
}

@media (max-width: 767px) {
  .sh-order-card .sh-cms-note--inline { margin-top: 0; margin-bottom: 0; }
  .sh-order-card #fields > .sh-step:first-child,
  .sh-order-card #fields > .sh-step.sh-mt-22:first-child { margin-top: 0; }
}

@media (max-width: 767px) {

  :root { --sh-pad-card: 20px; }
  .sh-card, .sh-card--tight,
  .sh-rail--aside .sh-card.sh-card--tight,
  .sh-rail--aside .sh-signin-more-body > .sh-card.sh-card--tight,
  form#order-form.sh-card, .sh-order-card.sh-card,
  body[data-page="/neworder"] #order-form, body[data-route="signin"] .sh-rail--main > section.sh-card:first-of-type { padding: 20px; }
  .sh-d2b-page .sh-card + .sh-card { margin-top: 0; }
  .sh-rail--aside section.sh-card > :is(.sh-h2, .sh-h3):first-child { margin-bottom: 12px; }
  .sh-order-card .sh-order-divider { margin-left: -20px; margin-right: -20px; }
  .sh-order-card .sh-plats, .sh-main .sh-grid .sh-order-card .sh-plats { margin-left: -20px; margin-right: -20px; padding-left: 20px; padding-right: 20px; }
  .sh-page-head { margin-bottom: 0; }
  .sh-page > .sh-mt-16 { margin-top: 0; }
  .sh-page--topup > .sh-card { margin-top: 0; }
  .sh-signin-more-body { gap: 24px; }
  .sh-order-card #order_step1 { margin-top: 0; }
  .sh-stack--sm > .sh-mt-10, .sh-stack--sm > #sh-linknote { margin-top: 0; }
  .sh-stack--sm { gap: 12px; margin-top: 0; }
  .sh-card > .sh-h2:first-child, .sh-card > .sh-h3:first-child,
  .sh-card > .sh-h2.sh-mb-16, .sh-card > .sh-h2.sh-mb-18,
  .sh-rail--aside .sh-card.sh-card--tight > h2:first-child { margin-bottom: 12px; padding-bottom: 0; }
  #link-guide { gap: 12px; }
  #link-guide > .sh-h2 { margin-bottom: 0; padding-bottom: 0; }
  #link-guide .sh-stack--elements + .sh-linkbtn { margin-top: 12px; }
  .sh-step, .sh-order-card .sh-step { margin-bottom: 16px; }
  .sh-page--orders .sh-list { gap: 0; }

  .sh-h1, .sh-d2b-page .sh-h1, .sh-order-card .sh-card-head .sh-h1,
  body:not(.sh-auth-page) .sh-main :is(.sh-page, .sh-grid) .sh-h1 { font-size: var(--sh-t-page); font-weight: 700; letter-spacing: -.4px; line-height: 1.3; }
  .sh-h2, .sh-rail-live .sh-h2, h2.sh-h3, .sh-card-head h2.sh-h2,
  .sh-page--account .sh-benefit-card .sh-loyalty-head h2 { font-size: var(--sh-t-card); font-weight: 700; letter-spacing: -.2px; line-height: 1.35; }
  .sh-step-title, #sh-desc-sec .sh-step-title, .sh-order-card .sh-step-title, .sh-money-head .sh-step-title,
  .sh-onboarding h3.sh-h3, .sh-stack--elements h3.sh-h3, .sh-card .sh-h3 { font-size: var(--sh-t-card); font-weight: 700; color: var(--sh-ink); }
  .sh-row-sub, .sh-row-meta, .sh-row-rating { font-size: var(--sh-t-help); }
  .sh-row-unit { font-size: var(--sh-t-caption); }
  em.sh-row-tag { font-size: var(--sh-t-caption); }
  .sh-rail-live-stats { grid-template-columns: 1fr 1fr; row-gap: 12px; }
  .sh-rail-live-stat:first-child { grid-column: 1 / -1; padding-left: 0; padding-right: 0; padding-bottom: 12px; border-bottom: 1px solid var(--sh-rail-live-stat-divider); }
  .sh-rail-live-stat + .sh-rail-live-stat { border-left: 0; padding-left: 0; }
  .sh-rail-live-stat:last-child { border-left: 1px solid var(--sh-rail-live-stat-divider); padding-left: 12px; }
  .sh-rail-live .sh-stat-num { min-width: 0; font-variant-numeric: tabular-nums; }
  .sh-tile-kicker { font-size: var(--sh-t-help); font-weight: 400; color: var(--sh-muted); letter-spacing: 0; }
  .sh-tile-title { font-size: var(--sh-t-page); font-weight: 700; font-variant-numeric: tabular-nums; letter-spacing: -.3px; }
  .sh-benefit-matrix th, .sh-benefit-matrix td { font-size: var(--sh-t-help); }

  .sh-page--orders > section.sh-card { padding: 0; overflow: hidden; }
  .sh-page--orders > section.sh-card > .sh-d3b-order-scope { display: none; }
  .sh-page--orders > section.sh-card > div:not(.sh-list):not(.sh-d3b-order-head) { padding: 20px 20px 0; }
  .sh-page--orders > section.sh-card > .sh-pager { margin-top: 0; padding: 0 20px 20px; }

  .sh-d2b-page .sh-page-head .sh-lead, body[data-page="/services"] .sh-page-head .sh-lead { display: none; }
  .sh-page--orders .sh-order { position: relative; }
  .sh-page--orders .sh-order > .sh-order-actions { padding-right: 96px; }
  .sh-page--orders .sh-order > .sh-d2b-order-detail:not([open]) { position: absolute; left: auto; right: 20px; bottom: 16px; width: auto; height: 44px; }
  .sh-page--orders .sh-order > .sh-d2b-order-detail:not([open]) > summary { justify-content: flex-end; }
  .sh-page--orders .sh-list { border-top: 1px solid var(--sh-line-hair); }
  .sh-page--orders .sh-order { border: 0; border-radius: 0; border-bottom: 1px solid var(--sh-line-hair); padding: 16px 20px; box-shadow: none; gap: 10px; }
  .sh-page--orders .sh-order:last-child { border-bottom: 0; }
  .sh-page--orders .sh-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px 12px; margin-top: 4px; padding-top: 10px; }
  .sh-page--orders .sh-fact:nth-child(n) { grid-column: auto; grid-row: auto; text-align: left; align-self: start; }
  .sh-page--orders > .sh-d2b-order-stats { order: 9; }

  .sh-coupon-step.sh-ticket-card { margin-inline: -20px; padding: 16px 20px; border: 0; border-radius: 0; background: var(--sh-tint-soft); gap: 16px; }
  .sh-ticket-card::before, .sh-ticket-card::after { display: none; }
  .sh-coupon-step section.sh-card, .sh-coupon-step .sh-card { padding: 0; border: 0; box-shadow: none; background: transparent; border-radius: 0; gap: 12px; }
  .sh-coupon-step .sh-mt-14, .sh-coupon-step .sh-mt-8, .sh-coupon-step .sh-alert:not(.hidden) + .sh-field { margin-top: 0; }
  .sh-coupon-step .sh-alert--warn { text-align: left; padding: 12px 14px; }
  .sh-coupon-step .sh-step { margin-bottom: 0; }

  .sh-page--account .sh-loyalty-stats.sh-box { padding: 0; border: 0; background: transparent; border-radius: 0; }
  .sh-page--account .sh-tiles--3.sh-loyalty-grid { grid-template-columns: 1fr; gap: 0; }
  .sh-page--account .sh-loyalty-grid .sh-tile { display: grid; grid-template-columns: minmax(0,1fr) auto; grid-template-areas: "k t" "n n"; align-items: baseline; column-gap: 12px; padding: 10px 0; border: 0; border-radius: 0; border-bottom: 1px solid var(--sh-line-hair); background: transparent; }
  .sh-page--account .sh-loyalty-grid .sh-tile:last-child { border-bottom: 0; }
  .sh-page--account .sh-loyalty-grid .sh-tile-kicker { grid-area: k; }
  .sh-page--account .sh-loyalty-grid .sh-tile-title { grid-area: t; margin: 0; text-align: right; white-space: nowrap; }
  .sh-page--account .sh-loyalty-grid .sh-tile .sh-note { grid-area: n; font-size: var(--sh-t-caption); line-height: 1.4; color: var(--sh-muted-on-tint); margin-top: 0; }
  .sh-page--account .sh-loyalty-meta { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
  .sh-page--account .sh-loyalty-head { flex-wrap: wrap; row-gap: 8px; }
  .sh-page--account .sh-loyalty-head > div:not(.sh-loyalty-meta) { flex: 1 1 0; min-width: 0; }
  .sh-page--account .sh-loyalty-meta { flex: 1 1 100%; justify-content: flex-start; }
  .sh-page--account > .sh-alert--ok { padding: 10px 14px; }

  #order-form #sh-desc-sec { background: transparent; box-shadow: none; border-radius: 0; padding: 0; }
  .sh-grid .sh-picker, .sh-picker { border: 0; border-radius: 0; background: transparent; }
  .sh-grid .sh-picker-body, .sh-picker-body { border-top: 1px solid var(--sh-line-hair); gap: 0; }
  .sh-picker-body > #category-container { border-right: 1px solid var(--sh-line-hair); }

  .sh-card.sh-card--flush { padding: 0; }
  .sh-card--flush > .sh-card-head { padding: 20px 20px 12px; }
  .sh-catalog-search { width: 100%; }
  .sh-catgrp-h { padding: 12px 20px; }
  .sh-catgrp .sh-row { padding-left: 20px; padding-right: 20px; }
  .sh-catalog-nav .sh-catalog-filters { display: flex; flex-wrap: nowrap; overflow-x: auto; gap: 8px; padding: 8px 20px; scrollbar-width: none; }
  .sh-catalog-nav .sh-catalog-filter { width: auto; flex: 0 0 auto; min-height: 36px; }
  .sh-catalog-nav .sh-catalog-more { display: none; }
  .sh-card--flush > .sh-card-head > div:first-child:has(> #sh-catalog-h) { display: none; }
  body[data-page="/services"] .sh-page > .sh-page-head + section.sh-card:not(.sh-card--flush) { display: none; }

  .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-favbtn { display: inline-flex; flex: 0 0 44px; width: 44px; height: 44px; margin: -13px -14px -13px -8px; align-items: center; justify-content: center; align-self: center; }

  .sh-2col, .sh-fieldrow { grid-template-columns: 1fr; }
  .sh-def.sh-def--stack { display: flex; flex-direction: column; align-items: stretch; }
  .sh-def--stack > .sh-defs { width: 100%; min-width: 0; }
  .sh-form-actions--row { width: 100%; }
  .sh-form-actions--row .sh-btn { min-width: 96px; }

  .sh-page--account .sh-account-tabs { top: var(--sh-topbar); }

  .sh-grid .sh-picker button.sh-row:not(.active):not(.is-selected):active { background: var(--sh-canvas); transition-duration: 0ms; }
  .sh-page--topup .sh-money-head:has(.btn-reset) { min-height: 44px; }

  body[data-page="/orders"] .sh-strip, body[data-page="/addfunds"] .sh-strip,
  body[data-page="/account"] .sh-strip, body[data-page="/services"] .sh-strip,
  body[data-page="/orders"] #sh-eventband, body[data-page="/addfunds"] #sh-eventband,
  body[data-page="/account"] #sh-eventband, body[data-page="/services"] #sh-eventband { display: none; }

}

@media (max-width: 767px) {
  .sh-grid .sh-picker-body, .sh-picker-body { border-top: 1px solid var(--sh-line); }
  .sh-picker-body > #category-container { border-right: 1px solid var(--sh-line); }
  .sh-order-card .sh-picker > .sh-btn.sh-btn--soft.sh-btn--sm,
  .sh-picker > .sh-btn--soft { box-shadow: inset 0 1px 0 var(--sh-line); }
  .sh-order-card .sh-picker .sh-brief,
  .sh-picker .sh-brief { border-top: 1px solid var(--sh-line); }
  .sh-order-card .sh-cms-note--inline {
    border-top: 1px solid var(--sh-line);
    border-bottom: 1px solid var(--sh-line);
    margin: 0 -20px;
    padding: 0 20px;
  }
  .sh-order-card .sh-cms-note--inline > summary {
    display: flex;
    align-items: center;
    min-height: 48px;
    font-size: var(--sh-t-body);
    font-weight: 600;
    color: var(--sh-ink);
  }
  .sh-order-card .sh-cms-note--inline > summary .sh-cms-note-more { margin-left: auto; font-size: var(--sh-t-help); font-weight: 400; color: var(--sh-muted-2); }

  .sh-order-card .sh-cms-note--inline > .sh-cms-note-body { padding: 4px 0 16px; }
}

.sh-onboarding > div > h3.sh-h3 { margin: 0 0 6px; }
.sh-onboarding > div > ul { line-height: 1.5; }
.sh-onboarding > div > ul li + li { margin-top: 2px; }
@media (max-width: 767px) {
  [data-sh-related] .sh-row--rel,
  .sh-row--rel { flex-wrap: nowrap; row-gap: 0; align-items: center; }
  [data-sh-related] .sh-row--rel > .sh-rel-logo,
  .sh-row--rel > .sh-rel-logo { order: 0; }
  [data-sh-related] .sh-row--rel > .sh-grow,
  .sh-row--rel > .sh-grow { order: 1; flex: 1 1 auto; min-width: 0; display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: unset; line-clamp: unset; line-height: 1.35; }
  [data-sh-related] .sh-row--rel > .sh-rel-price,
  .sh-row--rel > .sh-rel-price { order: 2; margin-left: 8px; white-space: nowrap; }
  [data-sh-related] .sh-row--rel > .sh-rel-chev,
  .sh-row--rel > .sh-rel-chev { order: 3; }
  .sh-h2, .sh-rail-live .sh-h2, h2.sh-h3, .sh-card-head h2.sh-h2,
  .sh-page--account .sh-benefit-card .sh-loyalty-head h2 { font-size: var(--sh-t-card); letter-spacing: -.2px; }
}

[data-sh-related] .sh-row--rel > .sh-rel-logo,
.sh-row--rel > .sh-rel-logo,
.sh-rel-logo {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  min-width: 28px;
  flex: 0 0 28px;
  padding: 0;
  margin: 0;
  line-height: 0;
}
.sh-rel-logo svg { width: 16px; height: 16px; display: block; flex: 0 0 auto; }

.sh-main > .sh-page:not(.sh-page--read) { max-width: 1040px; margin-left: auto; margin-right: auto; }
.sh-main > .sh-page.sh-d2b-page--notifications { max-width: 1040px; }

.sh-loyalty-head { align-items: center; }
.sh-loyalty-meta { align-items: center; }
.sh-loyalty-meta > .sh-tierchip,
.sh-loyalty-meta > .sh-badge,
.sh-loyalty-meta > .sh-verified { display: inline-flex; align-items: center; height: 24px; min-height: 24px; padding: 0 8px; line-height: 1; }

.sh-benefit-matrix tbody th { padding-top: 8px; padding-bottom: 8px; }
.sh-benefit-matrix tbody th .sh-tierchip { height: 24px; min-height: 24px; padding: 0 8px; font-size: 12px; }
.sh-benefit-matrix tbody th[aria-current="true"] .sh-tierchip { box-shadow: 0 0 0 2px var(--sh-primary-line); }

.sh-grid #sh-order-coach {
  height: auto;
  min-height: 64px;
  padding: 12px 16px;
  overflow: visible;
  grid-template-columns: minmax(0, 1fr) auto;
}
.sh-grid #sh-order-coach > :first-child {
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: 10px;
  row-gap: 3px;
  align-items: center;
}
.sh-grid #sh-order-coach .sh-kicker {
  grid-column: 1;
  grid-row: 1;
  width: auto;
  height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-size: var(--sh-t-caption);
  font-weight: 700;
  letter-spacing: .02em;
  font-variant-numeric: tabular-nums;
}
.sh-grid #sh-order-coach h3 { grid-column: 2; grid-row: 1; margin: 0; font-size: var(--sh-t-body); font-weight: 700; line-height: 22px; }
.sh-grid #sh-order-coach p.sh-note { grid-column: 1 / span 2; grid-row: 2; margin: 0; font-size: var(--sh-t-help); line-height: 1.5; color: var(--sh-muted); }
.sh-grid #sh-order-coach .sh-onboarding-actions { align-self: center; }

.sh-posts--grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
a.sh-post--card,
.sh-post--card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--sh-line-soft);
  border-radius: var(--sh-r-card);
  background: var(--sh-surface);
  transition: transform 160ms var(--sh-ease-out), box-shadow 160ms var(--sh-ease-out), border-color 160ms var(--sh-ease-out);
}
@media (hover: hover) and (pointer: fine) {
  .sh-post--card:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(27, 24, 48, .10); border-color: var(--sh-line); background: var(--sh-surface); }
}
.sh-post-cover {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #2A0854 0%, #5D00C8 55%, #8B5CF6 100%);
}
.sh-post-cover[data-sh-cover="1"] { background: linear-gradient(135deg, #17032E 0%, #43008F 60%, #6D28D9 100%); }
.sh-post-cover[data-sh-cover="2"] { background: linear-gradient(135deg, #102B66 0%, #1D4ED8 60%, #38BDF8 100%); }
.sh-post-cover[data-sh-cover="3"] { background: linear-gradient(135deg, #0C4D49 0%, #0F766E 60%, #2DD4BF 100%); }
.sh-post-cover[data-sh-cover="4"] { background: linear-gradient(135deg, #5A3108 0%, #B45309 60%, #FBBF24 100%); }
.sh-post-cover .sh-post-thumb { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; border-radius: 0; object-fit: cover; }
.sh-post-cover-mark { color: rgba(255, 255, 255, .78); font-size: var(--sh-t-help); font-weight: 700; letter-spacing: .04em; }
.sh-post--card .sh-post-body { padding: 14px 16px 16px; display: flex; flex-direction: column; gap: 6px; }
.sh-post--card .sh-post-meta { display: flex; align-items: center; gap: 8px; margin: 0; font-size: var(--sh-t-caption); color: var(--sh-muted-2); }
.sh-post--card .sh-post-title { font-size: var(--sh-t-card); line-height: 1.4; }
.sh-post--card .sh-post-excerpt { margin: 0; font-size: var(--sh-t-help); line-height: 1.6; }
@media (max-width: 1023px) { .sh-posts--grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } }
@media (max-width: 767px) { .sh-posts--grid { grid-template-columns: minmax(0, 1fr); gap: 12px; } .sh-post--card .sh-post-title { font-size: var(--sh-t-body); } }

.sh-grid #sh-order-coach p.sh-note { position: static; width: auto; height: auto; clip: auto; overflow: visible; white-space: normal; }
.sh-posts--grid > .sh-post--card { align-items: stretch; }
.sh-post--card > .sh-post-cover { width: 100%; align-self: stretch; }

.sh-account-tabs,
.sh-page--account .sh-account-tabs {
  display: grid;
  gap: 0;
  min-height: 48px;
  margin-bottom: 16px;
  padding: 0 8px;
  border: 0;
  border-radius: var(--sh-r-card, 16px);
  background: var(--sh-surface);
  box-shadow: var(--sh-sh-card, 0 2px 12px rgba(27, 24, 48, .06));
}
.sh-account-tab,
.sh-page--account .sh-account-tab {
  position: relative;
  min-height: 48px;
  padding: 0 6px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--sh-muted);
  font-size: var(--sh-t-body);
  font-weight: 700;
  line-height: 1.2;
  box-shadow: none;
}
.sh-account-tab::after {
  content: "";
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: 0;
  height: 2px;
  border-radius: 2px 2px 0 0;
  background: transparent;
}
.sh-account-tab.active,
.sh-page--account .sh-account-tab.active { background: transparent; color: var(--sh-ink); box-shadow: none; }
.sh-account-tab.active::after { background: var(--sh-primary); }
@media (hover: hover) and (pointer: fine) {
  .sh-account-tab:not(.active):hover { color: var(--sh-ink); background: transparent; }
}
.sh-account-tab:focus-visible { outline: 2px solid var(--sh-primary); outline-offset: -2px; border-radius: var(--sh-r-sm); }
@media (max-width: 767px) {
  .sh-page--account .sh-account-tabs { padding: 0 4px; border-radius: 0; margin: 0 -16px 16px; box-shadow: inset 0 -1px 0 var(--sh-line); }
  .sh-page--account .sh-account-tab { font-size: var(--sh-t-help); padding: 0 4px; }
}

.sh-page .sh-account-tabs .sh-account-tab,
.sh-page--account .sh-account-tabs .sh-account-tab {
  position: relative;
  height: 48px;
  min-height: 48px;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.sh-page .sh-account-tabs .sh-account-tab.active,
.sh-page--account .sh-account-tabs .sh-account-tab.active,
.sh-page .sh-account-tabs .sh-account-tab[aria-selected="true"] { background: transparent; box-shadow: none; color: var(--sh-ink); }
.sh-page .sh-account-tabs .sh-account-tab::after,
.sh-page--account .sh-account-tabs .sh-account-tab::after {
  content: "";
  position: absolute;
  inset: auto 8px 0 8px;
  top: auto;
  height: 2px;
  border-radius: 2px 2px 0 0;
  background: transparent;
}
.sh-page .sh-account-tabs .sh-account-tab.active::after,
.sh-page--account .sh-account-tabs .sh-account-tab.active::after { background: var(--sh-primary); }
@media (max-width: 767px) {
  .sh-page--account .sh-account-tabs .sh-account-tab { height: 48px; min-height: 48px; }
}

.sh-page.sh-page--account .sh-account-tabs > .sh-account-tab[role="tab"],
.sh-page.sh-page--account .sh-account-tabs > .sh-account-tab { height: 48px; min-height: 48px; border-radius: 0; background: transparent; box-shadow: none; }
.sh-page.sh-page--account .sh-account-tabs > .sh-account-tab.active[role="tab"],
.sh-page.sh-page--account .sh-account-tabs > .sh-account-tab.active,
.sh-page.sh-page--account .sh-account-tabs > .sh-account-tab[aria-selected="true"] { background: transparent; box-shadow: none; color: var(--sh-ink); border: 0; }

.sh-reward-card { overflow: hidden; }
.sh-reward-wallet {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sh-gap-comp);
  margin-top: var(--sh-sp-4);
  padding: var(--sh-sp-5) 0;
  border-block: 1px solid var(--sh-line-hair);
}
.sh-reward-wallet-copy { min-width: 0; }
.sh-reward-wallet-label { display: block; color: var(--sh-muted); font-size: var(--sh-t-sm); font-weight: 400; }
.sh-reward-wallet-balance { display: block; margin-top: var(--sh-gap-text); color: var(--sh-ink); font-size: var(--sh-t-amount-1); font-weight: 700; line-height: 1.25; font-variant-numeric: tabular-nums; }
.sh-reward-wallet-copy .sh-note { margin-top: var(--sh-sp-2); color: var(--sh-muted); }
.sh-reward-convert {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: var(--sh-sp-3);
  padding-top: var(--sh-sp-4);
  border-top: 1px solid var(--sh-line-hair);
}
.sh-reward-convert[hidden] { display: none; }
.sh-reward-convert .sh-field { margin: 0; }
.sh-reward-convert .sh-form-actions { align-items: center; margin: 0; }
.sh-reward-convert-status { grid-column: 1 / -1; min-height: var(--sh-sp-5); color: var(--sh-danger); font-size: var(--sh-t-sm); line-height: 1.5; }
.sh-reward-convert-status.is-waiting { color: var(--sh-status-info); }
.sh-reward-convert-status.is-done { color: var(--sh-status-info); }
.sh-reward-history-title { margin-top: var(--sh-sp-5); }
.sh-reward-entry {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sh-sp-3);
  min-height: 64px;
  padding-block: var(--sh-sp-3);
  border-bottom: 1px solid var(--sh-line-hair);
}
.sh-reward-entry:last-child { border-bottom: 0; }
.sh-reward-entry-copy { display: flex; min-width: 0; flex-direction: column; gap: var(--sh-gap-text); }
.sh-reward-entry-copy > b { overflow: hidden; color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.sh-reward-entry-copy .sh-note { overflow: hidden; margin: 0; color: var(--sh-muted); text-overflow: ellipsis; white-space: nowrap; }
.sh-reward-entry-amount { color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
.sh-user-wallet { margin-left: var(--sh-sp-1); background: var(--sh-canvas-deep); color: var(--sh-ink-2); }
.sh-user-wallet::before { display: none; }

@media (max-width: 767px) {
  .sh-reward-wallet { grid-template-columns: minmax(0, 1fr); padding-block: var(--sh-sp-4); }
  .sh-reward-wallet > .sh-btn { width: 100%; }
  .sh-reward-convert { grid-template-columns: minmax(0, 1fr); }
  .sh-reward-convert .sh-form-actions { width: 100%; }
  .sh-reward-convert .sh-form-actions > .sh-btn { flex: 1 1 0; }
  .sh-reward-entry { min-height: 72px; }
}
.sh-cat-summary {
  display: block;
  margin-top: 2px;
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
  font-weight: 400;
  line-height: 1.35;
}

:root { --sh-draft-bar: 52px; }

.sh-draft-bar {
  position: fixed;
  z-index: 1200;
  top: 0;
  left: 0;
  right: 0;
  box-sizing: border-box;
  height: var(--sh-draft-bar);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--sh-sp-3);
  padding: var(--sh-sp-2) var(--sh-sp-3);
  color: var(--sh-gold-ink);
  background: var(--sh-gold-bg);
  border-bottom: 1px solid var(--sh-gold-line);
}

body.sh-has-draft { padding-top: var(--sh-draft-bar); }
body.sh-has-draft .sh-sidebar { top: var(--sh-draft-bar); }
body.sh-has-draft .sh-topbar { top: var(--sh-draft-bar); }
body.sh-has-draft .sh-drawer-overlay { top: var(--sh-draft-bar); }
body.sh-has-draft .sh-order-drawer { height: calc(100dvh - var(--sh-draft-bar)); }
.sh-toast[data-sh-copy="layout.draft.ended"] { text-wrap: balance; }

.sh-order-meta[data-sh-order-note] {
  display: flex;
  flex-direction: column;
  gap: var(--sh-sp-2);
}

.sh-chips--inline {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sh-sp-2);
}

.sh-order-meta-note { display: block; }

.sh-drawer-overlay { position: fixed; inset: 0; z-index: calc(var(--sh-z-modal) + 1); background: var(--sh-overlay); }
.sh-order-drawer { position: absolute; inset: 0 0 0 auto; width: clamp(480px, 40vw, 520px); height: 100%; height: 100dvh; display: flex; flex-direction: column; background: var(--sh-surface); box-shadow: var(--sh-sh-modal); animation: sh-drawer-enter 160ms var(--sh-ease-out); }
.sh-drawer-header { display: flex; align-items: center; justify-content: space-between; gap: var(--sh-sp-3); padding: var(--sh-sp-3) var(--sh-sp-5); border-bottom: 1px solid var(--sh-line); flex-shrink: 0; }
.sh-drawer-header h2 { margin: 0; min-width: 0; color: var(--sh-muted); font-size: var(--sh-t-sm); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sh-drawer-header button { flex-shrink: 0; }
.sh-drawer-body { overflow-y: auto; overscroll-behavior: contain; flex: 1; min-height: 0; padding: var(--sh-sp-5); padding-bottom: calc(var(--sh-sp-5) + var(--sh-drawer-footer-space, var(--sh-sp-8))); scroll-padding-bottom: var(--sh-drawer-footer-space, var(--sh-sp-8)); }
.sh-drawer-product { margin: 0 0 var(--sh-sp-2); font-size: var(--sh-t-h2); }
.sh-drawer-title { margin: var(--sh-sp-5) 0; font-size: var(--sh-t-h2); }
.sh-drawer-help { color: var(--sh-muted); font-size: var(--sh-t-sm); margin: var(--sh-sp-2) 0; }
.sh-drawer-progress { margin: var(--sh-sp-5) 0 var(--sh-sp-2); color: var(--sh-primary); font-size: var(--sh-t-sm); font-weight: 700; }
.sh-drawer-steps { display: flex; gap: var(--sh-sp-1); list-style: none; padding: 0; margin: 0; }
.sh-drawer-steps li { flex: 1; min-width: 0; border-top: var(--sh-sp-1) solid var(--sh-line); font-size: 0; }
.sh-drawer-steps li[aria-current] { border-color: var(--sh-primary); }
.sh-drawer-steps li.sh-drawer-step-error { border-color: var(--sh-danger); color: var(--sh-danger); font-size: var(--sh-t-xs); }
.sh-drawer-field { margin: 0 0 var(--sh-sp-5); }
.sh-drawer-field[hidden] { display: none; }
.sh-drawer-label { display: block; margin-bottom: var(--sh-sp-2); font-size: var(--sh-t-body); font-weight: 600; }
.sh-drawer-field .sh-input { width: 100%; min-height: 44px; }
.sh-drawer-field textarea { min-height: 120px; resize: vertical; }
.sh-drawer-field input[type=checkbox] { width: 24px; height: 24px; min-height: 0; margin: var(--sh-sp-3); accent-color: var(--sh-primary); }
.sh-drawer-field > button { margin: var(--sh-sp-2) var(--sh-sp-2) 0 0; }
.sh-drawer-error { margin: var(--sh-sp-2) 0 0; color: var(--sh-danger); font-size: var(--sh-t-sm); }
.sh-drawer-error:empty, .sh-drawer-status:empty { display: none; }
.sh-drawer-status { padding: var(--sh-sp-2) var(--sh-sp-5); margin: 0; font-size: var(--sh-t-sm); color: var(--sh-ink-2); background: var(--sh-tint-soft); }
.sh-drawer-footer { flex-shrink: 0; max-height: 45dvh; overflow-y: auto; padding: var(--sh-sp-4) var(--sh-sp-5) calc(var(--sh-sp-4) + env(safe-area-inset-bottom)); border-top: 1px solid var(--sh-line); background: var(--sh-surface); }
.sh-drawer-summary-details > summary { min-height: 44px; align-content: center; cursor: pointer; color: var(--sh-ink); font-size: var(--sh-t-sm); font-weight: 700; font-variant-numeric: tabular-nums; }
.sh-drawer-summary-row { display: flex; align-items: baseline; justify-content: space-between; gap: var(--sh-sp-3); font-size: var(--sh-t-sm); margin-bottom: var(--sh-sp-1); font-variant-numeric: tabular-nums; }
.sh-drawer-summary-row > span { color: var(--sh-muted); }
.sh-drawer-price { font-size: var(--sh-t-h2); }
.sh-drawer-actions { display: flex; gap: var(--sh-sp-3); margin-top: var(--sh-sp-3); }
.sh-drawer-actions > :last-child { flex: 1; }
.sh-drawer-agree { display: flex; align-items: center; gap: var(--sh-sp-3); min-height: 44px; font-size: var(--sh-t-sm); }
.sh-drawer-agree input { width: 20px; height: 20px; flex-shrink: 0; accent-color: var(--sh-primary); }
.sh-drawer-result { display: flex; flex-direction: column; gap: var(--sh-sp-2); text-align: left; padding: var(--sh-sp-4); margin-top: var(--sh-sp-3); width: 100%; border: 1px solid var(--sh-border); border-radius: var(--sh-r-ctrl); background: var(--sh-surface); color: var(--sh-ink); cursor: pointer; }
.sh-drawer-result:is(button):hover, .sh-drawer-result--selected { border-color: var(--sh-primary); background: var(--sh-tint-soft); }
.sh-drawer-result--selected { cursor: default; }

.sh-drawer-result:is(button):disabled { cursor: not-allowed; border-color: var(--sh-border); background: var(--sh-canvas); color: var(--sh-muted); }
.sh-drawer-result span { color: var(--sh-muted); font-size: var(--sh-t-sm); }
.sh-drawer-tags { display: flex; flex-wrap: wrap; gap: var(--sh-sp-2); margin-bottom: var(--sh-sp-2); }
.sh-drawer-tag { min-height: 44px; padding: var(--sh-sp-2) var(--sh-sp-3); color: var(--sh-primary); background: var(--sh-tint); border: 0; border-radius: var(--sh-r-ctrl); cursor: pointer; overflow-wrap: anywhere; }
.sh-drawer-weight { display: grid; grid-template-columns: 1fr 88px 60px; align-items: center; gap: var(--sh-sp-3); margin-bottom: var(--sh-sp-2); }
.sh-drawer-weight output { text-align: right; font-variant-numeric: tabular-nums; font-size: var(--sh-t-sm); color: var(--sh-muted); }
.sh-drawer-file-input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.sh-drawer-file-choose { margin-top: 0 !important; }

.sh-photo-modes { margin-bottom: var(--sh-sp-3); }
.sh-photo-drive { margin-bottom: var(--sh-sp-3); }
.sh-photo-drive > .sh-drawer-field { margin: 0; }
.sh-photo-cover-note { margin: 0 0 var(--sh-sp-2); color: var(--sh-muted); font-size: var(--sh-t-sm); }
.sh-photo-drop { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--sh-sp-3); padding: var(--sh-sp-4); border: 1px dashed var(--sh-primary-line); border-radius: var(--sh-r-ctrl); background: var(--sh-tint-soft); cursor: pointer; transition: border-color .15s ease, background-color .15s ease; }
.sh-photo-drop:hover, .sh-photo-drop[data-over] { border-color: var(--sh-primary); background: var(--sh-tint); }
.sh-photo-drop[data-over] { border-style: solid; }
.sh-photo-icon { display: inline-flex; width: 40px; height: 40px; align-items: center; justify-content: center; border-radius: var(--sh-r-sm); color: var(--sh-primary); background: var(--sh-surface); }
.sh-photo-icon svg { width: 22px; height: 22px; }
.sh-photo-drop-copy { display: grid; gap: 2px; min-width: 0; }
.sh-photo-drop-copy strong { font-size: var(--sh-t-body); color: var(--sh-ink); }
.sh-photo-drop-copy span { color: var(--sh-muted); font-size: var(--sh-t-sm); }
.sh-photo-pick { min-height: 44px; white-space: nowrap; }
.sh-photo-meta { display: flex; align-items: baseline; gap: var(--sh-sp-2); margin-top: var(--sh-sp-3); font-size: var(--sh-t-sm); }
.sh-photo-count { color: var(--sh-ink); font-variant-numeric: tabular-nums; }
.sh-photo-need { color: var(--sh-muted); }
.sh-photo-note { margin: var(--sh-sp-2) 0 0; padding: var(--sh-sp-2) var(--sh-sp-3); border-radius: var(--sh-r-sm); color: var(--sh-warn-text); background: var(--sh-warn-bg); font-size: var(--sh-t-sm); }
.sh-photo-meta[data-state="short"] .sh-photo-need { color: var(--sh-warn-text); font-weight: 700; }
.sh-drawer-images.sh-photo-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sh-sp-2); margin: var(--sh-sp-2) 0 0; padding: 0; list-style: none; }
.sh-drawer-image.sh-photo-item { position: relative; display: block; min-width: 0; padding: 0; overflow: hidden; border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); background: var(--sh-surface-alt); }
.sh-photo-item[data-dragging] { opacity: .5; }
.sh-photo-item[draggable="true"] { cursor: grab; }
.sh-photo-thumb { display: block; width: 100%; aspect-ratio: 1; padding: 0; border: 0; background: var(--sh-surface-alt); cursor: zoom-in; }
.sh-photo-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sh-photo-item .sh-drawer-file-name { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.sh-photo-cover { position: absolute; top: var(--sh-sp-1); left: var(--sh-sp-1); padding: 2px var(--sh-sp-2); border-radius: var(--sh-r-sm); color: #fff; background: var(--sh-primary); font-size: var(--sh-t-xs); font-weight: 700; pointer-events: none; }
.sh-photo-remove { position: absolute; top: 0; right: 0; display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; padding: 0; border: 0; background: transparent; cursor: pointer; }
.sh-photo-remove .sh-photo-icon { width: 26px; height: 26px; border-radius: 50%; color: #fff; background: rgba(25, 31, 40, .72); }
.sh-photo-remove .sh-photo-icon svg { width: 14px; height: 14px; }
.sh-photo-state { position: absolute; right: 0; bottom: 0; left: 0; display: flex; flex-wrap: wrap; align-items: center; gap: var(--sh-sp-1); padding: var(--sh-sp-1) var(--sh-sp-2); font-size: var(--sh-t-xs); font-weight: 700; pointer-events: none; }
.sh-photo-item[data-photo-status="done"] .sh-photo-state { right: auto; left: var(--sh-sp-1); bottom: var(--sh-sp-1); padding: 2px var(--sh-sp-2); border-radius: var(--sh-r-sm); color: var(--sh-ok-strong); background: var(--sh-ok-bg); }
.sh-photo-item:is([data-photo-status="uploading"], [data-photo-status="queued"]) .sh-photo-state { color: var(--sh-ink); background: rgba(255, 255, 255, .92); }
.sh-photo-item:is([data-photo-status="uploading"], [data-photo-status="queued"]) .sh-photo-thumb img { opacity: .55; }
.sh-photo-progress { display: block; flex: 1 0 100%; height: 4px; overflow: hidden; border-radius: 2px; background: var(--sh-line); }
.sh-photo-progress > span { display: block; height: 100%; background: var(--sh-primary); transition: width .2s ease; }
.sh-photo-item[data-photo-status="failed"] { border-color: var(--sh-danger-line); }
.sh-photo-item[data-photo-status="failed"] .sh-photo-thumb img { opacity: .35; }
.sh-photo-item[data-photo-status="failed"] .sh-photo-state { top: 0; flex-direction: column; justify-content: center; color: var(--sh-danger); background: rgba(255, 242, 240, .82); pointer-events: auto; }
.sh-photo-retry { min-height: 44px; padding-inline: var(--sh-sp-3); }
.sh-photo-blur { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sh-sp-2); }
.sh-photo-blur-option { position: relative; display: flex; min-height: 44px; align-items: center; justify-content: center; padding: var(--sh-sp-2) var(--sh-sp-3); border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); background: var(--sh-surface); color: var(--sh-muted); font-size: var(--sh-t-sm); font-weight: 700; text-align: center; cursor: pointer; }
.sh-photo-blur-option input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.sh-photo-blur-option:has(input:checked) { color: var(--sh-primary); background: var(--sh-tint); border-color: var(--sh-tint-line); }
.sh-photo-blur-option:has(input:focus-visible) { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
.sh-photo-viewer { width: min(720px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); padding: var(--sh-sp-4); border: 0; border-radius: var(--sh-r-card); background: var(--sh-surface); color: var(--sh-ink); }
.sh-photo-viewer::backdrop { background: rgba(25, 31, 40, .72); }
.sh-photo-viewer-head { display: flex; align-items: center; justify-content: space-between; gap: var(--sh-sp-2); margin-bottom: var(--sh-sp-2); font-size: var(--sh-t-sm); color: var(--sh-muted); }
.sh-photo-viewer-stage { display: flex; align-items: center; justify-content: center; min-height: 200px; border-radius: var(--sh-r-ctrl); background: var(--sh-surface-alt); }
.sh-photo-viewer-stage img { display: block; max-width: 100%; max-height: calc(100dvh - 280px); object-fit: contain; border-radius: var(--sh-r-ctrl); }
.sh-photo-viewer-name { margin: var(--sh-sp-2) 0; font-size: var(--sh-t-sm); overflow-wrap: anywhere; }
.sh-photo-viewer-tools, .sh-photo-viewer-nav { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--sh-sp-2); }
.sh-photo-viewer-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: var(--sh-sp-2); }
.sh-photo-viewer-tools .sh-btn, .sh-photo-viewer-nav .sh-btn { min-height: 44px; padding-inline: var(--sh-sp-2); }
@media (min-width: 768px) {
  .sh-drawer-images.sh-photo-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .sh-photo-drop { grid-template-columns: auto minmax(0, 1fr); }
  .sh-photo-pick { grid-column: 1 / -1; width: 100%; }
  .sh-photo-viewer-tools { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sh-photo-viewer-mosaic { grid-column: 1 / -1; }
}

.sh-photo-import { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: var(--sh-sp-3); width: 100%; min-height: 64px; margin-top: var(--sh-sp-2); padding: var(--sh-sp-3) var(--sh-sp-4); border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); background: var(--sh-surface); color: var(--sh-ink); font: inherit; text-align: left; cursor: pointer; transition: border-color .15s ease, background-color .15s ease; }
.sh-photo-import:hover { border-color: var(--sh-primary-line); background: var(--sh-tint-soft); }
.sh-photo-import .sh-photo-icon { background: var(--sh-tint); }
.sh-photo-import-copy { display: grid; gap: 2px; min-width: 0; }
.sh-photo-import-copy strong { font-size: var(--sh-t-body); color: var(--sh-ink); }
.sh-photo-import-copy span { color: var(--sh-muted); font-size: var(--sh-t-sm); }
.sh-photo-tip { margin: var(--sh-sp-2) 0 0; color: var(--sh-muted); font-size: var(--sh-t-sm); }
.sh-photo-mosaic-open { position: absolute; right: 0; bottom: 0; display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; padding: 0; border: 0; background: transparent; cursor: pointer; }
.sh-photo-mosaic-open .sh-photo-icon { width: 26px; height: 26px; border-radius: 50%; color: #fff; background: rgba(25, 31, 40, .72); }
.sh-photo-mosaic-open .sh-photo-icon svg { width: 14px; height: 14px; }
.sh-photo-sheet { flex-direction: column; width: min(720px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); padding: var(--sh-sp-4); border: 0; border-radius: var(--sh-r-card); background: var(--sh-surface); color: var(--sh-ink); }
.sh-photo-sheet[open] { display: flex; }
.sh-photo-sheet::backdrop { background: rgba(25, 31, 40, .72); }
.sh-photo-sheet-head { display: flex; flex: none; align-items: center; justify-content: space-between; gap: var(--sh-sp-2); }
.sh-photo-sheet-title { margin: 0; font-size: var(--sh-t-h3); font-weight: 700; }
.sh-photo-sheet-sub { flex: none; margin: var(--sh-sp-1) 0 var(--sh-sp-3); color: var(--sh-muted); font-size: var(--sh-t-sm); }
.sh-photo-picker { height: min(760px, calc(100dvh - 32px)); }
.sh-photo-tabs { flex: none; }
.sh-drawer-lookup-segment[aria-selected=true] { background: var(--sh-surface); color: var(--sh-ink); box-shadow: var(--sh-sh-card); }
.sh-photo-sheet-body { flex: 1 1 auto; min-height: 0; margin-top: var(--sh-sp-1); overflow-y: auto; overscroll-behavior: contain; }
.sh-photo-choices { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--sh-sp-2); margin: 0; padding: 0; list-style: none; }
.sh-photo-choice { position: relative; display: block; width: 100%; aspect-ratio: 1; padding: 0; overflow: hidden; border: 2px solid transparent; border-radius: var(--sh-r-ctrl); background: var(--sh-surface-alt); cursor: pointer; }
.sh-photo-choice img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sh-photo-choice[aria-pressed="true"] { border-color: var(--sh-primary); }
.sh-photo-choice-mark { position: absolute; top: var(--sh-sp-1); right: var(--sh-sp-1); display: inline-flex; min-width: 26px; height: 26px; align-items: center; justify-content: center; padding: 0 6px; border: 2px solid #fff; border-radius: 13px; color: #fff; background: rgba(25, 31, 40, .36); font-size: var(--sh-t-xs); font-weight: 700; font-variant-numeric: tabular-nums; }
.sh-photo-choice[aria-pressed="true"] .sh-photo-choice-mark { background: var(--sh-primary); }
.sh-photo-choice:disabled { cursor: default; }
.sh-photo-choice:disabled img { opacity: .4; }
.sh-photo-choice[data-added] .sh-photo-choice-mark { border-color: transparent; background: rgba(25, 31, 40, .72); }
.sh-photo-choice[data-broken] .sh-photo-choice-mark { display: none; }
.sh-photo-sheet-state { display: grid; justify-items: center; gap: var(--sh-sp-3); padding: var(--sh-sp-6) var(--sh-sp-4); color: var(--sh-muted); font-size: var(--sh-t-sm); text-align: center; }
.sh-photo-sheet-state[hidden] { display: none; }
.sh-photo-sheet-state p { margin: 0; }
.sh-photo-sheet-state[data-photo-picker-state="error"] { color: var(--sh-danger); }
.sh-photo-sheet-state .sh-btn { min-height: 44px; }
.sh-photo-more { width: 100%; min-height: 44px; margin-top: var(--sh-sp-3); }
.sh-photo-sheet-foot { display: flex; flex: none; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sh-sp-2) var(--sh-sp-3); margin-top: var(--sh-sp-3); padding-top: var(--sh-sp-3); border-top: 1px solid var(--sh-line); }
.sh-photo-sheet-count { display: flex; align-items: baseline; gap: var(--sh-sp-2); margin: 0; font-size: var(--sh-t-sm); }
.sh-photo-sheet-count strong { color: var(--sh-ink); font-variant-numeric: tabular-nums; }
.sh-photo-sheet-count span { color: var(--sh-muted); }
.sh-photo-sheet-go { min-width: 160px; min-height: 48px; }
.sh-photo-sheet-note { flex: 1 0 100%; margin: 0; padding: var(--sh-sp-2) var(--sh-sp-3); border-radius: var(--sh-r-sm); color: var(--sh-warn-text); background: var(--sh-warn-bg); font-size: var(--sh-t-sm); }
.sh-photo-mosaic-stage { display: flex; flex: none; align-items: center; justify-content: center; min-height: 180px; overflow: hidden; border-radius: var(--sh-r-ctrl); background: var(--sh-surface-alt); }
.sh-photo-mosaic-frame { position: relative; width: 100%; height: 180px; }
.sh-photo-mosaic-frame canvas { display: block; width: 100%; height: 100%; }
.sh-photo-mosaic-layer { position: absolute; inset: 0; cursor: crosshair; touch-action: none; user-select: none; -webkit-user-select: none; }
.sh-photo-region { position: absolute; padding: 0; border: 2px solid #fff; border-radius: 6px; background: transparent; box-shadow: 0 0 0 2px var(--sh-primary); cursor: pointer; }
.sh-photo-region::after { content: ""; position: absolute; inset: -8px; }
.sh-photo-region[aria-pressed="false"] { border-style: dashed; background: rgba(255, 255, 255, .14); box-shadow: 0 0 0 1px rgba(25, 31, 40, .6); }
.sh-photo-region:focus-visible { outline: 3px solid var(--sh-focus); outline-offset: 3px; }
.sh-photo-draft { position: absolute; border: 2px dashed #fff; background: rgba(93, 0, 200, .18); box-shadow: 0 0 0 1px var(--sh-primary); pointer-events: none; }
.sh-photo-mosaic-status { flex: none; min-height: 20px; margin: var(--sh-sp-2) 0; color: var(--sh-muted); font-size: var(--sh-t-sm); }
.sh-photo-mosaic-tools { display: grid; flex: none; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sh-sp-2); }
.sh-photo-mosaic-tools .sh-btn { min-height: 48px; padding-inline: var(--sh-sp-2); }
@media (max-width: 767px) {
  .sh-photo-choices { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sh-photo-sheet-go { flex: 1 0 100%; }
}
.sh-drawer-spec { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sh-sp-2); padding: var(--sh-sp-4); margin: var(--sh-sp-4) 0; background: var(--sh-surface-alt); border-radius: var(--sh-r-ctrl); font-size: var(--sh-t-sm); }
.sh-drawer-spec dt { color: var(--sh-muted); }
.sh-drawer-spec dd { margin: 0; text-align: right; }
.sh-drawer-notice, .sh-drawer-settings { margin: var(--sh-sp-4) 0; font-size: var(--sh-t-sm); }
.sh-drawer-notice summary, .sh-drawer-settings summary { min-height: 44px; display: flex; align-items: center; cursor: pointer; }
.sh-drawer-setting { display: flex; justify-content: space-between; gap: var(--sh-sp-2); }
.sh-drawer-entry { padding: var(--sh-sp-5); background: var(--sh-surface-alt); border-radius: var(--sh-r-ctrl); }
.sh-drawer-consult-copy { white-space: pre-wrap; }
body[data-sh-order-mode=consult] :is(#fields, .sh-orderbar, .sh-mobar, #order-form button[type=submit], .sh-money-head, .sh-total, .sh-money-short) { display: none !important; }
body[data-sh-order-mode=drawer] :is(#sh-composite-fields, #sh-qty-chips, .sh-order-meta, #sh-linknote, #sh-linkguide-btn, #fields [data-sh-added=step-link], #fields [data-sh-added=step-qty], #fields [data-sh-added=step-comment]) { display: none !important; }
body[data-sh-order-mode=drawer]:not([data-sh-drawer-applied]) :is(.sh-money-head, .sh-total, .sh-money-short, .sh-orderbar .sh-orderbar-total, .sh-mobar .sh-mobar-total) { visibility: hidden; }
@keyframes sh-drawer-enter { from { transform: translateX(24px); opacity: 0; } to { transform: translateX(0); opacity: 1; } }
@media (max-width: 767px) {
  .sh-order-drawer { width: 100%; }
  .sh-drawer-header { padding: var(--sh-sp-2) var(--sh-sp-4); }
  .sh-drawer-body { padding: var(--sh-sp-4); padding-bottom: calc(var(--sh-sp-4) + var(--sh-drawer-footer-space, var(--sh-sp-8))); }
  .sh-drawer-footer { padding: var(--sh-sp-3) var(--sh-sp-4) calc(var(--sh-sp-3) + env(safe-area-inset-bottom)); }
  .sh-drawer-status { padding: var(--sh-sp-2) var(--sh-sp-4); }
}
@media (prefers-reduced-motion: reduce) { .sh-order-drawer { animation: none; } }

@media (max-width: 767px) {
  .sh-picker .sh-cat-group { min-width: 0; margin: var(--sh-sp-3) 0 var(--sh-sp-1); }
  .sh-picker .sh-cat-group-head { align-items: flex-start; }
  .sh-picker .sh-cat-group-tabs { display: flex; flex-direction: column; width: 100%; overflow: visible; }
  .sh-grid .sh-picker .sh-cat-group-tabs > .sh-cat,
  .sh-picker .sh-cat-group-tabs > .sh-cat {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 10px 8px 10px 10px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: inset 0 -1px 0 var(--sh-line-hair);
    color: var(--sh-ink-2);
    font-size: var(--sh-t-caption);
    font-weight: 400;
    line-height: 1.3;
    text-align: left;
  }
  .sh-picker .sh-cat-group-tabs > .sh-cat .sh-cat-name {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    white-space: normal;
    word-break: keep-all;
  }
  .sh-picker .sh-cat-group-tabs > .sh-cat:is(.active, [aria-selected="true"]) {
    background: var(--sh-tint-soft);
    box-shadow: inset 0 -1px 0 var(--sh-line-hair);
    color: var(--sh-primary);
    font-weight: 600;
  }
}

.sh-review-picker { display: grid; gap: var(--sh-sp-3); min-width: 0; }
.sh-review-group { display: grid; gap: var(--sh-sp-2); min-width: 0; border-radius: var(--sh-r-ctrl); }
.sh-review-group:focus { outline: none; }
.sh-review-group:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 4px; }
.sh-review-status { margin: 0; color: var(--sh-muted); font-size: var(--sh-t-sm); line-height: 1.5; }
.sh-review-status:empty { display: none; }
.sh-review-picker:is([data-review-state="error"], [data-review-state="empty"], [data-review-state="short"]) .sh-review-status { padding: var(--sh-sp-3) var(--sh-sp-4); border: 1px solid var(--sh-danger-line); border-radius: var(--sh-r-sm); color: var(--sh-danger); background: var(--sh-danger-bg); }
.sh-review-product { margin: 0; color: var(--sh-ink); font-size: var(--sh-t-sm); font-weight: 700; line-height: 1.5; overflow-wrap: anywhere; }
.sh-review-skel { display: grid; gap: var(--sh-sp-2); }
.sh-review-skel-card { display: grid; gap: var(--sh-sp-3); padding: var(--sh-sp-4); border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); background: var(--sh-surface); }
.sh-review-skel .sh-skel + .sh-skel { margin-left: 0; }
.sh-review-card { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: var(--sh-sp-3); min-height: 44px; padding: var(--sh-sp-3) var(--sh-sp-4); border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); background: var(--sh-surface); color: var(--sh-ink); cursor: pointer; transition: border-color .15s ease, background-color .15s ease; }
.sh-review-card:hover { border-color: var(--sh-primary-line); }
.sh-review-card:has(input:checked) { border-color: var(--sh-primary); background: var(--sh-tint-soft); box-shadow: inset 0 0 0 1px var(--sh-primary); }
.sh-review-card:has(input:focus-visible) { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
.sh-review-card input { width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--sh-primary); cursor: pointer; }
.sh-review-card input:focus-visible { outline: none; }
.sh-review-copy { display: grid; gap: var(--sh-sp-1); min-width: 0; }
.sh-review-meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sh-sp-1) var(--sh-sp-2); }
.sh-review-stars { display: inline-flex; align-items: center; }
.sh-review-star-row { display: inline-flex; gap: 1px; }
.sh-review-star-row svg { display: block; width: 14px; height: 14px; fill: var(--sh-line); }
.sh-review-star-row svg[data-on] { fill: var(--sh-star); }
.sh-review-date { color: var(--sh-muted); font-size: var(--sh-t-xs); font-variant-numeric: tabular-nums; }
.sh-review-excerpt { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; overflow: hidden; font-size: var(--sh-t-sm); line-height: 1.55; overflow-wrap: anywhere; }
.sh-review-foot { display: grid; gap: var(--sh-sp-2); }
.sh-review-foot:empty { display: none; }
.sh-review-foot .sh-btn { width: 100%; min-height: 44px; }
.sh-review-more-error { margin: 0; color: var(--sh-danger); font-size: var(--sh-t-sm); }

.sh-review-manual { display: grid; gap: var(--sh-sp-2); min-width: 0; }
.sh-review-manual[hidden] { display: none; }
.sh-review-manual-label { color: var(--sh-ink); font-size: var(--sh-t-sm); font-weight: 700; }
.sh-review-manual-help { margin: 0; }
.sh-drawer-field[data-review-same] > .sh-drawer-error { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.sh-drawer-confirm-values > .sh-review-confirm { flex-direction: column; align-items: stretch; gap: var(--sh-sp-2); }
.sh-drawer-confirm-values .sh-review-confirm dd { max-width: none; text-align: left; font-weight: 400; }

.sh-drawer-lines-list { display: grid; gap: var(--sh-sp-1); margin: 0; padding-left: 1.25em; list-style: decimal; line-height: 1.5; overflow-wrap: anywhere; }
.sh-drawer-lines-more { margin: var(--sh-sp-2) 0 0; color: var(--sh-muted); font-size: var(--sh-t-sm); }
.sh-review-picked { padding: var(--sh-sp-3) var(--sh-sp-4); border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); background: var(--sh-surface-alt); }

.sh-order-view .sh-drawer-body { padding-bottom: var(--sh-sp-5); }
.sh-order-view-section { margin-top: var(--sh-sp-5); padding-top: var(--sh-sp-5); border-top: 1px solid var(--sh-line); }
.sh-order-view-section h3 { margin: 0 0 var(--sh-sp-3); font-size: var(--sh-t-h2); }
.sh-order-view-section p { margin: var(--sh-sp-2) 0; }
.sh-order-view-count { display: block; margin-bottom: var(--sh-sp-3); font-size: var(--sh-t-h2); }
.sh-order-view-timeline, .sh-order-view-files { list-style: none; margin: 0; padding: 0; }
.sh-order-view-timeline li { padding: 0 0 var(--sh-sp-4) var(--sh-sp-4); border-left: 2px solid var(--sh-tint-line); }
.sh-order-view-timeline time { display: block; }
.sh-order-view-files li { display: flex; flex-direction: column; align-items: flex-start; gap: var(--sh-sp-2); padding: var(--sh-sp-3) 0; border-bottom: 1px solid var(--sh-line); }
.sh-order-view-files li:last-child { border-bottom: 0; }
.sh-order-view-note { white-space: pre-wrap; }
.sh-order-view-section, .sh-order-view .sh-card { min-width: 0; overflow-wrap: anywhere; word-break: keep-all; }
.sh-order-view-section svg { display: block; width: 100%; height: auto; color: var(--sh-primary); }
.sh-order-view-section svg text { fill: var(--sh-muted); font-size: var(--sh-t-xs); }
.sh-order-view-section svg circle { fill: currentColor; }
.sh-order-view-axis { stroke: var(--sh-line); }
.sh-order-view-line { stroke: currentColor; stroke-width: 2; }
.sh-order-view-badges { display: inline-flex; flex-wrap: wrap; gap: var(--sh-sp-1); }
.sh-order-view-badges:empty { display: none; }

@media (max-width: 767px) {
  .sh-main .sh-grid .sh-order-card .sh-plats,
  .sh-main .sh-grid .sh-plats, .sh-main .sh-plats {
    --sh-plat-tile: 56px;
    --sh-plat-glyph: 26px;
    --sh-plat-radius: 12px;
    --sh-plat-cell: 56px;
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: none;
    grid-template-rows: repeat(3, auto);
    grid-auto-columns: var(--sh-plat-cell);
    justify-content: start;
    column-gap: 12px;
    row-gap: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
    margin: 0;
    padding: 2px 0;
    -webkit-mask-image: none;
    mask-image: none;
  }
  .sh-main .sh-grid .sh-order-card .sh-plats::-webkit-scrollbar,
  .sh-main .sh-grid .sh-plats::-webkit-scrollbar, .sh-main .sh-plats::-webkit-scrollbar { display: none; }
  .sh-main .sh-plats .sh-plat.social-name {
    padding: 0;
    gap: 4px;
    width: var(--sh-plat-cell);
    min-width: var(--sh-plat-cell);
    min-height: 76px;
    border-radius: var(--sh-plat-radius);
    scroll-snap-align: start;
  }
  .sh-plats .sh-plat-icon {
    width: var(--sh-plat-tile);
    height: var(--sh-plat-tile);
    border-radius: var(--sh-plat-radius);
    flex-shrink: 0;
  }
  .sh-plats .sh-plat-icon svg {
    width: var(--sh-plat-glyph);
    height: var(--sh-plat-glyph);
  }
  .sh-plats .sh-plat-label {
    font-size: var(--sh-t-caption);
    line-height: 13px;
    letter-spacing: -0.2px;
    white-space: nowrap;
    text-align: center;
    word-break: keep-all;
    overflow: hidden;
    text-overflow: clip;
    min-height: 13px;
  }
  .sh-plats .sh-plat-label--break {
    font-size: var(--sh-t-caption);
    letter-spacing: -0.4px;
    white-space: nowrap;
  }
  .sh-plats .sh-plat-label--break wbr { display: none; }
  .sh-plats .sh-plat.active {
    background: var(--sh-tint-soft);
    box-shadow: inset 0 0 0 1px var(--sh-primary);
  }
  .sh-plats .sh-plat.active .sh-plat-icon { box-shadow: var(--sh-sh-tile); }
}
@media (min-width: 768px) {
  .sh-plats .sh-plat-label--break {
    font-size: var(--sh-t-caption);

    letter-spacing: -0.5px;
    white-space: nowrap;
    text-overflow: clip;
    overflow: visible;
  }

  .sh-plats .sh-plat-label--break wbr { display: none; }
}

.sh-plat[data-sh-tile-muted="true"]:not(.active) .sh-plat-icon {
  background: #fff;
  box-shadow: inset 0 0 0 1px rgba(17,17,17,.10), var(--sh-sh-tile);
  color: var(--sh-plat-mark-ink, var(--sh-plat-mark-bg));
}
@media (hover: hover) and (pointer: fine) {
  .sh-plat[data-sh-tile-muted="true"]:not(.active):hover .sh-plat-icon { background: color-mix(in srgb, var(--sh-plat-mark-ink) 8%, #fff); }
}

.sh-tools, .sh-tool-dialog { --sh-tool-ink: var(--sh-b-ink, var(--sh-ink)); --sh-tool-ink-2: var(--sh-b-ink-2, var(--sh-ink-2)); --sh-tool-ink-3: var(--sh-b-ink-3, var(--sh-muted-2));
  --sh-tool-fill: var(--sh-b-fill, var(--sh-fill)); --sh-tool-fill-2: var(--sh-b-fill-2, var(--sh-surface-mute)); --sh-tool-line: var(--sh-b-line, var(--sh-line));
  --sh-tool-pri: var(--sh-b-pri, var(--sh-primary)); --sh-tool-pri-soft: var(--sh-b-pri-soft, var(--sh-tint)); --sh-tool-r: 16px; }
.sh-tools .sh-num, .sh-tools .is-num { font-variant-numeric: tabular-nums; }

.sh-tool-rank, .sh-tool-fact, .sh-tool-slot, .sh-tool-kcard, .sh-tool-table, .sh-tool-sum, .sh-tool-note, .sh-tool-finder-note, .sh-tool-chart-wrap, .sh-tool-place[data-sh-place-confirmed="false"],
.sh-tool-next-item, .sh-tool-picked, .sh-tool-kwchip, .sh-tool-confirm, .sh-tool-empty-line { --sh-tool-ink-3: var(--sh-tool-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-segtabs > button:not(.active):not([aria-selected="true"]) { color: var(--sh-tool-ink-2); }

body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-card .sh-segtabs > button:is(.active, [aria-selected="true"]) { background: var(--sh-tool-ink); color: #fff; box-shadow: none; }

.sh-tools [tabindex="-1"]:focus, .sh-tool-dialog [tabindex="-1"]:focus { outline: none; }
.sh-tool-muted { margin: 0; font-size: 14px; line-height: 1.55; color: var(--sh-tool-ink-3); }
.sh-tool-foot { margin: 0; font-size: 14px; line-height: 1.55; color: var(--sh-tool-ink-3); }
.sh-tool-error { margin: 8px 0 0; font-size: 14px; font-weight: 600; line-height: 1.5; color: var(--sh-danger); }
.sh-tool-quota { margin: 0; font-size: 14px; font-weight: 500; line-height: 1.55; color: var(--sh-tool-ink-2); }
.sh-tool-note { margin: 0; padding: 12px 14px; border-radius: 12px; background: var(--sh-tool-fill-2); font-size: 14px; line-height: 1.55; color: var(--sh-tool-ink-2); }
.sh-tool-note--ok { background: var(--sh-ok-bg); color: var(--sh-ok-strong); }

.sh-tool-app { display: flex; flex-direction: column; gap: var(--sh-b-gap, 16px); min-width: 0; }
.sh-tool-card { min-width: 0; }
.sh-tool-guide { min-width: 0; }

.sh-tool-badge { display: inline-flex; align-items: center; flex: 0 0 auto; height: 24px; padding: 0 8px; border-radius: 6px; font-size: 12px; font-weight: 700; line-height: 1; white-space: nowrap; background: var(--sh-tool-fill); color: var(--sh-tool-ink-2); }
.sh-tool-badge--free, .sh-tool-badge--brand { background: var(--sh-tool-pri-soft); color: var(--sh-tool-pri); }
.sh-tool-badge--member { background: var(--sh-status-info-bg); color: var(--sh-status-info); }
.sh-tool-badge--paid, .sh-tool-badge--warn { background: var(--sh-gold-bg); color: var(--sh-gold-text); }
.sh-tool-badge--ok { background: var(--sh-ok-bg); color: var(--sh-ok-strong); }

body:not(.sh-order-page) #main-content.sh-main .sh-tools :is(.sh-tools > .sh-tool-head, .sh-tool-panel > .sh-tool-head) { display: flex; align-items: flex-start; gap: 16px; }

body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-panel > .sh-tool-head { padding: 4px; }
.sh-tool-head-copy { min-width: 0; flex: 1 1 auto; }
.sh-tool-kicker { margin: 0 0 6px; font-size: 14px; font-weight: 700; color: var(--sh-tool-pri); }

.sh-tool-lead { margin: 8px 0 0; font-size: 16px; line-height: 1.6; color: var(--sh-tool-ink-2); text-wrap: pretty; word-break: keep-all; }
.sh-tool-facts { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 0; padding: 0; list-style: none; }

.sh-tool-facts > li:not(.sh-tool-badge) { display: inline-flex; align-items: center; height: 24px; padding: 0 8px; border-radius: 6px; background: var(--sh-b-card, var(--sh-surface)); font-size: 12px; font-weight: 700; color: var(--sh-tool-ink-2); }

.sh-tools .sh-tool-ic { flex: 0 0 auto; width: 44px; height: 44px; border-radius: 12px; }
.sh-tools .sh-tool-ic--lg { width: 56px; height: 56px; border-radius: 14px; }
.sh-tools .sh-tool-ic--md { width: 40px; height: 40px; border-radius: 11px; }
.sh-tools .sh-tool-ic--sm { width: 32px; height: 32px; border-radius: 9px; }

.sh-tool-tabbar { min-width: 0; }
@media (min-width: 768px) { body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-tabbar > .sh-segtab { flex: 1 1 0; min-width: 0; } }
.sh-tool-tabbar > .sh-segtab { display: inline-flex; align-items: center; justify-content: center; gap: 6px; white-space: nowrap; }

.sh-tool-tab-badge { flex: none; }
.sh-tool-panel { display: flex; flex-direction: column; gap: var(--sh-b-gap, 16px); min-width: 0; }
.sh-tool-panel[hidden] { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-title { margin: 0; }
.sh-tool-diff { margin: 8px 0 0; max-width: 720px; font-size: 15px; font-weight: 600; line-height: 1.6; color: var(--sh-tool-ink); }
.sh-tool-rows { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; }
.sh-tool-row { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 76px; padding: 14px 12px; border-radius: var(--sh-tool-r); color: inherit; text-decoration: none; transition: background-color .12s ease-out; }
.sh-tool-row:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
@media (hover: hover) and (pointer: fine) { .sh-tool-row:hover { background: var(--sh-tool-fill-2); } .sh-tool-row:hover .sh-tool-row-go { color: var(--sh-tool-pri); transform: translateX(2px); } }
.sh-tool-row-copy { display: grid; gap: 4px; min-width: 0; flex: 1 1 auto; }
.sh-tool-row-title { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; }
.sh-tool-row-title strong { font-size: 17px; font-weight: 700; letter-spacing: -.02em; color: var(--sh-tool-ink); }
.sh-tool-row-desc { font-size: 15px; line-height: 1.5; color: var(--sh-tool-ink-3); }
.sh-tool-row-go { flex: 0 0 auto; display: inline-flex; width: 24px; height: 24px; color: var(--sh-faint); transition: transform .12s ease-out, color .12s ease-out; }
.sh-tool-row-go svg { width: 24px; height: 24px; }

.sh-tool-soon { display: grid; gap: 12px; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-soon .sh-h2 { margin: 0; }

.sh-tool-card-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 16px; margin: 0 0 16px; }
.sh-tool-card-copy { min-width: 0; flex: 1 1 260px; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-card-title { margin: 0; font-size: 20px; }
.sh-tool-card-sub { margin: 4px 0 0; font-size: 14px; line-height: 1.5; color: var(--sh-tool-ink-3); }
.sh-tool-card-side { flex: 0 0 auto; }
.sh-tool-steps { display: flex; align-items: center; gap: 8px; margin: 0 0 4px; padding: 0; list-style: none; counter-reset: none; }
.sh-tool-step { display: flex; align-items: center; gap: 8px; min-width: 0; font-size: 15px; font-weight: 600; color: var(--sh-tool-ink-3); }
.sh-tool-step + .sh-tool-step::before { content: ""; flex: 0 0 24px; height: 2px; border-radius: 1px; background: var(--sh-tool-line); margin-right: 0; }
.sh-tool-step-no { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: var(--sh-tool-fill); font-size: 14px; font-weight: 700; color: var(--sh-tool-ink-3); }
.sh-tool-step-no svg { width: 16px; height: 16px; stroke-width: 2.6; }
.sh-tool-step.is-done .sh-tool-step-no { background: var(--sh-tool-pri-soft); color: var(--sh-tool-pri); }
.sh-tool-step.is-done + .sh-tool-step::before { background: var(--sh-tool-pri-soft); }
.sh-tool-step.is-current { color: var(--sh-tool-ink); }
.sh-tool-step.is-current .sh-tool-step-no { background: var(--sh-tool-pri); color: #fff; }
.sh-tool-step-label { white-space: nowrap; }
@media (max-width: 479px) {

  .sh-tool-step:not(.is-current) .sh-tool-step-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .sh-tool-step + .sh-tool-step::before { flex-basis: 16px; }
}
.sh-tool-pane { display: grid; gap: 16px; min-width: 0; }
.sh-tool-steps-host + .sh-tool-body .sh-tool-pane { margin-top: 24px; }
.sh-tool-pane-title { margin: 0; font-size: 22px; font-weight: 800; letter-spacing: -.03em; line-height: 1.35; color: var(--sh-tool-ink); }
.sh-tool-pane-sub { margin: -8px 0 0; font-size: 15px; line-height: 1.55; color: var(--sh-tool-ink-3); }
.sh-tool-form { display: grid; gap: 16px; margin: 0; min-width: 0; }
.sh-tool-form > .sh-field { margin: 0; }
.sh-tool-label-row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.sh-tool-label-row .sh-label { flex: 1 1 auto; }
.sh-tool-counter { flex: 0 0 auto; font-size: 14px; font-weight: 600; color: var(--sh-tool-ink-3); font-variant-numeric: tabular-nums; }
.sh-tool-counter.is-over { color: var(--sh-danger); }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-help { margin: 8px 0 0; font-size: 14px; font-weight: 400; line-height: 1.55; color: var(--sh-tool-ink-3); }
.sh-tool-modal .sh-tool-help { margin: 8px 0 0; font-weight: 400; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-textarea { min-height: 168px; resize: vertical; }
.sh-tool-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.sh-tool-actions--split > :last-child { flex: 1 1 auto; }
.sh-tool-actions--cta > .sh-btn { flex: 1 1 100%; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-go { height: 56px; min-height: 56px; padding: 0 24px; border-radius: 16px; font-size: 17px; font-weight: 700; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-btn svg { width: 18px; height: 18px; margin-right: 6px; flex: 0 0 auto; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-btn--quiet { background: transparent; color: var(--sh-tool-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-danger { color: var(--sh-danger); background: var(--sh-status-danger-bg); }
.sh-tools .sh-btn.sh-loading { cursor: progress; }

.sh-tool-finder { display: grid; gap: 16px; min-width: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-modes > button { flex: 1 1 0; min-width: 0; }
.sh-tool-places { display: grid; gap: 12px; min-width: 0; }
.sh-tool-places:empty { display: none; }
.sh-tool-places-head { margin: 4px 0 0; font-size: 15px; font-weight: 700; color: var(--sh-tool-ink); }
.sh-tool-place-list { display: grid; gap: 8px; }
.sh-tool-place { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 72px; padding: 12px 14px; border: 1px solid var(--sh-tool-line); border-radius: var(--sh-tool-r); background: var(--sh-b-card, #fff); text-align: left; cursor: pointer; color: inherit; font: inherit; transition: border-color .12s ease-out, background-color .12s ease-out; }
.sh-tool-place:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
@media (hover: hover) and (pointer: fine) { .sh-tool-place:not(:disabled):hover { border-color: var(--sh-primary-line); background: var(--sh-tool-fill-2); } }
.sh-tool-place[data-sh-place-confirmed="false"] { background: var(--sh-tool-fill-2); }
.sh-tool-place:disabled { cursor: not-allowed; opacity: .6; }
.sh-tool-place-ic { flex: 0 0 40px; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--sh-tool-fill); color: var(--sh-tool-ink-3); }
.sh-tool-place-ic svg { width: 20px; height: 20px; }
.sh-tool-place-copy { display: grid; gap: 4px; min-width: 0; flex: 1 1 auto; }
.sh-tool-place-name { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; }
.sh-tool-place-name strong { font-size: 16px; font-weight: 700; color: var(--sh-tool-ink); overflow-wrap: anywhere; }
.sh-tool-place-cat, .sh-tool-place-addr { font-size: 14px; color: var(--sh-tool-ink-3); overflow-wrap: anywhere; }
.sh-tool-place-tail { flex: 0 0 auto; }
.sh-tool-place-pick { display: inline-flex; align-items: center; height: 32px; padding: 0 12px; border-radius: 10px; background: var(--sh-tool-pri-soft); font-size: 14px; font-weight: 700; color: var(--sh-tool-pri); }
.sh-tool-finder-note { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 12px; padding: 12px 14px; border-radius: 14px; background: var(--sh-tool-fill-2); }
.sh-tool-finder-note p { margin: 0; flex: 1 1 220px; font-size: 14px; line-height: 1.55; color: var(--sh-tool-ink-2); }
.sh-tool-picked { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-radius: var(--sh-tool-r); background: var(--sh-tool-pri-soft); }
.sh-tool-picked-ic { flex: 0 0 32px; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; background: var(--sh-tool-pri); color: #fff; }
.sh-tool-picked-ic svg { width: 18px; height: 18px; stroke-width: 2.6; }
.sh-tool-picked-copy { min-width: 0; flex: 1 1 auto; }
.sh-tool-picked-note { margin: 0; font-size: 16px; font-weight: 700; line-height: 1.45; color: var(--sh-tool-ink); overflow-wrap: anywhere; }
.sh-tool-picked-meta { margin: 4px 0 0; font-size: 14px; line-height: 1.5; color: var(--sh-tool-ink-2); overflow-wrap: anywhere; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-picked-change { flex: 0 0 auto; background: var(--sh-b-card, #fff); }

.sh-tool-busy { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 12px; padding: 4px 0; }
.sh-tool-spinner { flex: 0 0 28px; width: 28px; height: 28px; margin-top: 1px; border: 3px solid var(--sh-tool-pri-soft); border-top-color: var(--sh-tool-pri); border-radius: 50%; animation: sh-spin .9s linear infinite; }
@media (prefers-reduced-motion: reduce) { .sh-tool-spinner { animation-duration: 2.4s; } }
.sh-tool-busy-copy { min-width: 0; flex: 1 1 240px; }
.sh-tool-busy > .sh-tool-actions { flex: 1 1 100%; padding-left: 42px; }
.sh-tool-state { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 4px 16px; align-items: start; padding: 8px 0; }
.sh-tool-state-ic { grid-row: span 2; display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; background: var(--sh-b-blue-soft, var(--sh-status-info-bg)); color: var(--sh-b-blue, var(--sh-status-info)); }
.sh-tool-state-ic svg { width: 24px; height: 24px; }
.sh-tool-state--warn .sh-tool-state-ic { background: var(--sh-b-orange-soft, var(--sh-decision-bg)); color: var(--sh-b-orange, var(--sh-decision-ink)); }
.sh-tool-state-copy { min-width: 0; display: grid; gap: 6px; padding-top: 2px; }
.sh-tool-state-title { margin: 0; font-size: 18px; font-weight: 700; line-height: 1.4; letter-spacing: -.02em; color: var(--sh-tool-ink); }
.sh-tool-state-body { margin: 0; font-size: 15px; line-height: 1.6; color: var(--sh-tool-ink-2); }
.sh-tool-state > .sh-tool-actions { grid-column: 2; margin-top: 12px; }
.sh-tool-skel { display: grid; gap: 12px; padding: 20px; border-radius: 20px; background: var(--sh-tool-fill-2); }
.sh-tool-skel > .sh-skel { margin: 0; height: 14px; }
.sh-tool-skel > .sh-skel:nth-child(2) { height: 40px; }

.sh-tool-result-top { display: flex; align-items: center; gap: 12px; }
.sh-tool-result-who { min-width: 0; }
.sh-tool-result-name { margin: 0; font-size: 22px; font-weight: 800; letter-spacing: -.03em; line-height: 1.35; color: var(--sh-tool-ink); overflow-wrap: anywhere; }
.sh-tool-result-cat { margin: 4px 0 0; font-size: 14px; color: var(--sh-tool-ink-3); }
.sh-tool-rank { display: grid; gap: 6px; justify-items: center; padding: 28px 20px 24px; border-radius: 20px; background: var(--sh-tool-fill-2); text-align: center; }
.sh-tool-rank-ctx { margin: 0; font-size: 16px; color: var(--sh-tool-ink-2); }
.sh-tool-rank-ctx b { font-weight: 700; color: var(--sh-tool-ink); overflow-wrap: anywhere; }
.sh-tool-rank-num { display: flex; align-items: baseline; justify-content: center; gap: 4px; margin: 0; color: var(--sh-tool-pri); }
.sh-tool-rank-num b { font-size: 36px; font-weight: 800; letter-spacing: -.04em; line-height: 1.05; }
.sh-tool-rank-num span { font-size: 20px; font-weight: 800; }
.sh-tool-rank-num.is-out { font-size: 28px; font-weight: 800; letter-spacing: -.03em; line-height: 1.3; color: var(--sh-tool-ink); }
.sh-tool-rank-meta { margin: 0; font-size: 14px; color: var(--sh-tool-ink-3); }
.sh-tool-rank-note { margin: 0; max-width: 520px; font-size: 14px; line-height: 1.55; color: var(--sh-tool-ink-2); }
.sh-tool-facts-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; margin: 0; }
.sh-tool-fact { padding: 16px; border-radius: var(--sh-tool-r); background: var(--sh-tool-fill-2); }
.sh-tool-fact dt { font-size: 14px; color: var(--sh-tool-ink-3); }
.sh-tool-fact dd { margin: 6px 0 0; font-size: 22px; font-weight: 800; letter-spacing: -.02em; color: var(--sh-tool-ink); }
.sh-tool-comp { display: grid; gap: 12px; }
.sh-tool-comp-toggle { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; min-height: 52px; padding: 0 16px; border: 0; border-radius: 14px; background: var(--sh-tool-fill); font: inherit; font-size: 16px; font-weight: 700; color: var(--sh-tool-ink); cursor: pointer; }
.sh-tool-comp-toggle:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
.sh-tool-comp-chev { width: 20px; height: 20px; transition: transform .15s ease-out; }
.sh-tool-comp-toggle[aria-expanded="true"] .sh-tool-comp-chev { transform: rotate(180deg); }
.sh-tool-comp-panel { display: grid; gap: 8px; }
.sh-tool-comp-name { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; min-width: 0; }
.sh-tool-comp-name strong { font-weight: 700; overflow-wrap: anywhere; }
.sh-tool-comp-cat { font-size: 13px; color: var(--sh-tool-ink-3); }
.sh-tool-next { display: grid; gap: 12px; padding-top: 8px; }
.sh-tool-next-title { margin: 0; font-size: 18px; font-weight: 700; color: var(--sh-tool-ink); }
.sh-tool-next-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; }
.sh-tool-next-item { display: grid; gap: 8px; padding: 18px; border-radius: 20px; background: var(--sh-tool-fill-2); }
.sh-tool-next-item--main { background: var(--sh-tool-pri-soft); }
.sh-tool-next-k { margin: 0; font-size: 17px; font-weight: 700; color: var(--sh-tool-ink); }
.sh-tool-next-b { margin: 0; font-size: 15px; line-height: 1.55; color: var(--sh-tool-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-next-cta { width: 100%; height: 52px; min-height: 52px; border-radius: 14px; font-size: 16px; font-weight: 700; }
.sh-tool-next-link { display: flex; align-items: center; gap: 12px; min-height: 76px; color: inherit; text-decoration: none; transition: background-color .12s ease-out; }
.sh-tool-next-link:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
@media (hover: hover) and (pointer: fine) { .sh-tool-next-link:hover { background: var(--sh-tool-fill); } }
.sh-tool-next-ic { flex: 0 0 auto; width: 40px; height: 40px; padding: 9px; border-radius: 50%; background: var(--sh-b-card, #fff); color: var(--sh-tool-pri); }
.sh-tool-next-copy { display: grid; gap: 4px; min-width: 0; }
.sh-tool-next-copy strong { font-size: 16px; font-weight: 700; color: var(--sh-tool-ink); }
.sh-tool-next-copy span { font-size: 14px; line-height: 1.5; color: var(--sh-tool-ink-3); overflow-wrap: anywhere; }
.sh-tool-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.sh-tool-chips:empty { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-chip { display: inline-flex; align-items: center; gap: 8px; height: 40px; min-height: 40px; padding: 0 14px; border-radius: 12px; background: transparent; box-shadow: inset 0 0 0 1px var(--sh-primary-line); color: var(--sh-tool-pri); text-decoration: none; cursor: pointer; }
.sh-tool-result-foot { display: grid; gap: 12px; padding-top: 16px; border-top: 1px solid var(--sh-tool-line); }
@media (min-width: 1024px) {
  .sh-tool-next-grid { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); grid-template-rows: auto auto; }
  .sh-tool-next-item--main { grid-row: span 2; align-content: start; }
}

.sh-tool-results, .sh-tool-pane, .sh-tool-comp-panel, .sh-tool-modal-body { container-type: inline-size; }
.sh-tool-table-wrap { min-width: 0; }
.sh-tool-table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 15px; color: var(--sh-tool-ink); }
.sh-tool-table th, .sh-tool-table td { padding: 10px 12px; border-bottom: 1px solid var(--sh-tool-line); text-align: left; vertical-align: middle; }
.sh-tool-table thead th { padding: 10px 12px; border-bottom: 0; background: var(--sh-tool-fill-2); font-size: 13px; font-weight: 600; color: var(--sh-tool-ink-3); white-space: nowrap; }
.sh-tool-table thead tr:first-child th:first-child { border-top-left-radius: 12px; }
.sh-tool-table thead tr:first-child th:last-child { border-top-right-radius: 12px; }
.sh-tool-table tbody th { font-weight: 600; }
.sh-tool-table .is-num { text-align: right; white-space: nowrap; }
.sh-tool-table .is-c { text-align: center; }
.sh-tool-table tbody tr.is-target > * { background: var(--sh-tool-pri-soft); }
.sh-tool-table tbody tr:last-child > * { border-bottom: 0; }
.sh-tool-table--comp .sh-tool-td--rank { width: 72px; font-weight: 700; }
.sh-tool-table--shop .sh-tool-td--rank { width: 64px; font-weight: 700; }
.sh-tool-table--shop .sh-tool-td--mall { width: 160px; overflow-wrap: anywhere; }
.sh-tool-table--shop .sh-tool-td--price { width: 112px; }
.sh-tool-table--shop .sh-tool-td--type { width: 96px; }
@container (max-width: 639px) {

  .sh-tool-table, .sh-tool-table tbody, .sh-tool-table tr, .sh-tool-table th, .sh-tool-table td { display: block; }
  .sh-tool-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .sh-tool-table tbody { display: grid; gap: 8px; }
  .sh-tool-table tbody tr { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto; align-items: center; gap: 8px 12px; padding: 14px; border-radius: var(--sh-tool-r); background: var(--sh-tool-fill-2); }
  .sh-tool-table tbody tr.is-target { background: var(--sh-tool-pri-soft); box-shadow: inset 0 0 0 1.5px var(--sh-primary-line); }
  .sh-tool-table tbody tr > * { display: flex; align-items: baseline; gap: 6px; min-width: 0; padding: 0; border: 0; background: transparent; font-size: 14px; text-align: left; }
  .sh-tool-table tbody tr.is-target > * { background: transparent; }
  .sh-tool-table tbody tr > *::before { content: attr(data-label); flex: 0 0 auto; font-size: 13px; font-weight: 500; color: var(--sh-tool-ink-3); }
  .sh-tool-table tbody tr > .sh-tool-td--rank { grid-column: 1; grid-row: 1; align-self: start; padding-top: 2px; font-size: 16px; font-weight: 800; }
  .sh-tool-table tbody tr > :is(.sh-tool-td--rank, .sh-tool-td--name, .sh-tool-td--product, .sh-tool-td--type, .sh-tool-td--mall, .sh-tool-td--price)::before { content: none; }
  .sh-tool-table tbody tr > :is(.sh-tool-td--name, .sh-tool-td--product) { grid-column: 2; grid-row: 1; }
  .sh-tool-table--comp tbody tr > .sh-tool-td--name { grid-column: 2 / -1; }
  .sh-tool-table tbody tr > .sh-tool-td--type { grid-column: 3; grid-row: 1; align-self: start; }
  .sh-tool-table tbody tr > .sh-tool-td--visitor { grid-column: 2; grid-row: 2; }
  .sh-tool-table tbody tr > .sh-tool-td--blog { grid-column: 3; grid-row: 2; justify-content: flex-end; }
  .sh-tool-table tbody tr > .sh-tool-td--mall { grid-column: 2; grid-row: 2; color: var(--sh-tool-ink-2); overflow-wrap: anywhere; }
  .sh-tool-table tbody tr > .sh-tool-td--price { grid-column: 3; grid-row: 2; justify-content: flex-end; font-size: 15px; font-weight: 700; }
  .sh-tool-table--shop .sh-tool-td--mall, .sh-tool-table--shop .sh-tool-td--price, .sh-tool-table--shop .sh-tool-td--type, .sh-tool-table--shop .sh-tool-td--rank { width: auto; }
  .sh-tool-table--comp .sh-tool-td--rank { width: auto; }

  .sh-tool-table--shop tbody tr { grid-template-columns: 36px auto minmax(0, 1fr) auto; }
  .sh-tool-table--shop tbody tr > .sh-tool-td--product { grid-column: 2 / -1; grid-row: 1; }
  .sh-tool-table--shop tbody tr > .sh-tool-td--type { grid-column: 2; grid-row: 2; align-self: center; }
  .sh-tool-table--shop tbody tr > .sh-tool-td--mall { grid-column: 3; grid-row: 2; }
  .sh-tool-table--shop tbody tr > .sh-tool-td--price { grid-column: 4; grid-row: 2; }
  .sh-tool-td--product > .sh-tool-prod { flex: 1 1 auto; min-width: 0; }
  .sh-tool-prod { align-items: flex-start; }
  .sh-tool-prod-img { flex-basis: 40px; width: 40px; height: 40px; }
}

.sh-tool-only-narrow { display: none; }
@container (max-width: 859px) { .sh-tool-only-wide { display: none; } .sh-tool-only-narrow { display: grid; } }
.sh-tool-table--kw { font-size: 14px; }
.sh-tool-table--kw thead th { padding: 8px 10px; text-align: right; }
.sh-tool-table--kw thead th.sh-tool-th-kw { text-align: left; }
.sh-tool-table--kw thead th.is-group { text-align: center; border-bottom: 1px solid var(--sh-b-card, #fff); }
.sh-tool-table--kw thead th.is-c, .sh-tool-table--kw td.is-c { text-align: center; }
.sh-tool-table--kw th, .sh-tool-table--kw td { padding: 11px 10px; }
.sh-tool-table--kw .is-total { font-weight: 700; }
.sh-tool-table--kw tbody th { max-width: 220px; overflow-wrap: anywhere; }
.sh-tool-table--kw tr.is-missing .sh-tool-td-missing { color: var(--sh-tool-ink-3); text-align: left; }
.sh-tool-kcards { gap: 8px; margin: 0; padding: 0; list-style: none; }
.sh-tool-kcard { padding: 16px; border-radius: var(--sh-tool-r); background: var(--sh-tool-fill-2); }
.sh-tool-kcard-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.sh-tool-kcard-kw { min-width: 0; font-size: 17px; font-weight: 700; color: var(--sh-tool-ink); overflow-wrap: anywhere; }
.sh-tool-kcard-total { display: inline-flex; align-items: baseline; gap: 6px; flex: 0 0 auto; }
.sh-tool-kcard-k { font-size: 13px; color: var(--sh-tool-ink-3); }
.sh-tool-kcard-total b { font-size: 20px; font-weight: 800; color: var(--sh-tool-ink); }
.sh-tool-kmini { width: 100%; margin: 12px 0 0; border-collapse: collapse; font-size: 14px; }
.sh-tool-kmini th, .sh-tool-kmini td { padding: 7px 0; border-top: 1px solid var(--sh-tool-line); text-align: left; font-weight: 500; color: var(--sh-tool-ink-2); }
.sh-tool-kmini thead th { padding-top: 0; border-top: 0; font-size: 13px; color: var(--sh-tool-ink-2); }
.sh-tool-kmini .is-num { width: 34%; text-align: right; font-weight: 600; color: var(--sh-tool-ink); font-variant-numeric: tabular-nums; }
.sh-tool-kmini thead .is-num { font-weight: 500; color: var(--sh-tool-ink-2); }
.sh-tool-kcard-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin-top: 8px; padding-top: 10px; border-top: 1px solid var(--sh-tool-line); font-size: 14px; color: var(--sh-tool-ink); }
.sh-tool-kcard-foot .sh-tool-kcard-k:not(:first-child) { margin-left: 8px; }

.sh-tool-resbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.sh-tool-resbar > .sh-tool-quota { flex: 1 1 260px; }
.sh-tool-filter-box { position: relative; flex: 1 1 280px; min-width: 0; }
.sh-tool-filter-ic { position: absolute; left: 16px; top: 50%; width: 20px; height: 20px; transform: translateY(-50%); color: var(--sh-tool-ink-3); pointer-events: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-filter-input { width: 100%; height: 48px; min-height: 48px; padding-left: 44px; }
.sh-tool-count { margin-top: -4px; }
.sh-tool-plist { min-width: 0; }
.sh-tool-empty-line { margin: 0; padding: 24px 16px; border-radius: var(--sh-tool-r); background: var(--sh-tool-fill-2); font-size: 15px; text-align: center; color: var(--sh-tool-ink-2); }
.sh-tool-prod { display: flex; align-items: center; gap: 12px; min-width: 0; }
.sh-tool-prod-img { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 10px; object-fit: cover; background: var(--sh-tool-fill); }
.sh-tool-prod-copy { display: grid; gap: 4px; min-width: 0; }
.sh-tool-prod-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 15px; font-weight: 600; line-height: 1.45; color: var(--sh-tool-ink); text-decoration: none; overflow-wrap: anywhere; }
a.sh-tool-prod-title:hover { text-decoration: underline; }
a.sh-tool-prod-title:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; border-radius: 4px; }
.sh-tool-prod-id { font-size: 13px; color: var(--sh-tool-ink-3); }

.sh-tool-defs { display: grid; margin: 0; }
.sh-tool-def { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--sh-tool-line); }
.sh-tool-def:first-child { padding-top: 0; }
.sh-tool-def:last-child { padding-bottom: 0; border-bottom: 0; }
.sh-tool-def dt { flex: 0 0 auto; font-size: 15px; color: var(--sh-tool-ink-3); }
.sh-tool-def dd { margin: 0; max-width: 68%; font-size: 15px; font-weight: 600; line-height: 1.55; color: var(--sh-tool-ink-2); text-align: right; }
.sh-tool-policy .sh-tool-card-head { margin-bottom: 12px; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-policy .sh-tool-card-title { font-size: 18px; }
@media (max-width: 599px) {
  .sh-tool-def { display: grid; gap: 4px; }
  .sh-tool-def dd { max-width: none; text-align: left; }
}

.sh-tool-slots .sh-tool-card-head { margin-bottom: 20px; }
.sh-tool-slot-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); gap: 12px; }
.sh-tool-slot { display: grid; gap: 12px; align-content: start; min-width: 0; padding: 20px; border-radius: 20px; background: var(--sh-tool-fill-2); }
.sh-tool-slot--skel { min-height: 220px; }
.sh-tool-slot--skel .sh-tool-skel { padding: 0; background: transparent; }
.sh-tool-slot-top { display: flex; align-items: flex-start; gap: 12px; }
.sh-tool-slot-head { min-width: 0; flex: 1 1 auto; }
.sh-tool-slot-kw { margin: 0; font-size: 18px; font-weight: 700; letter-spacing: -.02em; line-height: 1.4; color: var(--sh-tool-ink); overflow-wrap: anywhere; }
.sh-tool-slot-place { margin: 4px 0 0; font-size: 14px; color: var(--sh-tool-ink-3); overflow-wrap: anywhere; }
.sh-tool-slot-top > .sh-tool-badge { margin-top: 4px; }
.sh-tool-slot-nums { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.sh-tool-slot-num { display: grid; gap: 4px; padding: 12px; border-radius: 14px; background: var(--sh-b-card, #fff); min-width: 0; }
.sh-tool-slot-num span { font-size: 13px; color: var(--sh-tool-ink-3); }
.sh-tool-slot-num b { font-size: 18px; font-weight: 800; letter-spacing: -.02em; color: var(--sh-tool-ink); white-space: nowrap; }
.sh-tool-slot-num.is-main b { color: var(--sh-tool-pri); }
.sh-tool-slot-num.is-up b { color: var(--sh-ok-strong); }
.sh-tool-slot-num.is-down b { color: var(--sh-danger); }
.sh-tool-slot-meta { margin: 0; font-size: 14px; line-height: 1.55; color: var(--sh-tool-ink-3); }
.sh-tool-slot-extra { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.sh-tool-slot-extra li { display: inline-flex; align-items: center; height: 28px; padding: 0 10px; border-radius: 8px; background: var(--sh-b-card, #fff); font-size: 13px; font-weight: 600; color: var(--sh-tool-ink-2); font-variant-numeric: tabular-nums; }
.sh-tool-slot-actions > .sh-btn { flex: 1 1 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-slot-actions > .sh-btn--soft { background: var(--sh-b-card, #fff); }
.sh-tool-confirm { display: grid; gap: 12px; padding: 20px; border-radius: 20px; background: var(--sh-tool-fill-2); box-shadow: inset 0 0 0 1.5px var(--sh-primary-line); }
.sh-tool-confirm--inline { padding: 16px; border-radius: 16px; background: var(--sh-b-card, #fff); box-shadow: inset 0 0 0 1.5px var(--sh-status-danger-line); }
.sh-tool-confirm-title { margin: 0; font-size: 18px; font-weight: 700; color: var(--sh-tool-ink); }
.sh-tool-confirm--inline .sh-tool-confirm-title { font-size: 16px; }
.sh-tool-confirm-body { margin: 0; font-size: 15px; line-height: 1.55; color: var(--sh-tool-ink-2); }
.sh-tool-confirm--inline .sh-tool-confirm-body { font-size: 14px; }
.sh-tool-confirm--inline .sh-tool-actions > .sh-btn { flex: 1 1 0; }

.sh-tool-dialog .sh-tool-modal { width: 560px; }
.sh-tool-modal-body { display: grid; gap: 16px; margin-top: 16px; min-width: 0; }
.sh-tool-modal .sh-input, .sh-tool-modal .sh-textarea { height: 56px; min-height: 56px; padding: 0 16px; border: 0; border-radius: 14px; background: var(--sh-b-fill, var(--sh-fill)); font-size: 16px; color: var(--sh-b-ink, var(--sh-ink)); box-shadow: none; }
.sh-tool-modal .sh-input:focus { background: #fff; box-shadow: inset 0 0 0 2px var(--sh-b-pri, var(--sh-primary)); outline: 0; }
.sh-tool-modal .sh-label { font-size: 15px; font-weight: 600; color: var(--sh-b-ink-2, var(--sh-ink-2)); margin-bottom: 8px; }
.sh-tool-modal .sh-help { font-size: 14px; line-height: 1.55; color: var(--sh-b-ink-3, var(--sh-muted-2)); }
.sh-tool-modal .sh-btn { min-height: 48px; border-radius: 12px; font-size: 15px; font-weight: 600; box-shadow: none; }
.sh-tool-modal .sh-btn--primary { border: 0; background: var(--sh-b-pri, var(--sh-primary)); color: #fff; height: 52px; font-size: 16px; font-weight: 700; }
.sh-tool-modal .sh-btn--soft { border: 0; background: var(--sh-b-fill, var(--sh-fill)); color: var(--sh-b-ink, var(--sh-ink)); }
.sh-tool-modal .sh-btn--quiet { border: 0; background: transparent; color: var(--sh-b-ink-2, var(--sh-ink-2)); }
.sh-tool-modal .sh-segtabs { display: flex; gap: 4px; padding: 4px; border: 0; border-radius: 14px; background: var(--sh-b-fill, var(--sh-fill)); }
.sh-tool-modal .sh-segtab { flex: 1 1 0; min-width: 0; height: 44px; min-height: 44px; border: 0; border-radius: 10px; background: transparent; font-size: 15px; font-weight: 600; color: var(--sh-b-ink-3, var(--sh-muted-2)); box-shadow: none; }
.sh-tool-modal .sh-segtab.active { background: var(--sh-b-ink, var(--sh-ink)); color: #fff; box-shadow: none; }
.sh-tool-modal .sh-tool-steps { margin-bottom: 0; }
.sh-tool-chart-wrap { margin: 0; display: grid; gap: 8px; padding: 16px 12px 8px; border-radius: 16px; background: var(--sh-b-fill-2, var(--sh-surface-mute)); }
.sh-tool-chart { display: block; width: 100%; height: auto; overflow: visible; }
.sh-tool-chart-grid { stroke: var(--sh-b-line, var(--sh-line)); stroke-width: 1; }
.sh-tool-chart-axis { fill: var(--sh-b-ink-2, var(--sh-ink-2)); font-size: 12px; font-variant-numeric: tabular-nums; }
.sh-tool-chart-line { fill: none; stroke: var(--sh-b-pri, var(--sh-primary)); stroke-width: 2.5; stroke-linejoin: round; stroke-linecap: round; }
.sh-tool-chart-dot { fill: var(--sh-b-pri, var(--sh-primary)); stroke: #fff; stroke-width: 1.5; }
.sh-tool-chart-out { fill: #fff; stroke: var(--sh-b-ink-3, var(--sh-muted-2)); stroke-width: 1.5; }
.sh-tool-history-head { margin: 4px 0 0; font-size: 15px; font-weight: 700; color: var(--sh-b-ink, var(--sh-ink)); }
.sh-tool-history { display: grid; margin: 0; padding: 0; list-style: none; }
.sh-tool-history-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; border-bottom: 1px solid var(--sh-b-line, var(--sh-line)); font-size: 15px; color: var(--sh-b-ink-2, var(--sh-ink-2)); }
.sh-tool-history-row:last-child { border-bottom: 0; }
.sh-tool-history-row b { font-weight: 700; color: var(--sh-b-ink, var(--sh-ink)); }
.sh-tool-history-row b.is-out { font-weight: 600; color: var(--sh-b-ink-3, var(--sh-muted-2)); }
.sh-tool-dialog .sh-tool-state-title { font-size: 17px; }

body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-tabs { margin: 0 0 20px; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-tabs > button { flex: 1 1 0; min-width: 0; }
.sh-tool-tabpanel[hidden] { display: none; }
.sh-tool-related { display: grid; gap: 12px; margin-top: 20px; }
.sh-tool-related:empty { display: none; }
.sh-tool-related-head { display: grid; gap: 4px; }
.sh-tool-related-title { margin: 0; font-size: 18px; font-weight: 700; color: var(--sh-tool-ink); overflow-wrap: anywhere; }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-kwchip { background: var(--sh-tool-fill); }
.sh-tool-kwchip-k { color: var(--sh-tool-ink); }
.sh-tool-kwchip-n { font-size: 14px; font-weight: 600; color: var(--sh-tool-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-kwchip[aria-pressed="true"] { background: var(--sh-tool-pri-soft); box-shadow: inset 0 0 0 1.5px var(--sh-primary-line); }
.sh-tool-kwchip[aria-pressed="true"] .sh-tool-kwchip-k { color: var(--sh-tool-pri); }
.sh-tool-kwchip[aria-pressed="true"] .sh-tool-kwchip-k::before { content: "\2713"; margin-right: 4px; font-weight: 800; }
.sh-tool-related-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 12px; padding-top: 14px; border-top: 1px solid var(--sh-tool-line); }
.sh-tool-related-bar > .sh-tool-muted { flex: 1 1 220px; }

.sh-tool-depth { display: grid; gap: 12px; min-width: 0; margin: 0; padding: 0; border: 0; }
.sh-tool-depth > legend { padding: 0; margin-bottom: 8px; }
.sh-tool-stepper { display: flex; align-items: center; gap: 8px; }
.sh-tool-stepper-btn { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; border: 0; border-radius: 14px; background: var(--sh-tool-fill); color: var(--sh-tool-ink); cursor: pointer; }
.sh-tool-stepper-btn svg { width: 22px; height: 22px; }
.sh-tool-stepper-btn:disabled { color: var(--sh-faint); cursor: not-allowed; }
.sh-tool-stepper-btn:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
.sh-tool-stepper-value { flex: 1 1 auto; display: flex; align-items: center; justify-content: center; height: 52px; border-radius: 14px; background: var(--sh-tool-fill-2); font-size: 20px; font-weight: 800; color: var(--sh-tool-ink); font-variant-numeric: tabular-nums; }
.sh-tool-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.sh-tool-tile { display: grid; gap: 4px; justify-items: center; min-height: 64px; padding: 10px 4px; border: 1px solid var(--sh-tool-line); border-radius: 14px; background: var(--sh-b-card, #fff); font: inherit; color: var(--sh-tool-ink); cursor: pointer; transition: border-color .12s ease-out, background-color .12s ease-out; }
.sh-tool-tile:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
@media (hover: hover) and (pointer: fine) { .sh-tool-tile:hover { border-color: var(--sh-primary-line); } }
.sh-tool-tile.active { border-color: var(--sh-tool-pri); background: var(--sh-tool-pri-soft); box-shadow: inset 0 0 0 1px var(--sh-tool-pri); }
.sh-tool-tile-k { font-size: 16px; font-weight: 700; }
.sh-tool-tile-v { font-size: 14px; color: var(--sh-tool-ink-3); }
.sh-tool-tile.active .sh-tool-tile-k, .sh-tool-tile.active .sh-tool-tile-v { color: var(--sh-tool-pri); }
.sh-tool-sum { display: grid; margin: 0; padding: 4px 16px; border-radius: var(--sh-tool-r); background: var(--sh-tool-fill-2); }
.sh-tool-sum-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 52px; border-bottom: 1px solid var(--sh-tool-line); }
.sh-tool-sum-row:last-child { border-bottom: 0; }
.sh-tool-sum-row dt { font-size: 15px; color: var(--sh-tool-ink-3); }
.sh-tool-sum-row dd { margin: 0; font-size: 16px; font-weight: 600; color: var(--sh-tool-ink); text-align: right; overflow-wrap: anywhere; }
.sh-tool-sum-row.is-total dt { color: var(--sh-tool-ink); font-weight: 600; }
.sh-tool-sum-row.is-total dd { font-size: 20px; font-weight: 800; color: var(--sh-tool-pri); }
.sh-tool-sum--confirm { background: var(--sh-b-card, #fff); }
.sh-tool-more { margin-top: 4px; }
.sh-tool-shop .sh-tool-foot { text-align: center; }

@media (max-width: 767px) {

  body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-panel > .sh-tool-head { display: grid; grid-template-columns: 48px minmax(0, 1fr); align-items: center; gap: 0 12px; }
  .sh-tool-head:not(.sh-tool-head--hub) > .sh-tool-head-copy { display: contents; }
  .sh-tool-head:not(.sh-tool-head--hub) :is(.sh-tool-lead, .sh-tool-diff, .sh-tool-facts) { grid-column: 1 / -1; }
  .sh-tool-head:not(.sh-tool-head--hub) .sh-tool-lead { margin-top: 12px; }
  .sh-tools .sh-tool-ic--lg { width: 48px; height: 48px; border-radius: 13px; }
  .sh-tool-lead { font-size: 15px; }
  .sh-tool-row { gap: 12px; padding: 14px 4px; }
  .sh-tool-row-title strong { font-size: 16px; }
  .sh-tool-row-desc { font-size: 14px; }
  .sh-tool-pane-title { font-size: 20px; }
  .sh-tool-rank-num.is-out { font-size: 22px; }
  .sh-tool-card-head > .sh-tool-add { flex: 1 1 100%; }
  .sh-tool-state { grid-template-columns: 40px minmax(0, 1fr); gap: 4px 12px; }
  .sh-tool-state-ic { width: 40px; height: 40px; }
  .sh-tool-state-ic svg { width: 20px; height: 20px; }
  .sh-tool-state > .sh-tool-actions { grid-column: 1 / -1; }
  .sh-tool-state > .sh-tool-actions > .sh-btn { flex: 1 1 auto; }
  .sh-tool-busy > .sh-tool-actions { padding-left: 0; }
  .sh-tool-actions--split > .sh-btn:first-child { flex: 0 0 auto; }
  .sh-tool-slot-actions > .sh-btn { min-width: 0; }
  .sh-tool-tile { min-height: 60px; }
  .sh-tool-tile-k { font-size: 15px; }

  body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-chip { height: 44px; min-height: 44px; }
  .sh-tool-modal .sh-tool-modal-body { margin-top: 12px; }
}

@media (min-width: 1200px) {
  body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-app {
    display: grid; grid-template-columns: minmax(0, 1fr) clamp(380px, calc((100% - 24px) * .44), 1000px); column-gap: 24px; row-gap: 0; align-items: start;
  }
  body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-app > * { grid-column: 1; }
  body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-app > :not(.sh-tool-policy, [hidden]) ~ :not(.sh-tool-policy) { margin-top: var(--sh-b-gap, 16px); }
  body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-app > .sh-tool-policy { grid-column: 2; grid-row: 1 / span 9; position: sticky; top: 24px; }

  body:not(.sh-order-page) #main-content.sh-main .sh-tools .sh-tool-app > .sh-tool-results { grid-column: 1 / -1; grid-row: 10; }

  .sh-tool-policy .sh-tool-def dd { text-wrap: pretty; }
}

.sh-order-drawer--entry { --sh-order-drawer-width: clamp(560px, 40vw, 760px); --sh-drawer-thumb: 44px; width: min(100%, var(--sh-order-drawer-width)); }
.sh-order-drawer--entry .sh-drawer-body { padding-bottom: calc(var(--sh-sp-5) + var(--sh-drawer-footer-space, var(--sh-sp-8))); }
.sh-drawer-platform { display: flex; align-items: center; justify-content: center; width: var(--sh-sp-5); height: var(--sh-sp-5); flex-shrink: 0; }
.sh-drawer-platform :is(svg, img) { width: 100%; height: 100%; object-fit: contain; }
.sh-order-drawer--entry .sh-drawer-header h2 { flex: 1; }
.sh-drawer-lookup-row { display: flex; align-items: center; gap: var(--sh-sp-2); }
.sh-drawer-lookup-row .sh-input { min-width: 0; flex: 1; }
.sh-drawer-lookup-row button { flex-shrink: 0; }
.sh-drawer-result--selected { display: grid; grid-template-columns: var(--sh-drawer-thumb) minmax(0, 1fr) auto; gap: var(--sh-sp-1) var(--sh-sp-3); align-items: center; }
.sh-drawer-place-thumb { grid-row: 1 / 3; display: grid; place-items: center; width: var(--sh-drawer-thumb); height: var(--sh-drawer-thumb); background: var(--sh-surface-alt); border-radius: var(--sh-r-sm); }
.sh-drawer-place-thumb img { width: 100%; height: 100%; object-fit: cover; border-radius: inherit; }
.sh-drawer-result--selected > span:not(.sh-drawer-place-thumb):not(.sh-badge) { grid-column: 2; }
.sh-drawer-result--selected > .sh-badge { grid-column: 3; grid-row: 1 / 3; color: var(--sh-ok-text); }
.sh-drawer-duration { display: flex; gap: var(--sh-sp-2); }
.sh-drawer-duration button { flex: 1; }
.sh-drawer-duration button[aria-pressed=true] { color: var(--sh-primary); background: var(--sh-tint); border-color: var(--sh-tint-line); }
.sh-order-drawer--entry .sh-drawer-settings { padding: var(--sh-sp-3) var(--sh-sp-4); border: 1px dashed var(--sh-tint-line); border-radius: var(--sh-r-ctrl); background: var(--sh-tint-soft); }
.sh-drawer-settings > .sh-input { width: 100%; margin-bottom: var(--sh-sp-2); }
.sh-drawer-entry-preview { display: flex; flex-wrap: wrap; gap: var(--sh-sp-2) var(--sh-sp-5); padding-left: var(--sh-sp-4); font-size: var(--sh-t-sm); color: var(--sh-muted); }
.sh-drawer-entry-chips { display: flex; flex-wrap: wrap; gap: var(--sh-sp-2); margin-top: var(--sh-sp-3); }
.sh-drawer-entry-chips:empty { display: none; }
body[data-sh-order-mode=drawer] #fields { display: none !important; }

@media (max-width: 767px) {
  .sh-order-drawer--entry { width: 100%; }
  .sh-order-drawer--entry .sh-drawer-body { padding-bottom: calc(var(--sh-sp-4) + var(--sh-drawer-footer-space, var(--sh-sp-8))); }
  .sh-order-drawer--entry .sh-drawer-price { font-size: var(--sh-t-body); white-space: nowrap; }
  .sh-order-drawer--entry .sh-drawer-summary-row { align-items: center; }
  .sh-grid .sh-picker .sh-picker-body { display: block; }
  .sh-grid .sh-picker .sh-cats { display: flex; flex-direction: row; width: 100%; max-height: none; overflow-x: auto; gap: var(--sh-sp-2); padding: 0 0 var(--sh-sp-3); border: 0; }
  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only) { flex: 0 0 auto; width: auto; min-width: max-content; min-height: 36px; padding: var(--sh-sp-2) var(--sh-sp-4); border: 1px solid var(--sh-border); border-radius: var(--sh-r-pill); background: var(--sh-surface); }
  .sh-grid .sh-picker .sh-cats button.sh-cat.active { background: var(--sh-tint); border-color: var(--sh-tint-line); color: var(--sh-primary); }
  .sh-grid .sh-picker .sh-cats button.sh-cat::after { display: none; }
  .sh-grid .sh-picker .sh-cats .sh-cat-count { display: inline; }
  .sh-grid .sh-picker .sh-rows { width: 100%; min-width: 0; }
  .sh-has-orderbar .sh-mobar { display: flex; bottom: var(--sh-tabbar-safe); transform: none; pointer-events: auto; }
  body[data-route=signin].sh-has-orderbar .sh-mobar { display: flex !important; }
  .sh-mobar .sh-mobar-body { padding: var(--sh-sp-3) var(--sh-sp-4); }
  .sh-mobar .sh-mobar-total { font-size: var(--sh-t-h3); }
  .sh-mobar .sh-mobar-name { max-width: 100%; }
  .sh-mobar-quantity { color: var(--sh-muted); font-size: var(--sh-t-xs); }
  .sh-mobar-quantity:empty::before { content: "\00a0"; }
  .sh-mobile-desc-more { display: flex; width: 100%; justify-content: flex-start; margin-top: var(--sh-sp-3); }
  #sh-desc-host > [data-sh-mobile-desc-hidden] { display: none !important; }
  .sh-tabbar-inner[data-sh-p19-tabs] { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .sh-money-head, .sh-total { padding-block: var(--sh-sp-3); }
}
.sh-order-drawer--entry .sh-drawer-footer > .sh-drawer-help { margin: 0; }
body[data-sh-order-mode=drawer] :is(#order_step4, #order_step5) { display: none !important; }
.sh-drawer-schedule { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sh-sp-3); }
.sh-drawer-schedule .sh-drawer-field { min-width: 0; }
.sh-drawer-schedule .sh-drawer-duration { gap: var(--sh-sp-1); }
.sh-drawer-schedule .sh-drawer-duration button { min-width: 0; padding-inline: var(--sh-sp-1); }
.sh-order-drawer--entry .sh-drawer-field { margin-bottom: var(--sh-sp-4); }
@media (max-width: 767px) {
  .sh-grid .sh-picker .sh-cats [data-sh-category-group] { display: flex; align-items: center; flex: 0 0 auto; gap: var(--sh-sp-2); }
  .sh-grid .sh-picker .sh-cats [role=tablist] { display: flex; flex-direction: row; gap: var(--sh-sp-2); overflow-x: visible; }
  .sh-grid .sh-picker .sh-cats [data-sh-category-group-title] { white-space: nowrap; }
  body[data-route=signin] .sh-mobar { display: flex !important; bottom: var(--sh-tabbar-safe); transform: none; pointer-events: auto; }
}
@media (max-width: 767px) {
  body[data-route=signin]:has(#orderform-service) { --sh-fixed-bottom: calc(var(--sh-tabbar-safe) + 82px); }
}
@media (max-width: 767px) {
  body[data-route=signin].sh-kb-open .sh-mobar { display: none !important; }
}
.sh-order-drawer--entry .sh-drawer-body > .sh-drawer-result--selected { margin: 0 0 var(--sh-sp-4); }
@media (max-width: 767px) {
  .sh-has-orderbar .sh-mobar, body[data-route=signin] .sh-mobar { left: var(--sh-sp-3); right: var(--sh-sp-3); border: 1px solid var(--sh-line); border-radius: var(--sh-r-panel); box-shadow: var(--sh-sh-modal); overflow: hidden; }
  .sh-mobar .sh-mobar-inner { padding: 0; }
  .sh-mobar .sh-mobar-body { border-radius: inherit; box-shadow: none; }
  .sh-mobar .sh-mobar-body > .sh-grow { min-width: 0; }
  .sh-mobar .sh-mobar-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

}

@media (min-width: 1024px) and (max-width: 1279px) {
  body.sh-order-page { --sh-sidebar: 72px; }
  body.sh-order-page .sh-sidebar { padding-inline: var(--sh-sp-3); }
  body.sh-order-page .sh-sidebar :is(.sh-brand-name, .sh-user, .sh-today, .sh-navg-label, .sh-side-foot, .sh-biz, .sh-navg-badge, .sh-navg-dot) { display: none; }
  body.sh-order-page .sh-sidebar .sh-brand { justify-content: center; padding: 0; }
  body.sh-order-page .sh-sidebar .sh-navg-item { justify-content: center; min-height: 44px; padding: 0; gap: 0; font-size: 0; }
}

.sh-order-page {
  --sh-order-category-width: 200px;
  --sh-order-card-width: 720px;
  --sh-order-rail-width: 360px;
  --sh-order-active-bar: 3px;
  --sh-order-summary-pad: 18px;
  --sh-order-tag-height: 20px;
  --sh-order-tag-pad: 7px;
  --sh-order-tag-font: 11px;
  --sh-order-summary-title: 18px;
}
.sh-order-page .sh-order-information { min-width: 0; }
.sh-order-page #sh-order-aside { display: flex; flex-direction: column; align-self: start; }
.sh-order-page #sh-order-aside > .sh-banner--side:not([hidden]) { display: block !important; aspect-ratio: auto; }
.sh-order-page .sh-order-information .sh-guide-products { grid-template-columns: minmax(0,1fr); }
.sh-order-page .sh-order-guides { gap: var(--sh-sp-4); }
.sh-order-page .sh-guide-platforms { max-height: 120px; overflow: auto; padding: var(--sh-sp-1); }
.sh-order-page .sh-guide-platforms [aria-pressed="true"],
.sh-order-page .sh-order-subtabs [aria-selected="true"] { background: var(--sh-ink); border-color: var(--sh-ink); color: var(--sh-surface); }
.sh-order-page .sh-guide-products { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: var(--sh-sp-3); }
.sh-order-page .sh-guide-product { display: flex; flex-direction: column; gap: var(--sh-sp-2); padding: var(--sh-sp-4); border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); color: var(--sh-ink); min-width: 0; word-break: keep-all; overflow-wrap: anywhere; }
.sh-order-page .sh-guide-product:hover { background: var(--sh-tint-soft); }
.sh-order-page .sh-guide-product .sh-note { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
.sh-order-page .sh-guide-faq-item { padding: 14px 0; border-top: 1px solid var(--sh-b-line); }
.sh-order-page .sh-guide-faq-item:first-child { border-top: 0; }
.sh-order-page .sh-guide-faq-item h3 { margin: 0; font-size: 15px; font-weight: 700; color: var(--sh-b-ink); }
.sh-order-page .sh-guide-faq-item p { margin: 6px 0 0; font-size: 14px; line-height: 1.55; color: var(--sh-b-ink-3); }
.sh-order-page .sh-service-logs { margin-top: 16px; }
.sh-order-page .sh-service-logs-title { margin: 0 0 6px; font-size: 16px; font-weight: 700; color: var(--sh-ink); }
.sh-order-page .sh-order-subtabs { display: flex; gap: var(--sh-sp-2); padding: var(--sh-sp-3) var(--sh-sp-4); }
.sh-order-page .sh-single-category { display: flex; align-items: center; gap: var(--sh-sp-3); padding: var(--sh-sp-4); background: var(--sh-surface-alt); border-top: 1px solid var(--sh-line); }
.sh-order-page .sh-single-category .sh-crumb-ic { width: 32px; height: 32px; flex: 0 0 32px; }
.sh-order-page .sh-picker--single .sh-picker-body { grid-template-columns: minmax(0,1fr); }
.sh-order-page .sh-picker--single #category-container { display: none; }
.sh-order-page .sh-list-divider { position: relative; display: flex; align-items: center; gap: var(--sh-sp-2); padding: var(--sh-sp-3) var(--sh-sp-3) var(--sh-sp-1); color: var(--sh-muted); font-size: var(--sh-t-xs); font-weight: 700; }
.sh-order-page .sh-list-divider::after { content: ''; height: 1px; background: var(--sh-line); flex: 1; }
.sh-order-page .sh-list-help { font-weight: 400; }
.sh-order-page .sh-list-help summary { cursor: pointer; display: grid; place-items: center; list-style: none; width: 24px; height: 24px; border: 1px solid var(--sh-border); border-radius: var(--sh-r-pill); }
.sh-order-page .sh-list-help summary::-webkit-details-marker { display: none; }
.sh-order-page .sh-list-help-text { position: absolute; top: 100%; left: var(--sh-sp-3); right: var(--sh-sp-3); z-index: 5; padding: var(--sh-sp-3); margin: 0; border: 1px solid var(--sh-border); border-radius: var(--sh-r-sm); background: var(--sh-surface); color: var(--sh-ink-2); box-shadow: var(--sh-sh-card); word-break: keep-all; overflow-wrap: anywhere; }
.sh-order-page .sh-list-tag { display: inline-flex; align-items: center; min-height: var(--sh-order-tag-height); padding: 0 var(--sh-order-tag-pad); border-radius: var(--sh-r-2xs); font-size: var(--sh-order-tag-font); font-weight: 700; background: var(--sh-tint); color: var(--sh-primary); white-space: nowrap; }
.sh-order-page .sh-list-tag--refill { background: var(--sh-ok-bg); color: var(--sh-ok-strong); }
.sh-order-page .sh-list-tag--fast_start { background: var(--sh-warn-bg); color: var(--sh-warn-text); }
.sh-order-page .sh-list-tag--new { background: var(--sh-status-info-bg); color: var(--sh-status-info); }
.sh-order-page .sh-picker--catalog .sh-row-unit { display: block; color: var(--sh-muted); font-size: var(--sh-t-xs); font-weight: 400; }
.sh-order-page .sh-picker .sh-order-summary { position: relative; margin-top: var(--sh-sp-4); padding: var(--sh-order-summary-pad); border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); background: var(--sh-surface-mute); }
.sh-order-page .sh-order-summary .sh-brief-head { padding-right: 100px; align-items: start; flex-wrap: wrap; gap: var(--sh-sp-2); }
.sh-order-page .sh-order-summary .sh-brief-main { min-width: 0; }
.sh-order-page .sh-order-summary #sh-svc-title { font-size: var(--sh-order-summary-title); word-break: keep-all; overflow-wrap: anywhere; }
.sh-order-page .sh-order-summary .sh-summary-favorite { position: absolute; top: var(--sh-sp-4); right: var(--sh-sp-4); min-height: 32px; font-size: var(--sh-t-xs); }
.sh-order-page .sh-order-summary #sh-svc-summary { font-size: var(--sh-t-sm); line-height: 1.6; word-break: keep-all; }
.sh-order-page .sh-order-summary .sh-svc-tags { display: flex; flex-wrap: wrap; gap: var(--sh-sp-1); margin-top: var(--sh-sp-2); }
.sh-order-page .sh-summary-notice { margin-top: var(--sh-sp-3); padding: var(--sh-sp-2) var(--sh-sp-3); border-radius: var(--sh-r-sm); font-size: var(--sh-t-sm); background: var(--sh-surface-alt); }
.sh-order-page #sh-desc-sec > .sh-step { margin-bottom: var(--sh-sp-3); }
.sh-order-page #sh-desc-sec > .sh-tabs { display: flex; border-bottom: 1px solid var(--sh-line); background: transparent; border-radius: 0; }
.sh-order-page #sh-desc-sec > .sh-tabs .sh-tab { flex: 1; border-radius: 0; }
.sh-order-page #sh-desc-sec > .sh-box { border: 0; background: transparent; padding: var(--sh-sp-4) 0; }
@media (min-width: 768px) {
  .sh-order-page .sh-main { padding-left: var(--sh-sp-5); padding-right: var(--sh-sp-5); }
  .sh-order-page .sh-main > .sh-grid { grid-template-columns: minmax(0,1fr); gap: var(--sh-sp-5); padding-right: 0; max-width: 760px; margin-inline: 0; }
  .sh-order-page #sh-order-aside { gap: var(--sh-sp-4); }
  .sh-order-page #sh-order-aside > .sh-card { margin: 0; min-width: 0; }
  .sh-order-page #sh-order-contact { grid-column: 1 / -1; }
  .sh-order-page .sh-grid .sh-picker-body { grid-template-columns: var(--sh-order-category-width) minmax(0,1fr); }
  .sh-order-page .sh-grid .sh-picker--single .sh-picker-body { grid-template-columns: minmax(0,1fr); }
  .sh-order-page .sh-grid .sh-picker--catalog .sh-cats { background: var(--sh-surface-alt); padding: var(--sh-sp-2); }
  .sh-order-page .sh-grid .sh-picker--catalog .sh-rows { padding: var(--sh-sp-2); }
  .sh-order-page .sh-grid .sh-picker--catalog .sh-row { padding: 11px var(--sh-sp-3); min-height: 52px; }
  .sh-order-page .sh-grid .sh-picker--catalog .sh-row-main { display: flex; flex-wrap: wrap; gap: var(--sh-sp-1) var(--sh-sp-2); align-items: center; min-width: 0; }
  .sh-order-page .sh-grid .sh-picker--catalog .sh-row-name { flex-basis: 100%; white-space: normal; word-break: keep-all; overflow-wrap: anywhere; }
  .sh-order-page .sh-grid .sh-picker--catalog .sh-row:is(.active,[aria-selected="true"]),
  .sh-order-page .sh-picker .sh-cat-group-tabs > .sh-cat:is(.active,[aria-selected="true"]) { box-shadow: inset var(--sh-order-active-bar) 0 0 var(--sh-primary); border-radius: 0 var(--sh-r-sm) var(--sh-r-sm) 0; }
  .sh-order-page .sh-grid .sh-picker--catalog .sh-row:is(.active,[aria-selected="true"])::before { content: none; }
  .sh-order-page .sh-grid .sh-picker .sh-cats, .sh-order-page .sh-grid .sh-picker .sh-rows { height: auto; max-height: none; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .sh-order-page .sh-main > .sh-grid { max-width: 800px; margin-inline: auto; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  .sh-order-page { --sh-order-rail-width: 280px; }
  .sh-order-page .sh-main > .sh-grid { grid-template-columns: minmax(0,1fr) var(--sh-order-rail-width); max-width: none; }
}
@media (min-width: 1024px) {
  .sh-order-page .sh-main > .sh-grid { grid-template-rows: min-content 1fr; }
  .sh-order-page .sh-rail--main { grid-column: 1; grid-row: 1 / span 2; align-self: start; }
  .sh-order-page #sh-order-aside { grid-column: 2; grid-row: 1; }
  .sh-order-page .sh-order-information { grid-column: 2; grid-row: 2; align-self: start; }
}
@media (min-width: 1280px) {
  .sh-order-page .sh-main > .sh-grid { grid-template-columns: var(--sh-order-card-width) var(--sh-order-rail-width); max-width: calc(var(--sh-order-card-width) + var(--sh-order-rail-width) + var(--sh-sp-5)); }
}
@media (min-width: 1280px) and (max-width: 1439px) {
  .sh-order-page { --sh-order-card-width: 640px; --sh-order-rail-width: 300px; }
}
@media (min-width: 1440px) {
  .sh-order-page .sh-main > .sh-grid { grid-template-columns: minmax(0, 6fr) minmax(0, 4fr); max-width: var(--sh-order-maxw); }
}
.sh-order-page .sh-list-help > summary { min-width: 24px; min-height: 24px; }
.sh-order-page .sh-picker .sh-cat-group-tabs > .sh-cat:is(.active,[aria-selected="true"]) { box-shadow: inset var(--sh-order-active-bar) 0 0 var(--sh-primary); border-radius: 0 var(--sh-r-sm) var(--sh-r-sm) 0; }
.sh-order-page :is(.sh-rating-count, .sh-rail-rating small, .sh-biz-body, .sh-side-foot, .businessToggleBtn, .sh-d4-fact-k) { color: var(--sh-ink-2); }
.sh-order-page .sh-row-consult { color: var(--sh-ink-2); }
@media (min-width: 768px) {
  .sh-order-page .sh-grid .sh-picker--catalog .sh-row-name { flex: 1 1 100px; min-width: 90px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
}
.sh-order-page .sh-desc .sh-d4-fact .sh-d4-fact-k { color: var(--sh-ink-2); }
.sh-order-page .sh-benefit-matrix > thead > tr > th { color: var(--sh-ink-2); }
.sh-order-page .sh-guide-platforms { max-height: none; overflow: visible; }
.sh-order-page .sh-order-summary #sh-svc-tags .sh-tag { background: var(--sh-surface-alt); color: var(--sh-ink-2); border: 1px solid var(--sh-line); }
.sh-order-page .sh-grid .sh-picker .sh-list-help > summary { width: 24px; height: 24px; min-width: 24px; min-height: 24px; padding: 0; }
.sh-order-page .sh-review-body { text-wrap: balance; }

.sh-desc[data-sh-detail-page] { display: flex; flex-direction: column; gap: 0; }
.sh-desc[data-sh-detail-page] .sh-d4-detail-section { margin: 0; padding: var(--sh-sp-5) 0; border: 0; border-top: 1px solid var(--sh-line); background: transparent; border-radius: 0; min-width: 0; }
.sh-desc[data-sh-detail-page] .sh-d4-detail-section:first-child { border-top: 0; padding-top: var(--sh-sp-2); }
.sh-desc[data-sh-detail-page] .sh-doc-h { margin: 0 0 var(--sh-sp-4); font-size: var(--sh-t-body); font-weight: 700; gap: var(--sh-sp-2); }
.sh-desc[data-sh-detail-page] .sh-doc-h-ic { display: inline-flex; align-items: center; justify-content: center; width: var(--sh-sp-6); height: var(--sh-sp-6); border-radius: var(--sh-r-xs); background: var(--sh-surface-alt); color: var(--sh-ink-2); flex: none; }
.sh-d4-kicker { display: block; margin-bottom: var(--sh-sp-2); color: var(--sh-muted); font-size: var(--sh-t-xs); font-weight: 700; }
.sh-d4-detail-title { margin: 0 0 var(--sh-sp-3); color: var(--sh-ink); font-size: var(--sh-t-h2); font-weight: 700; line-height: 1.35; word-break: keep-all; overflow-wrap: break-word; }
.sh-desc[data-sh-detail-page] .sh-d4-lead { margin: 0; }
.sh-desc[data-sh-detail-page] .sh-lead { font-size: var(--sh-t-body); line-height: 1.6; }
.sh-d4-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(var(--sh-sp-8) * 2 + var(--sh-sp-5))), 1fr)); gap: var(--sh-sp-2); margin: var(--sh-sp-4) 0 0; }
.sh-d4-stat { padding: var(--sh-sp-3); border-radius: var(--sh-r-box); background: var(--sh-surface-alt); min-width: 0; }
.sh-d4-stat dt { color: var(--sh-muted); font-size: var(--sh-t-xs); font-weight: 600; }
.sh-d4-stat dd { margin: var(--sh-sp-1) 0 0; color: var(--sh-ink); font-size: var(--sh-t-sm); font-weight: 700; line-height: 1.5; font-variant-numeric: tabular-nums; word-break: keep-all; overflow-wrap: break-word; }
.sh-d4-audience { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(var(--sh-sp-8) * 3)), 1fr)); gap: var(--sh-sp-3); }
.sh-d4-audience-card { display: flex; flex-direction: column; gap: var(--sh-sp-2); padding: var(--sh-sp-4); border: 1px solid var(--sh-line); border-radius: var(--sh-r-box); min-width: 0; }
.sh-d4-audience-number { display: inline-flex; align-items: center; justify-content: center; width: var(--sh-sp-6); height: var(--sh-sp-6); border-radius: var(--sh-r-xs); background: var(--sh-surface-alt); color: var(--sh-ink-2); font-size: var(--sh-t-sm); font-weight: 700; }
.sh-desc[data-sh-detail-page] .sh-d4-tx { font-size: var(--sh-t-sm); line-height: 1.6; word-break: keep-all; overflow-wrap: break-word; }
.sh-desc[data-sh-detail-page] .sh-d4-checks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sh-sp-3) var(--sh-sp-4); }
.sh-desc[data-sh-detail-page] .sh-d4-checks .sh-d4-row { margin: 0; }
.sh-desc[data-sh-detail-page] .sh-d4-check { display: inline-flex; align-items: center; justify-content: center; width: var(--sh-sp-5); height: var(--sh-sp-5); border-radius: var(--sh-r-pill); background: var(--sh-ok-bg); color: var(--sh-ok-text); }
.sh-d4-detail-timeline { list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(var(--sh-sp-8) * 3 + var(--sh-sp-4))), 1fr)); gap: var(--sh-sp-3); margin: 0; padding: 0; }
.sh-d4-detail-timeline > li { display: flex; flex-direction: column; gap: var(--sh-sp-3); padding: var(--sh-sp-4); border-radius: var(--sh-r-box); background: var(--sh-surface-alt); min-width: 0; }
.sh-d4-timeline-number { display: inline-flex; align-items: center; justify-content: center; width: var(--sh-sp-5); height: var(--sh-sp-5); border: 1px solid var(--sh-border-strong); border-radius: var(--sh-r-pill); color: var(--sh-ink); font-size: var(--sh-t-xs); font-weight: 700; flex: none; }
.sh-desc[data-sh-detail-page] [data-sh-detail-section="order"] .sh-desc-step { padding: var(--sh-sp-3); border: 1px solid var(--sh-line); border-radius: var(--sh-r-box); align-items: start; }
.sh-desc[data-sh-detail-page] [data-sh-detail-section="order"] .sh-desc-steps:has(.sh-d4-guide-image) .sh-desc-step { grid-template-columns: var(--sh-sp-5) minmax(0, 1fr) minmax(0, 30%); }
.sh-d4-guide-image, .sh-drawer-guide img.sh-d4-guide-image { display: block; width: 100%; max-width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; border: 1px solid var(--sh-line); border-radius: var(--sh-r-xs); }
.sh-d4-hero-image { display: block; width: 320px; max-width: 100%; height: auto; aspect-ratio: 12 / 5; object-fit: contain; margin: 0 0 var(--sh-sp-4) auto; border-radius: var(--sh-r-box); }
.sh-d4-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sh-sp-3); margin-top: var(--sh-sp-4); min-width: 0; }
.sh-image-trigger { display: block; position: relative; width: 100%; min-width: 0; min-height: 44px; border: 1px solid var(--sh-line); padding: var(--sh-sp-2); border-radius: var(--sh-r-box); background: var(--sh-surface); color: var(--sh-ink); font: inherit; text-align: left; cursor: zoom-in; }
.sh-image-trigger:hover { border-color: var(--sh-primary); background: var(--sh-tint-soft); }
.sh-image-trigger:focus-visible { outline: 3px solid var(--sh-focus); outline-offset: 2px; }
.sh-image-trigger[hidden], .sh-d4-effect[hidden], .sh-image-lightbox-nav[hidden] { display: none; }
.sh-d4-gallery .sh-d4-guide-image { aspect-ratio: 2 / 3; border: 0; background: var(--sh-tint-soft); }
.sh-d4-gallery-number { position: absolute; top: var(--sh-sp-3); left: var(--sh-sp-3); display: grid; place-items: center; min-width: var(--sh-sp-5); height: var(--sh-sp-5); padding-inline: var(--sh-sp-1); border-radius: var(--sh-r-pill); background: var(--sh-tint); color: var(--sh-primary); font-size: var(--sh-t-xs); font-weight: 700; }
.sh-d4-gallery-caption { display: block; margin-top: var(--sh-sp-2); font-size: var(--sh-t-sm); line-height: 1.5; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sh-d4-effect-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sh-sp-3); min-width: 0; }
.sh-d4-effect-example { min-width: 0; margin: 0; padding: var(--sh-sp-3); background: var(--sh-surface-alt); border: 1px solid var(--sh-line); border-radius: var(--sh-r-box); }
.sh-d4-effect-image { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; border-radius: var(--sh-r-xs); }
.sh-d4-effect-label { display: block; margin-top: var(--sh-sp-3); color: var(--sh-muted); font-size: var(--sh-t-xs); }
.sh-d4-effect-value { display: block; margin-top: var(--sh-sp-1); color: var(--sh-ink); font-size: var(--sh-t-sm); font-variant-numeric: tabular-nums; word-break: keep-all; overflow-wrap: anywhere; }
.sh-d4-effect > .sh-note { margin-top: var(--sh-sp-3); }
.sh-image-lightbox { width: min(calc(100% - var(--sh-sp-6)), calc(var(--sh-sp-8) * 20)); max-width: none; height: calc(100dvh - var(--sh-sp-6)); max-height: none; margin: auto; padding: var(--sh-sp-4); border: 1px solid var(--sh-line); border-radius: var(--sh-r-card); color: var(--sh-ink); background: var(--sh-surface); box-shadow: var(--sh-sh-modal); overflow: auto; overscroll-behavior: contain; }
.sh-image-lightbox[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto auto; gap: var(--sh-sp-3); }
.sh-image-lightbox::backdrop { background: var(--sh-overlay); }
.sh-image-lightbox-header, .sh-image-lightbox-nav { display: flex; align-items: center; justify-content: space-between; gap: var(--sh-sp-3); }
.sh-image-lightbox .sh-btn { min-width: 44px; min-height: 44px; }
.sh-image-lightbox-stage { min-width: 0; min-height: 0; display: flex; justify-content: center; touch-action: pan-y pinch-zoom; }
.sh-image-lightbox-stage img { display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }
.sh-image-lightbox-caption { margin: 0; font-size: var(--sh-t-sm); line-height: 1.6; word-break: keep-all; overflow-wrap: anywhere; }
.sh-drawer-guide .sh-image-trigger { margin-top: var(--sh-sp-3); }
.sh-drawer-guide .sh-image-trigger img { margin-top: 0; }
@media (min-width: 1024px) and (max-width: 1439px) {
  .sh-d4-hero-image { width: 100%; }
}
@media (min-width: 1440px) {
  .sh-d4-gallery { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .sh-d4-gallery, .sh-d4-effect-pair { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 76%; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; padding: var(--sh-sp-1); scroll-padding: var(--sh-sp-1); }
  .sh-d4-effect-pair { grid-auto-columns: 88%; }
  .sh-d4-gallery > *, .sh-d4-effect-pair > * { scroll-snap-align: start; }
  .sh-image-lightbox { width: 100%; height: 100dvh; margin: 0; border: 0; border-radius: 0; padding-bottom: max(var(--sh-sp-4), env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  .sh-image-lightbox, .sh-image-lightbox *, .sh-image-trigger { animation: none !important; transition: none !important; }
  .sh-d4-gallery, .sh-d4-effect-pair { scroll-behavior: auto; }
}
.sh-d4-audience--many { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sh-d4-time-chip { display: inline-block; padding: 0 var(--sh-sp-1); border-radius: var(--sh-r-xs); background: var(--sh-tint-soft); color: var(--sh-primary); font-size: var(--sh-t-xs); font-weight: 700; white-space: nowrap; }
@media (min-width: 1440px) {
  .sh-desc[data-sh-detail-page] [data-sh-detail-section="intro"]:has(> .sh-d4-hero-image:not([hidden])) { display: grid; grid-template-columns: minmax(0, 1fr) 320px; column-gap: var(--sh-sp-4); }
  .sh-desc[data-sh-detail-page] [data-sh-detail-section="intro"] > :not(.sh-d4-hero-image) { grid-column: 1; }
  .sh-d4-hero-image { grid-column: 2; grid-row: 1 / span 3; margin: 0; }
  .sh-desc[data-sh-detail-page] [data-sh-detail-section="intro"] > .sh-d4-stats { grid-column: 1 / -1; }
}
.sh-desc[data-sh-detail-page] .sh-desc-eg-line { margin-top: var(--sh-sp-2); gap: var(--sh-sp-2); }
.sh-d4-compare { width: 100%; table-layout: fixed; border-collapse: separate; border-spacing: 0; border: 1px solid var(--sh-line); border-radius: var(--sh-r-box); overflow: hidden; }
.sh-d4-compare th, .sh-d4-compare td { padding: var(--sh-sp-3); border-top: 1px solid var(--sh-line); text-align: left; vertical-align: top; font-size: var(--sh-t-sm); line-height: 1.5; word-break: keep-all; overflow-wrap: break-word; }
.sh-d4-compare thead th { background: var(--sh-surface-alt); border-top: 0; font-weight: 700; }
.sh-d4-compare th:first-child { width: 20%; color: var(--sh-muted); font-size: var(--sh-t-xs); }
.sh-d4-compare-quantity { white-space: nowrap; }
.sh-order-page .sh-onboarding > h2.sh-h3 { margin: 0; }
.sh-d4-compare-current { color: var(--sh-primary); font-weight: 700; }
.sh-desc[data-sh-detail-page] .sh-d4-detail-caution { margin: var(--sh-sp-5) 0 0; padding: var(--sh-sp-4); border: 1px solid var(--sh-gold-line); border-radius: var(--sh-r-box); background: var(--sh-gold-bg); }
.sh-desc[data-sh-detail-page] .sh-d4-detail-caution .sh-doc-h { color: var(--sh-gold-text); margin-bottom: var(--sh-sp-2); }
.sh-desc[data-sh-detail-page] .sh-d4-detail-caution .sh-doc-h-ic { background: var(--sh-surface); color: var(--sh-gold-text); }
.sh-d4-caution-lines { display: flex; flex-direction: column; gap: var(--sh-sp-1); padding-left: var(--sh-sp-4); margin: 0; color: var(--sh-gold-text); font-size: var(--sh-t-sm); line-height: 1.6; }
.sh-d4-caution-lines > li { white-space: normal; overflow-wrap: anywhere; }
.sh-d4-caution-link { display: inline-flex; align-items: center; min-height: 44px; padding: var(--sh-sp-2) 0; margin-top: var(--sh-sp-1); border: 0; background: transparent; color: var(--sh-primary); font: inherit; font-size: var(--sh-t-sm); font-weight: 700; cursor: pointer; text-decoration: underline; text-underline-offset: var(--sh-sp-1); }
.sh-d4-faq { border: 1px solid var(--sh-line); border-radius: var(--sh-r-box); margin-top: var(--sh-sp-2); }
.sh-d4-faq > button { display: block; width: 100%; text-align: left; background: none; border: 0; font-family: inherit; padding: var(--sh-sp-4); cursor: pointer; font-size: var(--sh-t-sm); font-weight: 700; color: var(--sh-ink); }
.sh-d4-faq:has(> button[aria-expanded=true]) { border-color: var(--sh-tint-line); }
.sh-d4-faq > button::after { content: ""; float: right; width: var(--sh-sp-2); height: var(--sh-sp-2); border-right: 1px solid var(--sh-muted); border-bottom: 1px solid var(--sh-muted); transform: rotate(45deg); }
.sh-d4-faq > button[aria-expanded=true]::after { transform: rotate(225deg); }
.sh-d4-faq > p { padding: 0 var(--sh-sp-4) var(--sh-sp-4); margin: 0; }
.sh-d4-faq > button:focus-visible, .sh-d4-caution-link:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
@media (max-width: 767px) {
  .sh-d4-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sh-d4-audience, .sh-d4-detail-timeline, .sh-desc[data-sh-detail-page] .sh-d4-checks { grid-template-columns: minmax(0, 1fr); }
  .sh-d4-audience-card, .sh-d4-detail-timeline > li { flex-direction: row; align-items: flex-start; padding: var(--sh-sp-3); }
  .sh-d4-audience-number { flex: none; }
  .sh-d4-compare th, .sh-d4-compare td { padding: var(--sh-sp-2); font-size: var(--sh-t-xs); }
  .sh-d4-compare th:first-child { width: 18%; }
  .sh-desc[data-sh-detail-page] [data-sh-detail-section="order"] .sh-desc-steps:has(.sh-d4-guide-image) .sh-desc-step { grid-template-columns: var(--sh-sp-5) minmax(0, 1fr); }
  .sh-desc[data-sh-detail-page] .sh-desc-step > .sh-d4-guide-image { grid-column: 2; }
  .sh-d4-hero-image { width: 100%; }
  .sh-d4-audience--many { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sh-d4-audience--many .sh-d4-audience-card { flex-direction: column; }
}

.sh-order-page #sh-desc-sec:has([data-sh-detail-page]) { padding-inline: 0; }
#sh-desc-host.sh-desc-read[data-sh-detail-page] { width: 100%; max-width: var(--sh-desc-max-width); margin-inline: 0; gap: 0; color: var(--sh-ink-2); font-variant-numeric: tabular-nums; letter-spacing: normal; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-section { display: flex; flex-direction: column; gap: var(--sh-desc-section-gap); margin: var(--sh-sp-7) 0 0; padding: 0; border: 0; border-radius: 0; background: transparent; min-width: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-section:first-child { display: flex; margin: 0; padding: 0; gap: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(p, li, .sh-prose, .sh-d4-tx, .sh-desc-step, .sh-d4-sub) { margin: 0; color: var(--sh-ink-2); font-size: var(--sh-t-h3); font-weight: 400; line-height: 1.65; word-break: keep-all; overflow-wrap: break-word; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(b, strong) { color: var(--sh-ink); font-weight: 700; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] a { color: var(--sh-primary); text-decoration: underline; text-underline-offset: var(--sh-desc-link-offset); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-kicker { margin: 0; font-size: var(--sh-t-sm); line-height: 1.4; font-weight: 600; color: var(--sh-desc-muted); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-title { margin: var(--sh-desc-gap-small) 0 0; font-size: var(--sh-desc-title); font-weight: 700; line-height: 1.35; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-lead { margin: var(--sh-desc-gap-compact) 0 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-lead :is(.sh-lead, .sh-lead-sub) { max-width: none; margin: 0; color: var(--sh-ink); font-size: var(--sh-desc-lead); font-weight: 400; line-height: 1.65; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-hero-image { width: 100%; margin: 0 0 var(--sh-sp-4); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-section-header { display: flex; align-items: center; gap: var(--sh-desc-gap-compact); min-width: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-doc-h { display: flex; align-items: center; flex: 1; gap: var(--sh-desc-gap-compact); margin: 0; padding: 0; border: 0; background: transparent; color: var(--sh-ink); font-size: var(--sh-desc-heading); font-weight: 700; line-height: 1.3; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-doc-h-ic { width: var(--sh-sp-6); height: var(--sh-sp-6); border-radius: var(--sh-desc-header-radius); background: var(--sh-tint); color: var(--sh-primary); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-doc-h-ic svg { width: var(--sh-desc-space-wide); height: var(--sh-desc-space-wide); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-section-note { margin-left: auto; font-size: var(--sh-t-sm); font-weight: 400; color: var(--sh-desc-muted); line-height: 1.4; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-group { display: flex; flex-direction: column; gap: var(--sh-sp-2); background: var(--sh-desc-group); border-radius: var(--sh-desc-group-radius); padding: var(--sh-sp-3); min-width: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-cell { display: flex; gap: var(--sh-sp-3); align-items: flex-start; margin: 0; padding: var(--sh-desc-cell-padding); border: var(--sh-desc-border-width) solid var(--sh-desc-line); border-radius: var(--sh-r-box); background: var(--sh-surface); min-width: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-cell > .sh-d4-tx, .sh-d4-cell > div) { min-width: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-audience, .sh-d4-detail-timeline, .sh-d4-checks, .sh-desc-steps, .sh-d4-effect-pair, .sh-d4-gallery) { display: grid; gap: var(--sh-sp-2); margin: 0; padding: 0; grid-auto-flow: row; grid-auto-columns: auto; overflow: visible; scroll-snap-type: none; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-audience { grid-template-columns: minmax(0, 1fr); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-audience-card { flex-direction: row; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-checks { grid-template-columns: repeat(2, minmax(0, 1fr)); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-checks > :last-child:nth-child(odd) { grid-column: 1 / -1; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-desc-steps, .sh-d4-numlist) { grid-template-columns: minmax(0, 1fr); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-timeline { grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-timeline > li { flex-direction: column; gap: var(--sh-sp-2); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-num, .sh-d4-timeline-number, .sh-d4-gallery-number, .sh-d4-check) { display: inline-flex; align-items: center; justify-content: center; flex: none; width: var(--sh-desc-number); height: var(--sh-desc-number); min-width: 0; margin-top: var(--sh-desc-baseline-offset); padding: 0; border: 0; border-radius: var(--sh-r-pill); background: var(--sh-tint); color: var(--sh-primary); font-size: var(--sh-desc-label); font-weight: 700; line-height: 1; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-check { width: var(--sh-desc-check); height: var(--sh-desc-check); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-check svg { width: var(--sh-sp-3); height: var(--sh-sp-3); stroke-width: 3; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-mk { display: flex; width: auto; flex: none; margin: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-time-chip { display: inline; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--sh-ink); font-size: inherit; white-space: normal; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-desc-step-sub { display: block; margin-top: var(--sh-sp-1); font-size: var(--sh-desc-sub); color: var(--sh-desc-muted); line-height: 1.6; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--sh-desc-border-width); margin: var(--sh-desc-compact-size) 0 0; border-radius: var(--sh-r-box); background: var(--sh-desc-line); overflow: hidden; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat { display: flex; flex-direction: column; gap: var(--sh-sp-1); padding: var(--sh-desc-cell-padding); border: 0; border-radius: 0; background: var(--sh-desc-group); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat dt { color: var(--sh-desc-muted); font-size: var(--sh-desc-label); font-weight: 700; line-height: 1.3; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat dd { margin: 0; color: var(--sh-ink); font-size: var(--sh-t-h3); font-weight: 700; line-height: 1.3; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat-quantity { display: inline-block; white-space: nowrap; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-pair { grid-template-columns: repeat(2, minmax(0, 1fr)); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-example { flex-direction: column; padding: var(--sh-sp-3); gap: var(--sh-desc-gap-compact); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-image { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: var(--sh-r-sm); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-example figcaption { display: flex; align-items: baseline; flex-wrap: wrap; justify-content: space-between; gap: var(--sh-sp-2); width: 100%; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-label { margin: 0; font-size: var(--sh-desc-label); font-weight: 700; color: var(--sh-desc-muted); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-value { margin: 0; font-size: var(--sh-t-body); font-weight: 700; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-delta { display: inline-flex; align-items: center; height: var(--sh-desc-check); padding: 0 var(--sh-sp-2); border-radius: var(--sh-r-pill); background: var(--sh-tint); color: var(--sh-primary); font-size: var(--sh-desc-label); font-weight: 700; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:has(> :nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:has(> :only-child) { grid-template-columns: minmax(0, 1fr); justify-items: center; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery > :only-child { width: min(100%, max(var(--sh-desc-guide-min-width), 33.333%)); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery > .sh-d4-guide-wide { grid-column: 1 / -1; width: 100%; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-guide-card { flex-direction: column; align-items: stretch; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery .sh-image-trigger { flex-direction: column; align-items: stretch; padding: var(--sh-desc-gap-compact); gap: var(--sh-sp-2); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery .sh-image-trigger:hover { border-color: var(--sh-primary); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery .sh-d4-guide-image { aspect-ratio: 2 / 3; object-fit: cover; border-radius: var(--sh-r-xs); background: var(--sh-desc-group); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery-number { top: var(--sh-sp-4); left: var(--sh-sp-4); margin: 0; background: var(--sh-primary); color: var(--sh-surface); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery-caption { display: block; -webkit-line-clamp: unset; overflow: visible; margin: 0; font-size: var(--sh-t-sm); font-weight: 600; line-height: 1.4; color: var(--sh-ink-2); white-space: normal; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery .sh-d4-guide-card > .sh-image-trigger { display: flex; width: 100%; padding: 0; border: 0; background: transparent; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery .sh-d4-guide-wide .sh-d4-guide-image { aspect-ratio: 5 / 3; border-radius: var(--sh-r-sm); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-guide-wide .sh-d4-gallery-number { display: none; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery .sh-d4-guide-wide .sh-d4-gallery-caption { display: block; overflow: visible; text-align: center; font-size: var(--sh-t-sm); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-guide-steps { display: grid; gap: var(--sh-sp-2); padding: 0; margin: 0; list-style: none; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-guide-card .sh-d4-guide-steps > li { display: flex; align-items: flex-start; gap: var(--sh-sp-2); font-size: var(--sh-desc-guide-step); line-height: 1.6; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-image-zoom { position: absolute; top: var(--sh-sp-4); right: var(--sh-sp-4); width: var(--sh-desc-mobile-icon); height: var(--sh-desc-mobile-icon); border-radius: var(--sh-r-xs); display: grid; place-items: center; color: var(--sh-surface); background: var(--sh-desc-zoom); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-image-zoom svg { width: var(--sh-desc-value-mobile); height: var(--sh-desc-value-mobile); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-image-trigger:has([data-sh-image-loading]) .sh-d4-image-zoom { visibility: hidden; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-desc-eg-line { overflow-wrap: anywhere; min-width: 0; display: flex; flex-wrap: wrap; gap: var(--sh-sp-1); margin-top: var(--sh-sp-2); padding: var(--sh-desc-gap-compact) var(--sh-sp-3); border: 0; border-radius: var(--sh-r-xs); background: var(--sh-desc-group); color: var(--sh-desc-answer); font-size: var(--sh-t-sm); line-height: 1.5; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-desc-eg, .sh-desc-eg-label) { display: inline; min-width: 0; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; white-space: normal; overflow-wrap: anywhere; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare-frame { position: relative; border: var(--sh-desc-border-width) solid var(--sh-desc-line); border-radius: var(--sh-r-box); overflow: hidden; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare-scroll { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare { border: 0; border-radius: 0; overflow: visible; background: var(--sh-surface); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare :is(th, td) { padding: var(--sh-sp-3) var(--sh-desc-value-mobile); border: 0; border-bottom: var(--sh-desc-border-width) solid var(--sh-desc-divider); color: var(--sh-ink-2); font-size: var(--sh-t-body); line-height: 1.5; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare thead th { background: var(--sh-desc-group); color: var(--sh-desc-answer); font-size: var(--sh-t-sm); font-weight: 700; border-color: var(--sh-desc-line); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare th:first-child { width: var(--sh-desc-compare-label); color: var(--sh-desc-muted); font-size: var(--sh-t-sm); font-weight: 700; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare tbody th:first-child { background: var(--sh-surface); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare tbody tr:last-child > * { border-bottom: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare tbody tr:hover > * { background: var(--sh-surface-mute); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare .sh-d4-compare-current { background: var(--sh-tint); color: var(--sh-primary); font-weight: 700; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare-frame--wide .sh-d4-compare { min-width: calc(var(--sh-desc-compare-label) + var(--sh-desc-compare-peers) * var(--sh-desc-compare-column)); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare-frame--overflow th:first-child { position: sticky; left: 0; z-index: 1; box-shadow: var(--sh-desc-border-width) 0 0 var(--sh-desc-divider); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare-frame--overflow:not(.sh-d4-compare-frame--end)::after { content: ''; position: absolute; top: 0; right: 0; bottom: 0; width: var(--sh-desc-mobile-icon); background: linear-gradient(90deg, transparent, var(--sh-surface)); pointer-events: none; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare-hint { margin: calc(-1 * var(--sh-sp-2)) 0 0; color: var(--sh-desc-muted); font-size: var(--sh-desc-label); text-align: right; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-caution { padding: var(--sh-sp-4) var(--sh-desc-space-wide); gap: var(--sh-sp-2); border: var(--sh-desc-border-width) solid var(--sh-desc-warning-line); border-radius: var(--sh-desc-group-radius); background: var(--sh-desc-warning); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-caution .sh-doc-h { color: var(--sh-desc-warning-ink); font-size: var(--sh-t-h3); gap: var(--sh-sp-2); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-caution .sh-doc-h-ic { width: var(--sh-desc-compact-size); height: var(--sh-desc-compact-size); background: transparent; color: inherit; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-caution .sh-doc-h-ic svg { width: var(--sh-desc-compact-size); height: var(--sh-desc-compact-size); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-caution-lines { list-style: none; padding: 0; gap: var(--sh-sp-2); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-caution-lines li { color: var(--sh-desc-answer); font-size: var(--sh-t-body); line-height: 1.65; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-caution-more, .sh-d4-faq-more) > summary { cursor: pointer; min-height: var(--sh-desc-tap-size); padding: var(--sh-sp-2) 0; color: var(--sh-primary); font-size: var(--sh-t-sm); font-weight: 700; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq-list { border: var(--sh-desc-border-width) solid var(--sh-desc-line); border-radius: var(--sh-r-box); overflow: hidden; background: var(--sh-surface); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq { margin: 0; border: 0; border-top: var(--sh-desc-border-width) solid var(--sh-desc-divider); border-radius: 0; background: var(--sh-surface); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq:first-child { border-top: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq > button { display: flex; align-items: center; justify-content: space-between; gap: var(--sh-sp-3); padding: var(--sh-sp-4) var(--sh-desc-space-wide); background: transparent; font-size: var(--sh-t-h3); font-weight: 700; line-height: 1.4; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq > button::after { display: none; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq:has(> button[aria-expanded=true]), :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq > button[aria-expanded=true] { background: var(--sh-desc-open); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq-chevron { display: flex; flex: none; color: var(--sh-desc-chevron); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq-chevron svg { width: var(--sh-desc-compact-size); height: var(--sh-desc-compact-size); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq [aria-expanded=true] .sh-d4-faq-chevron { color: var(--sh-primary); transform: rotate(180deg); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq > p { padding: 0 var(--sh-desc-space-wide) var(--sh-sp-4); color: var(--sh-desc-answer); font-size: var(--sh-t-body); line-height: 1.7; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq-more > summary { padding-inline: var(--sh-desc-space-wide); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-footer { display: flex; margin-top: var(--sh-desc-compact-size); padding-top: var(--sh-desc-compact-size); border-top: var(--sh-desc-border-width) solid var(--sh-desc-divider); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-order-back { position: relative; min-height: var(--sh-sp-7); gap: var(--sh-desc-gap-small); display: inline-flex; align-items: center; justify-content: center; height: var(--sh-sp-7); padding: 0 var(--sh-sp-4); border: var(--sh-desc-border-width) solid var(--sh-border); border-radius: var(--sh-r-sm); background: var(--sh-surface); color: var(--sh-ink-2); font: inherit; font-size: var(--sh-desc-sub); font-weight: 700; cursor: pointer; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-order-back::after { content: ""; position: absolute; inset: calc(-1 * var(--sh-desc-link-offset)) 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-back-icon { display: flex; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-back-icon svg { width: var(--sh-desc-value-mobile); height: var(--sh-desc-value-mobile); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] img[data-sh-image-loading][src] { background: var(--sh-desc-line) linear-gradient(90deg, var(--sh-desc-line), var(--sh-desc-skeleton-shine), var(--sh-desc-line)); background-size: 200% 100%; animation: sh-detail-shimmer var(--sh-desc-skeleton-duration) linear infinite; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] [hidden] { display: none; }
@keyframes sh-detail-shimmer { to { background-position: -200% 0; } }
@media (min-width: 768px) and (max-width: 1023px) {
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] { --sh-desc-cell-padding: var(--sh-sp-3) var(--sh-desc-value-mobile); --sh-desc-section-gap: var(--sh-sp-3); --sh-desc-title: var(--sh-desc-compact-size); --sh-desc-heading: var(--sh-desc-heading-mobile); --sh-desc-lead: 15.5px; --sh-desc-sub: var(--sh-desc-sub-mobile); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-section { margin-top: var(--sh-sp-6); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(p, li, .sh-prose, .sh-d4-tx, .sh-desc-step, .sh-d4-sub) { font-size: var(--sh-desc-body-mobile); line-height: 1.6; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-kicker { font-size: var(--sh-desc-label); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-title { margin-top: var(--sh-sp-1); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-lead { margin-top: var(--sh-sp-2); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-lead { font-size: var(--sh-desc-lead); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-section-header, .sh-doc-h) { gap: var(--sh-sp-2); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-doc-h-ic { width: var(--sh-desc-mobile-icon); height: var(--sh-desc-mobile-icon); border-radius: var(--sh-r-xs); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-doc-h-ic svg { width: var(--sh-sp-4); height: var(--sh-sp-4); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-section-note { font-size: var(--sh-desc-label); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-group { padding: var(--sh-desc-gap-compact); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-cell { gap: var(--sh-desc-gap-compact); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-checks, .sh-d4-detail-timeline) { grid-template-columns: minmax(0, 1fr); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-timeline > li { flex-direction: row; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: var(--sh-sp-4); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat { gap: var(--sh-desc-link-offset); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat dd { font-size: var(--sh-t-body); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-example { padding: var(--sh-desc-gap-compact); gap: var(--sh-sp-2); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-example figcaption { flex-direction: column; gap: var(--sh-desc-baseline-offset); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-value { font-size: var(--sh-desc-value-mobile); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-delta { height: var(--sh-desc-compact-size); padding-inline: var(--sh-desc-delta-padding); font-size: var(--sh-desc-small-type); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery { gap: var(--sh-desc-gap-small); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery .sh-image-trigger { padding: var(--sh-desc-gap-small); gap: var(--sh-desc-gap-small); border-radius: var(--sh-r-sm); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery .sh-d4-guide-image { border-radius: var(--sh-desc-gap-small); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery-number { top: var(--sh-desc-gap-compact); left: var(--sh-desc-gap-compact); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-image-zoom { top: var(--sh-desc-gap-compact); right: var(--sh-desc-gap-compact); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery-caption { font-size: var(--sh-desc-label); line-height: 1.35; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-desc-eg-line { padding: var(--sh-sp-2) var(--sh-desc-gap-compact); font-size: var(--sh-desc-example-mobile); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare { min-width: var(--sh-desc-compare-width); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare :is(th, td) { padding: var(--sh-desc-gap-compact) var(--sh-sp-3); font-size: var(--sh-desc-value-mobile); line-height: 1.45; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare thead th { font-size: var(--sh-desc-label); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare th:first-child { width: var(--sh-desc-mobile-column); font-size: var(--sh-desc-label); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare-hint { font-size: var(--sh-desc-label); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-caution { padding: var(--sh-desc-value-mobile) var(--sh-sp-4); gap: var(--sh-desc-gap-small); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-caution .sh-doc-h { font-size: var(--sh-desc-body-mobile); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-caution-lines li { font-size: var(--sh-desc-answer-mobile); line-height: 1.6; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq > button { padding: var(--sh-desc-value-mobile) var(--sh-sp-4); font-size: var(--sh-desc-body-mobile); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-faq > p { padding: 0 var(--sh-sp-4) var(--sh-desc-value-mobile); font-size: var(--sh-desc-answer-mobile); line-height: 1.65; }
}
@media (prefers-reduced-motion: reduce) {
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] img[data-sh-image-loading][src] { animation: none; }
}

@media (max-width: 767px) {
  .sh-order-page .sh-grid .sh-picker .sh-cats button.sh-cat.category-box:not(.sh-sr-only) { min-height: 44px; padding-block: 10px; }
  .sh-order-page .sh-grid .sh-picker .sh-list-help > summary { position: relative; width: 44px; height: 44px; min-width: 44px; min-height: 44px; border: 0; }
  .sh-order-page .sh-grid .sh-picker .sh-list-help > summary::before { content: ''; position: absolute; inset: 10px; border: 1px solid var(--sh-border); border-radius: var(--sh-r-pill); pointer-events: none; }
}
@media (min-width: 768px) {
  .sh-order-page .sh-orderbar { justify-content: flex-start; }
  .sh-order-page .sh-orderbar-inner { display: block; max-width: calc(760px + var(--sh-sp-5) * 2); padding: 0 var(--sh-sp-5); margin: 0; }
  .sh-order-page .sh-orderbar-name { min-width: 0; flex: 1; }
}
@media (min-width: 768px) and (max-width: 1279px) {
  .sh-order-page .sh-grid .sh-picker--catalog .sh-row-name { flex-basis: 100%; min-width: 0; white-space: normal; overflow: visible; text-overflow: clip; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .sh-order-page .sh-orderbar-inner { max-width: calc(800px + var(--sh-sp-5) * 2); margin-inline: auto; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  .sh-order-page .sh-orderbar-inner { max-width: calc(100% - var(--sh-order-rail-width) - var(--sh-sp-5)); }
}
@media (min-width: 1280px) {
  .sh-order-page .sh-orderbar-inner { max-width: calc(var(--sh-order-card-width) + var(--sh-sp-5) * 2); }
}
@media (min-width: 1440px) {
  .sh-order-page .sh-orderbar-inner { max-width: calc((min(100% - var(--sh-sp-5) * 2, var(--sh-order-maxw)) - var(--sh-sp-5)) * 0.6 + var(--sh-sp-5) * 2); }
}
@media (min-width: 768px) {
  .sh-order-page .sh-grid .sh-picker--catalog .sh-rows { overflow-y: auto; }
}
@media (min-width: 768px) and (max-width: 1279px) {
  .sh-order-page .sh-grid .sh-picker--catalog .sh-row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: var(--sh-sp-1) var(--sh-sp-2); }
  .sh-order-page .sh-grid .sh-picker--catalog .sh-row-main { grid-column: 1 / -1; }
  .sh-order-page .sh-grid .sh-picker--catalog .sh-row-name { display: block; -webkit-line-clamp: unset; max-height: none; }
  .sh-order-page .sh-grid .sh-picker--catalog .sh-row-price { grid-column: 1; display: flex; align-items: baseline; gap: var(--sh-sp-2); text-align: left; }
  .sh-order-page .sh-grid .sh-picker--catalog .sh-favbtn { grid-column: 2; grid-row: 2; }

}
.sh-order-page .sh-assure-d { text-wrap: balance; }
body.sh-order-page[data-page="/"][data-route="app"] .sh-order-card .sh-card-head .sh-lead { color: var(--sh-ink-2); }

.sh-drawer-entry { display: flex; flex-direction: column; gap: var(--sh-sp-4); padding: var(--sh-pad-card); border: 1px solid var(--sh-line); border-radius: var(--sh-r-panel); background: var(--sh-surface); box-shadow: var(--sh-sh-card); }
.sh-drawer-entry[data-entry-state=complete] { border-color: var(--sh-tint-line); }
.sh-drawer-entry-head { display: flex; align-items: flex-start; gap: var(--sh-sp-3); }
.sh-drawer-entry-icon { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; border-radius: var(--sh-r-ctrl); color: var(--sh-primary); background: var(--sh-tint); }
.sh-drawer-entry-icon svg { width: var(--sh-sp-5); height: var(--sh-sp-5); }
.sh-drawer-entry-title { flex: 1; min-width: 0; }
.sh-drawer-entry h3 { margin: 0; font-size: var(--sh-t-h3); line-height: 1.5; }
.sh-drawer-entry-lead { margin: var(--sh-sp-1) 0 0; color: var(--sh-ink-2); font-size: var(--sh-t-body); line-height: 1.6; }
.sh-drawer-entry-title .sh-badge { margin-bottom: var(--sh-sp-1); }
.sh-drawer-entry-head > .sh-btn { flex-shrink: 0; }
.sh-drawer-entry-steps { display: flex; flex-wrap: wrap; gap: var(--sh-sp-2); margin: 0; padding: 0; list-style: none; }
.sh-drawer-entry-steps li { display: flex; align-items: center; gap: var(--sh-sp-1); padding: var(--sh-sp-1) var(--sh-sp-2); border: 1px solid var(--sh-line); border-radius: var(--sh-r-pill); color: var(--sh-ink-2); background: var(--sh-surface-alt); font-size: var(--sh-t-xs); }
.sh-drawer-entry-steps li > span { display: grid; place-items: center; min-width: var(--sh-sp-4); height: var(--sh-sp-4); border-radius: var(--sh-r-pill); background: var(--sh-line); font-weight: 700; }
.sh-drawer-entry-preview { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sh-sp-2); padding: 0; margin: 0; list-style: none; }
.sh-drawer-entry-preview li { display: flex; align-items: center; gap: var(--sh-sp-2); min-width: 0; padding: var(--sh-sp-3); border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); }
.sh-drawer-entry-preview b { display: block; color: var(--sh-ink); font-size: var(--sh-t-sm); }
.sh-drawer-entry-preview small { display: block; margin-top: var(--sh-sp-1); font-size: var(--sh-t-xs); line-height: 1.5; }
.sh-drawer-preview-icon { display: grid; place-items: center; width: var(--sh-sp-6); height: var(--sh-sp-6); flex: 0 0 var(--sh-sp-6); border-radius: var(--sh-r-sm); background: var(--sh-surface-alt); color: var(--sh-muted); }
.sh-drawer-preview-icon svg { width: var(--sh-sp-4); height: var(--sh-sp-4); }
.sh-drawer-entry-foot { display: flex; align-items: center; justify-content: space-between; gap: var(--sh-sp-3); }
.sh-drawer-entry-foot .sh-drawer-help { margin: 0; font-size: var(--sh-t-xs); }
.sh-drawer-entry-foot > .sh-btn { flex-shrink: 0; }
.sh-drawer-entry-chips { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sh-sp-2); margin: 0; }
.sh-drawer-entry-chips > div { display: flex; justify-content: space-between; align-items: baseline; gap: var(--sh-sp-2); padding: var(--sh-sp-3); border-radius: var(--sh-r-sm); background: var(--sh-surface-alt); font-size: var(--sh-t-sm); }
.sh-drawer-entry-chips dt { color: var(--sh-muted); }
.sh-drawer-entry-chips dd { margin: 0; min-width: 0; text-align: right; font-weight: 700; overflow-wrap: anywhere; }
.sh-drawer-entry-total { display: flex; justify-content: space-between; align-items: baseline; gap: var(--sh-sp-3); padding: var(--sh-sp-4); background: var(--sh-tint); border-radius: var(--sh-r-ctrl); font-variant-numeric: tabular-nums; }
.sh-drawer-entry-total span { color: var(--sh-ink-2); font-size: var(--sh-t-sm); }
.sh-drawer-entry-total strong { font-size: var(--sh-t-h2); }
.sh-drawer-entry-warning { display: flex; align-items: flex-start; gap: var(--sh-sp-3); padding: var(--sh-sp-4); background: var(--sh-warn-bg); border: 1px solid var(--sh-gold-line); border-radius: var(--sh-r-ctrl); }
.sh-drawer-entry-warning .sh-drawer-entry-icon { color: var(--sh-warn-text); background: var(--sh-surface); }
.sh-drawer-entry-warning p { margin: var(--sh-sp-1) 0 0; font-size: var(--sh-t-sm); }
.sh-drawer-entry [hidden] { display: none; }
.sh-order-drawer--entry .sh-drawer-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sh-sp-3) var(--sh-sp-2); margin: var(--sh-sp-4) 0 var(--sh-sp-5); }
.sh-order-drawer--entry .sh-drawer-steps li { display: flex; align-items: flex-start; gap: var(--sh-sp-1); flex-wrap: wrap; border-top: 0; border-bottom: var(--sh-sp-1) solid var(--sh-line); padding-bottom: var(--sh-sp-2); color: var(--sh-muted); font-size: var(--sh-t-xs); font-weight: 700; }
.sh-drawer-step-number { display: grid; place-items: center; width: var(--sh-sp-4); min-height: var(--sh-sp-4); flex: 0 0 var(--sh-sp-4); border-radius: var(--sh-r-pill); background: var(--sh-line); color: var(--sh-ink-2); }
.sh-drawer-step-name { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.sh-order-drawer--entry .sh-drawer-steps li[aria-current] { color: var(--sh-primary); border-color: var(--sh-primary); }
.sh-drawer-steps li[aria-current] .sh-drawer-step-number { color: var(--sh-surface); background: var(--sh-primary); }
.sh-order-drawer--entry .sh-drawer-steps li.sh-drawer-step-done { border-color: var(--sh-primary); color: var(--sh-ink-2); }
.sh-drawer-step-done .sh-drawer-step-number { background: var(--sh-ok-bg); color: var(--sh-ok-text); }
.sh-order-drawer--entry .sh-drawer-steps li.sh-drawer-step-error { color: var(--sh-danger); border-color: var(--sh-danger); }
.sh-drawer-step-count { width: 100%; }
.sh-drawer-lead { margin: 0 0 var(--sh-sp-5); color: var(--sh-ink-2); font-size: var(--sh-t-body); line-height: 1.6; }
.sh-drawer-label-row { display: flex; align-items: center; justify-content: space-between; gap: var(--sh-sp-2); margin-bottom: var(--sh-sp-2); min-height: 44px; }
.sh-drawer-label-row .sh-drawer-label { display: flex; align-items: baseline; flex-wrap: wrap; gap: var(--sh-sp-2); margin: 0; color: var(--sh-ink); font-weight: 700; }
.sh-drawer-required, .sh-drawer-optional { font-size: var(--sh-t-xs); font-weight: 600; }
.sh-drawer-required { color: var(--sh-danger); }
.sh-drawer-optional { color: var(--sh-muted); }
.sh-drawer-guide-toggle, .sh-drawer-edit { min-height: 44px; min-width: 44px; padding: var(--sh-sp-1); border: 0; background: transparent; color: var(--sh-primary); font-size: var(--sh-t-xs); font-weight: 700; cursor: pointer; }
.sh-drawer-guide-toggle { flex-shrink: 0; }
.sh-drawer-guide { padding: var(--sh-sp-4); margin-top: var(--sh-sp-3); background: var(--sh-tint-soft); border: 1px solid var(--sh-tint-line); border-radius: var(--sh-r-ctrl); font-size: var(--sh-t-sm); color: var(--sh-ink-2); }
.sh-drawer-guide > strong { display: block; margin-bottom: var(--sh-sp-2); color: var(--sh-ink); }
.sh-drawer-guide ol { padding-left: var(--sh-sp-5); margin: 0; list-style: decimal; }
.sh-drawer-guide li { padding: var(--sh-sp-1) 0; line-height: 1.6; }
.sh-drawer-guide li::marker { color: var(--sh-primary); font-weight: 700; }
.sh-drawer-guide img { display: block; width: 100%; height: auto; margin-top: var(--sh-sp-3); border-radius: var(--sh-r-sm); }
.sh-drawer-example { display: flex; align-items: baseline; flex-wrap: wrap; gap: var(--sh-sp-2); margin: var(--sh-sp-2) 0; color: var(--sh-muted); font-size: var(--sh-t-xs); }
.sh-drawer-example code { padding: var(--sh-sp-1) var(--sh-sp-2); color: var(--sh-ink-2); background: var(--sh-surface-alt); border-radius: var(--sh-r-sm); overflow-wrap: anywhere; }
.sh-drawer-lookup-segments { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: var(--sh-sp-1); margin-bottom: var(--sh-sp-2); background: var(--sh-canvas); border-radius: var(--sh-r-ctrl); }
.sh-drawer-lookup-segment { min-height: 44px; border: 0; border-radius: var(--sh-r-sm); background: transparent; color: var(--sh-muted); font-size: var(--sh-t-sm); font-weight: 700; cursor: pointer; }
.sh-drawer-lookup-segment[aria-pressed=true] { background: var(--sh-surface); color: var(--sh-ink); box-shadow: var(--sh-sh-card); }
.sh-drawer-auto { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sh-sp-2); margin-top: var(--sh-sp-2); }
.sh-drawer-auto > div { padding: var(--sh-sp-3); border-radius: var(--sh-r-sm); background: var(--sh-surface-alt); }
.sh-drawer-auto span { display: block; margin-bottom: var(--sh-sp-1); font-size: var(--sh-t-xs); color: var(--sh-muted); }
.sh-drawer-auto output { font-size: var(--sh-t-sm); color: var(--sh-ink-2); overflow-wrap: anywhere; }
.sh-drawer-number { position: relative; }
.sh-drawer-number .sh-input { padding-right: var(--sh-sp-8); }
.sh-drawer-number > span { position: absolute; top: 50%; right: var(--sh-sp-4); transform: translateY(-50%); color: var(--sh-muted); font-size: var(--sh-t-sm); pointer-events: none; }
.sh-drawer-confirm-group { margin-bottom: var(--sh-sp-4); border: 1px solid var(--sh-line); border-radius: var(--sh-r-panel); overflow: hidden; }
.sh-drawer-confirm-head { display: flex; justify-content: space-between; align-items: center; padding: var(--sh-sp-2) var(--sh-sp-4); background: var(--sh-surface-alt); }
.sh-drawer-confirm-head h4 { margin: 0; color: var(--sh-ink-2); font-size: var(--sh-t-sm); }
.sh-drawer-confirm-values { margin: 0; }
.sh-drawer-confirm-values > div { display: flex; justify-content: space-between; align-items: baseline; gap: var(--sh-sp-4); padding: var(--sh-sp-3) var(--sh-sp-4); border-top: 1px solid var(--sh-line); font-size: var(--sh-t-body); }
.sh-drawer-confirm-values dt { color: var(--sh-muted); }
.sh-drawer-confirm-values dd { max-width: 65%; min-width: 0; margin: 0; text-align: right; font-weight: 600; overflow-wrap: anywhere; }
.sh-drawer-confirm-calc { padding: var(--sh-sp-4); margin-bottom: var(--sh-sp-4); border-radius: var(--sh-r-panel); background: var(--sh-tint); }
.sh-drawer-next-hint { margin: var(--sh-sp-2) 0 0; font-size: var(--sh-t-xs); color: var(--sh-muted); line-height: 1.5; }
.sh-drawer-grab { display: none; }
@media (max-width: 767px) {
  .sh-drawer-entry { padding: var(--sh-sp-4); }
  .sh-drawer-entry-preview, .sh-drawer-entry-chips { grid-template-columns: minmax(0, 1fr); }
  .sh-drawer-entry-preview li { padding: var(--sh-sp-2) var(--sh-sp-3); }
  .sh-drawer-entry-foot { align-items: stretch; flex-direction: column; }
  .sh-drawer-entry-foot .sh-btn { width: 100%; }
  .sh-drawer-entry-foot .sh-drawer-help { order: 2; }
  .sh-drawer-entry-icon { flex-basis: var(--sh-sp-7); width: var(--sh-sp-7); height: var(--sh-sp-7); }
  .sh-drawer-entry h3 { font-size: var(--sh-t-body); }
  .sh-drawer-entry-lead { font-size: var(--sh-t-sm); }
  .sh-drawer-grab { display: block; flex: 0 0 var(--sh-sp-1); width: var(--sh-sp-7); margin: var(--sh-sp-2) auto 0; border-radius: var(--sh-r-pill); background: var(--sh-line); }
  .sh-order-drawer--entry .sh-drawer-summary-row { font-size: var(--sh-t-xs); }
  .sh-drawer-label-row { gap: var(--sh-sp-1); }
}
.sh-drawer-result--selected:has(.sh-drawer-reselect) > .sh-badge { grid-column: 2; grid-row: 3; justify-self: start; }
.sh-drawer-reselect { grid-column: 3; grid-row: 1 / 4; padding-inline: var(--sh-sp-2); font-size: var(--sh-t-xs); }

.sh-order-drawer--entry .sh-drawer-stepper { position: sticky; top: calc(-1 * var(--sh-sp-5)); z-index: 2; display: flex; align-items: center; gap: var(--sh-sp-3); margin: var(--sh-sp-4) calc(-1 * var(--sh-sp-5)) 0; padding: var(--sh-sp-3) var(--sh-sp-5); background: var(--sh-surface); border-bottom: 1px solid var(--sh-line); }
.sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-progress { flex: 0 0 auto; margin: 0; color: var(--sh-primary); font-size: var(--sh-t-sm); font-weight: 700; font-variant-numeric: tabular-nums; }
.sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-steps { flex: 1; min-width: 0; grid-template-columns: repeat(var(--sh-drawer-step-count, 3), minmax(0, 1fr)); gap: var(--sh-sp-1); margin: 0; }
.sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-steps li { flex-wrap: nowrap; align-items: center; min-width: 0; white-space: nowrap; }
.sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-step-name { overflow: hidden; text-overflow: ellipsis; }
.sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-steps[data-dense] li { padding-bottom: var(--sh-sp-1); }
.sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-step-count,
.sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-steps[data-dense] .sh-drawer-step-name { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.sh-order-drawer--entry .sh-drawer-stepper li.sh-drawer-step-error .sh-drawer-step-number { background: var(--sh-danger); color: var(--sh-surface); }
.sh-order-drawer--entry .sh-drawer-question { margin: var(--sh-sp-5) 0 var(--sh-sp-2); color: var(--sh-ink); font-size: var(--sh-t-h3); line-height: 1.4; text-wrap: balance; }
.sh-order-drawer--entry .sh-drawer-question:focus { outline: none; }
.sh-order-drawer--entry .sh-drawer-question + .sh-drawer-lead { margin-top: 0; font-size: var(--sh-t-sm); color: var(--sh-muted); }
.sh-order-drawer--entry .sh-drawer-question:not(:has(+ .sh-drawer-lead)) { margin-bottom: var(--sh-sp-5); }
.sh-drawer-autofill { display: inline-flex; align-items: center; gap: var(--sh-sp-1); margin: var(--sh-sp-2) 0 0; padding: var(--sh-sp-1) var(--sh-sp-2); border-radius: var(--sh-r-pill); background: var(--sh-chip-info-bg); color: var(--sh-chip-info-ink); font-size: var(--sh-t-xs); font-weight: 600; }
.sh-drawer-autofill[hidden] { display: none; }
.sh-drawer-candidates { display: flex; flex-wrap: wrap; gap: var(--sh-sp-2); margin: var(--sh-sp-3) 0 0; }
.sh-drawer-candidates-label { flex-basis: 100%; color: var(--sh-muted); font-size: var(--sh-t-xs); font-weight: 600; }
.sh-drawer-candidate { min-height: 44px; padding: var(--sh-sp-2) var(--sh-sp-3); border: 1px solid var(--sh-border); border-radius: var(--sh-r-pill); background: var(--sh-surface); color: var(--sh-ink-2); font-size: var(--sh-t-sm); cursor: pointer; overflow-wrap: anywhere; }
.sh-drawer-candidate[aria-pressed=true] { border-color: var(--sh-tint-line); background: var(--sh-tint); color: var(--sh-primary); font-weight: 700; }
.sh-drawer-candidate[aria-pressed=true]::before { content: "✓ "; }
.sh-drawer-tag-count { margin: var(--sh-sp-2) 0 0; color: var(--sh-muted); font-size: var(--sh-t-xs); font-variant-numeric: tabular-nums; }
.sh-drawer-tag-count[hidden] { display: none; }
.sh-drawer-linkline { margin: var(--sh-sp-2) 0 0; color: var(--sh-muted); font-size: var(--sh-t-xs); line-height: 1.5; }
.sh-drawer-linkline[data-state=ok] { color: var(--sh-ok-text); font-weight: 600; }
.sh-drawer-linkline[data-state=ok]::before { content: "✓ "; }
.sh-drawer-linkline[hidden] { display: none; }
.sh-drawer-field > .sh-drawer-guide-toggle { display: inline-flex; align-items: center; gap: var(--sh-sp-2); margin: var(--sh-sp-1) 0 0; padding-inline: 0; font-size: var(--sh-t-sm); }
.sh-drawer-field > .sh-drawer-guide-toggle::after { content: ""; width: var(--sh-sp-2); height: var(--sh-sp-2); border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-25%) rotate(45deg); transition: transform var(--sh-dur-fast) var(--sh-ease-out); }
.sh-drawer-field > .sh-drawer-guide-toggle[aria-expanded=true]::after { transform: translateY(25%) rotate(-135deg); }
.sh-drawer-field > .sh-drawer-guide { margin-top: var(--sh-sp-1); }
.sh-drawer-advanced { margin: 0 0 var(--sh-sp-4); border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); background: var(--sh-surface-alt); }
.sh-drawer-advanced > summary { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: var(--sh-sp-3); min-height: 44px; padding: var(--sh-sp-3) var(--sh-sp-4); list-style: none; cursor: pointer; }
.sh-drawer-advanced > summary::-webkit-details-marker { display: none; }
.sh-drawer-advanced > summary::after { content: ""; grid-column: 2; grid-row: 1 / 3; width: var(--sh-sp-2); height: var(--sh-sp-2); border-right: 2px solid var(--sh-muted); border-bottom: 2px solid var(--sh-muted); transform: rotate(45deg); transition: transform var(--sh-dur-fast) var(--sh-ease-out); }
.sh-drawer-advanced[open] > summary::after { transform: rotate(-135deg); }
.sh-drawer-advanced-title { color: var(--sh-ink); font-size: var(--sh-t-sm); font-weight: 700; }
.sh-drawer-advanced-summary { grid-column: 1; color: var(--sh-muted); font-size: var(--sh-t-xs); overflow-wrap: anywhere; }
.sh-drawer-advanced-summary:empty { display: none; }
.sh-drawer-advanced > .sh-drawer-field { margin: 0; padding: 0 var(--sh-sp-4) var(--sh-sp-4); }

.sh-drawer-section { margin: 0 0 var(--sh-sp-5); padding-top: var(--sh-sp-5); border-top: 1px solid var(--sh-line); }
.sh-drawer-section-title { margin: 0 0 var(--sh-sp-2); color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; line-height: 1.5; }
.sh-drawer-section-desc { margin: 0 0 var(--sh-sp-4); }
.sh-drawer-section > .sh-drawer-field:last-child { margin-bottom: 0; }
.sh-drawer-price-card { display: grid; gap: var(--sh-sp-1); }
.sh-drawer-price-card .sh-drawer-summary-row { margin: 0; }
.sh-drawer-price-card [data-drawer-price=formula] strong { color: var(--sh-ink-2); font-weight: 600; }
.sh-drawer-price-card .sh-drawer-price-total { margin-top: var(--sh-sp-2); padding-top: var(--sh-sp-3); border-top: 1px solid var(--sh-tint-line); }
.sh-drawer-price-card .sh-drawer-price-total > span { color: var(--sh-ink); font-weight: 700; }
.sh-drawer-price-card + .sh-drawer-summary-row { margin-top: var(--sh-sp-3); }

.sh-drawer-price-empty::before { content: "\2014"; color: var(--sh-muted); font-weight: 400; }

.sh-drawer-period-chips { flex-wrap: wrap; margin-bottom: var(--sh-sp-2); }
.sh-drawer-period-chips button { flex: 1 1 0; min-width: 56px; min-height: 44px; padding-inline: var(--sh-sp-1); }
.sh-drawer-period-input { max-width: 200px; }
.sh-drawer-period-line { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; column-gap: var(--sh-sp-3); margin-top: var(--sh-sp-2); }
.sh-drawer-period-range { margin: 0; color: var(--sh-ink); font-size: var(--sh-t-sm); font-weight: 700; }
.sh-drawer-period-toggle { min-height: 44px; margin-left: auto; padding: 0 var(--sh-sp-1); border: 0; background: transparent; color: var(--sh-primary); font-size: var(--sh-t-sm); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.sh-drawer-period-start { margin-top: var(--sh-sp-2); padding: var(--sh-sp-3); border: 1px solid var(--sh-border); border-radius: var(--sh-r-ctrl); background: var(--sh-surface-alt); }
.sh-drawer-period-start .sh-drawer-field { margin: 0; }
.sh-drawer-period-select .sh-drawer-field { margin: 0; }
@media (max-width: 767px) {
  .sh-order-drawer--entry .sh-drawer-stepper { top: calc(-1 * var(--sh-sp-4)); margin-inline: calc(-1 * var(--sh-sp-4)); padding-inline: var(--sh-sp-4); }
}

.sh-order-drawer--entry .sh-drawer-stepper { display: block; }
.sh-drawer-stepper-track { display: flex; align-items: center; gap: var(--sh-sp-3); }
.sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-question { margin: var(--sh-sp-3) 0 0; }
.sh-order-drawer--entry .sh-drawer-stepper + .sh-drawer-lead { margin-top: var(--sh-sp-3); font-size: var(--sh-t-sm); color: var(--sh-muted); }
.sh-order-drawer--entry .sh-drawer-stepper + :not(.sh-drawer-lead) { margin-top: var(--sh-sp-4); }
.sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-step-name { overflow: visible; text-overflow: clip; white-space: nowrap; }
.sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-steps li { justify-content: flex-start; }
.sh-drawer-result--selected { align-items: start; }
.sh-drawer-result--selected > .sh-drawer-place-thumb { grid-row: 1; }
.sh-drawer-result-copy { grid-column: 2; grid-row: 1 / 3; display: grid; align-content: start; gap: var(--sh-sp-1); min-width: 0; }
.sh-drawer-result-copy > span { color: var(--sh-ink-2); font-size: var(--sh-t-sm); overflow-wrap: anywhere; }

.sh-drawer-result-copy > .sh-drawer-result-link { color: var(--sh-muted); font-size: var(--sh-t-xs); overflow-wrap: normal; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sh-drawer-result--selected > .sh-badge, .sh-drawer-result--selected:has(.sh-drawer-reselect) > .sh-badge { grid-column: 3; grid-row: 1; justify-self: end; }
.sh-drawer-result--selected > .sh-drawer-reselect { grid-column: 3; grid-row: 2; align-self: start; }
.sh-drawer-result-note { grid-column: 1 / -1; margin: var(--sh-sp-1) 0 0; color: var(--sh-ok-text); font-size: var(--sh-t-sm); font-weight: 600; }
.sh-drawer-result-raw { grid-column: 1 / -1; font-size: var(--sh-t-xs); color: var(--sh-muted); }
.sh-drawer-result-raw > summary { display: inline-flex; align-items: center; gap: var(--sh-sp-2); min-height: 44px; list-style: none; cursor: pointer; }
.sh-drawer-result-raw > summary::-webkit-details-marker { display: none; }
.sh-drawer-result-raw > summary::after { content: ""; width: var(--sh-sp-2); height: var(--sh-sp-2); border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-25%) rotate(45deg); }
.sh-drawer-result-raw[open] > summary::after { transform: translateY(25%) rotate(-135deg); }
.sh-drawer-result-raw dl { display: grid; gap: var(--sh-sp-1); margin: 0; }
.sh-drawer-result-raw dl > div { display: flex; justify-content: space-between; gap: var(--sh-sp-3); }
.sh-drawer-result-raw dd { margin: 0; color: var(--sh-ink-2); text-align: right; overflow-wrap: anywhere; }
.sh-drawer-linkline { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sh-sp-2); }
.sh-drawer-linkline[data-state=pending] { color: var(--sh-primary); }
.sh-drawer-linkline[data-state=retry] { color: var(--sh-danger); font-weight: 600; }
.sh-drawer-link-retry { min-height: 44px; padding: 0 var(--sh-sp-3); border: 1px solid var(--sh-border); border-radius: var(--sh-r-pill); background: var(--sh-surface); color: var(--sh-primary); font-size: var(--sh-t-xs); font-weight: 700; cursor: pointer; }
.sh-drawer-actions[data-drawer-actions=short] { flex-wrap: wrap; }
.sh-drawer-actions[data-drawer-actions=short] [data-drawer-submit] { order: -1; flex: 1 0 100%; }
.sh-drawer-actions [data-drawer-topup] { flex: 1; display: inline-flex; align-items: center; justify-content: center; }
.sh-order-drawer--entry .sh-drawer-settings { margin: var(--sh-sp-3) 0 0; padding: 0; border: 0; background: transparent; font-size: var(--sh-t-sm); }
.sh-order-drawer--entry .sh-drawer-settings > summary { min-height: 44px; color: var(--sh-primary); font-weight: 600; }
.sh-order-drawer--entry .sh-drawer-settings[open] { padding: var(--sh-sp-3) var(--sh-sp-4); border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); }
@media (max-width: 767px) {
  .sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-steps { display: flex; gap: var(--sh-sp-2); }
  .sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-steps li { flex: 0 0 auto; border-bottom: 0; padding-bottom: 0; }
  .sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-step-name { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .sh-order-drawer--entry .sh-drawer-stepper .sh-drawer-step-number { width: var(--sh-sp-5); min-height: var(--sh-sp-5); flex-basis: var(--sh-sp-5); }
}

.sh-order-page .sh-order-information { container-type: inline-size; }
@container (max-width: 430px) {
  .sh-order-information .sh-rail-live-stats,
  .sh-order-information .sh-tiles { grid-template-columns: minmax(0, 1fr); }
  .sh-order-information .sh-rail-live-stat { display: flex; align-items: center; justify-content: space-between; gap: var(--sh-sp-3); grid-column: auto; padding: var(--sh-sp-2) 0; border: 0; }
  .sh-order-information .sh-rail-live-stat + .sh-rail-live-stat { border-top: 1px solid var(--sh-rail-live-stat-divider); }
  .sh-order-information .sh-rail-live .sh-stat-num { font-size: var(--sh-rail-live-number); }
  .sh-order-information .sh-rail-live .sh-stat-label { margin-top: 0; }
  .sh-order-information .sh-seo .sh-segtabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sh-order-information .sh-benefit-matrix { display: block; overflow-x: auto; }
  .sh-order-information .sh-promo { flex-direction: column; align-items: stretch; gap: var(--sh-sp-3); }
  .sh-order-information .sh-promo-side { align-items: flex-start; }
  .sh-order-information .sh-signin-more > summary { display: none; }
}

.sh-order-page .sh-grid .sh-picker .sh-row .sh-row-name,
.sh-order-page .sh-grid .sh-picker .sh-cat .sh-cat-name,
.sh-order-page .sh-grid .sh-picker #sh-crumb-cat,
.sh-order-page #sh-svc-title,
.sh-d4-detail-title,
.sh-d4-kicker,
.sh-display-name,
.sh-drawer-header #sh-drawer-heading,
.sh-drawer-product,
.sh-drawer-entry-title h3,
.sh-order-name,
.sh-row--rel .sh-grow,
.sh-guide-products b,
[data-sh-display-service],
[data-sh-display-category] {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  min-width: 0;
  max-width: 100%;
  height: auto;
  max-height: none;
  overflow: hidden;
  white-space: normal;
  word-break: keep-all;
  overflow-wrap: anywhere;
  text-overflow: clip;
}
.sh-order-page .sh-grid .sh-picker .sh-cat .sh-cat-name { width: 100%; }
#sh-desc-sec { margin-top: var(--sh-gap-sec); }
#sh-input-guide:empty { display: none; }
#sh-input-guide .sh-onboarding { margin-bottom: var(--sh-gap-group); }
.sh-rail-price-row .sh-rail-product-name {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  white-space: normal;
  overflow: hidden;
  overflow-wrap: anywhere;
  text-overflow: clip;
}
.sh-order-page .sh-single-category strong,
.sh-order-page .sh-row-variant,
.sh-review-prod,
#sh-fav-list .sh-chip,
.sh-recap-row [data-sh-recap=product],
.sh-recap-row [data-sh-cancel=service] {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  white-space: normal;
  overflow: hidden;
  overflow-wrap: anywhere;
  text-overflow: clip;
}
.sh-ticker-roll, .sh-ticker-line { height: var(--sh-sp-7); }

.sh-ticker-pending [data-sh-ticker] { visibility: hidden; height: var(--sh-sp-7); animation: sh-ticker-failsafe 0s 5s forwards; }
@keyframes sh-ticker-failsafe { to { visibility: visible; } }

@media (max-width: 767px) {
  .sh-order-page .sh-tabbar-inner:not([data-sh-p19-tabs]) > * { visibility: hidden; animation: sh-ticker-failsafe 0s 5s forwards; }
}
.sh-ticker-line > .sh-ticker-txt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  white-space: normal;
  line-height: 1.4;
  text-overflow: clip;
  overflow-wrap: anywhere;
}
.sh-order-page .sh-order-summary .sh-brief-head { padding-right: 0; }
.sh-order-page .sh-order-summary .sh-summary-favorite { position: static; margin-top: var(--sh-sp-2); }

.sh-order-page {
  --sh-first-paint-cat-row: 52px;
  --sh-first-paint-product-row: 70px;
  --sh-first-paint-row: 56px;
  --sh-first-paint-bar: 12px;
  --sh-first-paint-summary: 212px;
  --sh-banner-inline: 20px;
  --sh-banner-block-start: 12px;
  --sh-banner-block-end: 16px;
  --sh-banner-aspect: 1.85;
  --sh-plats-dots-top: 18px;
}
.sh-plats .sh-plat-skeleton { display: none; pointer-events: none; }
.sh-content-pending:not(.sh-tiles-ready) .sh-plats > :not([data-sh-plat-skeleton]) { display: none !important; }
.sh-content-pending:not(.sh-tiles-ready) .sh-plats .sh-plat-skeleton { display: flex; }
.sh-plat-skeleton .sh-plat-icon { background: var(--sh-line); border-radius: var(--sh-r-pill); }
.sh-plat-skeleton .sh-plat-label { width: 70%; height: 1.2em; background: var(--sh-line); border-radius: var(--sh-r-2xs); }
.sh-content-pending .sh-picker :is(.sh-cats, .sh-rows) { overflow: hidden; }
.sh-content-pending .sh-picker .sh-skel--row { pointer-events: none; }
.sh-content-pending .sh-picker .sh-skel { height: var(--sh-first-paint-bar); animation: none; background: var(--sh-line); }
.sh-order-page .sh-rail--main > .sh-notice-strip[hidden] { display: block !important; visibility: hidden; }
@media (max-width: 767px) {
  html.sh-has-banner body.sh-order-page .sh-main .sh-grid .sh-rail--main:not(:has(> [data-sh-banner-side]:not([hidden]))) > .sh-order-card {
    margin-top: calc((100vw - var(--sh-banner-inline) * 2) / var(--sh-banner-aspect) + var(--sh-banner-block-start) + var(--sh-banner-block-end) + var(--sh-sp-2)) !important;
  }
  body.sh-order-page .sh-order-card .sh-plats-progress:not(.sh-plats-dots):not([hidden]) { margin-top: var(--sh-plats-dots-top); }
}
html.sh-content-pending body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container {
  height: calc(var(--sh-first-paint-cat-row) * 4 + var(--sh-sp-1) * 3);
  overflow: hidden;
}
html.sh-content-pending body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows {
  height: calc(var(--sh-first-paint-product-row) * 3 + var(--sh-sp-1) * 2);
  overflow: hidden;
}
html.sh-content-pending body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container > .sh-skel--row {
  flex: 0 0 var(--sh-first-paint-cat-row); height: var(--sh-first-paint-cat-row); min-height: var(--sh-first-paint-cat-row);
}
html.sh-content-pending body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-skel--row {
  flex: 0 0 var(--sh-first-paint-product-row); height: var(--sh-first-paint-product-row); min-height: var(--sh-first-paint-product-row);
}
@media (max-width: 767px) {
  .sh-order-page { --sh-first-paint-cat-row: 56px; --sh-first-paint-summary: 270px; }
}
.sh-content-pending #sh-rows-empty { display: none; }
.sh-content-pending .sh-order-summary { min-height: var(--sh-first-paint-summary); }
.sh-content-pending .sh-order-summary > * { visibility: hidden; }
.sh-content-pending .sh-order-summary::after {
  content: '';
  position: absolute;
  inset: var(--sh-order-summary-pad);
  background: repeating-linear-gradient(to bottom, var(--sh-line) 0 var(--sh-first-paint-bar), transparent var(--sh-first-paint-bar) var(--sh-first-paint-row));
  border-radius: var(--sh-r-2xs);
  pointer-events: none;
}
@media (max-width: 767px) {
  .sh-main .sh-plats .sh-plat-skeleton { padding: 0; gap: var(--sh-sp-1); min-height: 76px; }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .sh-order-page .sh-grid .sh-picker .sh-picker-body {
    grid-template-columns: var(--sh-order-category-width) minmax(0, 1fr);
    gap: 0;
    width: 100%;
  }
  .sh-order-page .sh-grid .sh-picker--single .sh-picker-body { grid-template-columns: minmax(0, 1fr); }
  .sh-order-page .sh-grid .sh-picker .sh-rows { width: auto; min-width: 0; }
}
@media (max-width: 767px) {
  .sh-order-page {
    --sh-t-body: 15px;
    --sh-t-h3: 17px;
    --sh-order-mobile-price: 17px;
    --sh-order-mobile-category: 15px;
    --sh-order-tag-font: 12.5px;
    --sh-order-mobile-cat-min: 128px;
    --sh-order-mobile-cat-max: 168px;
    --sh-order-mobile-height: 60vh;
    --sh-desc-body-mobile: 16px;
    --sh-desc-answer-mobile: 16px;
    --sh-desc-heading-mobile: 18px;
    font-size: var(--sh-t-body);
  }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats {
    --sh-plat-cell: max(var(--sh-plat-tile), calc((100% - var(--sh-sp-2) * 4) / 5));
    margin-inline: calc(var(--sh-sp-3) * -1);
    column-gap: var(--sh-sp-2);
  }
  .sh-order-page .sh-order-subtabs { flex-wrap: nowrap; overflow-x: auto; }
  .sh-order-page .sh-order-subtabs > button { flex-shrink: 0; min-height: var(--sh-desc-tap-size); }
  .sh-order-page .sh-grid .sh-picker .sh-picker-body {
    display: grid;
    grid-template-columns: clamp(var(--sh-order-mobile-cat-min), 38%, var(--sh-order-mobile-cat-max)) minmax(0, 1fr);
    align-items: stretch;
    gap: 0;
    padding: 0;
    max-height: var(--sh-order-mobile-height);
  }
  .sh-order-page .sh-grid .sh-picker--single .sh-picker-body { grid-template-columns: minmax(0, 1fr); }
  .sh-order-page .sh-grid .sh-picker :is(.sh-cats, .sh-rows) {
    min-width: 0;
    width: 100%;
    min-height: 0;
    max-height: var(--sh-order-mobile-height);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    align-self: stretch;
    padding: 0;
    scroll-snap-type: none;
    mask-image: none;
  }
  .sh-order-page .sh-grid .sh-picker :is(.sh-cats, .sh-rows):not(.sh-picker-scroll-end) {
    mask-image: linear-gradient(to bottom, black calc(100% - var(--sh-sp-4)), transparent);
  }
  .sh-order-page .sh-grid .sh-picker .sh-cats { display: flex; flex-direction: column; gap: 0; border: 0; border-right: 1px solid var(--sh-line); background: var(--sh-surface-alt); }
  .sh-order-page .sh-grid .sh-picker .sh-cats :is([data-sh-category-group], [role=tablist]) { display: flex; flex-direction: column; align-items: stretch; gap: 0; width: 100%; }
  .sh-order-page .sh-grid .sh-picker .sh-cats [data-sh-category-group-title] { white-space: normal; }
  .sh-order-page .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only) {
    flex: 0 0 auto;
    width: 100%;
    min-width: 0;
    min-height: var(--sh-desc-tap-size);
    padding: var(--sh-sp-3) var(--sh-sp-2);
    border: 0;
    border-radius: 0;
    background: transparent;
    font-size: var(--sh-order-mobile-category);
    font-weight: 600;
    line-height: 1.4;
    text-align: left;
    white-space: normal;
  }
  .sh-order-page .sh-grid .sh-picker .sh-cats .sh-cat-name { font: inherit; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; white-space: normal; word-break: keep-all; overflow-wrap: anywhere; }
  .sh-order-page .sh-grid .sh-picker .sh-cats button.sh-cat:is(.active, [aria-selected=true]) { background: var(--sh-tint-soft); color: var(--sh-primary); box-shadow: none; }
  .sh-order-page .sh-grid .sh-picker .sh-rows { display: block; border-left: 0; }
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row { display: grid; grid-template-columns: minmax(0, 1fr) var(--sh-desc-tap-size); gap: var(--sh-sp-1); min-height: var(--sh-desc-tap-size); padding: var(--sh-sp-3) var(--sh-sp-2); }
  .sh-order-page .sh-grid .sh-picker .sh-row-main { display: flex; flex-wrap: wrap; grid-column: 1 / -1; gap: var(--sh-sp-1); min-width: 0; }
  .sh-order-page .sh-grid .sh-picker .sh-rows .sh-row-name { grid-column: 1 / -1; flex-basis: 100%; font-size: var(--sh-t-body); font-weight: 600; line-height: 1.5; white-space: normal; word-break: keep-all; overflow-wrap: anywhere; }
  .sh-order-page .sh-grid .sh-picker .sh-rows .sh-row-price { grid-column: 1; margin: 0; font-size: var(--sh-order-mobile-price); font-weight: 700; text-align: left; white-space: nowrap; }
  .sh-order-page .sh-grid .sh-picker .sh-rows .sh-row-unit { font-size: var(--sh-t-xs); font-weight: 400; }
  .sh-order-page .sh-grid .sh-picker .sh-rows .sh-favbtn { grid-column: 2; width: var(--sh-desc-tap-size); height: var(--sh-desc-tap-size); min-width: var(--sh-desc-tap-size); margin: 0; align-self: end; }
  .sh-order-page .sh-picker :is(.sh-list-tag, .sh-badge, .sh-row-variant) { font-size: var(--sh-order-tag-font); }
  .sh-order-page :is(.sh-step, .sh-h3, .sh-order-summary #sh-svc-title) { font-size: var(--sh-order-summary-title); font-weight: 700; }
  .sh-order-page .sh-order-summary .sh-summary-favorite { min-height: var(--sh-desc-tap-size); }
  .sh-order-page .sh-mobar .sh-mobar-name { font-size: var(--sh-order-mobile-category); }
  .sh-order-page .sh-mobar .sh-mobar-total { font-size: var(--sh-order-mobile-price); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] { --sh-desc-lead: var(--sh-desc-body-mobile); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-gallery-caption, .sh-d4-section-note) { font-size: var(--sh-t-xs); }
  .sh-order-page #sh-order-aside .sh-banner-stage { aspect-ratio: var(--sh-banner-aspect); }
  .sh-order-page #sh-order-aside .sh-banner img { width: 100%; height: 100%; object-fit: contain; }
}
@media (max-width: 767px) {
  .sh-order-page .sh-order-card .sh-step-title { font-size: var(--sh-order-summary-title); font-weight: 700; line-height: 1.5; }
  .sh-order-page .sh-order-card .sh-brief .sh-lead,
  .sh-order-page .sh-order-card #sh-svc-summary { font-size: var(--sh-t-body); line-height: 1.6; }
}

@media (max-width: 767px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats .sh-plat { width: 100%; min-width: 0; }
}
@media (max-width: 767px) {
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row { --sh-order-row-price-line: 2; }
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row:has(> :is(.sh-row-variant, .sh-row-consult, .sh-badge)) { --sh-order-row-price-line: 3; }
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row .sh-row-main { display: flex; grid-row: 1; }
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row :is(.sh-row-price, .sh-favbtn) { grid-row: var(--sh-order-row-price-line); }
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row > :is(.sh-row-variant, .sh-row-consult, .sh-badge) { grid-column: 1 / -1; grid-row: 2; justify-self: start; }
}

.sh-review-rating :is(.sh-rating-name, .sh-rating-count),
.sh-rail-rating-dist :is(.sh-rating-name, .sh-rating-count),
.sh-coupon-step :is(.sh-note, .sh-fine, .sh-sub),
.sh-page--account :is(.sh-note, .sh-fine),
.sh-biz-body,
.sh-d2b-ticket-row :is(.sh-order-no, .sh-order-sub) { color: var(--sh-muted-on-tint); }
@media (max-width: 1023px) {
  .sh-catalog-layout { grid-template-columns: minmax(0, 1fr); }
  .sh-catalog-nav { position: relative; top: auto; max-height: none; border-right: 0; border-bottom: 1px solid var(--sh-line); }
  .sh-catalog-filters { display: flex; flex-wrap: nowrap; overflow-x: auto; gap: var(--sh-sp-2); }
  .sh-catalog-filters .sh-catalog-filter { flex: 0 0 auto; width: auto; }
  .sh-d2b-page--topup .sh-points { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sh-d2b-page--topup .pay-point { height: auto; min-height: var(--sh-desc-tap-size); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row { display: grid; grid-template-columns: minmax(0, 1fr) var(--sh-desc-tap-size); gap: var(--sh-sp-1); }
  .sh-order-page .sh-grid .sh-picker .sh-row-main { display: flex; flex-wrap: wrap; grid-column: 1 / -1; min-width: 0; gap: var(--sh-sp-1); }
  .sh-order-page .sh-grid .sh-picker .sh-row-name { flex-basis: 100%; white-space: normal; overflow: visible; -webkit-line-clamp: unset; }
  .sh-order-page .sh-grid .sh-picker .sh-row-price { grid-column: 1; margin: 0; text-align: left; white-space: nowrap; }
  .sh-order-page .sh-grid .sh-picker .sh-favbtn { grid-column: 2; margin: 0; }
  .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only),
  #sh-desc-sec .sh-chip.sh-step-side,
  .sh-btn.sh-btn--sm:not(.sh-sr-only):not([hidden]) { min-block-size: var(--sh-desc-tap-size); min-height: var(--sh-desc-tap-size); height: auto; }
}
@media (max-width: 767px) {
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery,
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:has(> :nth-child(2):last-child) { grid-template-columns: minmax(0, 1fr); }
}
.sh-digest-foot,
.sh-coupon-step .sh-step-title > span { color: var(--sh-muted-on-tint); }
.sh-d2b-ticket-row .sh-order-prog .sh-badge--success { color: var(--sh-ok-text); }
.sh-d2b-ticket-row .sh-order-prog .sh-badge--state-info { color: var(--sh-status-info); }

.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats {
  --sh-plat-tile: 56px;
  --sh-plat-glyph: 28px;
  --sh-plat-radius: 14px;
  --sh-plat-cell: 72px;
  --sh-plat-label-gap: var(--sh-sp-2);
  display: grid;
  grid-auto-flow: row;
  grid-template-columns: repeat(auto-fill, var(--sh-plat-cell));
  grid-template-rows: none;
  grid-auto-columns: auto;
  justify-content: space-between;
  row-gap: var(--sh-sp-4);
  column-gap: var(--sh-sp-3);
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
  scroll-snap-type: none;
  mask-image: none;
}
.sh-order-page .sh-main .sh-plats .sh-plat {
  width: var(--sh-plat-cell);
  min-width: 0;
  min-height: 0;
  padding: 0;
  gap: var(--sh-plat-label-gap);
  background: transparent;
  box-shadow: none;
}
.sh-order-page .sh-main .sh-plats .sh-plat .sh-plat-icon {
  width: var(--sh-plat-tile);
  height: var(--sh-plat-tile);
  border: 0;
  border-radius: var(--sh-plat-radius);
  background: transparent;
  box-shadow: none;
  color: var(--sh-plat-mark-fg, #fff);
}
.sh-order-page .sh-main .sh-plats .sh-plat .sh-plat-icon::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 0 1px var(--sh-plat-mark-ring, rgba(25,31,40,.08)), 0 1px 2px rgba(25,31,40,.06);
  pointer-events: none;
}
.sh-order-page .sh-main .sh-plats .sh-plat .sh-plat-icon svg {
  width: var(--sh-plat-tile) !important;
  height: var(--sh-plat-tile) !important;
  max-width: 100%;
  max-height: 100%;
  padding: calc(var(--sh-plat-tile) / 4);
  border-radius: var(--sh-plat-radius);
  background: var(--sh-plat-mark-bg);
  color: var(--sh-plat-mark-fg, #fff);
  box-shadow: inset 0 0 0 1px var(--sh-plat-mark-ring, rgba(25,31,40,.08)), 0 1px 2px rgba(25,31,40,.06);
}
.sh-order-page .sh-main .sh-plats .sh-plat .sh-plat-icon svg:has(image) { padding: 0; }
.sh-order-page .sh-main .sh-plats .sh-plat .sh-plat-icon:is([data-brand="favorites"], [data-brand="event"], [data-brand="etc"]) { background: var(--sh-plat-tile-bg); }
.sh-order-page .sh-main .sh-plats .sh-plat .sh-plat-icon:is([data-brand="favorites"], [data-brand="event"], [data-brand="etc"]) svg {
  width: var(--sh-plat-glyph) !important;
  height: var(--sh-plat-glyph) !important;
  padding: 0;
  background: transparent;
  color: var(--sh-ink);
  box-shadow: inset 0 0 0 1px var(--sh-plat-mark-ring, rgba(25,31,40,.08));
}
.sh-order-page .sh-main .sh-plats .sh-plat .sh-plat-icon:is([data-brand="favorites"], [data-brand="event"], [data-brand="etc"])::after {
  box-shadow: inset 0 0 0 1px var(--sh-plat-mark-ring, rgba(25,31,40,.08));
}
.sh-order-page .sh-main .sh-plats .sh-plat .sh-plat-icon[data-brand="favorites"] svg { color: var(--sh-primary); }
.sh-order-page .sh-main .sh-plats .sh-plat.active .sh-plat-icon {
  box-shadow: var(--sh-plat-selected-shadow);
}
.sh-order-page .sh-main .sh-plats .sh-plat-label {
  font-size: var(--sh-t-caption);
  font-weight: 600;
  width: max-content;
  max-width: none;
  line-height: 16px;
  min-height: 16px;
  color: var(--sh-muted);
  overflow: visible;
  white-space: nowrap;
  word-break: keep-all;
}
.sh-order-page .sh-main .sh-plats .sh-plat.active .sh-plat-label { color: var(--sh-primary); font-weight: 700; }
.sh-order-page .sh-main .sh-plats .sh-plat-skeleton .sh-plat-icon { background: var(--sh-line); }
.sh-order-page .sh-main .sh-plats .sh-plat-skeleton .sh-plat-label { width: 70%; height: 1lh; }
.sh-d2b-balance-card .sh-user-wallet:not([hidden]),
.sh-d2b-balance-card > .sh-user-wallet[data-sh-wallet-side] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sh-sp-2);
  margin-top: var(--sh-sp-3);
  margin-left: 0;
  background: transparent;
  padding-top: var(--sh-sp-3);
  border-top: 1px solid #F2F4F6;
  color: var(--sh-muted);
  font-size: var(--sh-t-caption);
}
.sh-d2b-balance-card .sh-user-wallet b { color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; white-space: nowrap; }
@media (hover: hover) and (pointer: fine) {
  .sh-order-page .sh-main .sh-plats .sh-plat:not(.active):hover .sh-plat-icon { box-shadow: var(--sh-plat-hover-shadow); }
}
@media (max-width: 767px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats {
    --sh-plat-tile: 48px;
    --sh-plat-radius: 12px;
    --sh-plat-cell: 100%;
    --sh-plat-columns: 5;
    grid-template-columns: repeat(var(--sh-plat-columns), minmax(0, 1fr));
  }
  .sh-order-page .sh-main .sh-plats .sh-plat-label { font-size: var(--sh-t-caption); line-height: 14px; min-height: 14px; letter-spacing: -.4px; }
  .sh-order-page :is(.sh-plats, .sh-plats-progress) + [data-sh-banner-side] { width: 100%; margin: var(--sh-sp-4) 0; }
  .sh-order-page :is(.sh-plats, .sh-plats-progress) + [data-sh-banner-side] .sh-banner-stage { aspect-ratio: var(--sh-banner-aspect); }
  .sh-order-page :is(.sh-plats, .sh-plats-progress) + [data-sh-banner-side] img { width: 100%; height: 100%; object-fit: contain; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats {
    --sh-plat-tile: 52px;
  }
}
@media (max-width: 767px) {
  .sh-order-page :is(.sh-plats, .sh-plats-progress) + [data-sh-banner-side]:not([hidden]) { display: block !important; aspect-ratio: auto; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .sh-order-page .sh-main .sh-plats .sh-plat-label { max-width: none; white-space: nowrap; }
}
@media (max-width: 374px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats { margin-inline: -18px; column-gap: var(--sh-sp-2); }
}

.sh-sidebar .sh-user a.sh-user-name,
.sh-drawer .sh-user a.sh-user-name,
.sh-sidebar .sh-user a.sh-user-tier,
.sh-drawer .sh-user a.sh-user-tier { position: relative; min-width: 44px; }
.sh-sidebar .sh-user-row > .sh-truncate,
.sh-drawer .sh-user-row > .sh-truncate { overflow: visible; }
.sh-sidebar .sh-user a.sh-user-name::after,
.sh-drawer .sh-user a.sh-user-name::after { content: ""; position: absolute; inset: -20px 0 0; }
.sh-sidebar .sh-user a.sh-user-tier::after,
.sh-drawer .sh-user a.sh-user-tier::after { content: ""; position: absolute; inset: 0 0 -20px; }

.sh-desc .sh-d4-facts--qty {
  --sh-compose-row: 40px;
  --sh-compose-text: 15px;
  --sh-compose-line: var(--sh-line-hair);
  display: block;
  padding: 0;
  border: 0;
  border-top: 1px solid var(--sh-compose-line);
  border-radius: 0;
  background: transparent;
}
.sh-desc .sh-d4-facts--qty .sh-d4-fact {
  display: flex;
  align-items: center;
  gap: var(--sh-sp-3);
  min-height: var(--sh-compose-row);
  padding: var(--sh-sp-2) 0;
  border-bottom: 1px solid var(--sh-compose-line);
}
.sh-desc .sh-d4-facts--qty .sh-d4-fact .sh-d4-fact-k,
.sh-desc .sh-d4-facts--qty .sh-d4-fact .sh-d4-fact-v--num {
  color: var(--sh-ink);
  font-size: var(--sh-compose-text);
  line-height: 1.5;
}
.sh-desc .sh-d4-facts--qty .sh-d4-fact-v--num { font-weight: 700; }
@media (min-width: 768px) and (max-width: 799px) {
  .sh-order-page .sh-grid .sh-order-card { padding-inline: 18px; }
}

.sh-order-page :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-lead, .sh-d4-audience-card > .sh-d4-tx, .sh-d4-detail-timeline > li > .sh-d4-tx, .sh-d4-faq > p) {
  max-width: var(--sh-desc-prose-max);
}
.sh-order-page { --sh-desc-max-width: none; }

.sh-auth-page {
  --sh-signup-panel: 520px;
  --sh-signup-card: 480px;
  --sh-signup-brand-bg: linear-gradient(160deg, var(--sh-primary-night) 0%, var(--sh-primary-ink) 55%, var(--sh-primary-deep) 100%);
  --sh-signup-kicker: #C9B3F5;
  --sh-signup-copy: #DED2F6;
  --sh-signup-card-shadow: 0 12px 32px rgba(23,3,46,.06);
  --sh-signup-art-glow: radial-gradient(ellipse, rgba(164,100,255,.22), transparent 68%);
  --sh-signup-cta: linear-gradient(135deg, #6812D4, var(--sh-primary));
  --sh-signup-cta-shadow: 0 8px 20px rgba(93,0,200,.22);
  background: var(--sh-canvas);
}
.sh-auth-page .sh-auth-shell { display: grid; grid-template-columns: var(--sh-signup-panel) minmax(0,1fr); height: auto; min-height: 100dvh; overflow: visible; }
.sh-auth-page .sh-auth-panel { display: flex; flex-direction: column; gap: 0; padding: 36px 40px 32px; background: var(--sh-signup-brand-bg); border: 0; overflow: visible; }
.sh-auth-page .sh-auth-panel a.sh-auth-brand { color: var(--sh-on-brand); font-size: var(--sh-t-card); font-weight: 700; gap: 8px; }
.sh-auth-page .sh-auth-brand svg { width: 28px; height: 28px; }
.sh-auth-page .sh-auth-panel-content { margin-top: 56px; max-width: none; width: 100%; }
.sh-auth-page .sh-auth-kicker { margin: 0; font-size: var(--sh-t-help); font-weight: 700; color: var(--sh-signup-kicker); }
.sh-auth-page .sh-auth-h { margin: 10px 0 0; font-size: var(--sh-t-display-1); font-weight: 700; line-height: 1.25; letter-spacing: -.6px; color: var(--sh-on-brand); }
.sh-auth-page .sh-auth-p { margin: 14px 0 0; font-size: var(--sh-t-body); line-height: 1.65; color: var(--sh-signup-copy); }
.sh-auth-page .sh-auth-list { display: flex; flex-direction: column; gap: 8px; margin: 26px 0 0; font-size: var(--sh-t-body); font-weight: 600; color: var(--sh-tint); }
.sh-auth-page .sh-auth-list li { display: flex; align-items: center; gap: 10px; height: 44px; padding: 0 14px; border: 1px solid rgba(255,255,255,.12); border-radius: var(--sh-r-ctrl); background: rgba(255,255,255,.08); }
.sh-auth-page .sh-auth-list li::before { content: '✓'; display: block; position: static; width: 18px; height: auto; background: none; color: var(--sh-signup-kicker); }
.sh-signup-poster { margin: auto auto 0; padding-top: 20px; width: 260px; max-width: 100%; background: var(--sh-signup-art-glow); }
.sh-signup-poster img { display: block; width: 100%; height: auto; aspect-ratio: 1; mask-image: radial-gradient(ellipse, #000 48%, transparent 72%); }
.sh-auth-page .sh-auth-main { display: flex; justify-content: center; align-items: flex-start; min-width: 0; width: auto; max-width: none; margin: 0; padding: 40px 24px; overflow: visible; background: var(--sh-canvas); }
.sh-signup-column { width: var(--sh-signup-card); max-width: 100%; }
.sh-auth-page .sh-auth-card { width: 100%; max-width: none; margin: 0; padding: 32px 28px 28px; border: 1px solid rgba(23,20,31,.06); border-radius: var(--sh-r-card); background: var(--sh-surface); box-shadow: var(--sh-signup-card-shadow); }
.sh-auth-page .sh-auth-card-head { margin: 0; text-align: left; }
.sh-auth-page .sh-auth-card-head .sh-h1 { font-size: var(--sh-t-page); font-weight: 700; line-height: 1.3; }
.sh-auth-page .sh-auth-card-head .sh-lead { margin: 6px 0 0; font-size: var(--sh-t-body); line-height: 1.6; color: var(--sh-muted); }
.sh-auth-page .sh-signup-steps { position: relative; gap: 0; margin: 22px 0 26px; }
.sh-auth-page .sh-signup-steps::before { content: ''; position: absolute; top: 12px; left: 12.5%; right: 12.5%; height: 2px; background: var(--sh-line); }
.sh-auth-page .sh-signup-step-dot { position: relative; gap: 6px; font-size: var(--sh-t-caption); color: var(--sh-muted); }
.sh-auth-page .sh-signup-step-dot b { width: 24px; height: 24px; border: 2px solid var(--sh-surface); font-size: var(--sh-t-caption); }
.sh-auth-page .sh-signup-step-dot.is-current { color: var(--sh-primary); }
.sh-auth-page .sh-signup-step-dot.is-complete b { font-size: 0; background: var(--sh-tint); color: var(--sh-primary); }
.sh-auth-page .sh-signup-step-dot.is-complete b::after { content: '✓'; font-size: var(--sh-t-caption); }
.sh-auth-page :is([data-sh-signup-progress], [data-sh-signup-terms-reason]) { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.sh-auth-page .sh-signup-stage > .sh-h3 { font-size: var(--sh-t-card); font-weight: 700; line-height: 1.35; }
.sh-auth-page .sh-signup-stage > .sh-info-row { margin-top: 6px; font-size: var(--sh-t-body); line-height: 1.6; color: var(--sh-muted); }
.sh-auth-page .sh-benefit-card { gap: 4px; margin-top: 18px; padding: 8px; border: 0; border-radius: var(--sh-r-ctrl); background: var(--sh-surface-alt); }
.sh-auth-page .sh-benefit-row { gap: 12px; padding: 10px; font-size: var(--sh-t-body); line-height: 1.4; font-weight: 600; }
.sh-auth-page .sh-benefit-row b { font-weight: 700; color: var(--sh-ink); }
.sh-auth-page .sh-benefit-icon { width: 32px; height: 32px; flex-shrink: 0; border-radius: var(--sh-r-sm); background: #FEF3C7; color: #B45309; }
.sh-auth-page .sh-benefit-icon--gold { background: var(--sh-tint); color: var(--sh-primary); }
.sh-auth-page .sh-benefit-icon svg { width: 18px; height: 18px; }
.sh-auth-page .sh-consent-card { gap: 0; margin-top: 14px; padding: 0; border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); overflow: hidden; }
.sh-auth-page .sh-consent-row { display: flex; gap: 12px; min-height: 52px; padding: 14px 16px; }
.sh-auth-page .sh-consent-row + .sh-consent-row { border-top: 1px solid var(--sh-canvas); }
.sh-auth-page .sh-consent-row--all { background: var(--sh-surface-alt); }
.sh-auth-page .sh-consent-check { display: flex; align-items: center; gap: 12px; font-size: var(--sh-t-body); line-height: 1.4; font-weight: 600; color: var(--sh-ink-2); }
.sh-auth-page .sh-consent-row--all .sh-consent-check { font-size: var(--sh-t-body); font-weight: 700; color: var(--sh-ink); }
.sh-auth-page .sh-checkbox { width: 22px; height: 22px; min-width: 22px; border-radius: var(--sh-r-sm); }
.sh-auth-page .sh-consent-required { display: inline-flex; align-items: center; height: 20px; margin-left: 6px; padding: 0 7px; border-radius: 999px; background: var(--sh-tint); color: var(--sh-primary); font-size: var(--sh-t-caption); font-weight: 700; white-space: nowrap; }
.sh-auth-page .sh-consent-view { display: flex; align-items: center; font-size: var(--sh-t-help); font-weight: 600; color: var(--sh-muted); white-space: nowrap; }
.sh-auth-page .sh-auth-card button.sh-btn { min-height: 48px; border-radius: var(--sh-r-ctrl); font-size: var(--sh-t-body); font-weight: 700; }
.sh-auth-page .sh-auth-card button.sh-btn--primary { min-height: 52px; background: var(--sh-signup-cta); box-shadow: var(--sh-signup-cta-shadow); color: var(--sh-on-brand); font-size: var(--sh-t-body); }
.sh-auth-page .sh-auth-card button.sh-btn:disabled { background: var(--sh-line); color: var(--sh-muted); box-shadow: none; opacity: 1; }
.sh-auth-page .sh-auth-foot { display: flex; justify-content: center; gap: 6px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--sh-canvas); font-size: var(--sh-t-help); color: var(--sh-muted); }
.sh-auth-page .sh-auth-foot a.sh-linkbtn { font-size: var(--sh-t-help); font-weight: 700; }
.sh-auth-page .sh-auth-fine { padding: 0 20px; margin: 14px 0 0; background: none; border: 0; font-size: var(--sh-t-caption); text-align: center; color: var(--sh-muted); line-height: 1.6; }
.sh-auth-page .sh-auth-fine a.sh-linkbtn { font-size: inherit; }
.sh-signup-legal-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 8px; font-size: var(--sh-t-caption); color: var(--sh-muted); }
.sh-signup-legal-links a, .sh-signup-legal-links button { color: inherit; font: inherit; }
.sh-signup-legal-links button { padding: 0; border: 0; background: none; cursor: pointer; }
.sh-signup-legal-links .businessInfos { padding-top: 12px; line-height: 1.7; }
.sh-auth-page :is(.sh-input,.sh-select) { height: 48px; min-height: 48px; border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); font-size: var(--sh-t-body); }
.sh-auth-page :is(.sh-input,.sh-select):focus { border-color: var(--sh-primary); box-shadow: 0 0 0 3px var(--sh-tint); }
.sh-auth-page .sh-label { font-size: var(--sh-t-caption); font-weight: 700; color: var(--sh-ink-2); }
.sh-auth-page .sh-field-message { font-size: var(--sh-t-caption); }
.sh-auth-page .sh-signup-nav { display: grid; grid-template-columns: 120px minmax(0,1fr); gap: 10px; }
.sh-auth-page .sh-signup-nav [data-sh-signup-next] { grid-column: 2; grid-row: 1; }
.sh-auth-page .sh-signup-nav [data-sh-signup-skip-phone] { grid-column: 1/-1; grid-row: 2; background: none; border: 0; color: var(--sh-muted); }
.sh-auth-page [data-sh-signup-phone-row] { display: grid; grid-template-columns: minmax(0,1fr) 120px; gap: 8px; align-items: end; }
.sh-auth-page [data-sh-signup-phone-row] .sh-field { min-width: 0; }
.sh-auth-page [data-sh-signup-phone-row] .sh-btn { padding: 0 8px; }
.sh-auth-page [data-sh-marketing-consent] + span { font-size: var(--sh-t-help); }
.sh-signup-summary { margin: 18px 0 0; border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); overflow: hidden; }
.sh-signup-summary > div { display: flex; justify-content: space-between; gap: 12px; padding: 13px 16px; font-size: var(--sh-t-body); }
.sh-signup-summary > div + div { border-top: 1px solid var(--sh-canvas); }
.sh-signup-summary dt { flex-shrink: 0; color: var(--sh-muted); font-weight: 600; }
.sh-signup-summary dd { margin: 0; text-align: right; font-weight: 700; overflow-wrap: anywhere; }
.sh-signup-verified { color: var(--sh-ok); font-size: var(--sh-t-help); }
.sh-signup-reward { margin-top: 14px; padding: 16px; border: 1px solid var(--sh-signup-copy); border-radius: var(--sh-r-ctrl); background: var(--sh-tint); }
.sh-signup-reward > span { font-size: var(--sh-t-caption); font-weight: 700; color: var(--sh-primary); }
.sh-signup-reward h3 { margin: 8px 0; font-size: var(--sh-t-body); font-weight: 700; }
.sh-signup-reward p { margin: 0; font-size: var(--sh-t-help); line-height: 1.55; color: var(--sh-ink-2); }
.sh-signup-topbar, .sh-signup-mobile-benefit { display: none; }
@media (min-width: 1280px) and (max-width: 1439px) { .sh-auth-page { --sh-signup-panel: 440px; } }
@media (min-width: 1024px) and (max-width: 1279px) { .sh-auth-page { --sh-signup-panel: 380px; } }
@media (max-width: 1023px) {
  .sh-auth-page .sh-auth-shell { display: block; min-height: auto; }
  .sh-auth-page .sh-auth-panel { display: none; }
  .sh-auth-page .sh-auth-main { padding: 12px 12px 32px; }
  .sh-signup-topbar { display: flex; height: 56px; padding: 0 16px; justify-content: space-between; align-items: center; background: var(--sh-surface); border-bottom: 1px solid var(--sh-canvas); }
  .sh-signup-topbar .sh-auth-brand { color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; }
  .sh-signup-topbar a.sh-btn { min-height: 34px; height: 34px; padding: 0 14px; font-size: var(--sh-t-help); }
  .sh-signup-mobile-benefit { display: flex; gap: 12px; align-items: center; margin-bottom: 12px; padding: 14px 16px; border-radius: var(--sh-r-card); color: var(--sh-on-brand); background: var(--sh-signup-brand-bg); }
  .sh-signup-mobile-benefit > div { flex: 1; }
  .sh-signup-mobile-benefit span { display: block; color: var(--sh-signup-kicker); font-size: var(--sh-t-caption); font-weight: 700; }
  .sh-signup-mobile-benefit strong { display: block; margin-top: 2px; font-size: var(--sh-t-card); font-weight: 700; line-height: 1.3; }
  .sh-signup-mobile-benefit img { width: 44px; height: 44px; object-fit: cover; border-radius: var(--sh-r-sm); }
}
@media (max-width: 767px) {
  .sh-auth-page .sh-auth-main { padding-bottom: 88px; }
  .sh-auth-page .sh-auth-card { padding: 20px 19px 18px; border-radius: var(--sh-r-card); }
  .sh-auth-page .sh-auth-card-head .sh-h1 { font-size: var(--sh-t-page); }
  .sh-auth-page .sh-signup-steps { margin: 16px 0 18px; }
  .sh-auth-page .sh-benefit-card { margin-top: 12px; padding: 6px; gap: 2px; }
  .sh-auth-page .sh-benefit-row { padding: 9px 10px; }
  .sh-auth-page .sh-benefit-icon { width: 30px; height: 30px; }
  .sh-auth-page .sh-consent-card { margin-top: 12px; }
  .sh-auth-page .sh-consent-row { padding: 12px 14px; min-height: 48px; gap: 8px; }
  .sh-auth-page .sh-consent-check { gap: 10px; }
  .sh-auth-page .sh-auth-foot { margin-top: 12px; }
  .sh-signup-page .sh-tabbar { display: block; }
}
.sh-auth-page { --sh-signup-group: #F9FAFB; --sh-signup-success: #0B8749; }
.sh-auth-page .sh-auth-shell { max-width: none; margin: 0; }
.sh-auth-page .sh-auth-main { transform: none; }
.sh-auth-page .sh-benefit-card, .sh-auth-page .sh-consent-row--all { background: var(--sh-signup-group); }
.sh-auth-page .sh-consent-row { padding-block: 4px; }
.sh-auth-page .sh-signup-stage > .sh-info-row, .sh-auth-page .sh-auth-fine { display: block; min-height: 0; }
.sh-auth-page .sh-auth-foot { min-height: 0; }
.sh-auth-page .sh-auth-foot a.sh-linkbtn, .sh-auth-page .sh-auth-fine a.sh-linkbtn { min-height: 0; padding: 0; display: inline; }
.sh-auth-page .sh-signup-verified { color: var(--sh-signup-success); }
.sh-auth-page .sh-auth-panel { position: sticky; top: 0; height: max(100dvh, 1000px); }
@media (max-width: 767px) { .sh-auth-page .sh-consent-row { padding-block: 2px; } }
.sh-auth-page .sh-benefit-row { margin: 0; border: 0; align-items: center; }
.sh-auth-page .sh-auth-foot a.sh-linkbtn { display: inline-flex; align-items: center; justify-content: center; color: var(--sh-primary); min-height: 44px; }
.sh-auth-page .sh-auth-fine a.sh-linkbtn { display: inline-flex; align-items: center; min-height: 44px; }
.sh-auth-page .sh-signup-topbar a.sh-btn { min-height: 34px; }
.sh-auth-page .sh-signup-mobile-benefit > div { min-width: 0; }
.sh-auth-page .sh-signup-mobile-benefit img { flex: 0 0 44px; }
.sh-auth-page [data-sh-signup-code-wrap] > .sh-field { display: grid; grid-template-columns: minmax(0,1fr) 120px; gap: 8px; align-items: end; }
.sh-auth-page [data-sh-signup-code-wrap] .sh-label { grid-column: 1/-1; }
.sh-auth-page [data-sh-signup-resend] { padding: 0 6px; font-size: var(--sh-t-caption); }
@media (max-width: 767px) { .sh-auth-page .sh-fab-stack, .sh-auth-page .sh-kakao-fab { display: none; } }
.sh-auth-page .sh-signup-topbar a.sh-btn { position: relative; }
.sh-auth-page .sh-signup-topbar a.sh-btn::after { content: ''; position: absolute; left: 0; right: 0; top: -5px; height: 44px; }
.sh-auth-page .sh-auth-panel a.sh-auth-brand { min-height: 28px; }
.sh-auth-page .sh-auth-panel .sh-brand-mark path:nth-child(1) { fill: #B79CFF; }
.sh-auth-page .sh-auth-panel .sh-brand-mark path:nth-child(2) { fill: #9C7CFF; }
.sh-auth-page .sh-auth-panel .sh-brand-mark path:nth-child(3) { fill: #7D5CE0; }
.sh-auth-page .sh-auth-panel .sh-brand-mark path:nth-child(4) { fill: #A98BFF; }
.sh-auth-page .sh-auth-panel .sh-brand-mark path:nth-child(5) { fill: #8E6BF0; }
.sh-auth-page .sh-auth-panel .sh-brand-mark path:nth-child(6) { fill: #6E4FCB; }
.sh-auth-page .sh-auth-foot a.sh-linkbtn, .sh-auth-page .sh-auth-fine a.sh-linkbtn { position: relative; min-height: 0; }
.sh-auth-page .sh-auth-foot a.sh-linkbtn::after, .sh-auth-page .sh-auth-fine a.sh-linkbtn::after { content: ''; position: absolute; inset: 50% 0 auto; height: 44px; transform: translateY(-50%); }
.sh-auth-page .sh-auth-panel a.sh-auth-brand { height: 28px; }
.sh-auth-page .sh-auth-card button.sh-btn--quiet:not(:disabled) { background: var(--sh-surface); color: var(--sh-ink-2); }

.sh-user-tier { display: inline-flex; align-items: center; min-block-size: 44px !important; min-height: 44px !important; height: 44px !important; }
.sh-auth-page .sh-auth-card--auth1 { border-radius: var(--sh-r-card); }
.sh-auth-page .sh-auth-card--auth1 .sh-input { min-height: 48px; height: 48px; }
.sh-d2b-page--topup input[readonly].sh-input,
#sh-setpw-form .sh-input { color: var(--sh-muted) !important; }
.sh-faq-body .sh-acc-item button.sh-acc-q,
#noticeList .sh-acc-item button.sh-acc-q { min-height: 48px; }
.sh-steps3-go { display: inline-flex; align-items: center; gap: 0; white-space: nowrap; font-size: var(--sh-t-2xs); }

.sh-page--orders > :is(.sh-d2b-order-stats, section.sh-card) { width: 100%; align-self: stretch; }
@media (min-width: 1024px) {
  .sh-page--orders .sh-d3b-order-head,
  .sh-page--orders .sh-order { grid-template-columns: 112px minmax(0, 1fr) 112px 140px 120px 152px; gap: 8px 12px; }
  .sh-page--orders .sh-order-actions { flex-direction: column; align-items: stretch; }
  .sh-page--orders .sh-order-actions .sh-btn { width: 100%; }
  .sh-page--orders .sh-order-actions .sh-order-more { align-self: flex-end; }
}
@media (min-width: 1280px) {
  .sh-main > .sh-page--orders { padding-right: 0; }
}
@media (max-width: 767px) {
  .sh-page--orders > section.sh-card { padding-inline: 0; }
  .sh-page--orders > section.sh-card > div:not(.sh-list):not(.sh-d3b-order-head),
  .sh-page--orders > section.sh-card > .sh-pager { padding-inline: 20px; }
  .sh-page--orders .sh-order { padding-inline: 20px; }
  .sh-page--orders .sh-order-prog { display: none; }
  .sh-page--orders .sh-facts { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
  .sh-page--orders .sh-order > .sh-order-actions { padding-right: 0; flex-wrap: nowrap; align-items: center; }
  .sh-page--orders .sh-order-actions > .sh-btn:first-child { flex: 1 1 auto; min-width: 0; }
  .sh-page--orders .sh-order-actions > .sh-btn:not(:first-child) { flex: 0 0 auto; }
  .sh-page--orders .sh-order > .sh-d2b-order-detail:not([open]) { position: static; width: 100%; height: auto; }
  .sh-page--orders .sh-order > .sh-d2b-order-detail:not([open]) > summary { justify-content: flex-start; }
  .sh-page--orders .sh-only-desktop { position: relative; }
  .sh-page--orders .sh-only-desktop::after { content: ""; position: absolute; top: 0; right: 0; width: 32px; height: 100%; pointer-events: none; background: linear-gradient(90deg, transparent, var(--sh-surface)); }
  .sh-page--account .sh-loyalty-grid .sh-tile { grid-template-columns: minmax(0, 1fr); grid-template-areas: "k" "t" "n"; row-gap: 2px; }
  .sh-page--account .sh-loyalty-grid .sh-tile-title { text-align: left; white-space: normal; overflow-wrap: anywhere; }
}

.sh-auth-benefit { display: flex; align-items: center; gap: 12px; width: 100%; padding: 18px; border: 1px solid rgba(255,255,255,.12); border-radius: var(--sh-r-card); background: rgba(255,255,255,.08); color: var(--sh-on-brand); }
.sh-auth-benefit > svg { flex: 0 0 24px; color: var(--sh-signup-kicker); }
.sh-auth-benefit strong { display: block; font-size: var(--sh-t-card); font-weight: 700; line-height: 1.4; }
.sh-auth-benefit span { display: block; margin-top: 4px; font-size: var(--sh-t-help); line-height: 1.5; color: var(--sh-signup-copy); }
.sh-auth-page:not(.sh-signup-page) .sh-auth-icon { display: none; }
.sh-auth-page:not(.sh-signup-page) .sh-step-card { margin-top: 24px; }

body.sh-auth-page #main-content.sh-main .sh-auth-card :is(.sh-auth-card-head + .sh-alert, .sh-auth-card-head + form > .sh-alert) { margin-top: 24px; }
.sh-auth-page .sh-auth-card > a.sh-btn--primary { min-height: 52px; border-radius: var(--sh-r-ctrl); }
.sh-auth-page .sh-auth-panel::before, .sh-auth-page .sh-auth-panel::after { display: none; }
@media (max-width: 767px) {
  .sh-strip { height: 40px; min-height: 40px; gap: 8px; }
  .sh-strip .sh-ticker-msg { flex: 1 1 0; }
  .sh-strip .sh-ticker-msg, .sh-strip .sh-ticker-roll, .sh-strip .sh-ticker-line,
  .sh-strip .sh-ticker-line > .sh-ticker-txt { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .sh-strip .sh-ticker-line > .sh-ticker-txt { display: block; -webkit-line-clamp: unset; line-clamp: unset; overflow-wrap: normal; }
  .sh-strip .sh-ticker-access-label { display: none; }
  .sh-strip .sh-ticker-tail { flex: 0 0 auto; gap: 0; white-space: nowrap; }
}
@media (max-width: 360px) { .sh-strip .sh-ticker-tail { display: none; } }
#sh-setpw-form .sh-input[readonly] { color: var(--sh-ink-2) !important; }
.sh-auth-page .sh-alert .sh-grow { text-wrap: balance; }

.sh-seo-hub .sh-segtabs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sh-seo-hub .sh-seo-panel { display: block; min-width: 0; }
.sh-seo-hub.sh-seo--tabs-ready .sh-seo-panel:not(.active) {
  height: 0;
  overflow: hidden;
  visibility: hidden;
  margin: 0;
  padding: 0;
}
.sh-seo-hub .sh-seo-panel > h2 {
  margin: var(--sh-sp-4, 16px) 0;
  color: var(--sh-ink);
  font-size: var(--sh-t-page);
  font-weight: 700;
  line-height: 1.35;
  word-break: keep-all;
  overflow-wrap: anywhere;
}
.sh-seo-hub .sh-seo-prose {
  color: var(--sh-ink-2);
  font-size: var(--sh-t-body);
  line-height: 1.6;
  word-break: keep-all;
  overflow-wrap: anywhere;
}
.sh-seo-hub .sh-seo-prose :is(h3, h4) {
  margin: 24px 0 12px;
  color: var(--sh-ink);
  font-size: var(--sh-t-card);
  font-weight: 600;
  line-height: 1.4;
}
.sh-seo-hub .sh-seo-prose p { margin: 0 0 16px; }
.sh-seo-hub .sh-seo-prose a { color: var(--sh-primary); text-decoration: underline; text-underline-offset: 3px; }
.sh-seo-hub .sh-seo-hub-links { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 24px; }
.sh-seo-hub .sh-seo-hub-links > a { color: var(--sh-primary); font-size: var(--sh-t-help); line-height: 1.5; text-decoration: underline; text-underline-offset: 3px; }
.sh-seo-hub [data-sh-cluster-href] { color: var(--sh-muted); }
.sh-seo-hub .sh-seo-hub-links > [data-sh-cluster-href] { font-size: var(--sh-t-help); line-height: 1.5; }

.sh-seo-hub .sh-seo-faq { margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--sh-line-soft); }
.sh-seo-hub .sh-seo-faq > h3 { margin: 0 0 12px; font-size: var(--sh-t-body); font-weight: 700; color: var(--sh-ink); }
.sh-seo-hub .sh-seo-faq > h4 { margin: 12px 0 4px; font-size: var(--sh-t-body); font-weight: 700; color: var(--sh-ink); }
.sh-seo-hub .sh-seo-faq > p { margin: 0 0 8px; font-size: var(--sh-t-body); line-height: 1.6; color: var(--sh-muted); }
.sh-seo-hub :is(a, summary, [role="tabpanel"], .sh-seo-tablewrap):focus-visible { outline: 2px solid var(--sh-primary); outline-offset: 4px; }
@container (max-width: 430px) {
  .sh-seo-hub .sh-segtabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.sh-seo-hub .sh-seo-table { min-width: 0; }
.sh-seo-hub .sh-seo-table :is(th, td) { white-space: normal; word-break: keep-all; overflow-wrap: anywhere; }
.sh-cms .sh-seo-table thead th { color: var(--sh-ink-2); }
.sh-seo-hub .sh-seo-hub-links { align-items: center; }
.sh-seo-hub .sh-seo-table :is(th, td):first-child { white-space: nowrap; }
.sh-cms .sh-seo-heading { text-wrap: balance; }

.sh-picker .sh-cats .sh-cat { gap: var(--sh-sp-2); }
.sh-picker .sh-cats .sh-cat .sh-cat-action-icon {
  display: inline-flex;
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
}
.sh-picker .sh-cats .sh-cat .sh-cat-action-icon > svg { display: block; width: 100%; height: 100%; }
.sh-picker .sh-cats { --sh-cat-logo-size: 26px; --sh-cat-logo-radius: 22%; }
.sh-picker .sh-cats .sh-cat .sh-cat-logo-holder {
  flex-basis: var(--sh-cat-logo-size);
  width: var(--sh-cat-logo-size);
  height: var(--sh-cat-logo-size);
  align-items: center;
  justify-content: center;
}
.sh-cat-logo { display: block; width: var(--sh-cat-logo-size); height: var(--sh-cat-logo-size); flex-shrink: 0; border-radius: var(--sh-cat-logo-radius); }

.sh-cat-logo:is([data-sh-brand-logo="naver-blog"], [data-sh-brand-logo="naver-influencer"], [data-sh-brand-logo="naver-kin"], [data-sh-brand-logo="naver-map"], [data-sh-brand-logo="telegram"], [data-sh-brand-logo="kakao-gift"], [data-sh-brand-logo="google-play"]) { box-shadow: 0 0 0 1px rgba(17,17,17,.14); }
.sh-picker .sh-cats .sh-cat .sh-cat-logo-holder > svg { width: 18px; height: 18px; }
.sh-picker .sh-cats .sh-cat .sh-cat-name { flex: 1 1 auto; min-width: 0; }

.sh-order-page {
  --sh-order-category-width: 240px;
  --sh-picker-category-max: 320px;
  --sh-picker-category-min: 124px;
  --sh-picker-font: 14px;
  --sh-picker-small: 12px;
  --sh-picker-tag: 11px;
  --sh-picker-category-font: 14px;
  --sh-picker-row: 48px;
  --sh-picker-category-row: 44px;
  --sh-picker-logo: 26px;
  --sh-picker-star: 16px;
  --sh-picker-gallery-width: 280px;
  --sh-picker-gap: 16px;
  --sh-picker-compact-gap: 6px;
  --sh-picker-search: 44px;
}
.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats {
  --sh-plat-cell: 100%; --sh-plat-tile: 52px;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  justify-content: stretch; max-width: none; width: 100%; row-gap: var(--sh-sp-4);
}
.sh-order-page .sh-main .sh-plats .sh-plat .sh-plat-icon { flex: 0 0 var(--sh-plat-tile); min-width: var(--sh-plat-tile); }
.sh-order-page .sh-main .sh-plats .sh-plat-label { width: 100%; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: var(--sh-picker-small); }
.sh-order-page [data-sh-filtered], .sh-order-page [data-sh-collapsed] { display: none !important; }
.sh-platform-filters { display: flex; width: fit-content; max-width: 100%; gap: var(--sh-sp-1); padding: var(--sh-sp-1); margin: 0 0 var(--sh-sp-4); border-radius: var(--sh-r-ctrl); background: var(--sh-surface-alt); }
.sh-platform-filters > button { border: 0; border-radius: var(--sh-r-xs); background: transparent; color: var(--sh-muted); padding: var(--sh-sp-2) var(--sh-sp-3); font: inherit; font-size: var(--sh-t-sm); font-weight: 700; white-space: nowrap; cursor: pointer; }
.sh-platform-filters > button[aria-selected="true"] { color: var(--sh-primary); background: var(--sh-surface); box-shadow: var(--sh-sh-card); }
.sh-platform-filters > button:focus-visible, .sh-picker-more:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
.sh-order-page .sh-step:has(.sh-crumb) { display: flex; flex-wrap: nowrap; }
.sh-order-page .sh-step:has(.sh-crumb) > .sh-step-title { flex-shrink: 0; }
.sh-order-page .sh-step > .sh-crumb { margin-left: auto; min-width: 0; flex: 1; justify-content: flex-end; overflow: hidden; font-size: var(--sh-t-sm); }
.sh-order-page .sh-step > .sh-crumb .sh-crumb-step { min-width: 0; }
.sh-order-page .sh-grid .sh-picker .sh-picker-head { display: flex; padding: 0; margin: var(--sh-sp-3) 0; }
.sh-order-page .sh-grid .sh-picker .sh-picker-head > .sh-grow { width: 100%; }
.sh-order-page .sh-grid .sh-picker .sh-picker-head .sh-input { min-height: var(--sh-picker-search); height: var(--sh-picker-search); }
.sh-order-page .sh-grid .sh-picker .sh-picker-body { display: grid; grid-template-columns: clamp(var(--sh-order-category-width), 36%, var(--sh-picker-category-max)) minmax(0, 1fr); gap: var(--sh-picker-gap); padding: 0; align-items: start; height: auto; max-height: none; }
.sh-picker-column { min-width: 0; }
.sh-picker-column:has(.sh-rows) { border-left: 1px solid var(--sh-line); padding-left: var(--sh-sp-3); }
.sh-order-page .sh-grid .sh-picker :is(.sh-cats, .sh-rows) { height: auto; max-height: none; min-height: 0; padding: 0; overflow: visible; min-width: 0; width: 100%; border: 0; mask-image: none; }
.sh-order-page .sh-grid .sh-picker .sh-cats { --sh-cat-logo-size: var(--sh-picker-logo); display: flex; flex-direction: column; gap: 2px; background: var(--sh-surface); }
.sh-order-page .sh-grid .sh-picker .sh-cats button.sh-cat.category-box:not(.sh-sr-only) { display: flex; align-items: center; gap: var(--sh-picker-compact-gap); width: 100%; min-height: var(--sh-picker-category-row); height: var(--sh-picker-category-row); padding: 0 var(--sh-sp-2); font-size: var(--sh-picker-category-font); font-weight: 600; border-radius: var(--sh-r-sm); }
.sh-order-page .sh-grid .sh-picker .sh-cats .sh-cat.active { font-weight: 700; }
.sh-order-page .sh-grid .sh-picker .sh-cat .sh-cat-name { flex: 1; min-width: 0; width: auto; font: inherit; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sh-order-page .sh-grid .sh-picker .sh-cat :is(.sh-cat-action-icon, .sh-cat-logo) { display: inline-flex; flex: 0 0 var(--sh-picker-logo); width: var(--sh-picker-logo); height: var(--sh-picker-logo); }
.sh-cat-count { margin-left: auto; font-size: var(--sh-picker-small); color: var(--sh-muted); font-variant-numeric: tabular-nums; }
.sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row { display: flex; flex-wrap: nowrap; align-items: center; gap: var(--sh-picker-compact-gap); min-height: var(--sh-picker-row); height: var(--sh-picker-row); max-width: none; padding: 0 var(--sh-sp-2); }
.sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row .sh-row-main { flex: 1 1 0%; order: 0; min-width: 0; display: flex; align-items: center; flex-wrap: nowrap; gap: var(--sh-sp-1); }
.sh-order-page .sh-grid .sh-picker .sh-rows .sh-row-name { flex: 1; min-width: 0; font-size: var(--sh-picker-font); font-weight: 600; line-height: 1.25; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sh-order-page .sh-grid .sh-picker .sh-rows .sh-row.active .sh-row-name { font-weight: 700; }
.sh-order-page .sh-grid .sh-picker .sh-rows .sh-row-price { flex: none; margin: 0; font-size: var(--sh-picker-font); font-weight: 700; text-align: right; white-space: nowrap; }
.sh-order-page .sh-grid .sh-picker .sh-rows .sh-favbtn { flex: none; width: var(--sh-sp-6); min-width: var(--sh-sp-6); height: var(--sh-sp-6); margin: 0; }
.sh-order-page .sh-grid .sh-picker .sh-favbtn svg { width: var(--sh-picker-star); height: var(--sh-picker-star); }
.sh-order-page .sh-grid .sh-picker .sh-rows :is(.sh-list-tag, .sh-badge, .sh-row-variant, .sh-row-unit) { font-size: var(--sh-picker-tag); }
.sh-order-page .sh-grid .sh-picker .sh-cat-group-head { position: relative; display: flex; align-items: center; gap: var(--sh-sp-1); padding: var(--sh-sp-2); }
.sh-order-page .sh-grid .sh-picker .sh-cat-group-title { font-size: var(--sh-picker-small); font-weight: 700; color: var(--sh-muted); }
.sh-order-page .sh-grid .sh-picker .sh-list-divider { padding: var(--sh-sp-2) var(--sh-sp-2) var(--sh-sp-1); font-size: var(--sh-picker-small); }
.sh-order-page .sh-grid .sh-picker .sh-list-divider::after { content: ''; height: 1px; flex: 1; background: var(--sh-line); }
.sh-picker-more { display: block; width: 100%; margin-top: var(--sh-sp-1); padding: var(--sh-sp-3) var(--sh-sp-1); border: 0; border-radius: var(--sh-r-sm); background: var(--sh-surface-alt); color: var(--sh-ink-2); font: inherit; font-size: var(--sh-t-sm); font-weight: 700; cursor: pointer; }
.sh-plats-progress { display: none; }
@media (min-width: 768px) {
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:has(> .sh-d4-guide-wide) { grid-template-columns: repeat(3, minmax(0, var(--sh-picker-gallery-width))); justify-content: start; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:has(> .sh-d4-guide-wide:only-child) { grid-template-columns: minmax(0, var(--sh-picker-gallery-width)); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:has(> .sh-d4-guide-wide:nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, var(--sh-picker-gallery-width))); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery > .sh-d4-guide-wide { grid-column: auto; width: 100%; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .sh-order-page .sh-grid .sh-picker .sh-rows .sh-row-name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; white-space: normal; }
  .sh-order-page .sh-grid .sh-picker .sh-rows :is(.sh-row-unit, .sh-list-tag, .sh-row-variant) { display: none; }
  .sh-order-page .sh-grid .sh-picker .sh-rows .sh-row .sh-favbtn { flex: 0 0 var(--sh-picker-star); min-width: var(--sh-picker-star); width: var(--sh-picker-star); }

  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:has(> .sh-d4-guide-wide) { grid-template-columns: repeat(2, minmax(0, var(--sh-picker-gallery-width))); }
}
@media (max-width: 767px) {
  .sh-order-page { --sh-picker-font: 13px; --sh-picker-category-font: 12.5px; --sh-picker-small: 11px; --sh-picker-row: 38px; --sh-picker-category-row: 38px; --sh-picker-logo: 20px; --sh-picker-gap: 6px; --sh-picker-search: 38px; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats {
    --sh-plat-cell: 56px; --sh-plat-tile: 44px;
    grid-auto-flow: column; grid-template-rows: repeat(3, auto); grid-template-columns: none; grid-auto-columns: var(--sh-plat-cell);
    column-gap: var(--sh-sp-2); row-gap: var(--sh-sp-2); overflow-x: auto; overflow-y: hidden; max-width: 100%; margin: 0; padding: var(--sh-sp-1);
    scroll-snap-type: x mandatory; scroll-padding: var(--sh-sp-1); scrollbar-width: none; overscroll-behavior-x: contain;
    mask-image: linear-gradient(to right, black calc(100% - var(--sh-sp-4)), transparent);
  }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats.sh-plats-at-end { mask-image: none; }
  .sh-order-page .sh-plats::-webkit-scrollbar { display: none; }
  .sh-order-page .sh-main .sh-plats .sh-plat { scroll-snap-align: start; }
  .sh-order-page .sh-plats-progress:not([hidden]) { display: block; width: var(--sh-sp-7); height: var(--sh-sp-1); margin: var(--sh-sp-2) auto 0; background: var(--sh-line); border-radius: var(--sh-r-pill); }
  .sh-plats-progress > span { display: block; height: 100%; background: var(--sh-primary); border-radius: inherit; }
  .sh-order-page .sh-step > .sh-crumb { display: none; }
  .sh-order-page .sh-grid .sh-picker .sh-picker-body { grid-template-columns: var(--sh-picker-category-min) minmax(0, 1fr); }
  .sh-order-page .sh-grid .sh-picker .sh-cats button.sh-cat.category-box:not(.sh-sr-only) { padding: var(--sh-sp-1) var(--sh-picker-compact-gap); }
  .sh-order-page .sh-grid .sh-picker .sh-cats .sh-cat .sh-cat-name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; white-space: normal; line-height: 1.25; overflow-wrap: break-word; }
  .sh-picker-column:has(.sh-rows) { padding-left: var(--sh-sp-1); }
  .sh-order-page .sh-grid .sh-picker .sh-rows .sh-row-name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; max-height: none; white-space: normal; }
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row { padding: var(--sh-sp-1); }
  .sh-order-page .sh-grid .sh-picker :is(.sh-cat-count, .sh-row-unit, .sh-row-variant, .sh-list-tag, .sh-row .sh-favbtn) { display: none; }
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row .sh-row-main { display: block; }
  .sh-order-page .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-favbtn { display: none; }
  .sh-platform-filters > button { padding: var(--sh-sp-2); }
}

@media (max-width: 767px) {
  .sh-order-page:has([data-sh-favorites-tile].active) .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-favbtn { display: inline-flex; flex: 0 0 var(--sh-sp-5); width: var(--sh-sp-5); min-width: var(--sh-sp-5); height: var(--sh-picker-row); margin: 0; align-self: center; }
}
@media (max-width: 1023px) {
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row:has(.sh-row-consult) .sh-row-main { display: flex; flex-direction: column; align-items: stretch; gap: 2px; }
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row:has(.sh-row-consult) .sh-row-name { flex: none; display: block; white-space: nowrap; }
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row .sh-row-consult { margin: 0; padding: 0; min-height: 0; height: auto; font-size: var(--sh-picker-tag); line-height: 1; }
  .sh-order-page .sh-grid .sh-picker .sh-rows > .sh-row:has(.sh-row-consult) .sh-row-price:empty { display: none; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .sh-order-page .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row { display: grid; grid-template-columns: minmax(0, 1fr) var(--sh-picker-star); grid-template-rows: auto auto; gap: 0 var(--sh-sp-1); padding: 0 var(--sh-sp-2); }
  .sh-order-page .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-main { display: contents; }
  .sh-order-page .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-name { display: block; grid-column: 1 / -1; grid-row: 1; width: 100%; white-space: nowrap; }
  .sh-order-page .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-consult { grid-column: 1; grid-row: 2; justify-self: start; }
  .sh-order-page .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-price { grid-column: 1; grid-row: 2; justify-self: end; }
  .sh-order-page .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-favbtn { grid-column: 2; grid-row: 2; height: var(--sh-picker-star); }
}

.sh-seo-body > .sh-h2 + .sh-acc,
.sh-seo > .sh-h2 + .sh-seo-body:has(> .sh-acc) { margin-top: var(--sh-sp-3); }
.sh-seo-faq > :is(h2, h3) { margin-bottom: var(--sh-sp-3); }
.sh-seo-faq > :is(h2, h3) + :is(h4, .sh-acc, details) { margin-top: 0; }
.sh-order-page .sh-grid .sh-picker .sh-cat-logo-holder > svg { width: var(--sh-picker-logo); height: var(--sh-picker-logo); }

.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row { display: grid; grid-template-columns: minmax(0, 1fr) max-content var(--sh-sp-6); grid-template-rows: none; min-height: var(--sh-picker-row); height: auto; padding: var(--sh-sp-1) var(--sh-sp-2); gap: var(--sh-sp-1) var(--sh-picker-compact-gap); align-items: center; }
.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-main { display: contents; }
.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; grid-column: 1; grid-row: 1; width: auto; max-height: none; white-space: normal; line-height: 1.25; overflow: hidden; }
.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-tags { display: flex; grid-column: 1 / -1; grid-row: 2; gap: var(--sh-sp-1); align-items: center; min-width: 0; overflow: hidden; white-space: nowrap; }
.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-tags > :is(.sh-row-variant, .sh-list-tag, .sh-row-consult, .sh-row-down) { display: inline-flex; flex: none; margin: 0; min-height: 0; height: auto; padding: 2px var(--sh-picker-compact-gap); border-radius: var(--sh-r-pill); font-size: var(--sh-picker-tag); line-height: 1.2; }
.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-price { grid-column: 2; grid-row: 1; justify-self: end; line-height: 1.25; }
.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-favbtn { grid-column: 3; grid-row: 1; align-self: center; }
@media (max-width: 767px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row { grid-template-columns: minmax(0, 1fr) max-content; padding-inline: var(--sh-sp-1); }
  .sh-order-page:has([data-sh-favorites-tile].active) .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row { grid-template-columns: minmax(0, 1fr) max-content var(--sh-sp-5); }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row { grid-template-columns: minmax(0, 1fr) var(--sh-picker-star); }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-name { grid-column: 1 / -1; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-price { grid-column: 1; grid-row: 3; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-favbtn { grid-column: 2; grid-row: 3; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row:not(:has(.sh-row-tags)) :is(.sh-row-price, .sh-favbtn) { grid-row: 2; }
}
.sh-order-page .sh-grid .sh-picker .sh-cat-group-head::after { content: ''; flex: 1; height: 1px; background: var(--sh-line); }
@media (max-width: 767px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-name { grid-column: 1 / -1; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-price { grid-column: 1 / -1; grid-row: 3; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row:not(:has(.sh-row-tags)) .sh-row-price { grid-row: 2; }
  .sh-order-page:has([data-sh-favorites-tile].active) .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-price { grid-column: 1 / 3; }
  .sh-order-page:has([data-sh-favorites-tile].active) .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-favbtn { grid-row: 3; }
  .sh-order-page:has([data-sh-favorites-tile].active) .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row:not(:has(.sh-row-tags)) .sh-favbtn { grid-row: 2; }
}
@media (max-width: 767px) {
  .sh-order-page .sh-main .sh-grid :is(#order-form, .sh-order-card) { padding-inline: var(--sh-sp-2); }
}
@media (min-width: 768px) and (max-width: 899px) {
  .sh-order-page .sh-main, .sh-order-page .sh-orderbar-inner { padding-inline: var(--sh-sp-2); }
}
@media (max-width: 1023px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-tags > :is(.sh-row-variant, .sh-list-tag, .sh-row-consult, .sh-row-down) { padding-inline: calc(var(--sh-picker-compact-gap) / 2); }
}

.sh-order-page .sh-order-card :has(> .sh-plats) { container: sh-order-card / inline-size; }
.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats {
  --sh-picker-grid-limit: 0; --sh-plat-cell: 56px; --sh-plat-tile: 44px;
  grid-auto-flow: column; grid-template-columns: none; grid-template-rows: repeat(3, auto); grid-auto-columns: var(--sh-plat-cell);
  gap: var(--sh-sp-2); width: 100%; max-width: none; padding: var(--sh-sp-1); margin: 0;
  overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scroll-padding: var(--sh-sp-1); scrollbar-width: none;
  mask-image: linear-gradient(to right, black calc(100% - var(--sh-sp-4)), transparent);
}
.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats.sh-plats-at-end { mask-image: none; }
.sh-order-page .sh-main .sh-plats .sh-plat:not([data-sh-plat-skeleton]) { display: flex; flex-direction: column; align-items: center; scroll-snap-align: start; }
.sh-order-page .sh-main .sh-plats .sh-plat-label { font-size: var(--sh-picker-tag); text-align: center; }
.sh-order-page .sh-plats-progress:not([hidden]) { display: block; width: var(--sh-sp-7); height: var(--sh-sp-1); margin: var(--sh-sp-2) auto 0; background: var(--sh-line); border-radius: var(--sh-r-pill); }
.sh-plats-progress > span { display: block; height: 100%; background: var(--sh-primary); border-radius: inherit; }
@media (min-width: 768px) {
@container sh-order-card (min-width: 524px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats {
    --sh-picker-grid-limit: 7; --sh-plat-cell: 100%; --sh-plat-tile: 52px;
    grid-auto-flow: row; grid-template-rows: none; grid-auto-columns: auto;
    grid-template-columns: repeat(var(--sh-picker-columns, var(--sh-picker-grid-limit)), minmax(0, 1fr));
    column-gap: var(--sh-sp-2); row-gap: var(--sh-sp-4); padding: 0; overflow: visible; scroll-snap-type: none; mask-image: none;
  }
  .sh-order-page .sh-main .sh-plats .sh-plat-label { font-size: var(--sh-picker-small); }
}
@container sh-order-card (min-width: 676px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats { --sh-picker-grid-limit: 9; --sh-plat-tile: 56px; }
}
@container sh-order-card (min-width: 980px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats { --sh-picker-grid-limit: 13; --sh-plat-tile: 56px; }
}
}
.sh-picker-column:has(.sh-rows) { container: sh-products / inline-size; }
@media (min-width: 768px) {
@container sh-products (min-width: 560px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-main { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sh-sp-1) var(--sh-sp-2); min-width: 0; grid-column: 1; grid-row: 1; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-name { flex: 0 1 auto; max-width: 100%; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-tags { flex: 0 1 auto; max-width: 100%; }
}
}

.sh-order-page .sh-grid .sh-picker .sh-picker-column:has(.sh-rows) { --sh-products-inset: var(--sh-sp-3); padding-left: 0; border-left: 0; }
.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-column > .sh-rows { padding-left: var(--sh-products-inset); border-left: 1px solid var(--sh-line); }
.sh-order-page .sh-grid .sh-picker .sh-picker-column:has(.sh-rows) > .sh-picker-more { width: calc(100% - var(--sh-products-inset) - 1px); margin-left: calc(var(--sh-products-inset) + 1px); }
@media (max-width: 767px) { .sh-order-page .sh-grid .sh-picker .sh-picker-column:has(.sh-rows) { --sh-products-inset: var(--sh-sp-1); } }

@media (max-width: 768px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row { display: flex; flex-wrap: wrap; align-content: center; min-height: var(--sh-sp-6); gap: var(--sh-sp-1); padding: var(--sh-sp-1); }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-main { display: contents; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-name { display: block; flex: 0 1 auto; width: auto; max-width: 100%; order: 0; overflow: visible; white-space: normal; -webkit-line-clamp: unset; text-overflow: clip; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-price { flex: 0 0 auto; order: 1; margin-left: auto; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-row-tags { flex: 1 0 100%; order: 3; flex-wrap: wrap; overflow: visible; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row .sh-favbtn { order: 2; }
  .sh-order-page .sh-grid .sh-picker .sh-cat-group-head { min-height: var(--sh-sp-5); padding-block: 0; margin-bottom: var(--sh-sp-1); }
  .sh-order-page .sh-grid .sh-picker .sh-cat-group-head .sh-list-help > summary { margin-block: calc((var(--sh-sp-5) - 44px) / 2); }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row:has(.sh-row-tags) { display: grid; grid-template-columns: minmax(0, 1fr) max-content; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row:has(.sh-row-tags) .sh-row-name { grid-column: 1; grid-row: 1; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row:has(.sh-row-tags) .sh-row-price { grid-column: 2; grid-row: 1; align-self: start; }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row:has(.sh-row-tags) .sh-row-tags { grid-column: 1 / -1; grid-row: 2; }
  .sh-order-page:has([data-sh-favorites-tile].active) .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row:has(.sh-row-tags) { grid-template-columns: minmax(0, 1fr) max-content var(--sh-sp-5); }
  .sh-order-page:has([data-sh-favorites-tile].active) .sh-main .sh-grid .sh-order-card .sh-picker .sh-rows > .sh-row:has(.sh-row-tags) .sh-favbtn { grid-column: 3; grid-row: 1; }
  .sh-order-page .sh-grid .sh-picker .sh-cat-group-tabs { margin-top: 0; padding-top: 0; }
}
.sh-drawer-wallet-lack { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sh-sp-2); padding-top: var(--sh-sp-3); }
.sh-drawer-wallet-lack p { margin: 0; color: var(--sh-danger); font-weight: 600; }

.sh-drawer-entry .sh-drawer-agree > span { text-wrap: balance; }

:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] {
  --sh-desc-section-space: 34px;
  --sh-desc-body-size: 15px;
  --sh-desc-body-line: 24px;
  --sh-desc-heading: 17px;
  --sh-desc-number-size: 20px;
  --sh-desc-stat-size: 17px;
}
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-section { margin-top: var(--sh-desc-section-space); gap: 0; padding: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-section-header { align-items: baseline; flex-wrap: wrap; gap: 2px 8px; padding-bottom: 10px; border-bottom: 1px solid var(--sh-ink); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-doc-h { flex: none; font-size: var(--sh-desc-heading); font-weight: 700; letter-spacing: -.3px; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-section-note { margin-left: 0; font-size: var(--sh-t-caption); color: var(--sh-muted-2); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-section-header + :is(.sh-d4-group, .sh-d4-gallery, .sh-d4-compare-frame, .sh-d4-faq-list) { margin-top: 14px; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-lead { margin-top: 10px; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-lead .sh-lead, .sh-d4-lead .sh-lead-sub, .sh-d4-tx) { font-size: var(--sh-desc-body-size); line-height: var(--sh-desc-body-line); font-weight: 400; color: var(--sh-ink-2); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin-top: 18px; border: 1px solid var(--sh-line-soft); border-radius: var(--sh-r-ctrl); background: var(--sh-surface); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat { display: block; padding: 14px 16px; border-left: 1px solid var(--sh-line-soft); background: var(--sh-surface); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat:first-child { border-left: 0; background: var(--sh-tint-soft); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat dt { font-size: var(--sh-t-caption); font-weight: 600; color: var(--sh-muted); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat dd { margin-top: 4px; font-size: var(--sh-desc-stat-size); font-weight: 700; letter-spacing: -.3px; white-space: nowrap; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat dd wbr { display: none; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat:first-child dd { color: var(--sh-primary); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat-unit { font-size: var(--sh-t-caption); font-weight: 600; color: var(--sh-muted-2); margin-left: 2px; }
.sh-desc .sh-d4-facts--qty { border: 0; padding: 0; background: transparent; }
.sh-desc .sh-d4-number-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 14px; }
.sh-desc .sh-d4-facts--qty .sh-d4-number-tile { display: block; min-width: 0; min-height: 0; padding: 12px 14px; border: 0; border-radius: var(--sh-r-ctrl); background: var(--sh-surface-mute); }
.sh-desc .sh-d4-facts--qty .sh-d4-number-tile .sh-d4-fact-k { display: block; margin: 0; font-size: var(--sh-t-caption); line-height: 17px; font-weight: 600; color: var(--sh-muted); }
:is(#sh-desc-host, #sh-desc-full, .sh-desc) .sh-d4-facts--qty .sh-d4-number-tile .sh-d4-fact-v { display: block; text-align: left; margin-top: 6px; font-size: var(--sh-desc-number-size, 20px); font-weight: 700; line-height: 1.3; letter-spacing: -.4px; color: var(--sh-ink); white-space: normal; }
.sh-desc .sh-d4-value-unit { font-size: var(--sh-t-help); font-weight: 700; color: var(--sh-muted); margin-left: 1px; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-checks, .sh-d4-audience) { display: block; list-style: none; padding: 0; margin: 12px 0 0; background: transparent; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-audience { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-checks > :is(.sh-d4-row, .sh-d4-fact), .sh-d4-audience-card) { display: flex; align-items: flex-start; gap: 10px; min-height: 0; padding: 9px 0; border: 0; border-bottom: 1px solid var(--sh-line-hair); border-radius: 0; background: transparent; box-shadow: none; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-checks, .sh-d4-audience) > :last-child { border-bottom: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-checks, .sh-d4-audience) .sh-d4-check { width: 16px; height: 16px; margin-top: 4px; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-checks, .sh-d4-audience) .sh-d4-check--warning { background: var(--sh-surface-alt); color: var(--sh-muted-2); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-checks, .sh-d4-audience) .sh-d4-mk { width: 16px; padding: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-checks, .sh-d4-audience) :is(.sh-d4-fact-k, .sh-d4-tx) { flex: 1; margin: 0; font-size: var(--sh-desc-body-size); line-height: var(--sh-desc-body-line); font-weight: 400; color: var(--sh-ink-2); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-checks .sh-d4-fact-v { flex: none; font-size: var(--sh-t-body); line-height: 24px; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-timeline { position: relative; display: block; list-style: none; margin: 16px 0 0; padding: 0; background: transparent; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-timeline-stack { margin-top: 16px; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-timeline-stack > .sh-d4-detail-timeline { margin-top: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-timeline-detail { margin: 0 0 8px 38px; min-width: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-timeline::before { content: ''; position: absolute; left: 11px; top: 12px; bottom: 12px; width: 2px; background: var(--sh-soft-bg-hover); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-timeline > li { position: relative; display: flex; flex-direction: row; align-items: flex-start; gap: 14px; margin: 0; padding: 7px 0; min-height: 0; border: 0; border-radius: 0; background: transparent; font-size: var(--sh-desc-body-size); line-height: var(--sh-desc-body-line); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-keep-phrase { white-space: nowrap; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-timeline .sh-d4-timeline-number { position: relative; width: 24px; height: 24px; margin: 0; color: var(--sh-surface); background: var(--sh-primary); box-shadow: 0 0 0 4px var(--sh-surface); font-size: var(--sh-t-caption); font-weight: 700; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-timeline--ring .sh-d4-timeline-number { background: var(--sh-surface); color: var(--sh-primary); box-shadow: 0 0 0 4px var(--sh-surface), inset 0 0 0 2px var(--sh-primary); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-time-chip { display: inline; padding: 1px 7px; margin: 0 1px; border: 0; border-radius: var(--sh-radius-chip); background: var(--sh-tint); color: var(--sh-primary); font-size: inherit; font-weight: 700; white-space: nowrap; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare-frame { border-radius: var(--sh-r-ctrl); border-color: var(--sh-line-soft); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare :is(th, td) { padding: 11px 14px; font-size: var(--sh-t-body); color: var(--sh-muted); border-color: var(--sh-line-hair); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare th:first-child { width: 96px; font-size: var(--sh-t-caption); color: var(--sh-muted-2); font-weight: 600; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare thead th { background: var(--sh-surface-mute); font-size: var(--sh-t-help); color: var(--sh-ink); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare .sh-d4-compare-current { background: var(--sh-tint-soft); color: var(--sh-primary); font-weight: 700; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare-pick { display: inline-block; padding: 1px 7px; margin-left: 6px; border-radius: var(--sh-r-pill); background: var(--sh-primary); color: var(--sh-surface); font-size: var(--sh-t-caption); font-weight: 700; vertical-align: 1px; white-space: nowrap; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare-hint { margin-top: 6px; font-size: var(--sh-t-caption); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-caution { padding: 18px 20px; border: 0; border-radius: var(--sh-r-ctrl); background: var(--sh-decision-bg); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-caution .sh-d4-section-header { border: 0; padding: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-caution .sh-doc-h { font-size: var(--sh-t-body); font-weight: 700; color: var(--sh-decision-ink); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-caution-icon { display: inline-flex; flex: none; width: 18px; height: 18px; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-caution-icon svg { width: 18px; height: 18px; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-caution .sh-note { font-size: var(--sh-t-body); line-height: 22px; font-weight: 400; color: var(--sh-desc-answer); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-caution-lines { display: block; list-style: none; margin: 10px 0 0; padding: 0; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-caution-lines li { position: relative; padding: 4px 0 4px 14px; font-size: var(--sh-t-body); line-height: 22px; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-caution-lines li::before { content: ''; position: absolute; left: 0; top: 14px; width: 4px; height: 4px; border-radius: var(--sh-r-pill); background: var(--sh-decision-ink); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-caution-more > summary { color: var(--sh-decision-ink); font-size: var(--sh-t-help); }
@media (min-width: 768px) and (max-width: 1023px) {
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat:nth-child(n+3) { border-top: 1px solid var(--sh-line-soft); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat:nth-child(3) { border-left: 0; }
}
@media (max-width: 767px) {
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] { --sh-desc-section-space: 28px; --sh-desc-heading: 16px; --sh-desc-body-size: 14px; --sh-desc-body-line: 22px; --sh-desc-number-size: 18px; --sh-desc-stat-size: 16px; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat { padding: 12px 14px; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat:nth-child(n+3) { border-top: 1px solid var(--sh-line-soft); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat:nth-child(3) { border-left: 0; }
  .sh-desc .sh-d4-number-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare :is(th, td) { padding: 10px 12px; font-size: var(--sh-t-help); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare th:first-child { width: 72px; font-size: var(--sh-t-caption); }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-caution { padding: 16px; }
}

.sh-page--notice .sh-notice-head {
  align-items: center;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--sh-ink);
}
.sh-page--notice .sh-notice-head .sh-h2 {
  margin: 0;
  font-size: var(--sh-t-card);
  font-weight: 700;
  letter-spacing: -0.3px;
  line-height: 1.35;
}
.sh-page--notice #noticeList.sh-acc { gap: 0; }
.sh-page--notice #noticeList .sh-acc-item {
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid var(--sh-line-hair);
  background: var(--sh-surface);
  box-shadow: none;
}
.sh-page--notice #noticeList .sh-acc-item:last-child { border-bottom: 0; }
.sh-page--notice #noticeList .sh-acc-item.open,
.sh-page--notice #noticeList .sh-acc-item.open .sh-acc-q { background: var(--sh-surface); color: var(--sh-ink); }
.sh-page--notice #noticeList .sh-acc-item button.sh-notice-q {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  column-gap: 8px;
  width: 100%;
  min-height: 52px;
  height: 52px;
  padding: 0 16px;
  border: 0;
  background: transparent;
  color: var(--sh-ink);
  font-size: var(--sh-t-body);
  font-weight: 600;
  line-height: 1.4;
  text-align: left;
  cursor: pointer;
}
.sh-page--notice #noticeList .sh-acc-item button.sh-notice-q:has(.sh-notice-pin) {
  grid-template-columns: 12px auto minmax(0, 1fr) auto auto;
}
.sh-page--notice .sh-notice-pin { width: 12px; height: 12px; color: var(--sh-ink-2); }
.sh-page--notice .sh-notice-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  justify-self: start;
  min-height: 22px;
  padding: 0 6px;
  border-radius: var(--sh-radius-chip);
  font-size: var(--sh-t-caption);
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}
.sh-page--notice .sh-notice-badge--notice { background: var(--sh-tint); color: var(--sh-primary); }

.sh-page--notice .sh-notice-badge--check { background: var(--sh-decision-bg); color: var(--sh-warn-text); }
.sh-page--notice .sh-notice-badge--update,
.sh-page--notice .sh-notice-badge--event,
.sh-page--notice .sh-notice-badge--info { background: var(--sh-surface-mute); color: var(--sh-ink-2); }
.sh-page--notice .sh-notice-titlewrap {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.sh-page--notice .sh-notice-title {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: var(--sh-t-body);
  font-weight: 600;
  color: var(--sh-ink);
}
.sh-page--notice .sh-notice-new { flex: 0 0 auto; }
.sh-page--notice .sh-notice-date {
  justify-self: end;
  color: var(--sh-muted-2);
  font-size: var(--sh-t-caption);
  font-weight: 400;
  line-height: 1.4;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.sh-page--notice #noticeList .sh-acc-item.open .sh-acc-a { padding: 0 16px 14px; }
.sh-page--notice .sh-notice-body {
  font-size: var(--sh-t-body);
  line-height: 24px;
  font-weight: 400;
  color: var(--sh-ink-2);
}
.sh-page--notice .sh-notice-body p,
.sh-page--notice .sh-notice-body ul,
.sh-page--notice .sh-notice-body ol { margin: 0 0 12px; }
.sh-page--notice .sh-notice-body :is(p, ul, ol):last-child { margin-bottom: 0; }
.sh-page--notice .sh-notice-body li + li { margin-top: 4px; }
.sh-page--notice .sh-notice-body a {
  color: var(--sh-primary);
  text-decoration-line: underline;
  text-underline-offset: 2px;
}
.sh-page--notice .sh-notice-pagination {
  display: flex;
  justify-content: center;
  gap: 8px;
  padding: 20px 16px 4px;
}
.sh-page--notice .sh-notice-pagination[hidden] { display: none; }
.sh-page--notice .sh-notice-pagination button {
  min-width: 36px;
  min-height: 36px;
  padding: 0 8px;
  border: 1px solid var(--sh-line);
  border-radius: 8px;
  background: var(--sh-surface);
  color: var(--sh-ink);
  font: inherit;
  cursor: pointer;
}
.sh-page--notice .sh-notice-pagination button[aria-current="page"] {
  border-color: var(--sh-primary);
  background: var(--sh-tint);
  color: var(--sh-primary);
  font-weight: 700;
}
.sh-page--notice .sh-notice-faqline { margin: 14px 0 0; font-size: var(--sh-t-body); line-height: 22px; }
.sh-page--notice .sh-notice-faqline a {
  color: var(--sh-primary);
  text-decoration-line: underline;
  text-underline-offset: 2px;
}
@media (max-width: 767px) {
  .sh-page--notice .sh-notice-head .sh-h2 { font-size: var(--sh-t-card); }
  .sh-page--notice #noticeList .sh-acc-item button.sh-notice-q,
  .sh-page--notice #noticeList .sh-acc-item button.sh-notice-q:has(.sh-notice-pin) {
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-areas: "badge date mark" "title title mark";
    height: auto;
    min-height: 64px;
    padding: 8px 12px;
    row-gap: 4px;
  }
  .sh-page--notice #noticeList .sh-acc-item button.sh-notice-q:has(.sh-notice-pin) {
    grid-template-columns: 12px auto minmax(0, 1fr) auto;
    grid-template-areas: "pin badge date mark" "pin title title mark";
  }
  .sh-page--notice #noticeList .sh-notice-pin { grid-area: pin; align-self: center; }
  .sh-page--notice #noticeList .sh-notice-badge { grid-area: badge; }
  .sh-page--notice #noticeList .sh-notice-titlewrap { grid-area: title; }
  .sh-page--notice #noticeList .sh-notice-date { grid-area: date; }
  .sh-page--notice #noticeList .sh-notice-q .sh-acc-mark { grid-area: mark; align-self: center; }
}

.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker :is(.sh-cats, .sh-cat-group-tabs) > .sh-cat:is(.active, [aria-selected="true"]) {
  background: var(--sh-tint-soft);
  border-left: 0;
  box-shadow: none;
  color: var(--sh-primary);
  font-weight: 700;
}
@media (max-width: 767px) {
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats {
    margin-block: calc(var(--sh-sp-1) * -1);
    padding: var(--sh-sp-2);
    scroll-padding: var(--sh-sp-2);
  }
  .sh-order-page .sh-main .sh-plats .sh-plat-label { letter-spacing: -.8px; }
  .sh-tabbar-inner:has(.sh-tab-item[data-sh-key="guide"]) { grid-template-columns: repeat(4, 1fr); }
}

.sh-d4-bundle { background: var(--sh-surface); min-width: 0; }
.sh-d4-bundle--mute { background: var(--sh-surface-mute); }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-bundle--mute [data-sh-detail-section="promo"] .sh-alert {
  border: 0;
  border-left: 3px solid var(--sh-primary);
  border-radius: 0;
  background: transparent;
  padding: 0 0 0 12px;
}

:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-bundle-kicker { margin: 0 0 4px; color: var(--sh-primary); font-size: var(--sh-t-caption); font-weight: 700; line-height: 1.4; }
.sh-d4-bundle > .sh-d4-detail-section { margin-top: 22px; }
.sh-d4-bundle > .sh-d4-detail-section:first-of-type { margin-top: 0; }

.sh-order-defs .sh-subscription-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 16px; }
.sh-order-defs .sh-subscription-facts .sh-def { display: block; min-width: 0; }
.sh-order-defs .sh-subscription-facts .sh-def > span { display: block; font-size: var(--sh-t-caption); line-height: 1.4; }
.sh-order-defs .sh-subscription-facts .sh-def > b { display: block; margin-top: 2px; font-size: var(--sh-t-body); line-height: 1.4; }
@media (min-width: 768px) {
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] { display: flex; flex-direction: column; gap: 24px; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] > .sh-d4-bundle { border-radius: var(--sh-r-card); padding: 24px; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)),
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)):has(> :nth-child(2):last-child),
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)):has(> :only-child) {
    grid-template-columns: repeat(4, minmax(0, 132px)); justify-content: start; justify-items: start; gap: 12px;
  }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) > :only-child { width: 132px; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-image-trigger { width: 132px; max-width: 100%; padding: 0; border: 0; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-d4-guide-image {
    width: 100%; max-width: 132px; height: auto; aspect-ratio: 3 / 4; object-fit: cover;
  }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-pair { grid-template-columns: repeat(2, minmax(0, 200px)); justify-content: start; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-image { width: 100%; max-width: 200px; max-height: 200px; }
}
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-image-trigger {
  display: grid; justify-items: start;
}
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-d4-guide-image { grid-area: 1 / 1; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-d4-image-zoom {
  grid-area: 1 / 1; position: relative; align-self: end; justify-self: end; top: auto; right: auto; margin: 0 6px 6px 0;
}
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-d4-gallery-caption {
  grid-area: 2 / 1; font-size: var(--sh-t-caption); line-height: 1.35;
}
.sh-drawer-guide .sh-image-trigger { width: 132px; max-width: 100%; }
.sh-drawer-guide img.sh-d4-guide-image, #sh-linkguide img { width: 132px; height: 176px; max-width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }

@media (max-width: 767px) {
  html:has(body:not(:has(.sh-page--orders))) { overflow-x: clip; }
  body:not(:has(.sh-page--orders)) { background: var(--sh-canvas); }
  body:not(:has(.sh-page--orders)) .sh-app,
  body:not(:has(.sh-page--orders)) .sh-main { background: var(--sh-canvas); }

  body:is(.sh-order-page, .sh-auth-page, :has(.sh-page)):not(:has(.sh-page--orders)) .sh-main { padding-left: 0; padding-right: 0; }
  body:not(:has(.sh-page--orders)) .sh-page { gap: 8px; max-width: none; }
  body:not(:has(.sh-page--orders)) .sh-page > .sh-page-head {
    padding: 22px 20px 0; background: var(--sh-surface); margin-bottom: -8px;
  }
  body:not(:has(.sh-page--orders)) :is(.sh-page > .sh-card, .sh-faq-body > .sh-card, .sh-faq-grid > .sh-card) {
    width: 100%; min-width: 0; border-radius: 0; border-inline: 0; box-shadow: none; padding: 22px 20px;
  }
  body:not(:has(.sh-page--orders)) .sh-faq-grid { gap: 8px; }
  body:not(:has(.sh-page--orders)) .sh-card .sh-card { border-radius: var(--sh-r-ctrl); background: var(--sh-surface-mute); }
  body:not(:has(.sh-page--orders)) .sh-main :is(.sh-page--account, .sh-page--topup, .sh-page--tickets) .sh-card { border-radius: 0; }
  body:not(:has(.sh-page--orders)) .sh-page--account :is(.sh-d2b-benefits-host, .sh-d2b-coupons-host, .sh-d2b-rewards-host) > .sh-card,
  body:not(:has(.sh-page--orders)) .sh-page--account .sh-account-panel > .sh-card { border-inline: 0; box-shadow: none; }
  .sh-page--account :is(.sh-d2b-benefits-host, .sh-d2b-coupons-host, .sh-d2b-rewards-host):empty::before { border-radius: 0; }

  .sh-order-page .sh-main .sh-grid,
  .sh-order-page .sh-rail { gap: 8px; }
  .sh-order-page .sh-main .sh-grid #order-form.sh-order-card {
    display: flex; flex-direction: column; gap: 0; width: 100%;
    padding: 0; margin: 0; border: 0; border-radius: 0; background: var(--sh-canvas); box-shadow: none;
  }
  .sh-order-page :is(#order-form, .sh-order-card) > .sh-order-divider { display: none; margin-left: 0; margin-right: 0; }
  .sh-order-page #order-form > .sh-card-head,
  .sh-order-page #order-form > .sh-mobile-jumps,
  .sh-order-page #order-form > .sh-alert:not([hidden]),
  .sh-order-page #order-form > #sh-related-notice:not([hidden]),
  .sh-order-page #order-form > div:has(.sh-plats),
  .sh-order-page #order-form > div:has(.sh-picker),
  .sh-order-page #order-form > details,
  .sh-order-page #order-form > #sh-precheck-host:not([hidden]),
  .sh-order-page #order-form > #fields,
  .sh-order-page #order-form > #sh-caution-inline:not([hidden]),
  .sh-order-page #order-form > div:has(.sh-total) {
    background: var(--sh-surface); padding-left: 20px; padding-right: 20px; border-radius: 0;
  }
  .sh-order-page #order-form > .sh-card-head { padding-top: 22px; padding-bottom: 6px; }
  .sh-order-page #order-form > .sh-mobile-jumps { padding-top: 0; padding-bottom: 8px; }
  .sh-order-page #order-form > div:has(.sh-plats) { padding-top: 8px; padding-bottom: 22px; }
  .sh-order-page #order-form > div:has(.sh-picker) { margin-top: 8px; padding-top: 22px; padding-bottom: 22px; }
  .sh-order-page #order-form > .sh-cms-note--inline,
  .sh-biz--mobile { margin-left: 0; margin-right: 0; }
  .sh-order-page #order-form > details,
  .sh-order-page #order-form > #sh-precheck-host:not([hidden]),
  .sh-order-page #order-form > #fields,
  .sh-order-page #order-form > #sh-caution-inline:not([hidden]) { margin-top: 8px; padding-top: 22px; padding-bottom: 22px; }
  .sh-order-page #order-form > details ~ #fields,
  .sh-order-page #order-form > #sh-precheck-host:not([hidden]) ~ #fields,
  .sh-order-page #order-form > #fields ~ #sh-caution-inline:not([hidden]) { margin-top: 0; padding-top: 8px; }
  .sh-order-page #order-form > #sh-input-guide:not(:has(:not([hidden]))) { display: none; }
  .sh-order-page #order-form > div:has(.sh-total) { margin-top: 8px; padding-top: 22px; padding-bottom: 22px; }
  .sh-order-page #order-form > #sh-desc-sec { margin-top: 8px; padding: 0; background: var(--sh-canvas); }
  .sh-order-page #sh-desc-sec > .sh-step { background: var(--sh-surface); padding: 22px 20px 12px; }
  .sh-order-page #sh-desc-host[data-sh-detail-page] { margin-top: 8px; }
  .sh-order-page #sh-eventband { max-width: 100%; overflow: hidden; }
  .sh-order-page .sh-row-group .sh-tooltip { pointer-events: none; }
  .sh-page--account .sh-account-tabs { margin-left: 0; margin-right: 0; max-width: 100%; }
  .sh-page--account .sh-tier-details { max-width: 100%; overflow-x: auto; }
  .sh-order-page #sh-desc-sec > .sh-box,
  .sh-order-page #sh-desc-sec .sh-desc-body { padding: 0; border: 0; background: transparent; border-radius: 0; box-shadow: none; }
  .sh-order-page .sh-brief,
  .sh-order-page #sh-linkguide,
  .sh-order-page .sh-linknote { background: var(--sh-surface-mute); border-radius: var(--sh-r-ctrl); }
  .sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats {
    margin-left: 0; margin-right: 0; max-width: 100%; overflow-x: auto; overflow-y: hidden;
  }
  .sh-order-page .sh-rail > .sh-card { border-radius: 0; border-inline: 0; box-shadow: none; padding: 22px 20px; }

  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] { display: flex; flex-direction: column; gap: 8px; background: transparent; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] > .sh-d4-bundle { padding: 22px 20px; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)),
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)):has(> :nth-child(2):last-child),
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)):has(> :only-child) {
    grid-template-columns: repeat(3, minmax(0, 1fr)); justify-content: stretch; justify-items: stretch; gap: 8px;
  }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) > :only-child { width: auto; max-width: none; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-image-trigger { width: 100%; padding: 0; }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-d4-guide-image {
    width: 100%; max-width: 120px; height: auto; aspect-ratio: 3 / 4;
  }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-pair { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sh-drawer-guide .sh-image-trigger,
  .sh-drawer-guide img.sh-d4-guide-image,
  #sh-linkguide img { width: 110px; height: 147px; }
}

:is(#sh-desc-host.sh-desc-read, #sh-desc-full)[data-sh-detail-page] { gap: 24px; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] > .sh-d4-bundle { margin-top: 0; }

:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-image-trigger { align-content: start; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-d4-guide-image { align-self: start; }

.sh-drawer-guide .sh-image-trigger:has(> img[data-sh-image-shape="wide"]:not([data-sh-image-fixed])) { width: 100%; height: auto; }
.sh-drawer-guide img.sh-d4-guide-image[data-sh-image-shape="wide"]:not([data-sh-image-fixed]),
#sh-linkguide img[data-sh-image-shape="wide"]:not([data-sh-image-fixed]) { width: 100%; height: auto; max-width: 100%; aspect-ratio: 16 / 9; object-fit: contain; }
.sh-drawer-guide img[data-sh-image-shape="wide"][data-sh-image-fixed],
#sh-linkguide img[data-sh-image-shape="wide"][data-sh-image-fixed],
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery .sh-d4-guide-image[data-sh-image-shape="wide"][data-sh-image-fixed] { object-fit: contain; }

@media (max-width: 767px) {
  :is(#sh-desc-host.sh-desc-read, #sh-desc-full)[data-sh-detail-page] { gap: 8px; }

  .sh-order-page #sh-desc-sec > .sh-step { margin-bottom: 0; }
  .sh-order-page #sh-desc-sec > .sh-tabs { margin: 0; padding-inline: 20px; background: var(--sh-surface); }
  .sh-order-page #sh-desc-sec > .sh-box > .sh-tabpanel:not([data-sh-key="desc"]) { padding: 22px 20px; background: var(--sh-surface); }
  .sh-order-page #sh-desc-sec .sh-desc-body:has(> .sh-mobile-desc-more:not([hidden])) { padding-bottom: 20px; background: var(--sh-surface); }
  .sh-order-page #sh-desc-sec .sh-desc-body:has(> .sh-mobile-desc-more:not([hidden])) > #sh-desc-host[data-sh-detail-page] { margin-top: 0; padding-block: 8px; background: var(--sh-canvas); }
  .sh-order-page #sh-desc-sec .sh-desc-body > .sh-mobile-desc-more { width: calc(100% - 40px); margin: 20px 20px 0; }

  .sh-order-page #order-form > .sh-drawer-entry {
    margin-top: 8px; padding: 22px 20px; border: 0; border-radius: 0; background: var(--sh-surface); box-shadow: none;
  }
  .sh-order-page #order-form > details ~ .sh-drawer-entry,
  .sh-order-page #order-form > #sh-precheck-host:not([hidden]) ~ .sh-drawer-entry { margin-top: 0; padding-top: 8px; }

  .sh-order-page .sh-order-information > :is(.sh-card, .sh-notice-row, .sh-promo) { border-radius: 0; border-inline: 0; box-shadow: none; }
  .sh-order-page .sh-order-information > .sh-card { padding: 22px 20px; }
  .sh-order-page .sh-order-information > :is(.sh-notice-row, .sh-promo) { padding-inline: 20px; }

  body:not(:has(.sh-page--orders)) .sh-page > :is(p, .sh-note):not(.sh-sr-only) { padding-inline: 20px; }
  body:not(:has(.sh-page--orders)) .sh-page > .sh-alert { border-radius: 0; border-inline: 0; padding-inline: 20px; }
  body:not(:has(.sh-page--orders)) #sh-eventband { border-radius: 0; padding-left: 20px; }
  body:not(:has(.sh-page--orders)) .sh-page--account .sh-account-tabs,
  body:not(:has(.sh-page--orders)) .sh-page .sh-legal-toc { padding-inline: 20px; scroll-padding-inline: 20px; }
  body:not(:has(.sh-page--orders)) .sh-legal-layout > .sh-card { border-radius: 0; border-inline: 0; box-shadow: none; }
}

body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step):not(.sh-money-head) { gap: 8px; margin-bottom: 14px; }
body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step) > .sh-step-no {
  display: inline-flex; align-items: center; justify-content: center; flex: none;
  width: 22px; height: 22px; border-radius: 999px; background: var(--sh-ink); color: var(--sh-surface); font-size: var(--sh-t-caption);
}
body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step) > .sh-step-title { font-size: var(--sh-t-card); font-weight: 700; letter-spacing: -.3px; line-height: 24px; }
body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step) > .sh-step-title.sh-step-title--fit { font-size: var(--sh-t-card); }
body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step) > .sh-step-title.sh-step-title--fit.sh-step-title--tight { font-size: var(--sh-t-body); letter-spacing: -.6px; }
body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step) > .sh-step-title.sh-step-title--wrap { overflow: visible; white-space: normal; text-overflow: clip; }
body.sh-order-page .sh-order-card .sh-step > #sh-linkguide-btn.sh-step-side {
  position: relative; flex: none; margin-left: auto; width: auto; height: auto; min-height: 0; min-block-size: 0; padding: 0;
  border: 0; border-radius: 0; background: transparent; box-shadow: none; color: var(--sh-primary); font-size: var(--sh-t-help); font-weight: 700; line-height: 20px; white-space: nowrap;
}
body.sh-order-page .sh-order-card .sh-step > #sh-linkguide-btn.sh-step-side::after { inset: auto -6px; top: 50%; height: 44px; transform: translateY(-50%); }
body.sh-order-page .sh-grid .sh-picker .sh-picker-head { margin: 0 0 16px; }
body.sh-order-page .sh-grid .sh-picker .sh-picker-head :is(#sh-svc-search, #sh-guest-search) {
  height: 48px; min-height: 48px; padding: 0 16px; border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); font-size: var(--sh-t-body);
}

body.sh-order-page .sh-grid #sh-brief.sh-brief {
  position: relative; margin-top: 18px; padding: 18px; border: 0; border-radius: var(--sh-r-ctrl); background: var(--sh-surface-mute); box-shadow: none;
}
body.sh-order-page .sh-grid #sh-brief > .sh-brief-head { display: block; padding-right: 32px; }
body.sh-order-page .sh-grid #sh-brief .sh-brief-main { display: block; min-width: 0; }
body.sh-order-page .sh-grid #sh-brief #sh-svc-title {
  display: block; overflow: visible; white-space: normal; color: var(--sh-ink); font-size: var(--sh-t-card); font-weight: 700; letter-spacing: -.3px; line-height: 1.35;
}
body.sh-order-page .sh-grid #sh-brief .sh-rate { display: flex; flex-direction: row; align-items: center; justify-content: flex-start; margin: 6px 0 0; }
body.sh-order-page .sh-grid #sh-brief .sh-rate-btn {
  position: relative; display: inline-flex; align-items: center; gap: 4px; width: auto; height: auto; min-height: 0; padding: 0;
  border: 0; border-radius: 0; background: transparent; box-shadow: none; color: var(--sh-ink-2); font-size: var(--sh-t-help); font-weight: 700; line-height: 20px;
}
body.sh-order-page .sh-grid #sh-brief .sh-rate-btn::after { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 44px; transform: translateY(-50%); }
body.sh-order-page .sh-grid #sh-brief .sh-rate-btn .sh-rate-star { font-size: var(--sh-t-help); }
body.sh-order-page .sh-grid #sh-brief .sh-rate-btn .sh-rate-sep { display: none; }
body.sh-order-page .sh-grid #sh-brief .sh-rate-btn > span:last-child { margin-left: 2px; color: var(--sh-primary); }
body.sh-order-page .sh-grid #sh-brief #sh-svc-summary { margin: 10px 0 0; color: var(--sh-muted); font-size: var(--sh-t-body); line-height: 22px; }
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts:not(:has(.sh-tag, #sh-svc-range:not([hidden]))) { display: none; }
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts > #sh-svc-tags { display: contents; }
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts :is(.sh-tag, #sh-svc-range) {
  order: 2; display: inline-block; min-height: 0; height: auto; margin: 0; padding: 6px 9px;
  border: 1px solid var(--sh-line-soft); border-radius: var(--sh-r-sm); background: var(--sh-surface); color: var(--sh-muted); font-size: var(--sh-t-caption); font-weight: 700; line-height: 16px; white-space: nowrap;
}
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts #sh-svc-tags > .sh-tag:first-child { order: 0; }
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts > #sh-svc-range { order: 1; }
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts > #sh-svc-range[hidden] { display: none; }
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts > #sh-svc-range b { color: inherit; font-weight: inherit; }
body.sh-order-page .sh-grid #sh-brief > [data-sh-brief-favorite]:not([hidden]) {
  position: absolute; top: 7px; right: 6px; display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; min-width: 44px; min-height: 44px; margin: 0; padding: 0; border: 0; border-radius: 999px;
  background: transparent; box-shadow: none; color: var(--sh-faint); font-size: 0; line-height: 1;
}
body.sh-order-page .sh-grid #sh-brief > [data-sh-brief-favorite]::before { content: "☆"; font-size: var(--sh-t-page); line-height: 1; }
body.sh-order-page .sh-grid #sh-brief > [data-sh-brief-favorite]::after { display: none; }
body.sh-order-page .sh-grid #sh-brief > [data-sh-brief-favorite][aria-pressed="true"] { color: var(--sh-star); }
body.sh-order-page .sh-grid #sh-brief > [data-sh-brief-favorite][aria-pressed="true"]::before { content: "★"; }
body.sh-order-page .sh-grid #sh-brief > [data-sh-brief-favorite]:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: -4px; }
body.sh-order-page .sh-grid #sh-brief > .sh-brief-foot {
  display: block; margin: 14px 0 0; padding: 14px 0 0; border-top: 1px solid var(--sh-line-soft);
}
body.sh-order-page .sh-grid #sh-brief > .sh-brief-foot > .sh-desc-skip {
  display: flex; align-items: center; justify-content: center; width: 100%; height: auto; min-height: 44px; margin: -12px 0;
  padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: var(--sh-ink-2); font-size: var(--sh-t-body); font-weight: 700;
}
body.sh-order-page .sh-grid #sh-brief > .sh-brief-foot > .sh-desc-skip::after { display: none; }

body.sh-order-page .sh-order-card .sh-repeat {
  margin-top: 22px; padding: 18px 0 0; border: 0; border-top: 1px solid var(--sh-line-hair); border-radius: 0; background: transparent; box-shadow: none;
}
body.sh-order-page .sh-order-card .sh-repeat > .sh-repeat-head {
  display: flex; align-items: center; gap: 12px; width: 100%; min-height: 44px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; text-align: left;
}
body.sh-order-page .sh-order-card .sh-repeat > .sh-repeat-head > div { flex: 1; min-width: 0; }
body.sh-order-page .sh-order-card .sh-repeat .sh-repeat-title { color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; line-height: 22px; }
body.sh-order-page .sh-order-card .sh-repeat .sh-repeat-sub { margin-top: 3px; color: var(--sh-muted-2); font-size: var(--sh-t-help); line-height: 20px; }
body.sh-order-page .sh-order-card .sh-repeat .sh-switch { flex: none; }
body.sh-order-page .sh-order-card #dripfeed-options { border: 0; border-radius: 0; background: transparent; box-shadow: none; padding: 14px 0 0; }

body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-total-cap { margin: 0; color: var(--sh-ink-2); font-size: var(--sh-t-body); font-weight: 700; }
body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-total-value { margin: 0; color: var(--sh-ink); font-size: var(--sh-t-page); font-weight: 700; letter-spacing: -.4px; line-height: 32px; }
body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-money-head > .sh-step-title {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) :is(button[type="submit"], #order_button .btn-signin).sh-btn {
  height: 54px; min-height: 54px; border-radius: var(--sh-r-ctrl); font-size: var(--sh-t-card); font-weight: 700;
}

body.sh-order-page[data-sh-inline-cta] :is(.sh-mobar, .sh-orderbar) { visibility: hidden; opacity: 0; pointer-events: none; }
body.sh-order-page[data-sh-inline-cta] .sh-mobar { transform: translateY(calc(100% + 24px)) !important; }

@media (max-width: 767px) {

  body.sh-order-page .sh-rail--main > [data-sh-banner-side]:not([hidden]) {
    display: block !important; width: 100%; margin: 0; padding: var(--sh-banner-block-start) var(--sh-banner-inline) var(--sh-banner-block-end); border-radius: 0; background: var(--sh-surface); aspect-ratio: auto;
  }

  body.sh-order-page .sh-rail--main > #sh-eventband:not([hidden]):has(~ [data-sh-banner-side]:not([hidden])) { margin-bottom: 0; }
  body.sh-order-page .sh-rail--main > #sh-eventband:not([hidden]) ~ [data-sh-banner-side]:not([hidden]) { margin-top: -8px; }
  body.sh-order-page .sh-rail--main > [data-sh-banner-side] .sh-banner-stage { aspect-ratio: var(--sh-banner-aspect); border-radius: var(--sh-r-card); }
  body.sh-order-page .sh-rail--main > [data-sh-banner-side] img { width: 100%; height: 100%; object-fit: contain; }

  body.sh-order-page .sh-main .sh-grid section.sh-order-card:not(#order-form) { padding-left: 20px; padding-right: 20px; }

  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-platform-filters { display: flex; width: 100%; gap: 2px; margin: 0 0 18px; padding: 4px; border-radius: var(--sh-r-ctrl); background: var(--sh-canvas); }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-platform-filters > button { flex: 1; min-height: 44px; padding: 0; border-radius: var(--sh-r-sm); font-size: var(--sh-t-body); font-weight: 700; color: var(--sh-muted); }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-platform-filters > button[aria-selected="true"] { color: var(--sh-primary); background: var(--sh-surface); }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats {
    --sh-plat-paged: 1; --sh-plat-tile: 56px; --sh-plat-radius: 16px; --sh-plat-cell: 100%;
    display: grid; grid-auto-flow: row; grid-template-rows: none;
    grid-template-columns: repeat(var(--sh-plat-cols, 4), calc((100% - 24px) / 4)); grid-auto-columns: calc((100% - 24px) / 4);
    column-gap: 8px; row-gap: 18px; width: calc(100% + 12px); max-width: none; margin: -6px; padding: 6px;
    overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scroll-padding: 6px; overscroll-behavior-x: contain; scrollbar-width: none; mask-image: none;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat { width: 100%; min-width: 0; margin: 0; padding: 0; gap: 8px; scroll-snap-align: none; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(12n+1 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(12n+2 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(12n+3 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(12n+4 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton]))) { grid-row: 1; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(12n+5 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(12n+6 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(12n+7 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(12n+8 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton]))) { grid-row: 2; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(12n+9 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(12n+10 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(12n+11 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(12n+12 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton]))) { grid-row: 3; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :nth-child(12n+1 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])) { scroll-snap-align: start; scroll-snap-stop: always; }

  html.sh-content-pending:not(.sh-tiles-ready) body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats { --sh-plat-cols: 12; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(12n+1 of .sh-plat-skeleton), :nth-child(12n+2 of .sh-plat-skeleton), :nth-child(12n+3 of .sh-plat-skeleton), :nth-child(12n+4 of .sh-plat-skeleton)) { grid-row: 1; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(12n+5 of .sh-plat-skeleton), :nth-child(12n+6 of .sh-plat-skeleton), :nth-child(12n+7 of .sh-plat-skeleton), :nth-child(12n+8 of .sh-plat-skeleton)) { grid-row: 2; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(12n+9 of .sh-plat-skeleton), :nth-child(12n+10 of .sh-plat-skeleton), :nth-child(12n+11 of .sh-plat-skeleton), :nth-child(12n+12 of .sh-plat-skeleton)) { grid-row: 3; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats .sh-plat .sh-plat-icon { flex: 0 0 56px; width: 56px; min-width: 56px; height: 56px; border-radius: var(--sh-r-card); }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats .sh-plat-label {
    width: 100%; min-height: 18px; color: var(--sh-ink-2); font-size: var(--sh-t-help); font-weight: 600; line-height: 18px; letter-spacing: -.3px; text-align: center;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats .sh-plat.active .sh-plat-label { color: var(--sh-primary); font-weight: 700; }
  body.sh-order-page .sh-order-card .sh-plats-progress.sh-plats-dots:not([hidden]) {
    display: flex; justify-content: center; gap: 4px; width: auto; height: auto; margin: var(--sh-plats-dots-top) 0 0; background: transparent; border-radius: 0;
  }
  body.sh-order-page .sh-order-card .sh-plats-dots > i { display: block; width: 14px; height: 4px; border-radius: var(--sh-r-sm); background: var(--sh-line); }
  body.sh-order-page .sh-order-card .sh-plats-dots > i.on { width: 22px; background: var(--sh-primary); }

  body.sh-order-page { --sh-picker-logo: 20px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body { grid-template-columns: 128px minmax(0, 1fr); gap: 12px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container { gap: 4px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) {
    gap: 8px; min-height: 48px; height: auto; padding: 8px 10px; border: 0; border-radius: var(--sh-r-ctrl); box-shadow: none;
    color: var(--sh-ink-2); font-size: var(--sh-t-body); font-weight: 600; line-height: 1.3;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:is(.active, [aria-selected="true"]) {
    background: var(--sh-tint); color: var(--sh-primary); font-weight: 700; border-left: 0; box-shadow: none;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat .sh-cat-name { line-height: 1.3; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-column:has(.sh-rows) { --sh-products-inset: 0px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-column > #sh-rows { display: flex; flex-direction: column; gap: 4px; padding-left: 0; border-left: 0; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-list-divider { margin: 0; padding: 6px 4px 4px; color: var(--sh-muted-2); font-size: var(--sh-t-caption); font-weight: 700; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:not(.sh-skel--row) {
    display: grid; grid-template-columns: minmax(0, 1fr) max-content; grid-template-rows: auto auto; align-items: center; gap: 6px;
    min-height: 48px; height: auto; padding: 12px; border: 0; border-radius: var(--sh-r-ctrl); background: transparent; box-shadow: none;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row::before { content: none; display: none; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:is(.active, .is-selected, [aria-selected="true"]) { background: var(--sh-tint); border-left: 0; box-shadow: none; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-main { display: contents; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-name {
    grid-column: 1 / -1; grid-row: 1; display: block; -webkit-line-clamp: unset; overflow: visible; white-space: normal;
    width: auto; max-height: none; color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; line-height: 1.35; letter-spacing: -.3px; text-overflow: clip;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:is(.active, [aria-selected="true"]) .sh-row-name { color: var(--sh-primary); font-weight: 700; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-tags { grid-column: 1; grid-row: 2; display: flex; flex-wrap: wrap; align-items: center; gap: 4px; min-width: 0; margin: 0; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-tags > * {
    min-height: 0; height: auto; margin: 0; padding: 2px 6px; border: 0; border-radius: var(--sh-radius-chip); font-size: var(--sh-t-caption); font-weight: 700; line-height: 16px;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:is(.active, [aria-selected="true"]) .sh-row-tags > * { background: var(--sh-surface); }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-price {
    grid-column: 2; grid-row: 2; justify-self: end; margin: 0; color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; line-height: 20px; text-align: right; white-space: nowrap;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-price:empty { display: none; }
  body.sh-order-page:has([data-sh-favorites-tile].active) .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:not(.sh-skel--row) { grid-template-columns: minmax(0, 1fr) max-content 24px; }

  body.sh-order-page:has([data-sh-favorites-tile].active) .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-favbtn { grid-column: 3; grid-row: 2; height: 24px; }
  body.sh-order-page:has([data-sh-favorites-tile].active) .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-name { grid-column: 1 / -1; }

  body.sh-order-page .sh-main .sh-grid #order-form > div:has(.sh-picker):has(+ details.sh-cms-note--inline) { padding-bottom: 14px; }
  body.sh-order-page .sh-main .sh-grid #order-form > details.sh-cms-note--inline { margin-top: 0; padding: 0 20px 8px; }
  body.sh-order-page .sh-main .sh-grid #order-form > details.sh-cms-note--inline > summary { min-height: 44px; padding: 0; font-size: var(--sh-t-help); }
  body.sh-order-page .sh-main .sh-grid #order-form > details.sh-cms-note--inline ~ #sh-precheck-host:not([hidden]),
  body.sh-order-page .sh-main .sh-grid #order-form > details.sh-cms-note--inline ~ #fields { margin-top: 8px; padding-top: 22px; }
  body.sh-order-page .sh-main .sh-grid #order-form > #sh-precheck-host:not([hidden]) ~ #fields { margin-top: 0; padding-top: 8px; }

  body.sh-order-page .sh-order-card :is([data-part="step-link"], [data-part="step-qty"], #order_step4 > .sh-step, #order_step5 > .sh-step) > .sh-step-title {
    flex: 1 1 auto; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
  }
  body.sh-order-page .sh-order-card :is(#fields, #order_step4, #order_step5) input.sh-input:not([type="checkbox"]):not([type="radio"]) {
    height: 52px; min-height: 52px; padding: 0 16px; border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); font-size: var(--sh-t-body);
  }
  body.sh-order-page .sh-order-card #sh-linknote,
  body.sh-order-page .sh-order-card #order_quantity .help-block,
  body.sh-order-page .sh-order-card #sh-qty-range {
    margin: 8px 2px 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--sh-muted-2); font-size: var(--sh-t-help); line-height: 20px;
  }
  body.sh-order-page .sh-order-card #sh-linknote:empty { display: none; }
  body.sh-order-page .sh-order-card #fields > [data-part="step-qty"] { margin-top: 28px; }
  body.sh-order-page .sh-order-card #order_step5 { margin-top: 12px; }
}

@media (max-width: 1023px) {

  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) { display: flex; flex-direction: column; }
  body.sh-order-page #order_price > .sh-stack { display: contents; }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-total {
    order: -2; display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent;
  }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-money-head {
    order: -1; display: flex; justify-content: flex-end; margin: 8px 0 0; padding: 0; border: 0; background: transparent;
  }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-money-head > .sh-sub {
    display: flex; justify-content: space-between; flex: 1; color: var(--sh-muted-2); font-size: var(--sh-t-help); line-height: 20px;
  }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-money-head > .sh-sub > b { color: var(--sh-primary); }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) :is(button[type="submit"], #order_button) { margin-top: 18px; }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-trust:not(:has(:not([hidden]))) { display: none; }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) > p.sh-note.sh-center { margin-top: 10px; color: var(--sh-subtle); font-size: var(--sh-t-caption); }
}

@media (min-width: 1024px) {
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body {
    grid-template-columns: 240px minmax(0, 1fr); gap: 16px; padding: 12px; border: 1px solid var(--sh-line-soft); border-radius: var(--sh-r-card);
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container { gap: 4px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) {
    gap: 8px; min-height: 48px; height: 48px; padding: 0 10px; border: 0; border-radius: var(--sh-r-ctrl); box-shadow: none; color: var(--sh-ink-2); font-size: var(--sh-t-body); font-weight: 600;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:is(.active, [aria-selected="true"]) {
    background: var(--sh-tint); color: var(--sh-primary); font-weight: 700; border-left: 0; box-shadow: none;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-column:has(.sh-rows) { --sh-products-inset: 0px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-column > #sh-rows { display: flex; flex-direction: column; gap: 4px; padding-left: 0; border-left: 0; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-list-divider { margin: 0; padding: 6px 4px 4px; color: var(--sh-muted-2); font-size: var(--sh-t-caption); font-weight: 700; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:not(.sh-skel--row) {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(92px, max-content) 24px; grid-template-rows: none; align-items: center; column-gap: 12px;
    min-height: 48px; height: auto; padding: 14px; border: 0; border-radius: var(--sh-r-ctrl); background: transparent; box-shadow: none;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row::before { content: none; display: none; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:is(.active, .is-selected, [aria-selected="true"]) { background: var(--sh-tint); border-left: 0; box-shadow: none; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-main {
    grid-column: 1; grid-row: 1; display: flex; flex-wrap: nowrap; align-items: center; gap: 8px; min-width: 0;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-name {
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; flex: 1 1 auto; min-width: 0; max-width: none; overflow: hidden; white-space: normal;
    color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; line-height: 20px;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:is(.active, [aria-selected="true"]) .sh-row-name { color: var(--sh-primary); }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-tags { flex: none; display: flex; flex-wrap: nowrap; gap: 4px; max-width: none; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-tags > * {
    min-height: 0; height: auto; margin: 0; padding: 2px 6px; border: 0; border-radius: var(--sh-radius-chip); font-size: var(--sh-t-caption); font-weight: 700; line-height: 16px;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:is(.active, [aria-selected="true"]) .sh-row-tags > * { background: var(--sh-surface); }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-price {
    grid-column: 2; grid-row: 1; min-width: 92px; margin: 0; color: var(--sh-ink); font-size: var(--sh-t-body); font-weight: 700; text-align: right; white-space: nowrap;
  }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-favbtn { grid-column: 3; grid-row: 1; height: 20px; min-height: 0; }

  body.sh-order-page .sh-order-card #fields:has(> [data-part="step-link"]:not([hidden])):has(> [data-part="step-qty"]:not([hidden])) {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 24px; align-items: start;
  }
  body.sh-order-page .sh-order-card #fields:has(> [data-part="step-link"]:not([hidden])):has(> [data-part="step-qty"]:not([hidden])) > * { grid-column: 1 / -1; }
  body.sh-order-page .sh-order-card #fields:has(> [data-part="step-link"]:not([hidden])):has(> [data-part="step-qty"]:not([hidden])) > [data-part="step-link"] { grid-column: 1; grid-row: 1; margin-top: 0; }
  body.sh-order-page .sh-order-card #fields:has(> [data-part="step-link"]:not([hidden])):has(> [data-part="step-qty"]:not([hidden])) > #order_link { grid-column: 1; grid-row: 2; }
  body.sh-order-page .sh-order-card #fields:has(> [data-part="step-link"]:not([hidden])):has(> [data-part="step-qty"]:not([hidden])) > [data-part="link-tail"] { grid-column: 1; grid-row: 3; }
  body.sh-order-page .sh-order-card #fields:has(> [data-part="step-link"]:not([hidden])):has(> [data-part="step-qty"]:not([hidden])) > [data-part="step-qty"] { grid-column: 2; grid-row: 1; margin-top: 0; }
  body.sh-order-page .sh-order-card #fields:has(> [data-part="step-link"]:not([hidden])):has(> [data-part="step-qty"]:not([hidden])) > #order_quantity { grid-column: 2; grid-row: 2 / span 2; }
  body.sh-order-page .sh-order-card #fields:has(> [data-part="step-link"]:not([hidden])):has(> [data-part="step-qty"]:not([hidden])) > [data-part="qty-tail"] { grid-column: 2; grid-row: 4; }
  body.sh-order-page .sh-main .sh-grid section.sh-order-card:has(> #order_step4):has(> #order_step5) {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 24px;
  }
  body.sh-order-page .sh-main .sh-grid section.sh-order-card:has(> #order_step4):has(> #order_step5) > * { grid-column: 1 / -1; min-width: 0; }

  body.sh-order-page .sh-main .sh-grid section.sh-order-card:has(> #order_step4):has(> #order_step5) > :is(#order_step4, #order_step5) {
    display: grid; grid-template-rows: subgrid; grid-row: span 2; row-gap: 0; align-content: start;
  }
  body.sh-order-page .sh-main .sh-grid section.sh-order-card:has(> #order_step4):has(> #order_step5) > #order_step4 { grid-column: 1; }
  body.sh-order-page .sh-main .sh-grid section.sh-order-card:has(> #order_step4):has(> #order_step5) > #order_step5 { grid-column: 2; margin-top: 0; }
  body.sh-order-page .sh-order-card :is(#fields, #order_step4, #order_step5) input.sh-input:not([type="checkbox"]):not([type="radio"]) {
    height: 52px; min-height: 52px; padding: 0 16px; border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); font-size: var(--sh-t-body);
  }
  body.sh-order-page .sh-order-card #sh-linknote,
  body.sh-order-page .sh-order-card #order_quantity .help-block,
  body.sh-order-page .sh-order-card #sh-qty-range {
    margin: 8px 2px 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--sh-muted-2); font-size: var(--sh-t-help); line-height: 20px;
  }

  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) {
    display: grid; grid-template-columns: minmax(0, 1fr) 260px; column-gap: 20px; align-items: center;
    margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--sh-line-soft);
  }
  body.sh-order-page #order_price > .sh-stack { display: contents; }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) > * { grid-column: 1 / -1; }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-total {
    grid-column: 1; grid-row: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent;
  }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-money-head { grid-column: 1; grid-row: 2; display: flex; margin: 4px 0 0; padding: 0; }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-money-head > .sh-sub { color: var(--sh-muted-2); font-size: var(--sh-t-help); }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) :is(button[type="submit"], #order_button) { grid-column: 2; grid-row: 1 / span 2; align-self: center; margin: 0; }
  body.sh-order-page #order-form > div:has(> .sh-total) > button.sh-submit--bar-only { display: inline-flex; }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-trust:not(:has(:not([hidden]))) { display: none; }
}

@media (min-width: 1440px) and (max-width: 1919px) {
  body.sh-order-page { --sh-order-rail-width: 360px; }
  body.sh-order-page .sh-main > .sh-grid { grid-template-columns: minmax(0, 1fr) 360px; column-gap: 24px; }

  body.sh-order-page .sh-orderbar-inner { max-width: calc(min(100% - var(--sh-sp-5) * 2, var(--sh-order-maxw)) - var(--sh-sp-5) - 360px + var(--sh-sp-5) * 2); }
}

@media (min-width: 1440px) {
  body.sh-order-page .sh-main .sh-grid :is(#order-form.sh-order-card, section.sh-order-card) { padding: 32px; }
}

@media (max-width: 767px) {

  body.sh-order-page { --sh-picker-logo: 22px; --sh-p79-cat-col: clamp(128px, calc(100% - 202px), 148px); --sh-p79-col-gap: 8px; --sh-p79-body-inset: 0px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body { grid-template-columns: var(--sh-p79-cat-col) minmax(0, 1fr); gap: var(--sh-p79-col-gap); }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:not(.sh-skel--row) { padding-left: 10px; padding-right: 10px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) {
    min-height: 56px; padding: 8px 12px; font-size: var(--sh-t-body);
  }
}

@media (min-width: 1024px) {
  body.sh-order-page { --sh-p79-cat-col: 240px; --sh-p79-col-gap: 16px; --sh-p79-body-inset: 13px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) {
    min-height: 52px; height: 52px; font-size: var(--sh-t-body);
  }
}

body.sh-order-page .sh-picker .sh-order-subtabs {
  display: flex; align-items: stretch; gap: 0; width: auto; min-height: 40px; height: 40px; margin: 0 0 8px; padding: 0;
  border: 0; border-radius: var(--sh-r-ctrl); background: var(--sh-canvas); box-shadow: none; overflow: visible;
}
body.sh-order-page .sh-picker > .sh-order-subtabs {
  margin-inline-start: calc(var(--sh-p79-body-inset, 0px) + var(--sh-p79-cat-col, 0px) + var(--sh-p79-col-gap, 0px));
  margin-inline-end: var(--sh-p79-body-inset, 0px);
}
body.sh-order-page .sh-picker .sh-order-subtabs > button:not(.sh-sr-only) {
  position: relative; isolation: isolate; display: flex; align-items: center; justify-content: center; flex: 1 1 0; min-width: 0; min-block-size: 40px; min-height: 40px; height: 40px; margin: 0; padding: 0 8px;
  border: 0; border-radius: var(--sh-r-ctrl); background: transparent; box-shadow: none; color: var(--sh-muted);
  font-size: var(--sh-t-body); font-weight: 700; line-height: 20px; white-space: nowrap; overflow: visible;
}
body.sh-order-page .sh-picker .sh-order-subtabs > button:not(.sh-sr-only)::after {
  content: ""; position: absolute; inset: -2px 0; display: block; width: auto; height: 44px; border-radius: 0; background: transparent;
}
body.sh-order-page .sh-picker .sh-order-subtabs > button:not(.sh-sr-only)::before {
  content: ""; position: absolute; inset: 3px; z-index: -1; border-radius: var(--sh-r-sm); background: transparent; box-shadow: none;
}
body.sh-order-page .sh-picker .sh-order-subtabs > button:is(.active, [aria-selected="true"]):not(.sh-sr-only) { background: transparent; color: var(--sh-primary); }
body.sh-order-page .sh-picker .sh-order-subtabs > button:is(.active, [aria-selected="true"]):not(.sh-sr-only)::before { background: var(--sh-surface); box-shadow: var(--sh-sh-card); }
body.sh-order-page .sh-picker .sh-order-subtabs > button:disabled { color: var(--sh-muted-2); cursor: not-allowed; }
body.sh-order-page .sh-picker .sh-order-subtabs > button:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: -2px; }

:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) { align-items: stretch; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-image-trigger:has(> img.sh-d4-guide-image:not([data-sh-image-shape="wide"]:not([data-sh-image-fixed]))) {
  display: grid; grid-template-rows: auto auto; align-content: start; justify-items: stretch; row-gap: 8px;
  padding: 8px; border: 1px solid var(--sh-line); border-radius: var(--sh-r-ctrl); background: var(--sh-surface);
}
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-image-trigger > img.sh-d4-guide-image:not([data-sh-image-shape="wide"]:not([data-sh-image-fixed])) {
  grid-area: 1 / 1; align-self: start; width: 100%; max-width: none; height: auto; aspect-ratio: auto 2 / 3; object-fit: cover; border: 0; border-radius: var(--sh-r-sm);
}
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-image-trigger > img.sh-d4-guide-image[data-sh-image-shape="wide"][data-sh-image-fixed] { aspect-ratio: 2 / 3; object-fit: contain; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-image-trigger:has(> img.sh-d4-guide-image:not([data-sh-image-shape="wide"]:not([data-sh-image-fixed]))) > .sh-d4-gallery-number { top: 14px; left: 14px; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-image-trigger:has(> img.sh-d4-guide-image:not([data-sh-image-shape="wide"]:not([data-sh-image-fixed]))) > .sh-d4-gallery-caption {
  grid-area: 2 / 1; display: block; -webkit-line-clamp: unset; overflow: visible; margin: 0; padding: 0;
  font-size: var(--sh-t-caption); line-height: 1.35; white-space: normal; text-overflow: clip; overflow-wrap: anywhere;
}

@media (min-width: 768px) {
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)):has(img.sh-d4-guide-image:not([data-sh-image-shape="wide"]:not([data-sh-image-fixed]))),
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)):has(img.sh-d4-guide-image:not([data-sh-image-shape="wide"]:not([data-sh-image-fixed]))):has(> :nth-child(2):last-child),
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)):has(img.sh-d4-guide-image:not([data-sh-image-shape="wide"]:not([data-sh-image-fixed]))):has(> :only-child) {
    grid-template-columns: repeat(4, 150px);
  }
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) > .sh-image-trigger:only-child:has(> img.sh-d4-guide-image:not([data-sh-image-shape="wide"]:not([data-sh-image-fixed]))),
  :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) .sh-image-trigger:has(> img.sh-d4-guide-image:not([data-sh-image-shape="wide"]:not([data-sh-image-fixed]))) { width: 150px; max-width: 100%; }
}

body:not(.sh-order-page):not([data-page^="/child_panel"]) {
  --sh-t-h1: var(--sh-t-page);
  --sh-t-h2: var(--sh-t-card);
  --sh-t-display-1: var(--sh-t-page);
  --sh-t-display-2: var(--sh-t-page);
  --sh-t-display-3: var(--sh-t-page);
  --sh-t-display-4: var(--sh-t-page);
  --sh-t-display-landing: var(--sh-t-page);
  --sh-t-stat: var(--sh-t-page);
  --sh-t-amount-1: var(--sh-t-page);
  --sh-t-amount-2: var(--sh-t-page);
  --sh-t-amount-3: var(--sh-t-page);
}
@media (min-width: 768px) {
  body:not(.sh-order-page):not([data-page^="/child_panel"]) { --sh-t-page: 22px; }
}
@scope (body:not(.sh-order-page):not([data-page^="/child_panel"])) {
#sh-desc-sec .sh-step-title,
.sh-orderbar-total,
.sh-mobar-total,
.sh-toast-x,
.sh-d2b-order-stats-grid b,
.sh-desc-price .sh-desc-now,
.sh-tiles--benefit .sh-tile-num,
.sh-auth-page .sh-signup-stage > .sh-h3,
.sh-auth-benefit strong { font-size:var(--sh-t-card); }
.sh-desc-facts,
.sh-user-row,
.sh-modal-actions,
.sh-defs,
.sh-paylog,
.sh-progress-card,
.sh-ticker,
.sh-auth-card--auth1 .sh-benefit-card,
.sh-sidebar .sh-user-row, .sh-drawer .sh-user-row,
.sh-sidebar .sh-today-tile, .sh-drawer .sh-today-tile,
.sh-static-guide-list,
.sh-static-guide-step,
.sh-order-card .sh-step,
.sh-contact,
.sh-tiles--benefit,
.sh-auth-page .sh-auth-list li,
.sh-auth-page .sh-signup-nav,
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] :is(.sh-d4-checks > :is(.sh-d4-row, .sh-d4-fact), .sh-d4-audience-card) { gap:var(--sh-space-8); }
.sh-desc-fact > span,
.sh-desc-body .sh-desc-step > b,
.sh-desc-read .sh-desc-step > b,
.sh-desc-read .sh-desc-compose .sh-bullets li::before,
.sh-rating-overview small,
.sh-rail-rating-score small,
.sh-notice-strip-badge,
.sh-review-chip,
.sh-navg-label,
.sh-grid .sh-picker .sh-row-meta > :is(.sh-row-tag, .sh-row-variant, .sh-chip),
.sh-grid .sh-picker .sh-row-meta > .sh-row-rating,
.sh-d2b-order-detail-body span,
.sh-row-tag, .sh-row-variant, .sh-chip.sh-row-consult, .sh-row-consult, .sh-chip.sh-row-down, .sh-row-down,
.sh-order-card .sh-row-consult, .sh-order-card .sh-row-down,
.sh-sidebar .sh-user-tier .sh-tierchip, .sh-drawer .sh-user-tier .sh-tierchip,
.sh-sidebar .sh-today-hot, .sh-drawer .sh-today-hot,
.sh-sidebar .sh-navg-badge, .sh-drawer .sh-navg-badge,
.sh-rail-review-quote .sh-review-top .sh-avatar,
.sh-rail-review-quote .sh-review-date,
.sh-desc .sh-d4-num,
.sh-cat-group-badges .sh-badge,
.sh-grid #sh-order-coach .sh-kicker,
.sh-auth-page .sh-signup-step-dot,
.sh-auth-page .sh-signup-step-dot b,
.sh-auth-page .sh-signup-step-dot.is-complete b::after,
.sh-auth-page .sh-consent-required,
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare-pick { font-size:var(--sh-t-caption); }
.sh-desc-body .sh-desc :is(p, li, .sh-desc-step),
.sh-desc-read .sh-prose,
.sh-effect-body,
#sh-sec-effect .sh-effect-body,
.sh-desc .sh-d4-call-t,
.sh-desc .sh-d4-call--act .sh-d4-tx,
.sh-seo .sh-seo-card > .sh-seo-p,
.sh-seo-list > li,
.sh-rail--aside > .sh-seo .sh-seo-p { font-size:var(--sh-t-copy); }
.sh-desc-read .sh-lead,
.sh-desc-read .sh-desc-kv dt,
.sh-step-title span:not(.sh-nowrap),
.sh-cat,
.sh-row,
.sh-row-price,
.sh-money-head .sh-step-title span,
.sh-notice-row time,
.sh-receipt-value small,
.sh-cms-note-body li,
.sh-restrict-note,
.sh-tooltip,
.sh-row-unit,
.sh-row-sub,
.sh-tab,
.sh-plat-label,
.sh-cats button.sh-cat:not(.sh-sr-only),
.sh-row-sub, .sh-row-meta, .sh-row-rating,
.sh-total-cap,
.sh-orderbar-name,
.sh-mobar-name,
.sh-content-row time, .sh-post-meta, #history-search ~ * time,
.sh-grid #link-guide .sh-guide-card-tail,
.sh-ticker-line,
.sh-sidebar .sh-user-point, .sh-drawer .sh-user-point,
.sh-desc .sh-desc-price .sh-desc-was,
.sh-desc .sh-d4-fact-k,
.sh-desc .sh-d4-sec .sh-desc-kv dt,
.sh-benefit-matrix--cols tbody td:first-of-type,
.sh-cat-group-subtitle,
.sh-banner-sub,
.sh-reward-wallet-label,
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-lead :is(.sh-lead, .sh-lead-sub),
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-section-note,
.sh-page--notice .sh-notice-date { font-weight:400; }
.sh-desc-read .sh-desc-step { font-size:var(--sh-t-copy); gap:var(--sh-space-8); }
.sh-desc-read .sh-desc-kv dd,
.sh-h3,
.sh-seg-item,
.sh-ns-list,
.sh-ticker,
.sh-notice-strip-title,
.sh-stat-num small,
.sh-step-title,
.sh-plat-label,
.sh-guide-link,
.sh-orderbar-name,
.sh-strip,
.sh-mobar-name,
.sh-guide,
.sh-receipt-note,
.sh-payhero-note,
.sh-auth-shell:has(.sh-auth-main > .sh-grid) .sh-auth-list,
.service-name,
.sh-cms-note-body > p:first-of-type,
.sh-review-chip,
.sh-row,
.sh-catgrp-n,
.sh-btn--quiet, .sh-btn--ghost,
.sh-chip,
.sh-order-subtabs button.sh-order-subtab:not(.sh-sr-only),
button.sh-row:not(.sh-sr-only):not([hidden]),
.sh-row-name, .sh-row-main,
.sh-page--orders .sh-order-name,
.sh-toast,
.sh-faq-navitem,
.sh-faq-body .sh-acc-item button.sh-acc-q, #noticeList .sh-acc-item button.sh-acc-q,
.sh-post-title,
.sh-page:has(#history-search) .service-name,
.sh-legal-toc a,
.sh-grid .sh-picker .sh-row-name,
.sh-d2b-order-stats-toggle,
.sh-d2b-order-stats-grid b small,
.sh-catalog-filter,
[data-sh-catalog-browser] .sh-catgrp-rows .sh-row-name,
.sh-rail-notice .sh-notice-go,
.sh-eventband,
.sh-ticker-ago,
.sh-live-pill,
.sh-strip .sh-ticker-tail,
.sh-order-card .sh-cats > .sh-cat, .sh-order-card .sh-picker-body .sh-cats > .sh-cat[role="tab"],
.sh-order-card .sh-svc-tags .sh-chip, .sh-order-card #sh-svc-tags .sh-chip,
.sh-desc .sh-d4-fact-v,
.sh-desc .sh-d4-facts--qty .sh-d4-fact--full .sh-d4-fact-k,
.sh-desc .sh-d4-sec .sh-desc-kv dd,
.sh-benefit-matrix--cols tbody td,
.sh-desc .sh-desc-eg-label,
.sh-grid .sh-picker .sh-cats > .sh-cat, .sh-picker .sh-cats > .sh-cat,
.sh-grid .sh-picker .sh-cat-group-tabs > .sh-cat, .sh-picker .sh-cat-group-tabs > .sh-cat,
.sh-grid .sh-picker .sh-row-main > .sh-row-variant, .sh-order-card .sh-row-main > .sh-row-variant,
.sh-picker-head > .sh-crumb,
.sh-order-card .sh-row-main > .sh-row-variant, .sh-grid .sh-picker .sh-row-main > .sh-row-variant, .sh-picker .sh-row-main > .sh-row-variant,
.sh-seo-table tbody th,
.sh-banner-kicker,
.sh-drawer-label,
.sh-d4-stat dt,
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-kicker,
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery-caption,
.sh-drawer-required, .sh-drawer-optional,
.sh-drawer-confirm-values dd,
.sh-auth-page .sh-auth-list,
.sh-auth-page .sh-benefit-row,
.sh-auth-page .sh-consent-check,
.sh-auth-page .sh-consent-view,
.sh-signup-summary dt,
.sh-seo-hub .sh-seo-prose :is(h3, h4),
.sh-drawer-wallet-lack p,
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat dt,
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-stat-unit,
.sh-desc .sh-d4-facts--qty .sh-d4-number-tile .sh-d4-fact-k,
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-compare th:first-child,
.sh-page--notice #noticeList .sh-acc-item button.sh-notice-q,
.sh-page--notice .sh-notice-title { font-weight:700; }
.sh-review-rating { gap:var(--sh-space-16); }
.sh-rating-overview > b,
.sh-rail-rating-score > b,
.sh-mobar-total,
.sh-auth-card--signup .sh-code, .sh-auth-page #code,
.sh-page:has(.blog-contents) > .sh-page-head .sh-h1,
.sh-d2b-page .sh-h1,
.sh-d2b-page--topup .sh-d2b-money-output,
.sh-product-landing .sh-landing-problem h1,
body:not(.sh-auth-page) .sh-main :is(.sh-page, .sh-grid) .sh-h1,
.sh-sidebar .sh-user-balance, .sh-drawer .sh-user-balance,
.sh-auth-page .sh-auth-h,
.sh-seo-hub .sh-seo-panel > h2 { font-size:var(--sh-t-page); }
.sh-review-rating .sh-rating-dist, .sh-rail-rating-dist,
.sh-tabpanel[data-sh-key="review"] .sh-stars,
.sh-navg,
.sh-navg-group,
.sh-cta-signup,
.sh-hero-dots,
.sh-burger,
.sh-tab-item,
.sh-faq-nav,
.sh-benefit-section,
.sh-row-main,
.sh-row-rate,
.sh-badge,
.sh-cats,
.sh-grid .sh-picker .sh-row-meta,
.sh-brief-head .sh-rate,
.sh-landing-summary .sh-landing-service-list,
.sh-order-card .sh-cats,
.sh-sidebar .sh-today, .sh-drawer .sh-today,
.sh-rail-review-quote .sh-stars,
.sh-tierchip,
.sh-sidebar .sh-user-row > .sh-grow.sh-truncate, .sh-drawer .sh-user-row > .sh-grow.sh-truncate,
.sh-seo-links,
.sh-banner-nav .sh-banner-dots { gap:var(--sh-space-4); }
.sh-review-rating .sh-rating-name, .sh-rail-rating-dist .sh-rating-name,
.sh-review-rating .sh-rating-count, .sh-rail-rating-dist .sh-rating-count,
.sh-row-unit,
.sh-cat-summary { font-size:var(--sh-t-caption); font-weight:400; }
@media (max-width: 480px) {
.sh-review-rating,
.sh-rail-rating { gap:var(--sh-space-8); }
}
@media (max-width: 480px) {
.sh-review-rating .sh-rating-row, .sh-rail-rating-dist .sh-rating-row { gap:var(--sh-space-4); }
}
.sh-submit-progress,
.sh-order-actions,
.sh-desc-steps,
.sh-coupon,
.sh-rail-review-quote .sh-review-top { gap:var(--sh-space-6); }
@media (max-width: 767px) {
.sh-promo-side,
.sh-account-tabs,
.sh-auth-page .sh-benefit-card { gap:var(--sh-space-4); }
}
@media (max-width: 767px) {
.sh-step-title,
.sh-cats button.sh-cat:not(.sh-sr-only),
.sh-d2b-notification-table .sh-table th[scope="row"],
.sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only),
.sh-grid .sh-picker .sh-row:is(.active, .is-selected) .sh-row-name,
.sh-grid .sh-picker .sh-row-name,
.sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only), .sh-order-card .sh-picker .sh-cats > .sh-cat, .sh-picker .sh-cats > .sh-cat,
.sh-grid .sh-picker-body .sh-cats > .sh-cat[role="tab"]:is(.active, [aria-selected="true"]), .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only):is(.active, [aria-selected="true"]), .sh-order-card .sh-picker .sh-cats > .sh-cat:is(.active, [aria-selected="true"]), .sh-picker .sh-cats > .sh-cat:is(.active, [aria-selected="true"]),
.sh-order-card .sh-picker > .sh-btn.sh-btn--soft.sh-btn--sm, .sh-grid .sh-picker > .sh-btn.sh-btn--soft.sh-btn--sm, .sh-picker > .sh-btn.sh-btn--soft.sh-btn--sm, .sh-picker > .sh-btn--soft,
.sh-order-card .sh-cms-note--inline > summary,
.sh-picker .sh-cat-group-tabs > .sh-cat:is(.active, [aria-selected="true"]) { font-weight:700; }
}
@media (max-width: 767px) {
.sh-paygrid,
.sh-order-card .sh-step { gap:var(--sh-space-6); }
}
.sh-mechanism-flow .sh-mechanism-result > span { font-weight: 700; }
@media (max-width: 767px) {
.sh-row-sub, .sh-row-meta, .sh-row-rating,
.sh-grid .sh-picker .sh-row-meta,
.sh-order-card .sh-step-no,
.sh-order-card .sh-row-consult, .sh-order-card .sh-row-down,
.sh-has-orderbar .sh-mobar-name,
.sh-picker .sh-rows > .sh-row .sh-row-variant, .sh-picker .sh-rows > .sh-row .sh-badge,
em.sh-row-tag,
.sh-plats .sh-plat-label,
.sh-plats .sh-plat-label--break { font-size:var(--sh-t-caption); }
}
@media (max-width: 767px) {
@media (max-width: 767px) {
.sh-d2b-page--refunds .sh-table :is(th, td) { font-size:var(--sh-t-caption); }
}
}
.sh-rail-notice,
.sh-sidebar .sh-navg-item, .sh-drawer .sh-navg-item,
.sh-seo-link { font-weight:700; gap:var(--sh-space-8); }
@media (min-width: 768px) {
.sh-grid .sh-picker-body .sh-cats > .sh-cat[role="tab"], .sh-grid .sh-picker .sh-cats > .sh-cat,
.sh-grid .sh-picker-body .sh-cats > .sh-cat[role="tab"], .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only), .sh-picker .sh-cats > .sh-cat { font-weight:700; }
}
@media (max-width: 767px) {
.sh-grid .sh-picker .sh-row-meta, .sh-grid .sh-picker .sh-row-rating,
.sh-grid .sh-picker-body .sh-cats > .sh-cat[role="tab"], .sh-grid .sh-picker .sh-cats button.sh-cat:not(.sh-sr-only), .sh-order-card .sh-picker .sh-cats > .sh-cat, .sh-picker .sh-cats > .sh-cat,
.sh-tile-kicker,
.sh-order-card .sh-cms-note--inline > summary .sh-cms-note-more,
.sh-grid .sh-picker .sh-cat-group-tabs > .sh-cat, .sh-picker .sh-cat-group-tabs > .sh-cat { font-weight:400; }
}
@media (min-width: 1280px) {
.sh-auth-page .sh-auth-panel { gap:var(--sh-space-24); }
}
@media (min-width: 1280px) {
.sh-auth-card--auth1 .sh-auth-card-head .sh-h1 { font-size:var(--sh-t-page); }
}
@media (max-width: 767px) {
.sh-order-card .sh-card-head .sh-h1,
.sh-auth-page .sh-auth-card-head .sh-h1 { font-size:var(--sh-t-page); }
}
@media (max-width: 767px) {
.sh-order-card .sh-picker-body,
.sh-page--orders .sh-order,
.sh-auth-page .sh-consent-check { gap:var(--sh-space-8); }
}
.sh-review-prod { font-size:var(--sh-t-caption); font-weight:700; }
#sh-sec-effect .sh-effect,
[data-sh-related] .sh-row--rel, .sh-row--rel,
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-detail-timeline > li { gap:var(--sh-space-12); }
.sh-row--rel > .sh-grow { font-size:var(--sh-t-copy); font-weight:700; }
.sh-desc .sh-d4-lead > .sh-lead-sub,
.sh-desc .sh-d4-sec .sh-prose,
.sh-desc .sh-d4-tx,
.sh-seo-p,
.sh-seo .sh-seo-p,
.sh-rail--aside > .sh-seo .sh-seo-card > .sh-h3 { font-size:var(--sh-t-label); }
.sh-desc .sh-d4-tx > .sh-desc-eg { font-size:var(--sh-t-help); }
@media (min-width: 768px) {
.sh-grid .sh-picker .sh-cats, .sh-picker .sh-cats { gap:var(--sh-space-4); }
}
@media (max-width: 767px) {
.sh-h2, .sh-rail-live .sh-h2, h2.sh-h3, .sh-card-head h2.sh-h2, .sh-page--account .sh-benefit-card .sh-loyalty-head h2 { font-size:var(--sh-t-card); }
}
@media (max-width: 1023px) {
.sh-signup-mobile-benefit span { font-size:var(--sh-t-caption); }
}
}

body:not(.sh-order-page):not([data-page^="/child_panel"]) :is(.sh-sidebar, .sh-drawer) {
  --sh-side-label-size: var(--sh-t-caption);
}
body:not(.sh-order-page):not([data-page^="/child_panel"]) :is(.sh-h1, .sh-auth-page .sh-auth-h, .sh-product-landing h1) {
  font-size: var(--sh-t-page);
}
body:not(.sh-order-page):not([data-page^="/child_panel"]) :is(.sh-sidebar, .sh-drawer) .sh-navg-label,
body:not(.sh-order-page):not([data-page^="/child_panel"]) :is(.sh-sidebar, .sh-drawer) .sh-navg-badge,
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-consent-required {
  font-size: var(--sh-t-caption);
}
body:not(.sh-order-page):not([data-page^="/child_panel"]) :is(#access_user_m, #point_note) { font-weight: 700; }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-auth-list li,
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-consent-view { font-weight: 700; }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-card-head h2.sh-h3 { font-size: var(--sh-t-card); }
@scope (body:not(.sh-order-page):not([data-page^="/child_panel"])) {
  :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), textarea, select, .sh-search, .sh-cat, .sh-segtab, .sh-chip, .sh-picker) {
    background-color: var(--sh-fill);
    border-color: transparent;
  }
  :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), textarea, select, .sh-search, .sh-cat, .sh-segtab, .sh-chip, .sh-picker):focus-visible,
  :is(.sh-search, .sh-picker):focus-within {
    background-color: var(--sh-surface);
    border-color: var(--sh-primary);
  }
}
body:not(.sh-order-page):not([data-page^="/child_panel"]) section.sh-card :is(.sh-box, .sh-friend-card, .sh-alert, .sh-empty, .sh-steps3-item) {
  border: 0;
}
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-tile { row-gap: var(--sh-space-4); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-segtab.active { background-color: var(--sh-fill); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) #main-content .sh-page-head .sh-h1 { font-size: var(--sh-t-page); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-signup-step-dot > :is(b, span) { font-size: var(--sh-t-caption); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-signup-step-dot > b,
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-order-name strong { font-weight: 700; }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-signup-stage > h2.sh-h3 { font-size: var(--sh-t-card); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-signup-stage :is(.sh-benefit-row, .sh-consent-check) > span > span { font-weight: 700; }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-tiles .sh-tile { row-gap: var(--sh-space-4); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-consent-check { gap: var(--sh-space-12); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-legal-layout,
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-landing-problem,
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-landing-cta { gap: var(--sh-space-24); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-segtabs .sh-segtab.active { background-color: var(--sh-fill); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) section :is(.sh-review, .sh-table-wrap, .sh-description-card,
  .sh-order, .sh-list-row, .sh-paylog-item, .sh-stat, .sh-msg-body, .sh-setting-row,
  .sh-setting-options, .sh-landing-summary, .sh-landing-service-list, .sh-info-row,
  .sh-mechanism-route, .sh-landing-order-guide, .sh-coupon-step, .sh-card) {
  border: 0;
}
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-def--stack > .sh-form-actions { margin-top: 0; }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-fact > b { margin-top: var(--sh-space-4); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-page > :not(:first-child) { margin-top: 0; }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-page > :not(:last-child) { margin-bottom: 0; }
body:not(.sh-order-page):not([data-page^="/child_panel"]) :is(.sh-sidebar, .sh-drawer) :is(.sh-today, .sh-biz-links, .sh-user .sh-btn) { margin-top: var(--sh-space-12); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) :is(.sh-sidebar, .sh-drawer) .sh-user-balance { margin-top: var(--sh-space-4); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-def > b,
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-assure-d,
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-signup-mobile-benefit strong { margin-top: var(--sh-space-4); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-pager { margin-top: 0; }
body:not(.sh-order-page):not([data-page^="/child_panel"]) #code { font-size: var(--sh-t-label); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-auth-fine { margin-top: var(--sh-space-16); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-auth-foot { margin-top: var(--sh-space-16); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-auth-panel-content { margin-top: var(--sh-space-24); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-auth-panel-content .sh-auth-h { margin-top: var(--sh-space-12); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-auth-panel-content .sh-auth-p { margin-top: var(--sh-space-16); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-auth-panel-content .sh-auth-list { margin-top: var(--sh-space-24); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-cms > h3 { margin-top: var(--sh-space-24); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-order-prog > span { margin-top: var(--sh-space-4); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) :is(#ticketsend, form.sh-reply) > .sh-form-actions { margin-top: var(--sh-space-8); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-landing-section-head { margin-bottom: var(--sh-space-24); }
body.sh-auth-page:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-signup-steps { margin-top: var(--sh-space-24); margin-bottom: var(--sh-space-24); }
body.sh-auth-page:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-signup-stage .sh-benefit-card { margin-top: var(--sh-space-16); }
body.sh-auth-page:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-signup-consents { margin-top: var(--sh-space-12); }
body[data-page="/payment-redirect"] .sh-card--floating { margin-top: 0; }
@media (max-width: 767px) {
  body.sh-auth-page:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-signup-steps { margin-top: var(--sh-space-16); margin-bottom: var(--sh-space-16); }
}
body[data-page="/payment-redirect"] .sh-page:has(#pay-redirect-title) > .sh-card { margin-top: 0; }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-landing-method .sh-mechanism { margin-bottom: var(--sh-space-24); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-order-defs .sh-subscription-facts .sh-def {
  display: grid;
  row-gap: var(--sh-space-4);
}
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-order-defs .sh-subscription-facts .sh-def > b { margin-top: 0; }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-box { border-radius: var(--sh-radius-card); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) :is(.sh-input, .sh-textarea, .sh-select, .sh-search) { border-radius: var(--sh-radius-input); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) :is(.sh-cat, .sh-segtab, .sh-list-row) { border-radius: var(--sh-radius-row); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) :is(.sh-chip, .sh-badge, .sh-tierchip) { border-radius: var(--sh-radius-chip); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-banner { border-radius: var(--sh-radius-banner); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) :is(.sh-input, .sh-textarea, input:not([type="hidden"]), textarea)::placeholder { color: var(--sh-muted); }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-landing-summary .sh-landing-service-list {
  grid-template-columns: minmax(0, 1fr);
  gap: var(--sh-space-4);
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-landing-summary .sh-landing-service-list > li {
  grid-template-columns: 32px minmax(0, 1fr) auto;
  min-height: 48px;
  gap: var(--sh-space-8);
  padding: var(--sh-space-8);
  border: 0;
  border-radius: var(--sh-radius-row);
  background: var(--sh-surface-mute);
}
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-landing-summary .sh-landing-service-list > li > span:nth-child(2) { word-break: keep-all; }
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-legal-toc li {
  border: 0;
  border-radius: var(--sh-radius-chip);
  background: var(--sh-fill);
}
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-auth-card .sh-consent-card {
  border: 0;
  border-radius: var(--sh-radius-card);
  background: var(--sh-surface-mute);
}
body:not(.sh-order-page):not([data-page^="/child_panel"]) .sh-landing-title-phrase { white-space: nowrap; }

body.sh-order-page .sh-order-card :is(#sh-svc-search, #sh-guest-search),
body.sh-order-page .sh-grid .sh-picker .sh-step :is(#sh-svc-search, #sh-guest-search),
body.sh-order-page .sh-order-card :is(#fields, #order_step4, #order_step5) :is(input.sh-input, input.form-control, textarea, select):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) {
  border: 0; background: var(--sh-fill); box-shadow: none;
}
body.sh-order-page .sh-order-card :is(#sh-svc-search, #sh-guest-search):focus,
body.sh-order-page .sh-order-card :is(#fields, #order_step4, #order_step5) :is(input.sh-input, input.form-control, textarea, select):not([type="checkbox"]):not([type="radio"]):focus {
  background: var(--sh-surface); box-shadow: inset 0 0 0 1.5px var(--sh-primary); outline: 0;
}
body.sh-order-page .sh-order-card :is(#fields, #order_step4, #order_step5) :is(input.sh-input, input.form-control, textarea, select)[aria-invalid="true"]:not(:focus) { box-shadow: inset 0 0 0 1.5px var(--sh-danger, #D92D20); }

body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step):not(.sh-money-head) { align-items: center; gap: 8px; min-height: 22px; margin-bottom: 10px; }
body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step) > .sh-step-no {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step) > .sh-step-title,
body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step) > .sh-step-title:is(.sh-step-title--fit, .sh-step-title--tight) {
  flex: 0 1 auto; white-space: nowrap; min-width: 0; color: var(--sh-ink-2); font-size: var(--sh-t-body); font-weight: 700; letter-spacing: -.2px; line-height: 22px;
}

body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step) > .sh-step-title.sh-step-title--wrap:is(.sh-step-title--fit, .sh-step-title--tight) { white-space: normal; }
body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step) > .sh-step-title > span:not(.sh-nowrap) { color: var(--sh-muted-2); font-size: var(--sh-t-caption); font-weight: 400; }

body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-step--label > .sh-platform-filters {
  display: flex; flex: 0 0 auto; width: auto; max-width: none; gap: 4px; margin: 0 0 0 auto; padding: 0; border-radius: 0; background: transparent; box-shadow: none;
}
body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-step--label > .sh-platform-filters > button {
  position: relative; flex: 0 0 auto; min-height: 28px; height: 28px; padding: 0 10px; border: 0; border-radius: 999px;
  background: var(--sh-fill); box-shadow: none; color: var(--sh-muted); font-size: var(--sh-t-caption); font-weight: 700; line-height: 28px;
}
body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-step--label > .sh-platform-filters > button::after { content: ""; position: absolute; left: -2px; right: -2px; top: 50%; height: 44px; transform: translateY(-50%); }
body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-step--label > .sh-platform-filters > button[aria-selected="true"] { background: var(--sh-tint); color: var(--sh-primary); box-shadow: none; }

body.sh-order-page .sh-order-card .sh-step--label > .sh-step-tools { display: flex; align-items: center; gap: 12px; flex: 1 1 auto; justify-content: flex-end; min-width: 0; margin-left: auto; }
body.sh-order-page .sh-order-card .sh-step--label > .sh-crumb ~ .sh-step-tools { flex: 0 1 auto; }
body.sh-order-page .sh-order-card .sh-step--label .sh-step-searchbox { display: block; flex: 1 1 auto; min-width: 0; max-width: 220px; }
body.sh-order-page .sh-grid .sh-order-card .sh-step--label :is(#sh-svc-search, #sh-guest-search) {
  width: 100%; height: 40px; min-height: 40px; margin: 0; padding: 0 12px 0 34px; border: 0; border-radius: var(--sh-r-ctrl); font-size: var(--sh-t-body);
  background: var(--sh-fill) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236B7684' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='m16 16 4.5 4.5'/%3E%3C/svg%3E") no-repeat 12px 50% / 16px 16px;
}
body.sh-order-page .sh-grid .sh-order-card .sh-step--label :is(#sh-svc-search, #sh-guest-search):focus { background-color: var(--sh-surface); }
body.sh-order-page .sh-order-card .sh-step--label .sh-step-link {
  position: relative; flex: none; min-height: 0; height: auto; margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none;
  color: var(--sh-primary); font-size: var(--sh-t-help); font-weight: 700; line-height: 20px; white-space: nowrap; cursor: pointer;
}
body.sh-order-page .sh-order-card .sh-step--label .sh-step-link::after { content: ""; position: absolute; left: -6px; right: -6px; top: 50%; height: 44px; transform: translateY(-50%); }
body.sh-order-page .sh-order-card .sh-step--label .sh-step-link:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; }
body.sh-order-page .sh-grid .sh-picker .sh-picker-head:not(:has(> :not([hidden]))) { display: none; }

body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body { padding: 8px; border: 0; border-radius: var(--sh-r-ctrl); background: var(--sh-fill); }
body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body :is(#category-container, #sh-rows, #sh-rows-empty) { background: transparent; }
body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:is(.active, [aria-selected="true"]),
body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:is(.active, .is-selected, [aria-selected="true"]) {
  background: var(--sh-surface); box-shadow: none;
}
body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:not(:is(.active, [aria-selected="true"])) .sh-row-tags > * { background: var(--sh-surface); }
body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-column > #sh-rows { border-left: 0; }
@media (min-width: 1024px) { body.sh-order-page { --sh-p79-body-inset: 8px; } }

body.sh-order-page .sh-grid #sh-brief.sh-brief { margin-top: 12px; padding: 14px; border: 1px solid var(--sh-line-soft); background: var(--sh-surface); }
body.sh-order-page .sh-grid #sh-brief #sh-svc-title { font-size: var(--sh-t-card); line-height: 24px; }
body.sh-order-page .sh-grid #sh-brief .sh-rate { margin-top: 4px; }
body.sh-order-page .sh-grid #sh-brief #sh-svc-summary { margin-top: 6px; font-size: var(--sh-t-body); line-height: 21px; }
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts,
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts:not(:has(.sh-tag, #sh-svc-range:not([hidden]))) { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 10px; }
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts :is(.sh-tag, #sh-svc-range) { padding: 5px 8px; border: 0; background: var(--sh-fill); color: var(--sh-muted); }
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts > .sh-desc-skip {
  position: relative; order: 9; display: inline-flex; align-items: center; height: 26px; min-height: 0; margin-left: auto; padding: 0; border: 0; background: transparent; color: var(--sh-primary); font-size: var(--sh-t-help); font-weight: 700; line-height: 26px; text-decoration: none; white-space: nowrap;
}
body.sh-order-page .sh-grid #sh-brief .sh-brief-facts > .sh-desc-skip::after { content: ""; position: absolute; left: -6px; right: -6px; top: 50%; height: 44px; transform: translateY(-50%); }
body.sh-order-page .sh-grid #sh-brief > [data-sh-brief-favorite]:not([hidden]) { top: 4px; right: 4px; }

body.sh-order-page .sh-order-card :is(#fields, #order_step4, #order_step5) input.sh-input:not([type="checkbox"]):not([type="radio"]) { height: 48px; min-height: 48px; border: 0; border-radius: var(--sh-r-ctrl); }
body.sh-order-page .sh-order-card #sh-linknote,
body.sh-order-page .sh-order-card #order_quantity .help-block,
body.sh-order-page .sh-order-card #sh-qty-range { margin-top: 6px; font-size: var(--sh-t-help); line-height: 19px; }
body.sh-order-page .sh-order-card #fields > [data-part="step-qty"] { margin-top: 16px; }
body.sh-order-page .sh-order-card #fields > .sh-step.sh-mt-22 { margin-top: 16px; }
body.sh-order-page .sh-order-card #fields > .sh-step.sh-mt-22:first-child { margin-top: 0; }
body.sh-order-page .sh-order-card .sh-repeat { margin-top: 12px; padding-top: 4px; border-top: 1px solid var(--sh-line-hair); }
body.sh-order-page .sh-order-card .sh-repeat > .sh-repeat-head { min-height: 44px; }
body.sh-order-page .sh-order-card .sh-repeat .sh-repeat-title { color: var(--sh-ink-2); font-size: var(--sh-t-body); font-weight: 700; line-height: 22px; }
body.sh-order-page .sh-order-card .sh-repeat > .sh-repeat-head[aria-expanded="false"] .sh-repeat-sub { display: none; }

body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) > details.sh-order-more {
  display: block; grid-column: 1 / -1; align-self: stretch; width: 100%; margin: 12px 0 0; padding: 0; border: 0; border-top: 1px solid var(--sh-line-hair); border-radius: 0; background: transparent; box-shadow: none;
}
body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) > details.sh-order-more > summary { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; justify-content: space-between; min-height: 44px; padding: 0; color: var(--sh-muted); font-size: var(--sh-t-help); font-weight: 600; }
body.sh-order-page details.sh-order-more > summary > span:first-child { white-space: nowrap; }
body.sh-order-page details.sh-order-more > summary > .sh-cms-note-more { color: var(--sh-muted-2); font-weight: 600; }
body.sh-order-page details.sh-order-more > .sh-cms-note-body { margin: 4px 0 0; padding: 0; border: 0; }
body.sh-order-page details.sh-order-more > .sh-order-more-foot { display: grid; gap: 8px; padding: 12px 0 4px; }
body.sh-order-page details.sh-order-more > .sh-cms-note-body + .sh-order-more-foot { margin-top: 12px; border-top: 1px solid var(--sh-line-hair); }
body.sh-order-page details.sh-order-more > .sh-order-more-foot > p { margin: 0; padding: 0; border: 0; background: transparent; color: var(--sh-muted-2); font-size: var(--sh-t-help); line-height: 19px; text-align: left; }

body.sh-order-page .sh-order-card .sh-qty-total[data-sh-total-mirror] { display: none; }

.sh-strip {
  min-height: 34px; height: 34px; padding: 0 16px; gap: 8px; border: 0; background: var(--sh-surface);
  color: var(--sh-muted-2); font-size: var(--sh-t-caption); font-weight: 400;
}
.sh-strip :is(.sh-ticker-msg, .sh-ticker-roll, .sh-ticker-line) { height: 34px; color: var(--sh-muted-2); font-size: var(--sh-t-caption); font-weight: 400; }
.sh-strip .sh-ticker-line { gap: 6px; }
.sh-strip :is(.sh-ticker-ago, .sh-ticker-txt) { color: var(--sh-muted-2); font-size: var(--sh-t-caption); }
.sh-strip .sh-ticker-txt b { color: var(--sh-ink); font-weight: 700; }
.sh-strip .sh-ticker-ico { width: 18px; height: 18px; border-radius: var(--sh-radius-chip); }
.sh-strip .sh-ticker-ico svg { width: 12px; height: 12px; }
.sh-strip .sh-ticker-tail { padding: 0; border-radius: 0; background: transparent; color: var(--sh-muted-2); font-size: var(--sh-t-caption); font-weight: 400; }
.sh-strip .sh-ticker-tail b { color: var(--sh-ink); font-weight: 700; }
.sh-ticker-row { background: var(--sh-surface); box-shadow: inset 0 0 0 1px var(--sh-line-soft); }
.sh-ticker-row .sh-ticker-line,
.sh-ticker-row :is(.sh-ticker-ago, .sh-ticker-txt) { color: var(--sh-muted-2); font-size: var(--sh-t-help); }
.sh-ticker-row .sh-ticker-txt b { color: var(--sh-ink); }
.sh-ticker-row .sh-ticker-flag { background: var(--sh-tint); color: var(--sh-primary); }
.sh-ticker-row .sh-live-pill { background: var(--sh-fill); color: var(--sh-muted); }
.sh-ticker-row .sh-live-pill b { color: var(--sh-ink); }
@media (max-width: 767px) {
  body.sh-order-page .sh-strip { box-shadow: none; }
  body.sh-order-page .sh-main:has(> .sh-grid > .sh-rail--main > .sh-notice-strip:first-child) { padding-top: 0; }
  body.sh-order-page .sh-rail--main > .sh-notice-strip { margin-top: 0; border-top: 1px solid var(--sh-line-soft); border-bottom: 0; }
  body.sh-order-page .sh-rail--main > .sh-notice-strip .sh-notice-strip-roll { height: 36px; }
}

body.sh-order-page .sh-order-card .sh-plats .sh-plat:not(.sh-plat-skeleton) .sh-plat-icon {
  display: flex; align-items: center; justify-content: center; overflow: hidden; border: 0; border-radius: var(--sh-r-ctrl); background: var(--sh-fill); box-shadow: none; color: var(--sh-ink-2);
}

body.sh-order-page .sh-order-card .sh-plats .sh-plat:not(.sh-plat-skeleton) .sh-plat-icon { --sh-plat-tile: 30px; --sh-plat-radius: 8px; --sh-plat-glyph: 22px; }
body.sh-order-page .sh-order-card .sh-plats .sh-plat:not(.sh-plat-skeleton) .sh-plat-icon::after { box-shadow: none; }
body.sh-order-page .sh-order-card .sh-plats .sh-plat:not(.sh-plat-skeleton) .sh-plat-icon > svg { flex: none; max-width: none; max-height: none; }
body.sh-order-page .sh-order-card .sh-plats .sh-plat:not(.sh-plat-skeleton) .sh-plat-icon:is([data-brand="favorites"], [data-brand="event"], [data-brand="etc"]) > svg { box-shadow: none; }
body.sh-order-page .sh-order-card .sh-plats .sh-plat.active:not(.sh-plat-skeleton) .sh-plat-icon { background: var(--sh-surface); box-shadow: inset 0 0 0 2px var(--sh-primary); }
body.sh-order-page .sh-order-card .sh-plats .sh-plat:not(.active):not(.sh-plat-skeleton):hover .sh-plat-icon { box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--sh-primary) 30%, transparent); }
body.sh-order-page .sh-order-card .sh-plats .sh-plat-skeleton .sh-plat-icon { border-radius: var(--sh-r-ctrl); background: var(--sh-fill); }

@media (max-width: 767px) {
  body.sh-order-page { --sh-banner-block-start: 8px; --sh-banner-block-end: 8px; --sh-plats-dots-top: 12px; --sh-first-paint-summary: 190px; }
  body.sh-order-page .sh-main .sh-grid #order-form > .sh-card-head { padding-top: 20px; padding-bottom: 0; }
  body.sh-order-page .sh-main .sh-grid #order-form > .sh-card-head .sh-h1 { font-size: var(--sh-t-page); line-height: 28px; }
  body.sh-order-page .sh-main .sh-grid #order-form > div:has(.sh-plats) { padding-top: 12px; padding-bottom: 16px; }
  body.sh-order-page .sh-main .sh-grid #order-form > :is(div:has(.sh-picker), #fields, #sh-precheck-host:not([hidden]), #sh-caution-inline:not([hidden]), div:has(> .sh-total)) {
    margin-top: 0; padding-top: 16px; padding-bottom: 16px;
    background-image: linear-gradient(var(--sh-line-soft), var(--sh-line-soft)); background-repeat: no-repeat; background-size: calc(100% - 40px) 1px; background-position: 20px 0;
  }
  body.sh-order-page .sh-main .sh-grid #order-form > #sh-precheck-host:not([hidden]) ~ #fields { padding-top: 16px; }

  body.sh-order-page .sh-main .sh-grid section.sh-order-card:not(#order-form) { padding-top: 20px; padding-bottom: 16px; }
  body.sh-order-page .sh-main .sh-grid section.sh-order-card:not(#order-form) > .sh-order-divider { display: block; height: 1px; margin: 16px 0; background: var(--sh-line-soft); border: 0; }
  body.sh-order-page .sh-main .sh-grid section.sh-order-card:not(#order-form) > :is(#order_step4, #order_price) { margin-top: 0; padding-top: 16px; border-top: 1px solid var(--sh-line-soft); }
  body.sh-order-page .sh-main .sh-grid section.sh-order-card:not(#order-form) > #order_step5 { margin-top: 0; }
  body.sh-order-page .sh-main .sh-grid section.sh-order-card:not(#order-form) > #order_price { margin-top: 16px; }

  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-step--label > .sh-crumb { display: none; }
  body.sh-order-page .sh-order-card .sh-step--label .sh-step-searchbox { max-width: none; }

  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats {
    --sh-plat-page-cols: 5; --sh-plat-tile: 48px; --sh-plat-radius: 14px;
    grid-template-columns: repeat(var(--sh-plat-cols, 5), calc((100% - 32px) / 5)); grid-auto-columns: calc((100% - 32px) / 5); row-gap: 10px;
  }
  html.sh-content-pending:not(.sh-tiles-ready) body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats { --sh-plat-cols: 15; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat { gap: 6px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :nth-child(n of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])) { scroll-snap-align: none; scroll-snap-stop: normal; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(15n+1 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+2 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+3 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+4 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+5 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton]))) { grid-row: 1; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(15n+6 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+7 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+8 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+9 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+10 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton]))) { grid-row: 2; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(15n+11 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+12 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+13 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+14 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+15 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton]))) { grid-row: 3; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :nth-child(15n+1 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])) { scroll-snap-align: start; scroll-snap-stop: always; }

  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(15n+1 of .sh-plat-skeleton), :nth-child(15n+2 of .sh-plat-skeleton), :nth-child(15n+3 of .sh-plat-skeleton), :nth-child(15n+4 of .sh-plat-skeleton), :nth-child(15n+5 of .sh-plat-skeleton)) { grid-row: 1; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(15n+6 of .sh-plat-skeleton), :nth-child(15n+7 of .sh-plat-skeleton), :nth-child(15n+8 of .sh-plat-skeleton), :nth-child(15n+9 of .sh-plat-skeleton), :nth-child(15n+10 of .sh-plat-skeleton)) { grid-row: 2; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(15n+11 of .sh-plat-skeleton), :nth-child(15n+12 of .sh-plat-skeleton), :nth-child(15n+13 of .sh-plat-skeleton), :nth-child(15n+14 of .sh-plat-skeleton), :nth-child(15n+15 of .sh-plat-skeleton)) { grid-row: 3; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats .sh-plat .sh-plat-icon { flex: 0 0 48px; width: 48px; min-width: 48px; height: 48px; border-radius: var(--sh-r-ctrl); }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats .sh-plat-label { min-height: 16px; font-size: var(--sh-t-caption); line-height: 16px; letter-spacing: -.5px; white-space: nowrap; }

  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body { margin-inline: -8px; }

  body.sh-order-page { --sh-first-paint-cat-row: 44px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) { min-height: 44px; padding: 5px 12px; font-size: var(--sh-t-body); line-height: 1.3; }

  body.sh-order-page .sh-grid #sh-brief #sh-svc-summary { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
  body.sh-order-page .sh-grid #sh-brief .sh-brief-facts > #sh-svc-range { display: none; }

  body.sh-order-page .sh-order-card #fields > #order_quantity { position: relative; }
  body.sh-order-page .sh-order-card #fields > #order_quantity > .help-block { position: absolute; top: -30px; right: 0; max-width: 60%; margin: 0; overflow: hidden; color: var(--sh-muted-2); font-size: var(--sh-t-caption); line-height: 20px; text-overflow: ellipsis; white-space: nowrap; }
  body.sh-order-page .sh-main .sh-grid section.sh-order-card:not(#order-form) > #order_step5 { position: relative; }

  body.sh-order-page .sh-order-card .sh-repeat { margin-top: 8px; padding-top: 0; }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) .sh-total-value { font-size: var(--sh-t-page); line-height: 28px; }
  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) :is(button[type="submit"], #order_button) { margin-top: 12px; }
  body.sh-order-page #order-form > div:has(> .sh-total) > .sh-money-head { order: 1; margin-top: 8px; }
  body.sh-order-page #order-form > div:has(> .sh-total) > details.sh-order-more { order: 2; }
  body.sh-order-page .sh-strip, body.sh-order-page .sh-strip :is(.sh-ticker-msg, .sh-ticker-roll, .sh-ticker-line) { min-height: 32px; height: 32px; }

  body.sh-order-page .sh-order-card [data-sh-total-mirror] > :is(.sh-qty-total-cap, .sh-qty-total-value) { white-space: nowrap; }
  body.sh-order-page .sh-order-card :is(#order-form > div:has(> .sh-total), #order_price) :is(button[type="submit"], #order_button) { margin-top: 16px; }

  body.sh-order-page .sh-order-card #sh-linknote { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  body.sh-order-page .sh-order-card :is([data-part="link-tail"], #order_step4 > .sh-stack):has(#sh-linkguide:not([hidden])) #sh-linknote { overflow: visible; white-space: normal; }

  body.sh-order-page .sh-order-card #sh-linknote.sh-linknote--bad { overflow: visible; text-overflow: clip; white-space: normal; }

  body.sh-order-page .sh-order-card .sh-step:not(#sh-desc-sec > .sh-step):not(.sh-money-head) { margin-bottom: 8px; }
  body.sh-order-page .sh-grid .sh-order-card .sh-step--label :is(#sh-svc-search, #sh-guest-search) { height: 38px; min-height: 38px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats { row-gap: 8px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body { padding: 6px; margin-inline: -6px; }
  body.sh-order-page .sh-grid #sh-brief.sh-brief { margin-top: 10px; padding: 12px 14px; }
  body.sh-order-page .sh-order-card .sh-repeat { margin-top: 6px; }
  body.sh-order-page .sh-order-card :is(#order-form > div:has(> .sh-total), #order_price) :is(button[type="submit"], #order_button) { margin-top: 12px; }
  body.sh-order-page .sh-main .sh-grid #order-form > .sh-card-head { padding-top: 16px; }

  body.sh-order-page .sh-mobar .sh-mobar-body { align-items: center; gap: 12px; min-height: 64px; padding: 8px 8px 8px 16px; }
  body.sh-order-page .sh-mobar .sh-mobar-body > .sh-grow { display: flex; align-items: baseline; gap: 8px; min-width: 0; }
  body.sh-order-page .sh-mobar .sh-mobar-name { flex: 1 1 auto; min-width: 0; overflow: hidden; color: var(--sh-muted); font-size: var(--sh-t-help); font-weight: 600; line-height: 20px; text-overflow: ellipsis; white-space: nowrap; }
  body.sh-order-page .sh-mobar .sh-mobar-quantity { display: none; }
  body.sh-order-page .sh-mobar .sh-mobar-total { flex: none; font-size: var(--sh-t-card); font-weight: 700; line-height: 22px; white-space: nowrap; }
  body.sh-order-page .sh-mobar .sh-btn { flex: none; max-width: 56%; min-height: 48px; height: 48px; padding: 0 16px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  body.sh-order-page .sh-mobar [data-sh-order-cta="topup"] { max-width: none; }
}

@media (min-width: 768px) {
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats .sh-plat .sh-plat-icon { width: 48px; min-width: 48px; height: 48px; flex-basis: 48px; border-radius: var(--sh-r-ctrl); }
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-plats .sh-plat.active .sh-plat-label { color: var(--sh-primary); font-weight: 700; }

  body.sh-order-page :is(#order-form > div:has(> .sh-total), #order_price) { margin-top: 16px; padding-top: 16px; }
  body.sh-order-page .sh-main .sh-grid .sh-order-card > .sh-order-divider,
  body.sh-order-page .sh-main .sh-grid .sh-order-card .sh-picker > .sh-order-divider { height: 1px; margin: 16px 0; border: 0; background: var(--sh-line-soft); }
}

:root {
  --sh-weight-regular: 400; --sh-weight-medium: 600; --sh-weight-bold: 700;
  --sh-space-32: 32px; --sh-space-40: 40px; --sh-space-48: 48px;
}
.sh-header-crumb { display: none; }
.sh-sidebar .sh-user { display: flex; flex-direction: column; gap: var(--sh-space-8); }
.sh-sidebar .sh-user > * { margin-block: 0; }
.sh-sidebar .sh-user-row { min-height: 0; }
.sh-sidebar .sh-user-balance { line-height: 1.3; }
.sh-sidebar .sh-user > .sh-btn { margin-top: var(--sh-space-8); }
body.sh-order-page { --sh-sidebar: 216px; --sh-order-rail-width: 280px; --sh-order-maxw: 1260px; --sh-tabbar-h: 64px; }
body.sh-order-page #main-content.sh-main { padding: 24px 32px 96px; }
body.sh-order-page #main-content.sh-main > .sh-grid { max-width: 1260px; grid-template-columns: minmax(0, 1fr) 280px; gap: 24px; }
body.sh-order-page .sh-rail { gap: 20px; }
body.sh-order-page .sh-card, body.sh-order-page #sh-desc-sec { border-radius: var(--sh-r-card); }
body.sh-order-page .sh-order-card { overflow: hidden; }
body.sh-order-page .sh-order-card .sh-order-divider { height: 1px; background: var(--sh-line-soft); margin-block: 16px; }
body.sh-order-page .sh-orderbar, body.sh-order-page .sh-mobar { display: none; }
body.sh-order-page .sh-rail--main > .sh-ticker-row { order: -2; margin-bottom: -20px; border-radius: 12px 12px 0 0; box-shadow: none; }
body.sh-order-page .sh-rail--main > .sh-notice-strip { order: -1; border-radius: 0 0 12px 12px; background: var(--sh-surface); border-top: 1px solid var(--sh-line-soft); }
body.sh-order-page .sh-order-information { grid-column: 1 / -1; }
body.sh-order-page .sh-banner { border-radius: var(--sh-r-card); overflow: hidden; }
body.sh-order-page .sh-rail--aside .sh-card { padding: 20px; }
body.sh-order-page .sh-rail--aside :is(.sh-h2, .sh-h3) { font-size: var(--sh-t-card); font-weight: 700; }
body.sh-order-page .sh-rail--aside .sh-assure { margin-top: 16px; }
body.sh-order-page .sh-rail--aside .sh-assure-item { padding-block: 12px; }
body.sh-order-page .sh-rail--aside .sh-rail-price-row { gap: 8px; font-size: var(--sh-t-help); }
body.sh-order-page .sh-rail--aside .sh-rail-price-row > span:nth-child(2) { white-space: normal; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats {
  --sh-plat-paged: 0; display: grid; grid-template-columns: repeat(9, minmax(0, 1fr)); grid-template-rows: none;
  grid-auto-flow: row; grid-auto-columns: auto; gap: 8px; overflow: visible; padding: 0; margin: 0; max-height: none;
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) {
  grid-row: auto; grid-column: auto; height: 68px; min-height: 68px; padding: 4px 0; gap: 4px;
  border-radius: var(--sh-r-ctrl); background: var(--sh-fill); justify-content: center; box-shadow: none;
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat.active { background: var(--sh-surface); box-shadow: inset 0 0 0 1.5px var(--sh-primary); }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats .sh-plat .sh-plat-icon {
  width: 30px; min-width: 30px; height: 30px; flex-basis: 30px; background: transparent; border-radius: var(--sh-r-sm); box-shadow: none;
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats .sh-plat-label { font-size: var(--sh-t-caption); font-weight: 600; line-height: 16px; white-space: nowrap; letter-spacing: -.5px; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats-progress { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body {
  grid-template-columns: 232px minmax(0, 1fr); gap: 8px; padding: 8px; margin-inline: 0; border-radius: var(--sh-r-ctrl);
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container { width: auto; min-width: 0; max-width: none; gap: 4px; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) {
  min-height: 48px; height: 48px; padding: 8px; gap: 8px; font-size: var(--sh-t-help); font-weight: 600; border-radius: var(--sh-r-sm);
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker .sh-cat :is(.sh-cat-name, .sh-cat-label) {
  display: block; white-space: nowrap; word-break: keep-all; overflow: visible; text-overflow: clip; -webkit-line-clamp: unset;
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row {
  display: flex; align-items: center; flex-wrap: nowrap; gap: 8px; height: 56px; min-height: 56px;
  padding: 8px; border: 0; border-radius: var(--sh-r-sm); background: transparent; box-shadow: none;
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:is(.active, .is-selected, [aria-selected="true"]) {
  background: var(--sh-surface); box-shadow: inset 0 0 0 1.5px var(--sh-primary);
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row::before { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-main { display: flex; align-items: center; flex: 1 1 auto; min-width: 0; gap: 4px; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-name {
  display: block; flex: 1 1 auto; min-width: 0; width: auto; font-size: var(--sh-t-body); font-weight: 600;
  line-height: 24px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: unset;
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-tags { flex: 0 1 auto; max-width: 35%; min-width: 0; gap: 4px; overflow: hidden; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-tags > * { font-size: var(--sh-t-caption); font-weight: 400; border-radius: var(--sh-radius-chip); padding: 0 4px; line-height: 20px; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-price { flex: none; font-size: var(--sh-t-help); font-weight: 600; white-space: nowrap; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-favbtn { flex: none; width: 24px; min-width: 24px; }
body.sh-order-page .sh-grid #sh-brief.sh-brief { border: 0; border-radius: 0; padding: 16px 0 0; margin-top: 16px; border-top: 1px solid var(--sh-line-soft); }
body.sh-order-page #sh-desc-sec .sh-tabs { display: flex; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: thin; mask-image: linear-gradient(to right, #000 calc(100% - 16px), transparent); padding-right: 16px; }
body.sh-order-page #sh-desc-sec .sh-tabs > * { flex: none; white-space: nowrap; min-height: 44px; }
body.sh-order-page :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] { --sh-desc-body-size: 15px; --sh-desc-body-line: 1.6; max-width: 640px; margin-inline: auto; }
body.sh-order-page :is(#sh-desc-host, #sh-desc-full) .sh-d4-section-header { border: 0; padding: 0; gap: 8px; }
body.sh-order-page :is(#sh-desc-host, #sh-desc-full) :is(.sh-doc-h, .sh-d4-bundle-kicker) { font-size: var(--sh-t-card); font-weight: 700; line-height: 1.4; }
body.sh-order-page :is(#sh-desc-host, #sh-desc-full) .sh-d4-section-header .sh-d4-num { display: none; }
body.sh-order-page :is(#sh-desc-host, #sh-desc-full) :is(.sh-prose, .sh-d4-tx, .sh-lead, .sh-lead-sub) { font-size: var(--sh-t-body); font-weight: 400; line-height: 1.6; }
@media (min-width: 768px) {
  body.sh-order-page .sh-topbar { display: flex; position: relative; margin-left: 216px; width: auto; height: 72px; padding: 0 32px; background: var(--sh-surface); border-bottom: 1px solid var(--sh-line); }
  body.sh-order-page .sh-topbar > :is(.sh-burger, .sh-topbar-brand) { display: none; }
  body.sh-order-page .sh-header-crumb { display: flex; align-items: center; gap: 8px; margin-right: auto; font-size: var(--sh-t-help); color: var(--sh-muted-2); }
  body.sh-order-page .sh-header-crumb a { color: var(--sh-muted); }
  body.sh-order-page #main-content.sh-main { margin-left: 216px; }
  body.sh-order-page .sh-sidebar { width: 216px; padding: 24px 16px; background: var(--sh-surface); }
  body.sh-order-page .sh-sidebar .sh-today { display: none; }
  body.sh-order-page .sh-sidebar .sh-navg-item { min-height: 44px; font-weight: 600; }
  body.sh-order-page .sh-sidebar .sh-user-name { font-size: var(--sh-t-help); }
  body.sh-order-page .sh-fab-stack { left: 16px; right: auto; bottom: 16px; }
  body.sh-order-page .sh-rail--aside { position: static; }
}
@media (min-width: 768px) and (max-width: 1199px) {
  body.sh-order-page #main-content.sh-main > .sh-grid { grid-template-columns: minmax(0, 1fr); }
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  body.sh-order-page #main-content.sh-main { padding-inline: 24px; }
  body.sh-order-page .sh-rail--aside { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  body.sh-order-page { --sh-first-paint-cat-row: 44px; --sh-first-paint-summary: 190px; }
  body.sh-order-page .sh-topbar { height: 64px; min-height: 64px; position: relative; padding-inline: 16px; }
  body.sh-order-page .sh-strip { position: relative; top: auto; }
  body.sh-order-page #main-content.sh-main { margin-left: 0; padding: 0 16px 88px; }
  body.sh-order-page #main-content.sh-main > .sh-grid { display: flex; flex-direction: column; gap: 20px; }
  body.sh-order-page .sh-rail { width: 100%; gap: 20px; }
  body.sh-order-page .sh-rail--main > .sh-notice-strip { width: calc(100% + 32px); margin: 0 -16px; padding-inline: 16px; border-radius: 0; }
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card { border-radius: var(--sh-r-card); margin-inline: 0; width: 100%; }
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) { height: 60px; min-height: 60px; }
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 8px; margin-inline: 0; }
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container { display: flex; flex-direction: row; flex-wrap: nowrap; overflow-x: auto; max-height: none; gap: 4px; padding: 0 0 4px; }
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container :is(.sh-cat-group, .sh-cat-group-tabs) { display: contents; }
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat-group-head { display: none; }
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) { width: auto; flex: 0 0 auto; height: 44px; min-height: 44px; padding: 8px 12px; }
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat-logo-holder { width: 16px; min-width: 16px; height: 16px; flex-basis: 16px; }
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat-logo-holder > :is(svg, img) { width: 16px; height: 16px; }
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row { gap: 4px; padding-inline: 8px; }
  body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec { margin-top: 20px; padding: 20px; background: var(--sh-surface); }
  body.sh-order-page .sh-desc-facts { display: flex; flex-direction: column; gap: 8px; }
  body.sh-order-page .sh-desc-fact { display: flex; align-items: center; gap: 12px; padding: 12px; }
  body.sh-order-page .sh-desc-fact > b { margin: 0; font-size: var(--sh-t-body); }
  body.sh-order-page .sh-tabbar-inner { height: 64px; grid-template-columns: repeat(5, minmax(0, 1fr)); padding-inline: 8px; }
  body.sh-order-page .sh-tab-item { min-width: 0; gap: 4px; font-size: var(--sh-t-caption); }
  body.sh-order-page .sh-tab-item svg { width: 20px; height: 20px; }
  body.sh-order-page .sh-fab-stack { bottom: 80px; right: 16px; }
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card > .sh-order-divider { height: 1px; min-height: 1px; margin: 16px 0; background: var(--sh-line-soft); }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat .sh-cat-name { flex: 1 0 auto; width: auto; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat :is(.sh-cat-action-icon, .sh-cat-logo-holder) { flex: 0 0 20px; width: 20px; min-width: 20px; height: 20px; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat :is(.sh-cat-action-icon, .sh-cat-logo-holder) > :is(svg, img) { width: 20px; height: 20px; }
body.sh-order-page .sh-sidebar .sh-user-row { height: auto; min-height: 52px; }
body:not([data-page^="/child_panel"]) .sh-sidebar .sh-user { min-height: 0; height: auto; justify-content: flex-start; }
body:not([data-page^="/child_panel"]) .sh-sidebar .sh-user > .sh-btn { margin-top: 8px; }

:is(.sh-sidebar, .sh-drawer) .sh-user.sh-d2b-balance-card > .sh-user-row { min-height: 0; height: auto; align-items: center; }
:is(.sh-sidebar, .sh-drawer) .sh-user.sh-d2b-balance-card > a.sh-user-tier {
  align-self: flex-start; align-items: center; gap: 8px; width: max-content; max-width: 100%;
  min-height: 24px; margin: 8px 0 0; color: var(--sh-muted); font-size: var(--sh-t-sm); font-weight: 600; line-height: 1; white-space: nowrap; text-decoration: none;
}

.sh-sidebar .sh-user.sh-d2b-balance-card > a.sh-user-tier { margin: -4px 0 -9px; }
:is(.sh-sidebar, .sh-drawer) .sh-user.sh-d2b-balance-card > a.sh-user-tier .sh-tierchip {
  height: 24px; min-height: 24px; padding: 0 9px 0 4px; border-width: 1px; border-style: solid; font-size: var(--sh-t-sm); font-weight: 700; line-height: 1;
}
:is(.sh-sidebar, .sh-drawer) .sh-user.sh-d2b-balance-card > a.sh-user-tier > span.sh-user-tier-more { display: inline; color: var(--sh-muted); font-size: var(--sh-t-sm); font-weight: 600; }
:is(.sh-sidebar, .sh-drawer) .sh-user.sh-d2b-balance-card > a.sh-user-tier:hover > span.sh-user-tier-more { color: var(--sh-primary); }

:is(.sh-sidebar, .sh-drawer) .sh-user.sh-d2b-balance-card > a.sh-user-tier .sh-tierchip--loading { width: 58px; border-color: var(--sh-line); background: var(--sh-line-soft, var(--sh-line)); }
:is(.sh-sidebar, .sh-drawer) .sh-user.sh-d2b-balance-card > a.sh-user-tier .sh-tierchip--loading::before { background: var(--sh-line); }
@media (max-width: 767px) {
 body.sh-order-page #main-content.sh-main .sh-grid #order-form { background: var(--sh-surface); border-radius: var(--sh-r-card); overflow: hidden; }
 body.sh-order-page #main-content.sh-main .sh-grid #order-form > div { border-radius: 0; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat :is(.sh-cat-action-icon, .sh-cat-logo-holder) { flex-basis: 16px; width: 16px; min-width: 16px; height: 16px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat :is(.sh-cat-action-icon, .sh-cat-logo-holder) > :is(svg, img) { width: 16px; height: 16px; }
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-main { flex-direction: row; flex-wrap: nowrap; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-tags { flex-direction: row; flex-wrap: nowrap; margin: 0; }
@media (max-width: 767px) {
 body.sh-order-page #main-content.sh-main .sh-grid #sh-platform-panel { width: 100%; margin: 0; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail--main > .sh-banner { padding: 0; background: transparent; border-radius: var(--sh-r-card); }
 body.sh-order-page :is(#sh-desc-host, #sh-desc-full) .sh-d4-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; border: 0; background: transparent; }
 body.sh-order-page :is(#sh-desc-host, #sh-desc-full) .sh-d4-stat { display: block; min-height: 0; padding: 12px; border: 0; background: var(--sh-fill); border-radius: var(--sh-r-sm); }
 body.sh-order-page :is(#sh-desc-host, #sh-desc-full) .sh-d4-stat > * { margin: 0; }
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-tags { flex: none; max-width: none; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) { font-size: var(--sh-t-body); }
@media (min-width: 1200px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body { grid-template-columns: max-content minmax(0, 1fr); }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container { min-width: 168px; }
}
@media (min-width: 768px) and (max-width: 1199px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body { grid-template-columns: minmax(0, 1fr); }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container { display: flex; flex-direction: row; overflow-x: auto; max-height: none; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container :is(.sh-cat-group, .sh-cat-group-tabs) { display: contents; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat-group-head { display: none; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) { width: auto; flex: none; }
}

body.sh-order-page #main-content.sh-main > .sh-grid > .sh-rail--main { grid-row: 1; }
body.sh-order-page #main-content.sh-main > .sh-grid > .sh-rail--aside { grid-row: 1; }
body.sh-order-page { --sh-picker-small: 12px; --sh-picker-tag: 12px; --sh-desc-number-size: 22px; }
@media (min-width: 768px) {
 body.sh-order-page :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) { grid-template-columns: repeat(4, 150px); overflow-x: auto; max-width: 100%; }
}
@media (max-width: 1199px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat-group-head { display: inline-flex; flex: none; min-height: 44px; margin: 0; padding: 0 8px; white-space: nowrap; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat-group-head::after { display: none; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat-group-head .sh-list-help > summary { margin: 0; }
 body.sh-order-page #main-content.sh-main > .sh-grid > .sh-rail--aside { grid-row: auto; }
}
body:not([data-page^="/child_panel"]) .sh-sidebar .sh-user > .sh-user-wallet { margin-top: 0; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat.active .sh-plat-label { font-weight: 700; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:not(.active):hover { box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--sh-primary) 30%, transparent); }
.sh-sidebar > .sh-user { flex: 0 0 auto; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card > .sh-order-divider { flex: 0 0 1px; }
body.sh-order-page .sh-grid #sh-brief #sh-svc-title { padding-right: 48px; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row :is(.sh-row-main, .sh-row-name, .sh-row-price) { align-self: center; margin-block: 0; }
body.sh-order-page .sh-rail--aside .sh-assure { display: grid; gap: 16px; }
body.sh-order-page .sh-rail--aside .sh-assure-item { padding: 0; }
body.sh-order-page #main-content.sh-main #sh-order-aside > .sh-order-information { width: 100%; min-width: 0; }
@media (max-width: 1199px) {
 html.sh-content-pending body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container { height: 48px; }
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats { width: 100%; mask-image: none; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) { width: 100%; min-width: 0; }
body.sh-order-page[data-route] :is(.sh-orderbar, .sh-mobar) { display: none !important; }
@media (min-width: 768px) and (max-width: 1199px) {
 body.sh-order-page #main-content.sh-main > .sh-grid > .sh-rail--main { grid-column: 1; grid-row: 1; }
 body.sh-order-page #main-content.sh-main > .sh-grid > #sh-order-aside { grid-column: 1; grid-row: 2; }
}
body.sh-order-page :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] { --sh-desc-number-size: 22px; --sh-desc-stat-size: 22px; --sh-desc-heading: 17px; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker > .sh-order-subtabs { width: calc(100% - 16px); margin-inline: 8px; }
@media (max-width: 767px) { body.sh-order-page #main-content.sh-main .sh-rail--main > .sh-notice-strip { padding-inline: 12px; } }

body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-step--label > .sh-platform-filters {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); width: 100%; flex-basis: 100%; padding: 4px; gap: 4px; margin: 0; background: var(--sh-fill); border-radius: var(--sh-r-ctrl);
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-step--label > .sh-platform-filters > button {
  min-height: 44px; height: 44px; line-height: 20px; padding: 0 4px; border-radius: var(--sh-r-sm); background: transparent; font-weight: 600;
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-step--label > .sh-platform-filters > button[aria-selected="true"] { background: var(--sh-surface); }
body.sh-order-page #main-content.sh-main #sh-order-aside > .sh-order-information > :is(.sh-card, .sh-notice-row, .sh-promo) { border-radius: var(--sh-r-card); }
@media (min-width: 768px) {
 body.sh-order-page .sh-sidebar .sh-navg-item { font-size: var(--sh-t-body); }
 body.sh-order-page .sh-sidebar .sh-brand-name { display: inline; }
 body.sh-order-page .sh-sidebar .sh-user { display: flex; }
}
body.sh-order-page { --sh-first-paint-product-row: 56px; --sh-first-paint-cat-row: 48px; }
body.sh-order-page #main-content.sh-main > .sh-grid { margin-inline: auto; }
@media (min-width: 768px) and (max-width: 1199px) { body.sh-order-page #main-content.sh-main > .sh-grid > #sh-order-aside { display: grid; } }

body:not([data-page^="/child_panel"]) .sh-sidebar .sh-user > .sh-user-wallet { height: 32px; min-height: 32px; flex: 0 0 32px; margin: 0; padding-top: 8px; line-height: 20px; }
body:not([data-page^="/child_panel"]) .sh-sidebar .sh-user > a.sh-btn { margin-top: 0; }

body:not([data-page^="/child_panel"]) .sh-sidebar .sh-user > .sh-2col > .sh-btn { margin-top: 0; }
body.sh-order-page #main-content.sh-main .sh-order-card #sh-related-notice { padding: 8px 16px; margin-block: 0; border: 0; border-radius: var(--sh-r-ctrl); background: var(--sh-fill); box-shadow: none; }
body.sh-order-page #main-content.sh-main .sh-order-card #sh-related-notice .sh-row-between { min-height: 36px; gap: 8px; }
@media (min-width: 768px) {
 body.sh-order-page .sh-sidebar { overflow-y: auto; padding-bottom: 112px; }
 body.sh-order-page .sh-sidebar > * { flex-shrink: 0; }
 body.sh-order-page .sh-sidebar > .sh-navg { flex: 0 0 auto; min-height: auto; overflow: visible; }
}
body:not([data-page^="/child_panel"]) .sh-sidebar .sh-user.sh-d2b-balance-card > a.sh-btn.sh-btn--solid { margin-top: 0; }

body.sh-order-page .sh-header-crumb a { min-width: 0; padding: 0; }
body.sh-order-page .sh-header-crumb > span { color: var(--sh-muted-2); }
body.sh-order-page #sh-desc-sec > .sh-desc-strip { display: none; }
body.sh-order-page #main-content.sh-main .sh-order-card #sh-related-notice { margin-top: 12px; }
@media (min-width: 768px) {
 body.sh-order-page :is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] > .sh-d4-bundle:not(.sh-d4-bundle--mute) { padding-inline: 0; }
 body.sh-order-page #main-content.sh-main .sh-order-card #sh-qty-chips { display: flex; flex-wrap: nowrap; gap: 4px; }
 body.sh-order-page #main-content.sh-main .sh-order-card #sh-qty-chips > .sh-chip { flex: 1 1 0; min-width: 0; height: 32px; min-height: 32px; padding: 0 4px; font-size: var(--sh-t-caption); white-space: nowrap; }
}
@media (max-width: 767px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats { --sh-plat-paged: 1; --sh-plat-page-cols: 5; grid-template-columns: repeat(var(--sh-plat-cols, 10), calc((100% - 16px) / 5)); grid-auto-columns: calc((100% - 16px) / 5); column-gap: 4px; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scroll-padding: 0; scrollbar-width: none; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats .sh-plat-label { letter-spacing: -1px; text-overflow: clip; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats-progress.sh-plats-dots:not([hidden]) { display: flex; width: auto; height: 4px; justify-content: center; gap: 4px; margin: 8px 0 0; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container { mask-image: linear-gradient(to right, #000 calc(100% - 20px), transparent); padding-right: 20px; }
 body.sh-order-page :is(#sh-desc-host, #sh-desc-full) .sh-d4-stat dd { margin-top: 4px; font-size: var(--sh-t-card); line-height: 24px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(15n+1 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+2 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+3 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+4 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+5 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+1 of .sh-plat-skeleton), :nth-child(15n+2 of .sh-plat-skeleton), :nth-child(15n+3 of .sh-plat-skeleton), :nth-child(15n+4 of .sh-plat-skeleton), :nth-child(15n+5 of .sh-plat-skeleton)) { grid-row: 1; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(15n+6 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+7 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+8 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+9 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+10 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+6 of .sh-plat-skeleton), :nth-child(15n+7 of .sh-plat-skeleton), :nth-child(15n+8 of .sh-plat-skeleton), :nth-child(15n+9 of .sh-plat-skeleton), :nth-child(15n+10 of .sh-plat-skeleton)) { grid-row: 2; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > :is(:nth-child(15n+11 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+12 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+13 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+14 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+15 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])), :nth-child(15n+11 of .sh-plat-skeleton), :nth-child(15n+12 of .sh-plat-skeleton), :nth-child(15n+13 of .sh-plat-skeleton), :nth-child(15n+14 of .sh-plat-skeleton), :nth-child(15n+15 of .sh-plat-skeleton)) { grid-row: 3; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > :nth-child(15n+1 of .sh-plat:not([hidden], [data-sh-filtered], [data-sh-collapsed], [data-sh-plat-skeleton])) { scroll-snap-align: start; }
}

@media (min-width: 768px) {
 body.sh-order-page #main-content.sh-main .sh-order-card #sh-qty-chips > .sh-chip { position: relative; }
 body.sh-order-page #main-content.sh-main .sh-order-card #sh-qty-chips > .sh-chip::after { content: ''; position: absolute; inset-inline: 0; top: 50%; height: 44px; transform: translateY(-50%); }
}
@media (min-width: 768px) {
 body.sh-order-page #main-content.sh-main .sh-order-card #fields > #order_quantity { grid-row: 2; }
 body.sh-order-page #main-content.sh-main .sh-order-card #fields > [data-part="qty-tail"] { grid-row: 3; align-self: start; }
 body.sh-order-page #main-content.sh-main .sh-order-card #sh-qty-chips { margin-top: 8px; }
}

@media (min-width: 768px) {
 body.sh-order-page .sh-sidebar { bottom: 128px; padding-bottom: 16px; }
 body.sh-order-page .sh-sidebar::after { content: ''; position: fixed; left: 0; bottom: 0; width: 216px; height: 128px; background: var(--sh-surface); border-right: 1px solid var(--sh-line); pointer-events: none; }
}
@media (min-width: 768px) {
 body.sh-order-page .sh-sidebar { scrollbar-width: thin; scrollbar-color: var(--sh-muted-2) var(--sh-surface); }
}

@media (min-width: 768px) {
 body.sh-order-page .sh-topbar .sh-header-crumb a[href] { position: relative; min-width: 0; min-inline-size: 0; }
 body.sh-order-page .sh-topbar .sh-header-crumb a[href]::after { content: ''; position: absolute; inset-block: 0; left: 50%; width: 44px; transform: translateX(-50%); }

 body.sh-order-page .sh-order-card .sh-trust:has(> [data-sh-refill]) { display: none; }
}
@media (min-width: 1440px) {
 body.sh-order-page #main-content.sh-main .sh-order-card #sh-qty-chips { gap: 6px; }
 body.sh-order-page #main-content.sh-main .sh-order-card #sh-qty-chips > .sh-chip { flex: 1 1 auto; min-width: max-content; padding-inline: 10px; }
}
@media (max-width: 767px) {
 body.sh-order-page #main-content.sh-main #sh-desc-sec .sh-desc-body > #sh-desc-host[data-sh-detail-page] { padding-block: 0; margin-top: 0; background: var(--sh-surface); }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat.active .sh-plat-label { width: calc(100% - 8px); letter-spacing: -1px; }
}
@media (max-width: 360px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat.active .sh-plat-label { letter-spacing: -1px; }
}
@media (max-width: 340px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat.active .sh-plat-label { letter-spacing: -1px; }
}

@media (max-width: 767px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row { height: auto; min-height: 56px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; white-space: normal; word-break: keep-all; overflow-wrap: anywhere; }

 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) { height: 72px; min-height: 72px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats .sh-plat-label { flex-shrink: 0; height: 28px; line-height: 14px; letter-spacing: -1px; white-space: normal; word-break: keep-all; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats .sh-plat-label wbr { display: inline; }
 body.sh-order-page[data-route] .sh-mobar { display: flex !important; left: 0; right: 0; bottom: var(--sh-tabbar-safe); border: 0; border-top: 1px solid var(--sh-line); border-radius: 0; box-shadow: none; background: var(--sh-surface); }
 body.sh-order-page .sh-mobar .sh-mobar-inner { padding: 0; }
 body.sh-order-page .sh-mobar .sh-mobar-body > .sh-grow { align-items: center; }
 body.sh-order-page .sh-mobar .sh-mobar-body { min-height: 64px; padding-inline: max(16px, env(safe-area-inset-left)) max(16px, env(safe-area-inset-right)); }
 body.sh-order-page.sh-kb-open .sh-mobar { display: none !important; }
}
@media (max-width: 767px) {
 body.sh-order-page { --sh-tabbar-safe: calc(var(--sh-tabbar-h) + 1px + env(safe-area-inset-bottom)); }
 body.sh-order-page .sh-tabbar-inner { height: calc(var(--sh-tabbar-h) + env(safe-area-inset-bottom)); }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row--long-name { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0 8px; padding-block: 6px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row--long-name .sh-row-main { display: contents; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row--long-name .sh-row-name { grid-column: 1 / -1; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row--long-name .sh-row-tags { grid-column: 1; grid-row: 2; max-width: 100%; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row--long-name .sh-row-price { grid-column: 2; grid-row: 2; justify-self: end; line-height: 16px; }
}

@media (min-width: 768px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats { --sh-picker-grid-limit: 5; grid-template-columns: repeat(var(--sh-picker-columns, 5), minmax(0, 1fr)); }
}
@media (min-width: 1200px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats { --sh-picker-grid-limit: 9; grid-template-columns: repeat(var(--sh-picker-columns, 9), minmax(0, 1fr)); }
}

body.sh-order-page { --sh-sidebar: 250px; }
@media (min-width: 768px) {
 body.sh-order-page .sh-topbar { margin-left: 250px; }
 body.sh-order-page #main-content.sh-main { margin-left: 250px; }
 body.sh-order-page .sh-sidebar { width: 250px; }
 body.sh-order-page .sh-sidebar::after { width: 250px; }
}

body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) {
 height: auto; min-height: 0; padding: 0; gap: 6px; justify-content: flex-start; background: transparent; box-shadow: none;
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat.active { background: transparent; box-shadow: none; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:not(.active):hover { box-shadow: none; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats .sh-plat .sh-plat-icon {
 width: 48px; min-width: 48px; height: 48px; flex: 0 0 48px; border-radius: 14px; background: var(--sh-fill); box-shadow: none;
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats .sh-plat .sh-plat-icon > :is(svg, img) { width: 30px; height: 30px; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat.active .sh-plat-icon { background: var(--sh-surface); box-shadow: inset 0 0 0 2px var(--sh-primary); }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:not(.active):hover .sh-plat-icon { box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--sh-primary) 30%, transparent); }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat.active .sh-plat-label { color: var(--sh-primary); font-weight: 700; }
@media (min-width: 768px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats { row-gap: 16px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) { gap: 8px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats .sh-plat-label { width: 100%; line-height: 16px; }
}
@media (max-width: 767px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats { row-gap: 8px; }

 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) { height: auto; min-height: 70px; gap: 6px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats .sh-plat-label { height: auto; min-height: 16px; line-height: 16px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat.active .sh-plat-label { width: 100%; }
}

@media (max-width: 1199px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body {
  grid-template-columns: clamp(128px, calc(100% - 202px), 148px) minmax(0, 1fr); align-items: start; gap: 8px; padding: 6px; margin-inline: -8px; border-radius: var(--sh-r-ctrl);
 }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container {
  display: flex; flex-direction: column; flex-wrap: nowrap; overflow: visible; max-height: none; gap: 4px; padding: 0; mask-image: none;
 }

 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat-group { display: flex; flex-direction: column; gap: 8px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat-group-tabs { display: flex; flex-direction: column; gap: 4px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat-group-head { display: flex; align-items: flex-end; min-height: 0; padding: 8px 8px 0; white-space: normal; }
 html.sh-content-pending body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container { height: calc(var(--sh-first-paint-cat-row) * 4 + 12px); }

 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker > .sh-order-subtabs { width: calc(100% + 4px); margin-inline: -2px; }

 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 8px; height: auto; min-height: 56px; padding: 10px; border-radius: var(--sh-r-ctrl); box-shadow: none;
 }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row:is(.active, .is-selected, [aria-selected="true"]) { background: var(--sh-surface); box-shadow: none; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-main { display: contents; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-name {
  display: block; grid-column: 1 / -1; line-height: 20px; white-space: normal; overflow: visible; -webkit-line-clamp: unset; word-break: keep-all; overflow-wrap: anywhere;
 }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-tags { grid-column: 1; grid-row: 2; align-self: center; max-width: 100%; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-price { grid-column: 2; grid-row: 2; justify-self: end; align-self: center; line-height: 20px; }
}
@media (max-width: 767px) {

 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-favbtn { display: none; }
}

@media (max-width: 767px) {

 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker { overflow: visible; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body { margin-inline: -20px; border-radius: 0; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker > .sh-order-subtabs { width: calc(100% + 28px); margin-inline: -14px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) {
  width: 100%; flex: none; height: auto; min-height: 44px; padding: 6px 12px; gap: 6px; border-radius: var(--sh-r-ctrl); font-size: var(--sh-t-help); font-weight: 700; line-height: 18px; text-align: left;
 }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat :is(.sh-cat-name, .sh-cat-label) {
  flex: 1 1 auto; min-width: 0; width: auto; white-space: normal; word-break: keep-all; overflow-wrap: anywhere;
 }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat :is(.sh-cat-action-icon, .sh-cat-logo-holder) { flex: 0 0 22px; width: 22px; min-width: 22px; height: 22px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container .sh-cat :is(.sh-cat-action-icon, .sh-cat-logo-holder) > :is(svg, img) { width: 22px; height: 22px; }
}
@media (max-width: 359px) {

 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row { padding-inline: 6px; }
}

@media (min-width: 768px) and (max-width: 1199px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-row-name { grid-column: 1; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #sh-rows > .sh-row .sh-favbtn { grid-column: 2; grid-row: 1; justify-self: end; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker .sh-picker-body { grid-template-columns: max-content minmax(0, 1fr); }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container { min-width: 168px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) { width: 100%; }
}

@media (min-width: 1200px) {
 body.sh-order-page #main-content.sh-main > .sh-grid > .sh-rail--main { grid-column: 1; grid-row: 1; align-self: start; }
 body.sh-order-page #main-content.sh-main > .sh-grid > .sh-rail--aside { grid-column: 2; grid-row: 1; }
}

@media (max-width: 767px) {
 body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec { width: auto; margin-inline: -16px; padding: 0; border-radius: 0; }
}
body.sh-order-page :is(#sh-desc-host, #sh-desc-full) .sh-d4-group:has(> :is(.sh-desc-price, .sh-alert, .sh-d4-effect-pair)) { padding: 0; background: transparent; border-radius: 0; }

body.sh-order-page {
 --sh-b-canvas: #F2F4F6; --sh-b-card: #FFFFFF; --sh-b-fill: #F2F4F6; --sh-b-fill-2: #F9FAFB; --sh-b-line: #EEF0F3;
 --sh-b-ink: #191F28; --sh-b-ink-2: #4E5968; --sh-b-ink-3: #6B7684;
 --sh-b-pri: #5D00C8; --sh-b-pri-soft: #F3ECFD;
 --sh-b-blue: #3182F6; --sh-b-blue-soft: #E8F3FF; --sh-b-green: #03A66A; --sh-b-green-soft: #E6F8EF;
 --sh-b-orange: #F06A00; --sh-b-orange-soft: #FFF1E3; --sh-b-amber-soft: #FFF8E7;
 --sh-b-r-card: 20px; --sh-b-r-ctl: 14px; --sh-b-pad: 20px; --sh-b-gap: 12px;
 --sh-b-cat: clamp(112px, calc(100% - 176px), 140px);
 background: var(--sh-b-canvas);
}

@media (max-width: 389px) { body.sh-order-page { --sh-b-cat: clamp(112px, calc(100% - 164px), 140px); } }
@media (min-width: 768px) { body.sh-order-page { --sh-b-cat: 200px; } }
@media (min-width: 1200px) { body.sh-order-page { --sh-b-r-card: 24px; --sh-b-pad: 28px; --sh-b-gap: 16px; --sh-b-cat: 208px; } }

body.sh-order-page #main-content.sh-main, body.sh-order-page .sh-app { background: var(--sh-b-canvas); }
body.sh-order-page #main-content.sh-main .sh-grid > .sh-rail { gap: var(--sh-b-gap); }
body.sh-order-page #main-content.sh-main .sh-grid > .sh-rail--main > .sh-notice-strip { width: auto; margin: 0; border: 0; border-radius: 16px; background: var(--sh-b-card); }
body.sh-order-page #main-content.sh-main .sh-grid .sh-notice-strip-title { color: var(--sh-b-ink); }

@media (max-width: 767px) { body.sh-order-page #main-content.sh-main .sh-grid > .sh-rail--main > .sh-notice-strip { margin-inline: -16px; border-radius: 0; } }
@media (min-width: 768px) { body.sh-order-page #main-content.sh-main .sh-grid .sh-notice-strip-title { font-size: 15px; } }
body.sh-order-page #main-content.sh-main .sh-grid .sh-banner { border-radius: var(--sh-b-r-card); overflow: hidden; }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow {
 display: flex; flex-direction: column; gap: var(--sh-b-gap); padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; overflow: visible;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-card-head { margin: 0; padding: 8px 4px 0; background: transparent; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-card-head .sh-h1 { font-size: 26px; letter-spacing: -.03em; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-card-head .sh-lead,
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-input-guide:not(:has(> :not([hidden]))) { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard {
 margin: 0; padding: var(--sh-b-pad); border: 0; border-radius: var(--sh-b-r-card); background: var(--sh-b-card); box-shadow: none;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-step-no { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-step-title { font-size: 19px; font-weight: 700; line-height: 1.35; letter-spacing: -.02em; color: var(--sh-b-ink); }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow :is(.sh-ocard--svc, .sh-ocard--prod) > .sh-step {
 position: static; display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 0 0 16px; padding: 0;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow :is(.sh-ocard--svc, .sh-ocard--prod) > .sh-step > .sh-step-title {
 position: static; display: flex; flex: 1 1 auto; align-items: center; gap: 12px; width: auto; height: auto; margin: 0; overflow: visible; clip: auto; clip-path: none; white-space: nowrap;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow :is(.sh-ocard--svc, .sh-ocard--prod) > .sh-step > .sh-step-title::before,
body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-title::before {
 content: ""; flex: 0 0 36px; width: 36px; height: 36px; border-radius: 12px; background: var(--sh-b-fill) var(--sh-b-ic) center / 20px no-repeat;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--svc > .sh-step > .sh-step-title::before { --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23191F28' stroke-width='2' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7.5' height='7.5' rx='2'/%3E%3Crect x='13.5' y='3' width='7.5' height='7.5' rx='2'/%3E%3Crect x='3' y='13.5' width='7.5' height='7.5' rx='2'/%3E%3Crect x='13.5' y='13.5' width='7.5' height='7.5' rx='2'/%3E%3C/svg%3E"); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod > .sh-step > .sh-step-title::before { --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23191F28' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M8 6h13M8 12h13M8 18h13'/%3E%3Ccircle cx='3.5' cy='6' r='1' fill='%23191F28'/%3E%3Ccircle cx='3.5' cy='12' r='1' fill='%23191F28'/%3E%3Ccircle cx='3.5' cy='18' r='1' fill='%23191F28'/%3E%3C/svg%3E"); }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--svc .sh-platform-filters {
 position: static; display: grid; grid-template-columns: repeat(4, 1fr); flex: 0 0 100%; gap: 4px; width: 100%; margin: 0; padding: 4px; border: 0; border-radius: 14px; background: var(--sh-b-fill);
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--svc .sh-platform-filters > button {
 height: 40px; min-height: 40px; padding: 0; border: 0; border-radius: 10px; background: transparent; box-shadow: none; font-size: 15px; font-weight: 600; color: var(--sh-b-ink-3);
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--svc .sh-platform-filters > button[aria-selected="true"] { background: var(--sh-b-card); color: var(--sh-b-ink); box-shadow: 0 1px 3px rgba(0, 0, 0, .08); }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) { overflow: visible; padding: 0 0 4px; gap: 6px; }
@media (min-width: 768px) { body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) { gap: 8px; } }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats .sh-plat .sh-plat-icon { border-radius: 16px; background: var(--sh-b-fill); }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat.active .sh-plat-icon { background: var(--sh-b-pri-soft); box-shadow: inset 0 0 0 2px var(--sh-b-pri); }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) .sh-plat-label {
 overflow: visible; width: max-content; max-width: none; height: auto; min-height: 17px; max-height: none; white-space: nowrap; font-size: 13px; font-weight: 500; line-height: 17px; letter-spacing: -.04em; text-align: center; color: var(--sh-b-ink-2); -webkit-line-clamp: unset;
}
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n).active .sh-plat-label { width: max-content; font-weight: 700; color: var(--sh-b-pri); }

body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) .sh-plat-label { max-width: calc(100% + 8px); overflow: hidden; text-overflow: ellipsis; }
@media (min-width: 768px) { body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) .sh-plat-label { max-width: calc(100% + 16px); } }

@media (max-width: 359px) { body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) .sh-plat-label { letter-spacing: -.075em; } }

@media (max-width: 767px) { body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) .sh-plat-label.sh-plat-label--break { width: 100%; white-space: normal; letter-spacing: -.075em; } }

body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n):hover,
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n):hover .sh-plat-icon { transform: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-plats-progress { margin-top: 12px; }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod { position: relative; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod > .sh-step .sh-crumb { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod > .sh-step .sh-step-tools { order: 3; display: flex; flex: 0 0 100%; width: 100%; margin: 0; position: relative; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod .sh-step-searchbox { flex: 1 1 auto; width: 100%; max-width: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod .sh-step-searchbox::before { left: 16px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod input#sh-svc-search,
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod input#sh-guest-search {
 width: 100%; height: 48px; padding: 0 104px 0 44px; border: 0; border-radius: var(--sh-b-r-ctl); background: var(--sh-b-fill); font-size: 16px; text-align: left;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod .sh-step-link {
 position: absolute; top: 50%; right: 12px; transform: translateY(-50%); min-height: 44px; font-size: 14px; font-weight: 600; color: var(--sh-b-pri);
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker { margin: 0; overflow: visible; }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker > .sh-order-subtabs { width: 100%; margin: 0 0 12px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker .sh-picker-body {
 display: grid; grid-template-columns: var(--sh-b-cat) minmax(0, 1fr); align-items: stretch; gap: 0; height: auto; max-height: 360px; margin: 0; padding: 0;
 overflow: hidden; border: 1px solid var(--sh-b-line); border-radius: 16px; background: transparent;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker :is(#category-container, #sh-rows) {
 min-width: 0; max-height: 358px; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container {
 display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0; width: 100%; height: auto; padding: 0; border-right: 1px solid var(--sh-b-line); background: var(--sh-b-fill-2); mask-image: none;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container .sh-cat-group,
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container .sh-cat-group-tabs { gap: 0; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container .sh-cat-group-head { align-items: flex-start; padding: 14px 12px 8px; background: transparent; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container .sh-cat-group-head .sh-list-help { margin-top: -12px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container .sh-cat-group-title { font-size: 14px; font-weight: 700; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) {
 flex: none; justify-content: flex-start; gap: 0; width: 100%; height: auto; min-height: 56px; padding: 10px 10px 10px 12px; border: 0; border-radius: 0; background: transparent; box-shadow: none; text-align: left;
 font-size: 15px; font-weight: 500; line-height: 1.35;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container .sh-cat :is(.sh-cat-action-icon:not(.sh-cat-logo-holder), .sh-cat-count) { display: none; }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only):has(> .sh-cat-logo-holder) { gap: 8px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container .sh-cat .sh-cat-logo-holder { flex: 0 0 var(--sh-picker-logo, 26px); width: var(--sh-picker-logo, 26px); min-width: var(--sh-picker-logo, 26px); height: var(--sh-picker-logo, 26px); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container .sh-cat .sh-cat-logo-holder > img { width: var(--sh-picker-logo, 26px); height: var(--sh-picker-logo, 26px); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container .sh-cat :is(.sh-cat-name, .sh-cat-label) {
 min-width: 0; font-size: 15px; font-weight: 500; line-height: 1.35; white-space: normal; word-break: keep-all; overflow-wrap: anywhere; color: var(--sh-b-ink-3);
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container button.sh-cat.category-box.active { background: var(--sh-b-card); box-shadow: inset 3px 0 0 var(--sh-b-pri); font-weight: 700; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container .sh-cat.active :is(.sh-cat-name, .sh-cat-label) { font-weight: 700; color: var(--sh-b-ink); }

@media (max-width: 389px) {
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) { padding: 10px 8px 10px 10px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only):has(> .sh-cat-logo-holder) { gap: 6px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container .sh-cat :is(.sh-cat-name, .sh-cat-label) { font-size: 14px; }
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows { display: flex; flex-direction: column; gap: 0; padding: 0; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row {
 position: relative; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 4px; height: auto; min-height: 72px; margin: 0; padding: 12px 40px 12px 16px;
 border: 0; border-bottom: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; box-shadow: none; text-align: left;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row::before { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row .sh-row-main { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; width: 100%; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row .sh-row-name {
 display: block; overflow: visible; font-size: 16px; font-weight: 600; line-height: 1.4; white-space: normal; word-break: keep-all; overflow-wrap: anywhere; color: var(--sh-b-ink); -webkit-line-clamp: unset;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row .sh-row-tags > * { padding: 0 6px; border-radius: 6px; font-size: 12px; line-height: 20px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row .sh-row-price {
 align-self: flex-start; margin: 0; font-size: 15px; font-weight: 700; line-height: 20px; white-space: nowrap; text-align: left; color: var(--sh-b-ink-2);
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row :is(.sh-row-price small, .sh-row-unit) { font-size: 13px; font-weight: 500; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row .sh-favbtn { position: absolute; top: 50%; right: 8px; transform: translateY(-50%); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row:is(.active, .is-selected, [aria-selected="true"]) { background: var(--sh-b-pri-soft); box-shadow: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row:is(.active, .is-selected, [aria-selected="true"]) .sh-row-name { color: var(--sh-b-pri); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows .sh-list-divider { padding: 16px 16px 6px; border: 0; background: transparent; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows .sh-list-divider,
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows .sh-list-divider * { font-size: 14px; font-weight: 700; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows :is(.sh-list-help summary, .sh-list-help-text) { font-size: 14px; line-height: 1.5; }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input { display: flex; flex-direction: column; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input > * { width: 100%; }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #fields { display: flex; flex-direction: column; align-items: stretch; grid-template-columns: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #fields > * { grid-column: auto; grid-row: auto; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #fields > :is(.hidden, [hidden], .sh-hidden) { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input #sh-brief {
 position: relative; margin: 0 0 20px; padding: 0 0 20px; border: 0; border-bottom: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; box-shadow: none;
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-brief .sh-brief-head { display: block; margin: 0; padding-right: 48px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-brief #sh-svc-title { font-size: 20px; font-weight: 700; line-height: 1.4; letter-spacing: -.02em; white-space: normal; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-brief .sh-rate { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 6px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-brief .sh-rate[hidden]:has(> .sh-brief-was:not([hidden])) { display: flex; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-brief .sh-rate[hidden] > .sh-rate-btn { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-brief .sh-rate-btn { height: auto; min-height: 0; padding: 0; font-size: 14px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-brief .sh-rate-btn span:last-child { color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-brief .sh-brief-was { font-size: 14px; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-brief :is(#sh-svc-summary, .sh-brief-facts) { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-brief .sh-summary-favorite { position: absolute; top: -4px; right: -8px; }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input > #sh-related-notice { margin: 0 0 20px; padding: 12px 14px; border: 0; border-radius: 12px; background: var(--sh-b-fill); box-shadow: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input > #sh-related-notice[hidden] { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input .sh-step:not([hidden]) { display: flex; align-items: center; justify-content: space-between; margin: 0 0 10px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input :is(.sh-step.sh-mt-22, #order_step5 > .sh-step) { margin-top: 24px; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-guest-order.sh-order-flow .sh-ocard--input > :is(#order_step4, #order_step5) { margin: 0; }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input .sh-step-title:not(.sh-step-title--fit, .sh-step-title--tight) { font-size: 17px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input .sh-step-side {
 height: 44px; min-height: 44px; margin: -12px 0; padding: 0; border: 0; background: transparent; box-shadow: none; font-size: 14px; font-weight: 600; color: var(--sh-b-pri);
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-step-aside { margin-left: auto; font-size: 14px; color: var(--sh-b-ink-3); white-space: nowrap; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-qty-range:not(.sh-qty-range--msg),
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-linknote:not(.sh-linknote--ok, .sh-linknote--bad),
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input .sh-qty-total { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow :is(.sh-input:not(#sh-svc-search, #sh-guest-search), .form-control) {
 width: 100%; height: 56px; min-height: 56px; padding: 0 16px; border: 0; border-radius: var(--sh-b-r-ctl); background: var(--sh-b-fill); box-shadow: none; font-size: 17px; color: var(--sh-b-ink);
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow :is(.sh-input:not(#sh-svc-search, #sh-guest-search), .form-control):is(textarea) { height: auto; min-height: 120px; padding: 14px 16px; }

body.sh-order-page #main-content.sh-main .sh-grid #order-form.sh-order-flow #order_comment.form-group { width: 100%; }
body.sh-order-page #main-content.sh-main .sh-grid #order-form.sh-order-flow #order_comment.form-group textarea.form-control { width: 100%; height: 132px; min-height: 132px; line-height: 1.5; resize: vertical; }
body.sh-order-page #main-content.sh-main .sh-grid #order-form.sh-order-flow .sh-comment-count { margin: 8px 0 0; font-size: 14px; font-weight: 600; color: var(--sh-b-ink-2); }
body.sh-order-page #main-content.sh-main .sh-grid #order-form.sh-order-flow .sh-comment-count:empty,
body.sh-order-page #main-content.sh-main .sh-grid #order-form.sh-order-flow .sh-comment-count[hidden] { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid #order-form.sh-order-flow .sh-comment-count--bad { color: var(--sh-danger, #D92D20); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow :is(.sh-input, .form-control):focus { background: var(--sh-b-card); box-shadow: inset 0 0 0 2px var(--sh-b-pri); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #order_quantity { position: static; padding: 0; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #order_quantity,
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #order_quantity input#field-orderform-fields-quantity { flex: 1 1 auto; width: 100%; min-width: 100%; max-width: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input .sh-chips { gap: 6px; margin-top: 10px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input .sh-chips .sh-chip {
 flex: none; height: 40px; min-height: 40px; padding: 0 14px; border: 0; border-radius: 12px; background: var(--sh-b-fill); font-size: 14px; font-weight: 600; color: var(--sh-b-ink-2);
}
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #dripfeed { margin-top: 12px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-repeat { margin-top: 12px; padding-top: 8px; border-top: 1px solid var(--sh-b-line); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-repeat-head { min-height: 56px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-repeat-title { font-size: 17px; font-weight: 700; color: var(--sh-b-ink); }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-drawer-entry { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-drawer-entry .sh-drawer-entry-steps { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-drawer-entry :is(h2, h3, .sh-drawer-entry-title) { font-size: 17px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-drawer-entry .sh-drawer-entry-preview li { min-height: 64px; border: 0; border-radius: 16px; background: var(--sh-b-fill); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-drawer-entry .sh-drawer-entry-preview :is(b, strong) { font-size: 16px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-drawer-entry .sh-drawer-entry-preview small,
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-drawer-entry .sh-drawer-help { font-size: 14px; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-drawer-entry .sh-btn--primary { height: 56px; border-radius: 16px; font-size: 17px; font-weight: 700; }

body.sh-order-page[data-sh-order-mode="drawer"]:not([data-sh-drawer-applied]) #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay { display: none; }

body.sh-order-page[data-sh-order-mode="drawer"]:not([data-sh-drawer-applied]) #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--input { padding-bottom: var(--sh-b-pad); border-radius: var(--sh-b-r-card); }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay { display: flex; flex-direction: column; gap: 0; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay > .sh-stack { display: contents; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay .sh-total { order: 1; display: flex; flex-direction: row; align-items: center; justify-content: space-between; margin: 0; padding: 0; border: 0; background: transparent; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay .sh-total-cap { font-size: 16px; font-weight: 600; color: var(--sh-b-ink-2); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay :is(.sh-total-value, #charge_text, #guest_total) { font-size: 28px; font-weight: 800; line-height: 1.2; letter-spacing: -.03em; color: var(--sh-b-ink); }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay:not([data-sh-state="ready"]) .sh-total-value { min-width: 120px; min-height: 34px; border-radius: 8px; background: var(--sh-b-line); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay:not([data-sh-state="ready"]) :is(#charge_text, #guest_total) { visibility: hidden; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay .sh-total-unit { order: 1; margin: 6px 0 0; font-size: 15px; font-weight: 600; text-align: right; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay .sh-total-unit { font-size: 15px; font-weight: 600; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay .sh-money-head { order: 2; display: flex; justify-content: space-between; margin: 6px 0 0; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay .sh-money-head .sh-step-title { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay .sh-money-head .sh-sub { display: flex; justify-content: space-between; width: 100%; font-size: 15px; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay .sh-money-head .sh-sub b { font-size: 15px; color: var(--sh-b-ink-2); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay .sh-money-head .sh-linkbtn { min-height: 44px; font-size: 14px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay :is(.sh-money-short, .sh-trust) { order: 3; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay > .sh-btn--primary.sh-btn--lg,
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay #order_button { order: 4; width: 100%; margin: 18px 0 0; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay .sh-btn--primary.sh-btn--lg { height: 56px; min-height: 56px; border-radius: 16px; font-size: 18px; font-weight: 700; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay #sh-consult-cta { order: 5; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay .sh-restrict-note {
 order: 6; margin: 14px 0 0; padding: 0; border: 0; background: transparent; font-size: 14px; line-height: 1.5; text-align: left; color: var(--sh-b-ink-3);
}
@media (max-width: 1199px) {
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--svc > .sh-step > .sh-step-title { display: none; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--svc > .sh-step { margin-bottom: 14px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod > .sh-step { flex-wrap: nowrap; margin-bottom: 14px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod > .sh-step > .sh-step-title { flex: 0 0 auto; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod > .sh-step .sh-step-tools { order: 0; flex: 1 1 auto; min-width: 0; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod :is(input#sh-svc-search, input#sh-guest-search) { height: 44px; padding: 0 96px 0 14px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--prod .sh-step-searchbox::before { display: none; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--input #sh-brief { margin-bottom: 16px; padding-bottom: 16px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-brief #sh-svc-title { font-size: 18px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) { align-items: flex-start; min-height: 52px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row { min-height: 64px; padding-block: 10px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-repeat { margin-top: 4px; padding-top: 4px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-repeat-head { min-height: 48px; }

 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--input:has(+ .sh-ocard--pay) { padding-bottom: 8px; border-radius: var(--sh-b-r-card) var(--sh-b-r-card) 0 0; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--input + .sh-ocard--pay { margin-top: calc(-1 * var(--sh-b-gap)); padding-top: 16px; border-radius: 0 0 var(--sh-b-r-card) var(--sh-b-r-card); box-shadow: inset 0 1px 0 var(--sh-b-line); }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--input + .sh-alert + .sh-ocard--pay { margin-top: 0; }
}
@media (max-width: 767px) {

 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker .sh-picker-body { margin-inline: 0; border-radius: 16px; }

 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row { padding-inline: 14px 12px; }

 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow:has(:is([data-sh-favorites-tile].active, #sh-fav-btn[aria-pressed="true"])) .sh-picker #sh-rows > .sh-row { padding-right: 40px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow:has(:is([data-sh-favorites-tile].active, #sh-fav-btn[aria-pressed="true"])) .sh-picker #sh-rows > .sh-row .sh-favbtn { display: flex; }
}

body.sh-order-page[data-route] .sh-mobar { border: 0; background: transparent; box-shadow: none; }
body.sh-order-page[data-route] .sh-mobar .sh-mobar-inner { padding: 12px 16px; border-radius: 20px 20px 0 0; background: var(--sh-b-card); box-shadow: 0 -6px 20px rgba(0, 0, 0, .07); }
body.sh-order-page[data-route] .sh-mobar .sh-mobar-body { align-items: center; gap: 12px; }
body.sh-order-page[data-route] .sh-mobar .sh-mobar-name { font-size: 14px; color: var(--sh-b-ink-3); }
body.sh-order-page[data-route] .sh-mobar .sh-mobar-quantity { display: none; }
body.sh-order-page[data-route] .sh-mobar :is(.sh-mobar-total, .sh-mobar-total *) { font-size: 20px; font-weight: 800; color: var(--sh-b-ink); }
body.sh-order-page[data-route] .sh-mobar .sh-btn--primary { min-width: 140px; height: 56px; border-radius: 16px; font-size: 17px; font-weight: 700; }
body.sh-order-page :is(.sh-mobar, .sh-orderbar)[data-sh-state="idle"] :is(.sh-mobar-total, .sh-orderbar-total) { width: 88px; min-height: 24px; border-radius: 8px; background: var(--sh-b-line); }
body.sh-order-page :is(.sh-mobar, .sh-orderbar)[data-sh-state="idle"] :is([data-sh-bar-total], [data-sh-total]) { visibility: hidden; }

body.sh-order-page :is(.sh-mobar, .sh-orderbar)[data-sh-state="idle"][data-sh-idle="quantity"] :is(.sh-mobar-total, .sh-orderbar-total) { width: auto; border-radius: 0; background: none; }
body.sh-order-page :is(.sh-mobar, .sh-orderbar)[data-sh-state="idle"][data-sh-idle="quantity"] :is([data-sh-bar-total], [data-sh-total]) { display: none; }
body.sh-order-page :is(.sh-mobar, .sh-orderbar)[data-sh-state="idle"][data-sh-idle="quantity"] :is(.sh-mobar-total, .sh-orderbar-total)::before { content: "-"; content: "-" / ""; color: var(--sh-b-ink-3); }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec { width: auto; margin: 12px 0 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec > .sh-step, body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec > #order_step3 > .sh-step { margin: 0 0 12px; padding: 0 4px; background: transparent; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec > .sh-step .sh-step-title, body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec > #order_step3 > .sh-step .sh-step-title { font-size: 24px; font-weight: 800; letter-spacing: -.03em; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec > .sh-tabs, body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec > #order_step3 > .sh-tabs {
 position: sticky; top: 0; z-index: 5; display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 0 0 var(--sh-b-gap); padding: 4px; overflow: visible;
 border: 0; border-radius: 16px; background: var(--sh-b-card); box-shadow: 0 1px 0 var(--sh-b-line); mask-image: none;
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabs > .sh-tab {
 display: flex; align-items: center; justify-content: center; gap: 6px; height: 48px; min-height: 48px; border: 0; border-radius: 12px; background: transparent; box-shadow: none; font-size: 16px; font-weight: 600; color: var(--sh-b-ink-3);
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabs > .sh-tab::after { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabs > .sh-tab.active { background: var(--sh-b-ink); color: #FFFFFF; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabs > .sh-tab span span { padding: 0; background: transparent; font-size: 12px; color: inherit; opacity: .8; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec > #order_step3,
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec :is(.sh-box, .sh-tabpanel, .sh-desc-body) { margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec #sh-desc-host { display: flex; flex-direction: column; gap: var(--sh-b-gap); max-width: none; margin: 0; padding: 0; background: transparent; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-desc-body > #sh-desc-host[data-sh-detail-page] { background: transparent; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-bundle { display: contents; background: transparent; }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host :is(.sh-d4-bundle-kicker, .sh-d4-kicker, .sh-d4-hero-image, .sh-d4-detail-footer, .sh-d4-image-zoom),
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host :is([data-sh-detail-section="price"], [data-sh-detail-section="promo"]),
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-stats .sh-d4-stat:is([data-sh-stat="rate"], [data-sh-stat="quantity"]),
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec :is(.sh-mobile-desc-more, #sh-desc-more) { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-detail-section {
 margin: 0; padding: 24px var(--sh-b-pad); border: 0; border-radius: var(--sh-b-r-card); background: var(--sh-b-card); box-shadow: none;
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host :is(.sh-d4-group, .sh-d4-timeline-stack) { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-section-header { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; min-height: 40px; margin: 0 0 16px; padding: 0; border: 0; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-section-header::before, body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-section-header::after, body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-doc-h::after { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-caution-icon { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-section-header .sh-doc-h {
 flex: 1 1 auto; margin: 0; padding: 0; border: 0; font-size: 20px; font-weight: 700; line-height: 1.35; letter-spacing: -.02em; color: var(--sh-b-ink);
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-section-note { flex: 0 0 auto; font-size: 14px; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-ic {
 flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; background: var(--sh-b-ic-bg, var(--sh-b-fill)) var(--sh-b-ic) center / 22px no-repeat;
 --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234E5968' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v6M12 7.5v.01'/%3E%3C/svg%3E");
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host [data-sh-detail-section="effect"] .sh-d4-ic { --sh-b-ic-bg: var(--sh-b-green-soft); --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2303A66A' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 17l6-6 4 4 8-8M15 7h6v6'/%3E%3C/svg%3E"); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host [data-sh-detail-section="audience"] .sh-d4-ic { --sh-b-ic-bg: var(--sh-b-blue-soft); --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233182F6' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c1-4 4-6 8-6s7 2 8 6'/%3E%3C/svg%3E"); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host [data-sh-detail-section="compose"] .sh-d4-ic { --sh-b-ic-bg: var(--sh-b-green-soft); --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2303A66A' stroke-width='2.2' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 4.5v9L12 21l-8-4.5v-9z'/%3E%3Cpath d='M4 7.5l8 4.5 8-4.5M12 12v9'/%3E%3C/svg%3E"); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host [data-sh-detail-section="order"] .sh-d4-ic { --sh-b-ic-bg: var(--sh-b-blue-soft); --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233182F6' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M10 14a5 5 0 007 0l3-3a5 5 0 00-7-7l-1 1M14 10a5 5 0 00-7 0l-3 3a5 5 0 007 7l1-1'/%3E%3C/svg%3E"); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host [data-sh-detail-section="process"] .sh-d4-ic { --sh-b-ic-bg: var(--sh-b-blue-soft); --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233182F6' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E"); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host [data-sh-detail-section="compare"] .sh-d4-ic { --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234E5968' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 4v16M17 4v16M3 8h8M13 16h8'/%3E%3C/svg%3E"); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host [data-sh-detail-section="refill"] .sh-d4-ic { --sh-b-ic-bg: var(--sh-b-green-soft); --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2303A66A' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 11a8 8 0 10-2.3 5.7M20 5v6h-6'/%3E%3C/svg%3E"); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host [data-sh-detail-section="precheck"] .sh-d4-ic { --sh-b-ic-bg: var(--sh-b-blue-soft); --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233182F6' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='18' rx='3'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E"); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host [data-sh-detail-section="caution"] .sh-d4-ic { --sh-b-ic-bg: var(--sh-b-orange-soft); --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F06A00' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.3 3.9L1.8 18a2 2 0 001.7 3h17a2 2 0 001.7-3L13.7 3.9a2 2 0 00-3.4 0z'/%3E%3Cpath d='M12 9v4M12 17h.01'/%3E%3C/svg%3E"); }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-detail-title { margin: 0 0 10px; font-size: 22px; font-weight: 800; line-height: 1.4; letter-spacing: -.03em; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host :is(.sh-d4-lead, .sh-d4-lead p) { margin: 0; font-size: 16px; line-height: 1.7; color: var(--sh-b-ink-2); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-stats { display: flex; flex-direction: column; gap: 0; margin: 16px 0 0; padding: 0; border: 0; background: transparent; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-stats .sh-d4-stat {
 display: flex; flex-direction: row; align-items: center; justify-content: space-between; min-height: 52px; padding: 0; border: 0; border-top: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; text-align: left;
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-stats .sh-d4-stat dt { margin: 0; font-size: 15px; font-weight: 500; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-stats .sh-d4-stat dd { margin: 0; font-size: 16px; font-weight: 700; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-stats .sh-d4-stat-unit { font-size: 15px; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-stats .sh-d4-stat:is([data-sh-stat="rate"], [data-sh-stat="quantity"]) { display: none; }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-effect-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-effect-example { margin: 0; padding: 12px; border: 0; border-radius: 16px; background: var(--sh-b-fill); box-shadow: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-effect-image { border-radius: 10px; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-effect-example figcaption { margin-top: 10px; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-effect-label { font-size: 14px; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-effect-value { font-size: 20px; font-weight: 800; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-effect-delta { padding: 2px 6px; border-radius: 6px; background: var(--sh-b-green-soft); font-size: 12px; color: var(--sh-b-green); }

.sh-d4-effect-example > .sh-image-trigger.sh-d4-effect-trigger { display: block; position: relative; width: 100%; max-width: 200px; min-height: 0; margin: 0 auto; padding: 0; border: 0; border-radius: var(--sh-r-sm); background: transparent; cursor: zoom-in; }
.sh-d4-effect-example > .sh-image-trigger.sh-d4-effect-trigger:hover { border-color: transparent; background: transparent; }
.sh-d4-effect-example > .sh-d4-effect-trigger .sh-d4-effect-image { width: 100%; max-width: none; margin: 0; }
.sh-d4-effect-zoom { position: absolute; right: 8px; bottom: 8px; display: inline-flex; align-items: center; gap: 4px; height: 26px; padding: 0 9px 0 7px; border-radius: var(--sh-r-pill); background: var(--sh-surface); color: var(--sh-ink); box-shadow: var(--sh-sh-card); font-size: var(--sh-t-xs); font-weight: 700; line-height: 1; white-space: nowrap; pointer-events: none; }
.sh-d4-effect-zoom-icon { display: inline-flex; }
.sh-d4-effect-zoom-icon svg { width: 14px; height: 14px; }
.sh-d4-effect-trigger:hover .sh-d4-effect-zoom { color: var(--sh-primary); }
.sh-d4-effect-trigger:has([data-sh-image-loading]) .sh-d4-effect-zoom { visibility: hidden; }
:is(#sh-desc-host, #sh-desc-full)[data-sh-detail-page] .sh-d4-effect-pair { justify-content: center; margin-inline: auto; width: 100%; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-effect-pair { justify-content: center; margin-inline: auto; width: 100%; }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) {
 display: grid; grid-auto-flow: column; grid-auto-columns: minmax(150px, 46%); grid-template-columns: none; gap: 10px; margin: 20px calc(-1 * var(--sh-b-pad)) 0; padding: 0 var(--sh-b-pad) 4px;
 overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-gallery .sh-image-trigger {
 position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; width: 100%; max-width: none; min-width: 0; padding: 10px 10px 14px; border: 0; border-radius: 16px; background: var(--sh-b-fill); box-shadow: none; text-align: left; scroll-snap-align: start;
}

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-guide-image { width: 100%; border-radius: 10px; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-gallery-number {
 position: absolute; top: 18px; left: 18px; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--sh-b-ink); font-size: 14px; font-weight: 700; color: #FFFFFF;
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-gallery-caption { padding: 0 4px; font-size: 14px; line-height: 1.45; color: var(--sh-b-ink-2); }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host :is(.sh-d4-audience, .sh-d4-audience.sh-d4-audience--many, .sh-d4-checks) { display: flex; flex-direction: column; gap: 0; margin: 0; padding: 0; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host [data-sh-detail-section] :is(.sh-d4-audience-card, .sh-d4-checks > *) {
 display: flex; align-items: flex-start; gap: 12px; margin: 0; padding: 12px 0; border: 0; border-radius: 0; background: transparent; box-shadow: none;
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host [data-sh-detail-section] :is(.sh-d4-audience-card, .sh-d4-checks > *) + * { border-top: 1px solid var(--sh-b-line); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-check {
 display: grid; place-items: center; flex: 0 0 24px; width: 24px; height: 24px; margin-top: 1px; border: 0; border-radius: 50%; background: var(--sh-b-green-soft); color: var(--sh-b-green);
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-check svg { width: 14px; height: 14px; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-check.sh-d4-check--warning { background: var(--sh-b-fill); color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host :is(.sh-d4-audience-card, .sh-d4-checks > *) :is(.sh-d4-tx, .sh-d4-fact-k) { font-size: 16px; font-weight: 400; line-height: 1.55; color: var(--sh-b-ink); }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-facts { margin: 0; padding: 0; border: 0; background: transparent; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-number-tiles { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-number-tile {
 display: flex; flex-direction: column-reverse; align-items: flex-start; justify-content: flex-end; gap: 4px; min-height: 0; padding: 16px; border: 0; border-radius: 16px; background: var(--sh-b-fill); box-shadow: none; text-align: left;
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-number-tile .sh-d4-fact-k { font-size: 14px; line-height: 1.4; color: var(--sh-b-ink-2); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-number-tile .sh-d4-fact-v { margin: 0; font-size: 28px; font-weight: 800; line-height: 1.2; letter-spacing: -.03em; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-facts .sh-d4-checks { margin-top: 8px; }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-desc-steps { display: flex; flex-direction: column; gap: 0; margin: 0; padding: 0; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-desc-steps > .sh-desc-step {
 position: relative; display: flex; align-items: flex-start; gap: 14px; margin: 0; padding: 0 0 18px; border: 0; background: transparent; box-shadow: none;
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-desc-steps > .sh-desc-step:last-child { padding-bottom: 0; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-desc-steps > .sh-desc-step::after { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-desc-steps > .sh-desc-step::before { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-desc-steps > .sh-desc-step:not(:last-child)::before { content: ""; position: absolute; top: 32px; bottom: 4px; left: 13px; display: block; width: 2px; background: var(--sh-b-line); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-timeline-number {
 display: grid; place-items: center; flex: 0 0 28px; width: 28px; height: 28px; border: 0; border-radius: 50%; background: var(--sh-b-ink); box-shadow: none; font-size: 14px; font-weight: 700; color: #FFFFFF;
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-desc-steps > .sh-desc-step .sh-d4-tx { padding-top: 2px; font-size: 16px; line-height: 1.55; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-timeline-detail { margin: 12px 0 0 42px; padding: 0; border: 0; background: transparent; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-desc-eg-line { padding: 0; border: 0; background: transparent; font-size: 14px; color: var(--sh-b-ink-3); word-break: break-all; }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-peers { margin: 0; padding: 0; list-style: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-peer { display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 14px 0; border-top: 1px solid var(--sh-b-line); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-peer:first-child { padding-top: 0; border-top: 0; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-peer-main { display: flex; flex: 1 1 auto; flex-wrap: wrap; align-items: center; gap: 4px 8px; min-width: 0; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-peer-main .sh-display-name { font-size: 16px; font-weight: 600; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-peer--current .sh-display-name { color: var(--sh-b-pri); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-peer-sub { flex: 0 0 100%; font-size: 14px; line-height: 1.45; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-peer-price { font-size: 15px; font-weight: 700; white-space: nowrap; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-peer-badge { padding: 2px 6px; border-radius: 6px; background: var(--sh-b-pri-soft); font-size: 12px; font-weight: 700; line-height: 16px; color: var(--sh-b-pri); }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-faq { margin: 0; padding: 14px 0; border: 0; border-radius: 0; background: transparent; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-faq + .sh-d4-faq { border-top: 1px solid var(--sh-b-line); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-faq:first-child { padding-top: 0; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-faq-q { margin: 0; font-size: 16px; font-weight: 700; line-height: 1.5; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-faq > .sh-prose { margin: 6px 0 0; padding: 0; font-size: 15px; line-height: 1.6; color: var(--sh-b-ink-2); }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-detail-section[data-sh-detail-section="caution"] { background: var(--sh-b-amber-soft); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-caution-lines { margin: 0; padding: 0; list-style: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-caution-lines li { position: relative; margin: 0; padding: 6px 0 6px 16px; border: 0; font-size: 15px; line-height: 1.6; color: var(--sh-b-ink-2); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-caution-lines li::before { content: ""; position: absolute; top: 16px; left: 2px; display: block; width: 5px; height: 5px; border-radius: 50%; background: var(--sh-b-orange); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-caution-lines li::marker { content: ""; }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"].active { display: block; padding: 24px var(--sh-b-pad); border-radius: var(--sh-b-r-card); background: var(--sh-b-card); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] > .sh-doc-h { margin: 0 0 12px; padding: 0; border: 0; font-size: 20px; font-weight: 700; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] .sh-bullets li { margin: 0; padding: 12px 0; border-bottom: 1px solid var(--sh-b-line); font-size: 16px; line-height: 1.6; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] .sh-d4-call { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec #sh-warn-agree { margin-top: 16px; font-size: 14px; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="review"].active { display: flex; flex-direction: column; gap: var(--sh-b-gap); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="review"] .sh-review-head { order: 9; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="review"] :is(.sh-digest, .sh-review-rating, .review-list) {
 margin: 0; padding: 24px var(--sh-b-pad); border: 0; border-radius: var(--sh-b-r-card); background: var(--sh-b-card); box-shadow: none;
}
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="review"] .sh-review-rating { order: 1; display: flex; align-items: center; gap: 24px; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="review"] .sh-review-rating[hidden],
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="review"] .sh-digest[hidden] { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="review"] .sh-digest { order: 2; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="review"] .review-list { order: 3; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="review"] [data-sh-review-more] { order: 4; height: 52px; margin: 0; border: 0; border-radius: 16px; background: var(--sh-b-card); font-size: 16px; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-rating-overview { display: flex; flex: 0 0 auto; flex-direction: column; align-items: center; gap: 4px; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-rating-overview b { font-size: 40px; font-weight: 800; line-height: 1; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-rating-overview small { font-size: 14px; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-rating-dist { flex: 1 1 auto; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec :is(.sh-rating-name, .sh-rating-count) { font-size: 14px; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-rating-bar { height: 6px; border-radius: 3px; background: var(--sh-b-fill); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec :is(.sh-rating-bar i, .sh-digest-bar i) { border-radius: 3px; background: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-digest-head { margin-bottom: 12px; font-size: 20px; font-weight: 700; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-digest-list li { padding: 10px 0; font-size: 15px; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-digest-list b { font-size: 15px; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-digest-say { font-size: 15px; color: var(--sh-b-ink-2); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-digest-foot { font-size: 14px; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .review-list .sh-review { margin: 0; padding: 16px 0; border: 0; border-top: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; box-shadow: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .review-list .sh-review:first-child { padding-top: 0; border-top: 0; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-review-date { font-size: 14px; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-review-body { margin-top: 8px; font-size: 16px; line-height: 1.6; color: var(--sh-b-ink); }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] > .sh-order-terms { margin: var(--sh-b-gap) 0 0; padding: 24px var(--sh-b-pad); border: 0; border-radius: var(--sh-b-r-card); background: var(--sh-b-card); box-shadow: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] > .sh-order-terms .sh-cms-note-head { display: block; margin: 0 0 12px; padding: 0; font-size: 20px; font-weight: 700; line-height: 1.35; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] > .sh-order-terms .sh-cms-note-body { font-size: 15px; line-height: 1.6; color: var(--sh-b-ink-2); }

body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] > .sh-order-terms .sh-cms-note-body :is(p, li) { margin: 0; padding: 10px 0 10px 40px; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] > .sh-order-terms .sh-cms-note-body li + li { border-top: 1px solid var(--sh-b-line); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] > .sh-order-terms .sh-cms-note-body :is(ul, ol) { margin: 0; padding: 0; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] > .sh-order-terms .sh-order-more-foot, body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] > .sh-order-terms .sh-order-more-foot > * { text-align: left; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] > .sh-order-terms .sh-order-more-foot { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--sh-b-line); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] > .sh-order-terms .sh-order-more-foot :is(.sh-notice, .sh-note) { margin: 0; padding: 0; border: 0; background: transparent; font-size: 15px; line-height: 1.6; color: var(--sh-b-ink-2); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabpanel[data-sh-key="caution"] > .sh-order-terms .sh-order-more-foot .sh-note { margin-top: 4px; font-size: 14px; color: var(--sh-b-ink-3); }

body.sh-order-page #main-content.sh-main .sh-grid #sh-sec-price,
body.sh-order-page #main-content.sh-main .sh-grid .sh-anchornav-item[href="#sh-sec-price"] { display: none; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#sh-order-aside, .sh-order-information) .sh-card { border: 0; border-radius: var(--sh-b-r-card); box-shadow: none; }

body.sh-order-page #main-content.sh-main .sh-grid :is(#sh-order-aside, .sh-order-information) .sh-card:not(#sh-sec-live):not(.sh-cta-block) { background: var(--sh-b-card); }

body.sh-order-page #main-content.sh-main .sh-grid #sh-order-aside :is(.sh-h2, .sh-h3):not(#sh-sec-live *):not(.sh-cta-block *) { font-size: 19px; font-weight: 700; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-order-aside .sh-assure-t { font-size: 16px; color: var(--sh-b-ink); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-order-aside .sh-assure-d { font-size: 14px; line-height: 1.5; color: var(--sh-b-ink-3); }
body.sh-order-page #main-content.sh-main .sh-grid #sh-order-aside .sh-assure-ic { border-radius: 12px; }
body.sh-order-page #main-content.sh-main .sh-grid #sh-order-contact .sh-btn { min-height: 48px; border-radius: 14px; font-size: 15px; }
body.sh-order-page #main-content.sh-main .sh-grid .sh-order-information :is(.sh-note, .sh-live-note, .sh-rail-live-foot, .sh-stat-label) { font-size: 14px; }

body.sh-order-page #main-content.sh-main .sh-grid .sh-order-information :is(.sh-tile-body, .sh-tile-kicker, .sh-rating-name, .sh-rating-count, .sh-rail-rating-score small, .sh-review-date, .sh-review-prod, .sh-notice-go, .sh-guide-platforms .sh-chip, .sh-static-guide-step > b, .sh-formsec-desc, .sh-promo-sub, .sh-promo-sub *, .sh-benefit-matrix :is(th, td), .sh-seo-table :is(th, td)) { font-size: 14px; }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .form-group__label-title { font-size: 14px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow #sh-related-notice .sh-linkbtn { font-size: 14px; }

body.sh-order-page #main-content.sh-main .sh-grid #sh-order-aside > .sh-rail-pay { display: none; }

body.sh-order-page #main-content.sh-main > .sh-grid > #sh-order-aside { padding-right: 0; }

body.sh-order-page #main-content.sh-main #sh-order-aside > :is(.sh-order-information, #sh-order-assure, [data-sh-banner-side]) { grid-column: 1 / -1; }

@media (min-width: 768px) {
 body.sh-order-page { --sh-sidebar: 256px; }
 body.sh-order-page .sh-topbar { margin-left: 256px; }
 body.sh-order-page #main-content.sh-main { margin-left: 256px; }
 body.sh-order-page .sh-sidebar, body.sh-order-page .sh-sidebar::after { width: 256px; }
}

@media (min-width: 768px) {
 body.sh-order-page .sh-topbar { display: none; }
}
@media (min-width: 1200px) {
 body.sh-order-page .sh-sidebar { padding: 24px 16px; border-right: 1px solid var(--sh-b-line); background: var(--sh-b-card); }
 body.sh-order-page .sh-topbar { border-bottom: 0; background: var(--sh-b-canvas); }
 body.sh-order-page .sh-sidebar .sh-user { padding: 18px; border: 0; border-radius: 20px; background: var(--sh-b-fill); box-shadow: none; }
 body.sh-order-page .sh-sidebar .sh-user-balance { font-size: 26px; letter-spacing: -.03em; }
 body.sh-order-page .sh-sidebar .sh-user .sh-btn { height: 44px; border-radius: 12px; font-size: 15px; }
 body.sh-order-page .sh-sidebar .sh-navg-label { padding-left: 12px; font-size: 13px; color: var(--sh-b-ink-3); }
 body.sh-order-page .sh-sidebar .sh-navg-item { gap: 12px; min-height: 48px; padding: 0 12px; border-radius: 12px; font-size: 16px; color: var(--sh-b-ink-2); }
 body.sh-order-page .sh-sidebar .sh-navg-item svg { width: 22px; height: 22px; }
 body.sh-order-page .sh-sidebar .sh-navg-item.is-current { background: var(--sh-b-pri-soft); font-weight: 700; color: var(--sh-b-pri); }
 body.sh-order-page .sh-orderbar { display: none; }

 body.sh-order-page #main-content.sh-main > .sh-grid { grid-template-columns: minmax(0, 1680px) minmax(clamp(320px, 20vw, 380px), 1fr); gap: 24px; max-width: none; margin-inline: 0; }
 body.sh-order-page #main-content.sh-main > .sh-grid > .sh-rail--aside { align-self: stretch; gap: var(--sh-b-gap); }
 body.sh-order-page #main-content.sh-main .sh-grid #sh-order-aside > .sh-rail-pay {
  position: static; order: -1; display: flex; flex-direction: column; margin: 0; padding: 28px; border: 0; border-radius: var(--sh-b-r-card); background: var(--sh-b-card); box-shadow: 0 8px 24px rgba(0, 0, 0, .06);
 }
 body.sh-order-page #main-content.sh-main .sh-grid #sh-order-aside > #sh-order-contact { display: none; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-title { display: flex; align-items: center; gap: 12px; margin: 0 0 14px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-title::before { --sh-b-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23191F28' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3'/%3E%3Cpath d='M3 10h18M7 15h4'/%3E%3C/svg%3E"); }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-rows { margin: 0 0 16px; padding: 0 0 8px; border-bottom: 1px solid var(--sh-b-line); }

 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-rows { min-height: 113px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-row dd:is([data-sh-bar-name], [data-sh-order-name]) { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-row { display: flex; justify-content: space-between; gap: 16px; padding: 8px 0; font-size: 15px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-row dt { flex: none; color: var(--sh-b-ink-3); }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-row dd { margin: 0; font-weight: 600; text-align: right; color: var(--sh-b-ink); overflow-wrap: anywhere; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-total { display: flex; flex-direction: column; gap: 4px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-cap { font-size: 16px; font-weight: 600; color: var(--sh-b-ink-2); }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-total b { font-size: 32px; font-weight: 800; line-height: 1.2; letter-spacing: -.03em; color: var(--sh-b-ink); }

 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay[data-sh-state="idle"] .sh-rail-pay-total b { width: 120px; min-height: 38px; border-radius: 8px; background: var(--sh-b-line); white-space: nowrap; overflow: hidden; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay[data-sh-state="idle"] :is([data-sh-bar-total], [data-sh-total]) { visibility: hidden; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-balance { display: flex; justify-content: space-between; margin-top: 6px; font-size: 15px; color: var(--sh-b-ink-3); }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-balance b { color: var(--sh-b-ink-2); }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay .sh-btn--primary { height: 56px; min-height: 56px; margin-top: 18px; border-radius: 16px; font-size: 18px; font-weight: 700; }
 body.sh-order-page #main-content.sh-main .sh-grid #sh-order-aside > .sh-rail-pay .sh-restrict-note { margin: 14px 0 0; padding: 0; border: 0; background: transparent; font-size: 14px; line-height: 1.5; text-align: left; color: var(--sh-b-ink-3); }
 body.sh-order-page #main-content.sh-main .sh-grid #sh-order-assure .sh-assure-item { padding-block: 10px; }

 body.sh-order-page #main-content.sh-main .sh-grid #sh-order-aside > .sh-rail-pay { display: none; }

 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--svc .sh-platform-filters { flex: 0 0 400px; width: 400px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--svc > .sh-step { flex-wrap: nowrap; justify-content: space-between; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-ocard--svc > .sh-step > .sh-step-title { flex: 0 0 auto; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats > .sh-plat:nth-child(n) .sh-plat-label { font-size: 14px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker .sh-picker-body { height: 420px; max-height: 420px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker :is(#category-container, #sh-rows) { max-height: 418px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #category-container button.sh-cat.category-box:not(.sh-sr-only) { padding: 10px 16px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row { flex-direction: row; align-items: center; justify-content: space-between; min-height: 64px; padding: 12px 48px 12px 20px; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row .sh-row-main { flex: 1 1 auto; width: auto; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row .sh-row-price { align-self: center; font-size: 16px; }
 body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-number-tiles { grid-template-columns: repeat(3, 1fr); }

 body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)) { grid-auto-columns: clamp(150px, calc((100% - 20px) / 3), 230px); justify-content: safe center; }

 body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-gallery:not(:has(> .sh-d4-guide-wide)):has(> :nth-child(3)) { grid-auto-columns: min(calc((100% - 20px) / 3), 230px); }
 body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-effect-pair { max-width: 520px; }
 body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-sec .sh-tabs { max-width: 480px; }
}

@media (min-width: 768px) {
 body.sh-order-page #main-content.sh-main { padding-bottom: 120px; }
 html:has(body.sh-order-page) { scroll-padding-bottom: 104px; }
 body.sh-order-page[data-route] .sh-mobar {
  display: flex !important; left: var(--sh-sidebar, 256px); right: 0; bottom: 0; justify-content: stretch; border: 0; border-top: 1px solid var(--sh-b-line); border-radius: 0;
  background: var(--sh-b-card); box-shadow: 0 -8px 24px rgba(0, 0, 0, .06); transform: none; transition: opacity 200ms var(--sh-ease-out), transform 200ms var(--sh-ease-out), visibility 200ms;
 }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-inner { max-width: none; width: 100%; padding: 12px 32px; border-radius: 0; background: transparent; box-shadow: none; }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-body { min-height: 56px; padding: 0; gap: 24px; border-radius: 0; background: transparent; box-shadow: none; }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-body > .sh-grow { display: grid; flex: 1 1 auto; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto auto; column-gap: 24px; row-gap: 2px; align-items: center; min-width: 0; overflow: visible; }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-name { grid-column: 1; grid-row: 1; min-width: 0; overflow: hidden; font-size: 16px; font-weight: 700; line-height: 24px; text-overflow: ellipsis; white-space: nowrap; color: var(--sh-b-ink); }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-quantity { display: block; grid-column: 1; grid-row: 2; min-height: 20px; font-size: 14px; line-height: 20px; color: var(--sh-b-ink-3); }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-body > .sh-grow::after { content: "총 주문금액"; grid-column: 2; grid-row: 1; justify-self: end; font-size: 14px; font-weight: 600; line-height: 20px; color: var(--sh-b-ink-3); }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-total { grid-column: 2; grid-row: 2; justify-self: end; min-height: 30px; line-height: 30px; white-space: nowrap; }
 body.sh-order-page[data-route] .sh-mobar :is(.sh-mobar-total, .sh-mobar-total *) { font-size: 24px; font-weight: 800; letter-spacing: -.03em; color: var(--sh-b-ink); }
 body.sh-order-page .sh-mobar[data-sh-state="idle"] .sh-mobar-total { width: 120px; min-height: 30px; }
 body.sh-order-page[data-route] .sh-mobar .sh-btn--primary { flex: none; min-width: 200px; max-width: none; height: 56px; min-height: 56px; padding: 0 24px; border-radius: 16px; font-size: 18px; font-weight: 700; }
}
@media (min-width: 1200px) {

 body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-effect-pair { max-width: 640px; }
}
@media (min-width: 768px) and (prefers-reduced-motion: reduce) {
 body.sh-order-page[data-route] .sh-mobar { transition: none; }
}

.sh-cta-amount { display: contents; }
@media (max-width: 767px) {
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-body { gap: 12px; }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-body > .sh-grow { display: flex; flex: 1 1 0; flex-direction: column; align-items: stretch; justify-content: center; gap: 2px; min-width: max-content; overflow: visible; }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-name { flex: none; width: 0; min-width: 100%; max-width: none; overflow: hidden; font-size: 13px; line-height: 18px; text-overflow: ellipsis; white-space: nowrap; }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-total { flex: none; line-height: 26px; white-space: nowrap; }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-body > .sh-btn { flex: 0 1 auto; min-width: 0; max-width: none; height: 56px; min-height: 56px; padding: 0 16px; overflow: visible; text-overflow: clip; white-space: normal; word-break: keep-all; overflow-wrap: anywhere; line-height: 1.25; text-align: center; }
 body.sh-order-page[data-route] .sh-mobar [data-sh-submit-order] .sh-cta-amount { display: none; }
}
@media (max-width: 359px) {
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-inner { padding-inline: 12px; }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-body { gap: 10px; padding-inline: max(12px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right)); }
 body.sh-order-page[data-route] .sh-mobar :is(.sh-mobar-total, .sh-mobar-total *) { font-size: 18px; }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-body > .sh-btn { padding-inline: 14px; font-size: 16px; }
}
@media (min-width: 1600px) {
 body.sh-order-page { --sh-b-cat: 240px; }
}

@media (min-width: 1880px) {
 body.sh-order-page { --sh-b-cat: 264px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats { --sh-picker-grid-limit: 14; grid-template-columns: repeat(var(--sh-picker-columns, 14), minmax(0, 1fr)); }
}

body:not(.sh-order-page) { --sh-b-canvas: #F2F4F6; --sh-b-card: #FFFFFF; --sh-b-fill: #F2F4F6; --sh-b-fill-2: #F9FAFB; --sh-b-line: #EEF0F3; --sh-b-ink: #191F28; --sh-b-ink-2: #4E5968; --sh-b-ink-3: #6B7684; --sh-b-pri: #5D00C8; --sh-b-pri-soft: #F3ECFD; --sh-b-blue: #3182F6; --sh-b-blue-soft: #E8F3FF; --sh-b-green: #03A66A; --sh-b-green-soft: #E6F8EF; --sh-b-orange: #F06A00; --sh-b-orange-soft: #FFF1E3; --sh-b-amber-soft: #FFF8E7; --sh-b-red: #F04452; --sh-b-red-soft: #FDECEE; --sh-b-r-card: 20px; --sh-b-r-ctl: 14px; --sh-b-pad: 20px; --sh-b-gap: 12px; }
@media (min-width: 1200px) {
 body:not(.sh-order-page) { --sh-b-r-card: 24px; --sh-b-pad: 28px; --sh-b-gap: 16px; }
}

body:not(.sh-order-page) { background: var(--sh-b-canvas); }
body:not(.sh-order-page) .sh-app, body:not(.sh-order-page) #main-content.sh-main { background: var(--sh-b-canvas); }
body:not(.sh-order-page) #main-content.sh-main { color: var(--sh-b-ink); }
@media (min-width: 768px) {

 body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar { width: 256px; padding: 24px 16px; border-right: 1px solid var(--sh-b-line); background: var(--sh-b-card); }

 body:not(.sh-order-page):not(.sh-auth-page):not([data-page=""]) #main-content.sh-main { margin-left: 256px; }
 body:not(.sh-order-page):not(.sh-auth-page):not([data-page=""]) .sh-topbar { margin-left: 256px; background: var(--sh-b-canvas); border-bottom: 0; }
 body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-today { display: none; }
 body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-user { padding: 18px; border: 0; border-radius: 20px; background: var(--sh-b-fill); box-shadow: none; }
 body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-user-balance { font-size: 26px; letter-spacing: -.03em; }
 body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-user-point, body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-user-wallet span { font-size: 13px; color: var(--sh-b-ink-3); }
 body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-user .sh-btn { height: 44px; border-radius: 12px; font-size: 15px; }
 body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-navg-label { padding-left: 12px; font-size: 13px; color: var(--sh-b-ink-3); }
 body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-navg-item { gap: 12px; min-height: 48px; padding: 0 12px; border-radius: 12px; font-size: 16px; font-weight: 600; color: var(--sh-b-ink-2); background: transparent; }
 body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-navg-item svg { width: 22px; height: 22px; }
 body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-navg-item.is-current { background: var(--sh-b-pri-soft); font-weight: 700; color: var(--sh-b-pri); }
 body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-side-foot { font-size: 13px; color: var(--sh-b-ink-3); }
 body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-biz-title, body:not(.sh-order-page):not([data-page=""])[data-page] .sh-sidebar .sh-biz-links a { font-size: 13px; }
}

@media (min-width: 768px) {
 .sh-sidebar { scrollbar-width: thin; scrollbar-color: var(--sh-muted-2) var(--sh-surface); }
 .sh-sidebar > .sh-user { position: sticky; top: 0; z-index: 1; outline: 8px solid var(--sh-surface); outline-offset: 0; }

 .sh-sidebar > .sh-user::before { content: ''; position: absolute; left: -16px; right: -16px; bottom: 100%; height: 24px; background: var(--sh-surface); pointer-events: none; }

 .sh-sidebar { scroll-padding-top: var(--sh-sidebar-cover, 0px); scroll-padding-bottom: 8px; }
}

body:not([data-page^="/child_panel"]) .sh-drawer .sh-user--guest > .sh-2col > .sh-btn { margin-top: 0; }

body:not(.sh-order-page) #main-content.sh-main .sh-page { display: flex; flex-direction: column; gap: var(--sh-b-gap); }
body:not(.sh-order-page) #main-content.sh-main .sh-page > * { margin-top: 0; margin-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page-head { margin: 0; padding: 8px 4px 0; background: transparent; border: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page-head .sh-h1 { font-size: 26px; font-weight: 800; letter-spacing: -.03em; line-height: 1.3; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page-head .sh-lead { display: none; }
@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page-head .sh-h1 { font-size: 28px; }
 body:not(.sh-order-page) #main-content.sh-main { padding-top: 8px; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-eventband { min-height: 56px; margin: 0; padding: 6px 8px 6px 16px; border: 0; border-radius: 16px; background: var(--sh-b-card); box-shadow: none; gap: 12px; }
body:not(.sh-order-page) #main-content.sh-main .sh-eventband .sh-eventband-chip { padding: 0 8px; height: 24px; border: 0; border-radius: 6px; background: var(--sh-b-pri-soft); color: var(--sh-b-pri); }
body:not(.sh-order-page) #main-content.sh-main .sh-eventband .sh-eventband-chip b { font-size: 12px; font-weight: 700; }
body:not(.sh-order-page) #main-content.sh-main .sh-eventband .sh-eventband-chip small { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-eventband .sh-grow { font-size: 15px; font-weight: 600; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-eventband .sh-eventband-cta { height: 40px; min-height: 40px; padding: 0 14px; border: 0; border-radius: 10px; background: var(--sh-b-fill); color: var(--sh-b-ink); font-size: 14px; font-weight: 600; box-shadow: none; }
@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-eventband { margin-inline: -16px; border-radius: 0; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-eventband { display: none; }

body:not(.sh-order-page) #main-content.sh-main .sh-card { margin: 0; padding: var(--sh-b-pad); border: 0; border-radius: var(--sh-b-r-card); background: var(--sh-b-card); box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-card .sh-card { padding: 0; border-radius: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-card .sh-box { margin: 0; padding: 16px 0 0; border: 0; border-top: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-card-head { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 0 0 16px; padding: 0; border: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-effect-icon { flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; background: var(--sh-b-ic-bg, var(--sh-b-blue-soft)); color: var(--sh-b-ic, var(--sh-b-blue)); }
body:not(.sh-order-page) #main-content.sh-main .sh-effect-icon svg { width: 22px; height: 22px; }
body:not(.sh-order-page) #main-content.sh-main .sh-h2 { font-size: 20px; font-weight: 700; line-height: 1.35; letter-spacing: -.02em; color: var(--sh-b-ink); margin-top: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-h3 { font-size: 18px; font-weight: 700; line-height: 1.4; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-inline { gap: 12px; }

body:not(.sh-order-page) #main-content.sh-main :is(.sh-formsec-desc, .sh-note, .sh-fine, .sh-help, .sh-kicker, .sh-td-mute) { font-size: 14px; line-height: 1.55; color: var(--sh-b-ink-3); letter-spacing: -.01em; }
body:not(.sh-order-page) #main-content.sh-main .sh-label { font-size: 15px; font-weight: 600; color: var(--sh-b-ink-2); margin-bottom: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-kicker { font-weight: 600; }
body:not(.sh-order-page) #main-content.sh-main .sh-badge { font-size: 12px; font-weight: 700; height: 24px; padding: 0 8px; border: 0; border-radius: 6px; }
body:not(.sh-order-page) #main-content.sh-main .sh-linkbtn { font-size: 15px; font-weight: 600; color: var(--sh-b-pri); }

body:not(.sh-order-page) #main-content.sh-main :is(.sh-input, .sh-select) { height: 56px; min-height: 56px; padding: 0 16px; border: 0; border-radius: var(--sh-b-r-ctl); background-color: var(--sh-b-fill); box-shadow: none; font-size: 16px; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-select { padding-right: 44px; }
body:not(.sh-order-page) #main-content.sh-main :is(textarea.sh-input, .sh-textarea) { height: auto; min-height: 160px; padding: 16px; border: 0; border-radius: var(--sh-b-r-ctl); background: var(--sh-b-fill); font-size: 16px; line-height: 1.6; }
body:not(.sh-order-page) #main-content.sh-main :is(.sh-input, .sh-select, .sh-textarea):focus { background-color: var(--sh-b-card); box-shadow: inset 0 0 0 2px var(--sh-b-pri); outline: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-btn { min-height: 44px; border-radius: 12px; font-size: 15px; font-weight: 600; box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-btn--sm { height: 44px; padding: 0 16px; font-size: 15px; }
body:not(.sh-order-page) #main-content.sh-main .sh-btn--soft, body:not(.sh-order-page) #main-content.sh-main .sh-btn--neutral, body:not(.sh-order-page) #main-content.sh-main .sh-btn--ghost { border: 0; background: var(--sh-b-fill); color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-btn--danger-ghost { border: 0; background: transparent; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-btn--primary { border: 0; background: var(--sh-b-pri); color: #fff; }
body:not(.sh-order-page) #main-content.sh-main :is(.sh-btn--block.sh-btn--primary, .sh-btn--lg.sh-btn--primary) { height: 56px; min-height: 56px; border-radius: 16px; font-size: 17px; font-weight: 700; }
body:not(.sh-order-page) #main-content.sh-main .sh-btn--primary:disabled, body:not(.sh-order-page) #main-content.sh-main .sh-btn--primary[disabled] { background: var(--sh-b-fill); color: #B0B8C1; }
body:not(.sh-order-page) #main-content.sh-main .sh-search { position: relative; display: flex; width: 100%; gap: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-search .sh-input { flex: 1 1 auto; width: 100%; padding-right: 96px; }
body:not(.sh-order-page) #main-content.sh-main .sh-search .sh-btn { position: absolute; right: 6px; top: 6px; height: 44px; min-height: 44px; padding: 0 14px; border-radius: 10px; background: var(--sh-b-card); color: var(--sh-b-pri); font-size: 15px; }

body:not(.sh-order-page) #main-content.sh-main :is(.sh-account-tabs, .sh-segtabs, .sh-statustabs) { display: flex; gap: 4px; margin: 0; padding: 4px; border: 0; border-radius: 14px; background: var(--sh-b-fill); box-shadow: none; overflow-x: auto; scrollbar-width: none; }
body:not(.sh-order-page) #main-content.sh-main :is(.sh-account-tabs, .sh-segtabs, .sh-statustabs) > :is(a, button) { flex: 1 0 auto; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 56px; height: 40px; min-height: 40px; padding: 0 12px; border: 0; border-radius: 10px; background: transparent; box-shadow: none; font-size: 15px; font-weight: 600; color: var(--sh-b-ink-3); white-space: nowrap; }
body:not(.sh-order-page) #main-content.sh-main :is(.sh-account-tabs, .sh-segtabs, .sh-statustabs) > :is(a, button):is(.active, [aria-selected="true"]) { background: var(--sh-b-card); color: var(--sh-b-ink); box-shadow: 0 1px 3px rgba(0, 0, 0, .08); }
body:not(.sh-order-page) #main-content.sh-main :is(.sh-account-tabs, .sh-segtabs, .sh-statustabs) > :is(a, button)::after { display: none; }

body:not(.sh-order-page) #main-content.sh-main :is(.sh-account-tabs, .sh-page > .sh-segtabs, .sh-faq-nav) { background: var(--sh-b-card); border-radius: 16px; padding: 6px; }
body:not(.sh-order-page) #main-content.sh-main :is(.sh-account-tabs, .sh-page > .sh-segtabs, .sh-faq-nav) > :is(a, button):is(.active, [aria-selected="true"]) { background: var(--sh-b-ink); color: #fff; box-shadow: none; }

body:not(.sh-order-page) #main-content.sh-main .sh-pager { gap: 8px; margin: 4px 0 0; justify-content: center; }
body:not(.sh-order-page) #main-content.sh-main .sh-pager a { width: 44px; height: 44px; min-width: 44px; border: 0; border-radius: 12px; background: var(--sh-b-card); font-size: 15px; font-weight: 600; color: var(--sh-b-ink-2); box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-pager a.active { background: var(--sh-b-ink); color: #fff; }

@media (min-width: 480px) and (max-width: 899px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-pager a:not(.active, .sh-pager-near):not(:first-child):not(:last-child) { display: none; }
}
@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-pager a:not(.active, .sh-pager-near):not(:first-child):not(:last-child) { display: none; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-defs { display: flex; flex-direction: column; gap: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-def { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 52px; padding: 12px 0; border: 0; border-bottom: 1px solid var(--sh-b-line); font-size: 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-def:last-child { border-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-def > span:first-child { font-size: 15px; font-weight: 500; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-def > b { font-size: 16px; font-weight: 600; color: var(--sh-b-ink); text-align: right; }

body:not(.sh-order-page) #main-content.sh-main .sh-alert { display: block; position: relative; margin: 0; padding: 0 0 0 32px; min-height: 22px; border: 0; border-radius: 0; background: transparent; box-shadow: none; font-size: 15px; line-height: 1.55; font-weight: 500; color: var(--sh-b-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-alert > * { font-size: inherit; }
body:not(.sh-order-page) #main-content.sh-main .sh-alert > .sh-grow { display: inline; }
body:not(.sh-order-page) #main-content.sh-main .sh-alert > .sh-btn, body:not(.sh-order-page) #main-content.sh-main .sh-alert > .sh-modal-x { vertical-align: middle; }
body:not(.sh-order-page) #main-content.sh-main .sh-alert::before { content: ""; position: absolute; left: 0; top: 1px; width: 22px; height: 22px; border-radius: 50%; background: var(--sh-b-blue-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233182F6' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 11v6M12 7h.01'/%3E%3C/svg%3E") center / 14px no-repeat; }
body:not(.sh-order-page) #main-content.sh-main .sh-alert > svg, body:not(.sh-order-page) #main-content.sh-main .sh-alert > .sh-alert-icon { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-alert--warn::before { background-color: var(--sh-b-orange-soft); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F06A00' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 7v6M12 17h.01'/%3E%3C/svg%3E"); }

body:not(.sh-order-page) #main-content.sh-main .sh-page > .sh-alert { padding: 16px 48px 16px 48px; border-radius: 16px; background: var(--sh-b-card); }
body:not(.sh-order-page) #main-content.sh-main .sh-page > .sh-alert::before { left: 16px; top: 17px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page > .sh-alert > .sh-modal-x { position: absolute; right: 4px; top: 50%; transform: translateY(-50%); }

body:not(.sh-order-page) #main-content.sh-main .sh-check { min-height: 44px; font-size: 15px; color: var(--sh-b-ink-2); }

@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main { padding-left: 0; padding-right: 0; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page { padding: 0 16px 32px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page > .sh-card { margin-inline: 0; }

 body:not(.sh-order-page):not(.sh-auth-page) #main-content.sh-main > .sh-biz--mobile { margin-inline: 16px; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-chead { display: flex; align-items: center; gap: 12px; margin: 0 0 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-chead-t { min-width: 0; flex: 1 1 auto; }
body:not(.sh-order-page) #main-content.sh-main .sh-chead-title { margin: 0; font-size: 20px; font-weight: 700; line-height: 1.35; letter-spacing: -.02em; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-chead-sub { margin: 4px 0 0; font-size: 14px; line-height: 1.5; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-chead-ic { flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; background: var(--c-soft, var(--sh-b-blue-soft)); position: relative; }
body:not(.sh-order-page) #main-content.sh-main .sh-chead-ic::before { content: ""; position: absolute; inset: 9px; background: var(--c, var(--sh-b-blue)); -webkit-mask: var(--m) center / contain no-repeat; mask: var(--m) center / contain no-repeat; }
body:not(.sh-order-page) #main-content.sh-main .sh-chead-ic--crown { --c: var(--sh-b-green); --c-soft: var(--sh-b-green-soft); --m: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8l4 4 5-7 5 7 4-4-2 11H5z'/%3E%3C/svg%3E"); }
body:not(.sh-order-page) #main-content.sh-main .sh-chead-ic--gift { --c: var(--sh-b-orange); --c-soft: var(--sh-b-orange-soft); --m: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='13' rx='2'/%3E%3Cpath d='M12 8v13M3 12h18M12 8S10 3 7.5 4 9 8 12 8zM12 8s2-5 4.5-4S15 8 12 8z'/%3E%3C/svg%3E"); }
body:not(.sh-order-page) #main-content.sh-main .sh-chead-ic--coupon { --c: var(--sh-b-orange); --c-soft: var(--sh-b-orange-soft); --m: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7h18v3a2 2 0 0 0 0 4v3H3v-3a2 2 0 0 0 0-4z'/%3E%3Cpath d='M14 7v10' stroke-dasharray='2 2'/%3E%3C/svg%3E"); }
body:not(.sh-order-page) #main-content.sh-main .sh-chead-ic--point { --c: var(--sh-b-green); --c-soft: var(--sh-b-green-soft); --m: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M10 8h3a2.5 2.5 0 0 1 0 5h-3V8zM10 13v4'/%3E%3C/svg%3E"); }

body:not(.sh-order-page) #main-content.sh-main .sh-page--account { width: 100%; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-loyalty-root { display: flex; flex-direction: column; gap: var(--sh-b-gap); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-loyalty-root > * { margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-account-tabs > button { flex: 1 1 0; min-width: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-account-tabs > button > span:last-child:not(:first-child) { margin-left: 0; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: var(--sh-b-pri); color: #fff; font-size: 12px; line-height: 18px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-account-panel.active { display: flex; flex-direction: column; gap: var(--sh-b-gap); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-account-panel > [class$="-host"] { display: flex; flex-direction: column; gap: var(--sh-b-gap); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-loyalty-head { display: grid; grid-template-columns: 40px 1fr; gap: 4px 12px; align-items: center; margin: 0 0 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-loyalty-stats { margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-loyalty-foot { margin: 12px 0 0; font-size: 14px; line-height: 1.55; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-loyalty-head > div:not(.sh-loyalty-meta) { min-width: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-loyalty-head .sh-h2 { font-size: 20px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-loyalty-meta { grid-column: 1 / -1; display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 8px; margin-top: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-effect-icon { border-radius: 50%; }

.sh-loyalty-meta > .sh-verified.sh-verified--split { gap: 8px; height: auto; padding: 0; background: transparent; color: var(--sh-b-ink-2, var(--sh-ink)); font-size: 14px; font-weight: 600; line-height: 1.4; white-space: nowrap; }
.sh-verified--split > .sh-verified-badge { display: inline-flex; align-items: center; height: 28px; padding: 0 10px; border-radius: var(--sh-r-pill); background: var(--sh-ok-bg); color: var(--sh-ok-text); font-size: 12px; font-weight: 700; }
.sh-d4b-progress-copy { font-size: 14px; line-height: 1.5; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-loyalty-stats { padding: 0; border: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-loyalty-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-tile { display: flex; flex-direction: column; justify-content: flex-start; padding: 16px; border: 0; border-radius: 16px; background: var(--sh-b-fill); box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-tile-kicker { font-size: 14px; font-weight: 500; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-tile-title { margin-top: 4px; font-size: 28px; font-weight: 800; letter-spacing: -.03em; line-height: 1.25; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-tile .sh-note { margin-top: 8px; font-size: 14px; color: var(--sh-b-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-progress, body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card [class*="progress"] { margin-top: 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-tier-card .sh-benefit-matrix { width: 100%; margin: 0; border-collapse: collapse; font-size: 15px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-tier-card .sh-benefit-matrix :is(th, td) { height: 52px; padding: 0 8px; border: 0; border-bottom: 1px solid var(--sh-b-line); background: transparent; text-align: right; font-size: 15px; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-tier-card .sh-benefit-matrix :is(th, td):first-child { text-align: left; padding-left: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-tier-card .sh-benefit-matrix thead th { height: 40px; font-size: 14px; font-weight: 500; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-tier-card .sh-benefit-matrix tr:last-child :is(th, td) { border-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-tier-card .sh-benefit-matrix tr:has([aria-current]) :is(th, td) { background: var(--sh-b-pri-soft); font-weight: 700; }
@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-tier-card .sh-benefit-matrix :is(th, td) { padding: 0 4px; font-size: 14px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-tier-card .sh-benefit-matrix thead th { font-size: 13px; }
}
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-tier-card .sh-tier-guide { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--sh-b-line); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-tier-card > .sh-fine { margin: 8px 0 0 32px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-friend-card .sh-btn { width: 100%; background: var(--sh-b-pri-soft); color: var(--sh-b-pri); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-coupon { display: grid; grid-template-columns: 1fr auto; gap: 4px 12px; margin: 0; padding: 16px 0; border: 0; border-bottom: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-coupon::before, body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-coupon::after { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-coupon-head { grid-column: 1; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-coupon-name { font-size: 16px; font-weight: 700; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-coupon-value { grid-column: 2; grid-row: 1 / span 2; align-self: center; font-size: 20px; font-weight: 800; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-coupon-cond { grid-column: 1; margin: 0; font-size: 14px; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-segtabs { margin: 0 0 4px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-wallet { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin: 0 0 8px; padding: 0 0 20px; border: 0; border-bottom: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-wallet-copy { flex: 1 1 200px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-wallet-balance { display: block; margin: 4px 0 8px; font-size: 32px; font-weight: 800; letter-spacing: -.03em; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-wallet .sh-note, body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-wallet .sh-note .sh-nowrap { font-size: 14px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-wallet .sh-btn--primary { height: 52px; padding: 0 24px; border-radius: 14px; font-size: 16px; font-weight: 700; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-history-title { margin: 16px 0 4px; font-size: 17px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-entry { display: flex; align-items: center; gap: 12px; min-height: 64px; margin: 0; padding: 12px 0; border: 0; border-bottom: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-entry:last-child { border-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-entry-copy { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-entry-copy b { font-size: 16px; font-weight: 600; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-entry-copy .sh-note { font-size: 14px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-reward-entry-amount { font-size: 17px; font-weight: 700; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-card--flush { padding: var(--sh-b-pad); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-notification-head { margin: 0 0 8px; padding: 0; border: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-empty { padding: 32px 0; font-size: 15px; color: var(--sh-b-ink-3); text-align: center; border: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account #phone.sh-verify { display: flex; flex-direction: column; gap: 4px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-formsec { padding: 0; border: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-formsec-head { margin: 0 0 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-formsec-title { font-size: 17px; font-weight: 700; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-fieldrow { display: flex; gap: 8px; align-items: stretch; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-fieldrow > div { flex: 1 1 auto; min-width: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-fieldrow > .sh-btn { height: 56px; padding: 0 20px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-stack--lg > form + form { padding-top: 20px; border-top: 1px solid var(--sh-b-line); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-field { margin: 0 0 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-form-actions { margin-top: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-form-actions .sh-btn { height: 52px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-def--stack { flex-direction: column; align-items: stretch; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-def--stack > .sh-defs { width: 100%; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-d2b-code-value { font-size: 15px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-phone-line-note { display: block; font-size: 14px; color: var(--sh-b-ink-3); font-weight: 400; }
@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--account { max-width: 1120px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-account-tabs { align-self: flex-start; width: 640px; position: static; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-account-panel > .sh-d2b-benefits-host { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); align-items: start; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-account-panel > .sh-d2b-benefits-host > .sh-tier-card { grid-column: 1 / -1; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-benefit-card .sh-loyalty-grid { grid-template-columns: 1fr 1fr; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--account #sh-account-settings.active { display: grid; grid-template-columns: 1fr 1fr; align-items: start; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--account #sh-account-settings > #phone { grid-column: 1 / -1; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-page--account #sh-account-settings .sh-card > .sh-card-head:not(:has(.sh-effect-icon)) .sh-h2 { display: flex; align-items: center; gap: 12px; margin: 0 0 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account #sh-account-settings .sh-card > .sh-card-head:not(:has(.sh-effect-icon)) .sh-h2::before { content: ""; flex: 0 0 40px; height: 40px; border-radius: 50%; background: var(--sh-b-fill) var(--i) center / 22px no-repeat; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account #sh-account-settings .sh-card > .sh-card-head:not(:has(.sh-effect-icon)) .sh-h2 { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234E5968' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M10 14a4 4 0 0 0 5.7 0l3-3a4 4 0 0 0-5.7-5.7l-1 1M14 10a4 4 0 0 0-5.7 0l-3 3a4 4 0 0 0 5.7 5.7l1-1'/%3E%3C/svg%3E"); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account #phone.sh-verify:not(:has(input, button)) { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-def .sh-phone-line-status { display: block; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-def--stack > span:first-child { font-size: 17px; font-weight: 700; color: var(--sh-b-ink); padding-top: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-def--stack .sh-def--stack { gap: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-d2b-code-value { display: flex; align-items: center; min-height: 52px; padding: 0 16px; border-radius: var(--sh-b-r-ctl); background: var(--sh-b-fill); text-align: left; justify-content: flex-start; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-def--stack > .sh-help, body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-def--stack > .sh-help span { font-size: 14px; font-weight: 400; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-def--stack > form { justify-content: flex-start; }
@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-account-tabs > button { font-size: 14px; padding: 0 2px; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-page--topup { width: 100%; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-flow { display: flex; flex-direction: column; gap: var(--sh-b-gap); padding: 0; background: transparent; border-radius: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-flow > #payForm { display: contents; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-method, body:not(.sh-order-page) #main-content.sh-main .sh-page--topup #payForm > :is(.sh-topup-amount, .sh-coupon-step, #taxDetail, .sh-topup-pay) { margin: 0; padding: var(--sh-b-pad); border: 0; border-radius: var(--sh-b-r-card); background: var(--sh-b-card); box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-flow .sh-step { display: flex; align-items: center; gap: 8px; margin: 0 0 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-flow .sh-step-title { font-size: 19px; font-weight: 700; letter-spacing: -.02em; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-flow .sh-step-title .sh-note, body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-flow .sh-step-title > span:not([data-sh-pay-verb]) { font-size: 14px; font-weight: 500; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-flow .sh-card-head { margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-paygrid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .pay-method { height: 56px; border: 0; border-radius: var(--sh-b-r-ctl); background: var(--sh-b-fill); box-shadow: none; font-size: 16px; font-weight: 600; color: var(--sh-b-ink-2); gap: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .pay-method.active { background: var(--sh-b-pri-soft); color: var(--sh-b-pri); box-shadow: inset 0 0 0 2px var(--sh-b-pri); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-amount .sh-money-head--flat { display: flex; justify-content: space-between; align-items: center; margin: 0 0 16px; padding: 0 0 14px; border: 0; border-bottom: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-amount .sh-money-head--flat .sh-step-title { font-size: 15px; font-weight: 500; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-amount .sh-money-balance { font-size: 17px; font-weight: 700; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-amount .sh-field > .sh-money-head:not(.sh-money-head--flat) { display: flex; justify-content: space-between; align-items: center; margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-amount .sh-field > .sh-money-head .sh-step-title { font-size: 15px; font-weight: 500; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-amount .sh-field > .sh-money-head .sh-step-title span { font-size: 14px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-d2b-money-output { display: block; margin: 4px 0 0; font-size: 36px; font-weight: 800; letter-spacing: -.03em; line-height: 1.25; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup #sh-points-hint { margin: 16px 0 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-points { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .pay-point { height: 52px; min-height: 52px; border: 0; border-radius: var(--sh-b-r-ctl); background: var(--sh-b-fill); box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .pay-point b { font-size: 16px; font-weight: 700; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .pay-point:active, body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .pay-point:hover { background: #E5E8EB; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-step { position: relative; overflow: visible; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-step::before, body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-step::after { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-step .sh-card { padding: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-step .sh-info-row { display: flex; align-items: flex-start; gap: 12px; margin: 8px 0 0; padding: 0; border: 0; background: transparent; font-size: 14px; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-step .sh-info-row .sh-benefit-icon { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-step .sh-info-row span { font-size: 14px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-step .sh-check { margin-top: 12px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-step .sh-alert { margin-bottom: 12px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup #taxDetail .sh-formsec-head { margin: 0 0 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup #taxDetail .sh-formsec-head .sh-step { margin: 0 0 4px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup #taxDetail .sh-field { margin: 0 0 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup #taxDetail .sh-field:last-child { margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup #taxDetail .sh-help { margin-top: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-taxgrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; padding: 4px; border-radius: 14px; background: var(--sh-b-fill); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .pay-tax { height: 44px; border: 0; border-radius: 10px; background: transparent; box-shadow: none; font-size: 15px; font-weight: 600; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .pay-tax.active { background: var(--sh-b-card); color: var(--sh-b-ink); box-shadow: 0 1px 3px rgba(0, 0, 0, .08); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay .sh-receipt { margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay .sh-receipt-body { padding: 0; border: 0; border-radius: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay .sh-step { margin: 0 0 4px; flex-wrap: wrap; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay .sh-step-title { font-size: 16px; font-weight: 600; color: var(--sh-b-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay .sh-receipt-value { margin: 0 0 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay .sh-receipt-value span { font-size: 32px; font-weight: 800; letter-spacing: -.03em; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay .sh-receipt-note { display: flex; justify-content: space-between; min-height: 44px; align-items: center; margin: 0; padding: 0; border-top: 1px solid var(--sh-b-line); font-size: 15px; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay .sh-receipt-note b { margin-left: auto; font-size: 16px; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay .sh-receipt-note span:last-child:not(:first-child) { color: var(--sh-b-ink); font-weight: 600; font-size: 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay .sh-receipt-eg { margin: 8px 0 0; font-size: 14px; line-height: 1.55; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay .sh-receipt-eg :is(span, b) { font-size: 14px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay > div:last-child { margin-top: 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-card-head .sh-kicker { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-paylog { display: flex; flex-direction: column; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-paylog-item { display: flex; align-items: center; gap: 12px; min-height: 68px; margin: 0; padding: 12px 0; border: 0; border-bottom: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-paylog-item:last-child { border-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-paylog-head { display: flex; gap: 8px; align-items: center; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-paylog-name, body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-paylog-name span { font-size: 16px; font-weight: 600; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-paylog-date { display: block; margin-top: 4px; font-size: 14px; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-paylog-amt { padding: 0; border: 0; background: transparent; font-size: 17px; font-weight: 700; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-paylog-amt--neg { color: var(--sh-b-ink-3); }

body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-amount .sh-field { container-type: inline-size; }
@container (min-width: 560px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-points { grid-template-columns: repeat(4, 1fr); }
}
@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--topup { max-width: 1120px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-flow { display: grid; grid-template-columns: minmax(0, 1fr) 360px; column-gap: 24px; row-gap: var(--sh-b-gap); align-items: start; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-method, body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-flow #payForm > :not(.sh-topup-pay) { grid-column: 1; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-flow #payForm > .sh-topup-pay { grid-column: 2; grid-row: 1 / span 4; position: sticky; top: 24px; padding: 28px; box-shadow: 0 8px 24px rgba(0, 0, 0, .06); }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-flow ~ .sh-card { margin-right: 384px; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-code-claim { margin-top: 16px; padding: 16px 0 0; border: 0; border-top: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-code-claim .sh-fieldrow { display: flex; gap: 8px; margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-code-claim .sh-fieldrow .sh-btn { flex: 0 0 auto; height: 56px; padding: 0 18px; }
body:not(.sh-order-page) #main-content.sh-main .sh-code-claim .sh-fieldrow .sh-input { flex: 1 1 auto; min-width: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-empty img { width: 120px; height: auto; margin: 0 auto 8px; }

body:not(.sh-order-page) #main-content.sh-main .sh-empty b { display: block; font-size: 18px; font-weight: 700; line-height: 1.4; letter-spacing: -.02em; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-empty span { display: block; margin-top: 4px; font-size: 15px; line-height: 1.6; color: var(--sh-b-ink-2); text-wrap: pretty; word-break: keep-all; }
body:not(.sh-order-page) #main-content.sh-main .sh-empty b span { display: inline; margin: 0; font-size: inherit; color: inherit; }
body:not(.sh-order-page) #main-content.sh-main .sh-topup-pay .sh-step-title [data-sh-pay-verb] { display: inline; font-size: inherit; font-weight: inherit; color: inherit; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-d4b-first-topup { display: flex; flex-direction: column; gap: 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-d4b-first-topup .sh-h2 { margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-d4b-first-topup .sh-formsec-desc { margin-top: 4px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-d4b-first-topup .sh-btn--primary { height: 52px; background: var(--sh-b-pri-soft); color: var(--sh-b-pri); font-size: 16px; font-weight: 700; }

body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-none { display: flex; align-items: flex-start; gap: 12px; margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-none::before { content: ""; flex: 0 0 24px; height: 24px; border-radius: 50%; background: var(--sh-b-orange-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F06A00' stroke-width='2.4' stroke-linejoin='round'%3E%3Cpath d='M3 7h18v3a2 2 0 0 0 0 4v3H3v-3a2 2 0 0 0 0-4z'/%3E%3C/svg%3E") center / 14px no-repeat; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-none-text { font-size: 15px; line-height: 24px; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-coupon-none-text b { font-weight: 700; color: var(--sh-b-ink); }

body:not(.sh-order-page) #main-content.sh-main .sh-page--wide { width: 100%; padding-inline: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page > .sh-card.sh-stack:has(> .sh-list, > .sh-table-wrap) { display: flex; flex-direction: column; gap: var(--sh-b-gap); padding: 0; background: transparent; border-radius: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page > .sh-card.sh-stack:has(> .sh-list, > .sh-table-wrap) > div:has(> .sh-card-head) { padding: var(--sh-b-pad); border-radius: var(--sh-b-r-card); background: var(--sh-b-card); }
body:not(.sh-order-page) #main-content.sh-main .sh-page > .sh-card.sh-stack > div > .sh-card-head { margin: 0 0 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page > .sh-card.sh-stack > div > .sh-card-head:last-child { margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page > .sh-card.sh-stack .sh-card-head .sh-search { order: 5; flex: 1 1 100%; }
body:not(.sh-order-page) #main-content.sh-main .sh-list { display: flex; flex-direction: column; gap: var(--sh-b-gap); margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-chips { display: flex; gap: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-chip { height: 44px; min-height: 44px; padding: 0 16px; border: 0; border-radius: 12px; background: var(--sh-b-fill); font-size: 15px; font-weight: 600; color: var(--sh-b-ink-2); box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-list > .sh-order { display: flex; flex-direction: column; gap: 0; margin: 0; padding: var(--sh-b-pad); border: 0; border-radius: var(--sh-b-r-card); background: var(--sh-b-card); box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-top { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: flex-start; gap: 12px; margin: 0; padding: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-top > .sh-grow { display: block; flex: 1 1 auto; min-width: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 0 0 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-no { font-size: 14px; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-name { display: block; margin: 0; font-size: 17px; font-weight: 700; line-height: 1.45; letter-spacing: -.02em; color: var(--sh-b-ink); white-space: normal; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-name span:not(.sh-badge) { font-size: inherit; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-sub { display: block; margin: 4px 0 0; font-size: 14px; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-prog { flex: 0 0 auto; display: flex; flex-direction: column; align-items: flex-end; gap: 0; margin: 0; padding: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-prog b { font-size: 20px; font-weight: 800; letter-spacing: -.02em; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-prog span:not(.sh-badge) { font-size: 13px; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-bar { width: 100%; height: 6px; margin: 16px 0 0; border-radius: 3px; background: var(--sh-b-fill); overflow: hidden; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-bar-fill { height: 100%; border-radius: 3px; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 16px 0 0; padding: 16px 0 0; border: 0; border-top: 1px solid var(--sh-b-line); background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-fact:nth-child(n) { display: flex; flex-direction: column; gap: 4px; grid-column: auto; grid-row: auto; align-self: start; padding: 0; border: 0; background: transparent; text-align: left; min-width: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-fact span { font-size: 14px; color: var(--sh-b-ink-3); white-space: nowrap; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-fact b { font-size: 15px; font-weight: 700; color: var(--sh-b-ink); white-space: nowrap; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-order .sh-fact:first-child b { color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-order > .sh-order-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 16px 0 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-order > .sh-order-actions > .sh-btn { flex: 1 1 auto; padding: 0 16px; border-radius: 12px; font-size: 15px; }
body:not(.sh-order-page) #main-content.sh-main .sh-order > .sh-order-actions > .sh-btn--soft { background: var(--sh-b-fill); color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-order > .sh-order-actions > .sh-btn--primary { background: var(--sh-b-pri-soft); color: var(--sh-b-pri); }
body:not(.sh-order-page) #main-content.sh-main .sh-order > .sh-order-actions > .sh-btn--danger-ghost { flex: 0 0 auto; background: transparent; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-more > summary { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 12px; background: var(--sh-b-fill); list-style: none; font-size: 18px; }
@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--wide { padding: 0 16px 32px; }
}
@media (min-width: 1200px) {

 body:not(.sh-order-page) #main-content.sh-main .sh-list > .sh-order:has(> .sh-facts) { display: grid; grid-template-columns: minmax(0, 1fr) 380px 200px; grid-template-areas: "top facts act" "bar facts act"; column-gap: 32px; align-items: center; }
 body:not(.sh-order-page) #main-content.sh-main .sh-list > .sh-order:has(> .sh-facts) > .sh-order-top { grid-area: top; }
 body:not(.sh-order-page) #main-content.sh-main .sh-list > .sh-order:has(> .sh-facts) > .sh-bar { grid-area: bar; margin-top: 12px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-list > .sh-order:has(> .sh-facts) > .sh-facts { grid-area: facts; margin: 0; padding: 0 0 0 32px; border-top: 0; border-left: 1px solid var(--sh-b-line); }
 body:not(.sh-order-page) #main-content.sh-main .sh-list > .sh-order:has(> .sh-facts) > .sh-order-actions { grid-area: act; flex-direction: column; align-items: stretch; margin: 0; }
 body:not(.sh-order-page) #main-content.sh-main .sh-list > .sh-order:has(> .sh-facts) > .sh-order-actions > .sh-btn { flex: 0 0 auto; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-sub.sh-link-clamp { display: flex; flex-direction: column; align-items: flex-start; gap: var(--sh-sp-1); min-width: 0; white-space: normal; }
.sh-link-clamp-text { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; max-width: 100%; word-break: break-all; overflow-wrap: anywhere; }
.sh-link-clamp.is-open .sh-link-clamp-text { display: block; -webkit-line-clamp: unset; line-clamp: none; overflow: visible; }
.sh-link-more { display: inline-flex; align-items: center; min-height: 32px; margin: 0; padding: 0; border: 0; background: transparent; font: inherit; font-size: 14px; font-weight: 600; color: var(--sh-b-pri, var(--sh-primary)); cursor: pointer; }
.sh-link-more[hidden], .sh-link-more [hidden] { display: none; }
.sh-link-more:focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 2px; border-radius: 4px; }
.sh-link-full { overflow-wrap: anywhere; word-break: break-all; }

body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > .sh-d2b-order-stats { order: -1; margin: 0; padding: var(--sh-b-pad); border: 0; border-radius: var(--sh-b-r-card); background: var(--sh-b-card); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > .sh-page-head { order: -2; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > .sh-eventband { order: -3; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > .sh-d2b-order-stats > .sh-d2b-order-stats-title { display: flex; justify-content: flex-start; align-items: center; gap: 12px; min-height: 40px; padding: 0; margin: 0 0 16px; font-size: 20px; font-weight: 700; line-height: 1.35; letter-spacing: -.02em; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > .sh-d2b-order-stats > .sh-d2b-order-stats-title::before { content: ""; flex: 0 0 40px; height: 40px; border-radius: 50%; background: var(--sh-b-green-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2303A66A' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M4 20V10M10 20V4M16 20v-7M22 20H2'/%3E%3C/svg%3E") center / 22px no-repeat; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-d2b-order-stats-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; border: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-d2b-order-stats-grid > div { min-width: 0; padding: 16px; border: 0; border-radius: 16px; background: var(--sh-b-fill); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-d2b-order-stats-grid span:not(.sh-num) { font-size: 14px; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-d2b-order-stats-grid > div { display: flex; flex-direction: column; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-d2b-order-stats-grid b { display: flex; align-items: baseline; gap: 4px; margin-top: 4px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-d2b-order-stats-grid b .sh-num { font-size: 28px; font-weight: 800; letter-spacing: -.03em; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-d2b-order-stats-grid b small { font-size: 16px; font-weight: 600; color: var(--sh-b-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > .sh-notice.sh-info-row { display: block; min-height: 0; margin: 0; padding: 0 4px; border: 0; background: transparent; font-size: 14px; line-height: 1.55; color: var(--sh-b-ink-3); text-align: left; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > .sh-note, body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > .sh-box { margin: 0; padding: 0 4px; border: 0; background: transparent; font-size: 14px; color: var(--sh-b-ink-3); text-align: left; }
@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders { display: grid; grid-template-columns: minmax(0, 1fr) 300px; column-gap: 24px; align-items: start; max-width: 1184px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > * { grid-column: 1; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > .sh-eventband, body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > .sh-page-head { grid-column: 1 / -1; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > .sh-d2b-order-stats { grid-column: 2; grid-row: 3 / span 3; align-self: start; position: sticky; top: 24px; order: 0; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders > .sh-d2b-order-stats .sh-d2b-order-stats-grid { grid-template-columns: 1fr; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-list > .sh-order:has(> .sh-facts) { grid-template-columns: minmax(0, 1fr) 320px 180px; column-gap: 24px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-list > .sh-order:has(> .sh-facts) > .sh-facts { padding-left: 24px; }
}

@media (min-width: 1200px) and (max-width: 1439px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-list > .sh-order:has(> .sh-facts) { grid-template-columns: minmax(0, 1fr) 180px; grid-template-areas: "top act" "bar act" "facts facts"; column-gap: 24px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-list > .sh-order:has(> .sh-facts) > .sh-facts { margin: 16px 0 0; padding: 16px 0 0; border-left: 0; border-top: 1px solid var(--sh-b-line); grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (min-width: 1440px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-list > .sh-order:has(> .sh-facts) { grid-template-columns: minmax(0, 1fr) minmax(300px, max-content) 170px; column-gap: 20px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-list > .sh-order:has(> .sh-facts) > .sh-facts { padding-left: 20px; grid-template-columns: repeat(4, auto); column-gap: 12px; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-defs { margin: 16px 0 0; padding: 16px 0 0; border: 0; border-top: 1px solid var(--sh-b-line); background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-defs .sh-defs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 12px; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-defs .sh-def { flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: 4px; min-height: 0; padding: 0; border: 0; font-size: 14px; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-defs .sh-def > span:first-child { font-size: 14px; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-defs .sh-def > :is(b, span:last-child:not(:first-child)) { font-size: 16px; font-weight: 700; color: var(--sh-b-ink); text-align: left; }
body:not(.sh-order-page) #main-content.sh-main .sh-order :is(.sh-order-prog b, .sh-def) a { display: inline; min-width: 0; min-height: 0; margin-right: 4px; padding: 0; color: var(--sh-b-ink); text-decoration: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-defs + :is(.sh-order-actions, form, .sh-btn), body:not(.sh-order-page) #main-content.sh-main .sh-order > :is(form, .sh-btn):last-child { margin-top: 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-order :is(form, div) > .sh-btn:only-child { width: 100%; }

body:not(.sh-order-page) #main-content.sh-main .sh-page > .sh-card.sh-stack > div .sh-only-mobile:has(> select.sh-select) { display: none; }
@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page > .sh-card.sh-stack > div .sh-only-desktop:has(> .sh-statustabs) { display: block; min-width: 0; }
}
body:not(.sh-order-page) #main-content.sh-main .sh-page--refill > .sh-card.sh-row-flex { display: flex; flex-direction: column; align-items: stretch; gap: 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--refill > .sh-card.sh-row-flex .sh-h2 { margin: 0 0 4px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--refill > .sh-card.sh-row-flex > .sh-btn { background: var(--sh-b-pri-soft); color: var(--sh-b-pri); }

@media (min-width: 901px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--refill .sh-list.sh-only-mobile { display: none; }
}
body:not(.sh-order-page) #main-content.sh-main .sh-table-wrap { margin: 0; padding: 4px var(--sh-b-pad); border: 0; border-radius: var(--sh-b-r-card); background: var(--sh-b-card); overflow-x: auto; }
body:not(.sh-order-page) #main-content.sh-main .sh-table { width: 100%; border-collapse: collapse; font-size: 15px; }
body:not(.sh-order-page) #main-content.sh-main .sh-table :is(th, td) { height: 56px; padding: 0 8px; border: 0; border-bottom: 1px solid var(--sh-b-line); background: transparent; font-size: 15px; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-table thead th { height: 48px; font-size: 14px; font-weight: 500; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-table tbody tr:last-child td { border-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-table .sh-td-num { font-weight: 600; }
body:not(.sh-order-page) #main-content.sh-main .sh-table .sh-td-mute { color: var(--sh-b-ink-3); }
@media (max-width: 767px) {

 body:not(.sh-order-page) #main-content.sh-main .sh-d2b-page--refunds .sh-table thead { display: none; }
 body:not(.sh-order-page) #main-content.sh-main .sh-d2b-page--refunds .sh-table, body:not(.sh-order-page) #main-content.sh-main .sh-d2b-page--refunds .sh-table tbody { display: block; }
 body:not(.sh-order-page) #main-content.sh-main .sh-d2b-page--refunds .sh-table tbody tr { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "a b" "d c"; gap: 4px 12px; padding: 14px 0; border-bottom: 1px solid var(--sh-b-line); }
 body:not(.sh-order-page) #main-content.sh-main .sh-d2b-page--refunds .sh-table tbody tr:last-child { border-bottom: 0; }
 body:not(.sh-order-page) #main-content.sh-main .sh-d2b-page--refunds .sh-table tbody td { display: block; height: auto; padding: 0; border: 0; }
 body:not(.sh-order-page) #main-content.sh-main .sh-d2b-page--refunds .sh-table tbody td:nth-child(1) { grid-area: a; font-size: 16px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-d2b-page--refunds .sh-table tbody td:nth-child(2) { grid-area: b; font-size: 17px; font-weight: 700; text-align: right; }
 body:not(.sh-order-page) #main-content.sh-main .sh-d2b-page--refunds .sh-table tbody td:nth-child(3) { grid-area: c; text-align: right; }
 body:not(.sh-order-page) #main-content.sh-main .sh-d2b-page--refunds .sh-table tbody td:nth-child(4) { grid-area: d; font-size: 14px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-d2b-page--refunds .sh-table tbody td:nth-child(n+5) { grid-column: 1 / -1; font-size: 14px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-d2b-page--refunds .sh-table tbody td a { min-height: 0; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-list { gap: var(--sh-b-gap); }
body:not(.sh-order-page) #main-content.sh-main .sh-card .sh-list:has(> .sh-d2b-ticket-row) { gap: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-list > .sh-order.sh-d2b-ticket-row { display: block; margin: 0; padding: 16px 0; border: 0; border-bottom: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-list > .sh-order.sh-d2b-ticket-row:last-child { border-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-d2b-ticket-row :is(.sh-order-name, b, h3) { font-size: 16px; font-weight: 700; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--tickets .sh-card ul { padding-left: 20px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--tickets .sh-card li, body:not(.sh-order-page) #main-content.sh-main .sh-page--tickets .sh-card p:not(.sh-formsec-desc, .sh-help) { font-size: 15px; line-height: 1.65; color: var(--sh-b-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-thread { display: flex; flex-direction: column; gap: 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-msg { max-width: 86%; border: 0; box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-msg-body { padding: 14px 16px; border: 0; border-radius: 18px; font-size: 15px; line-height: 1.6; }
body:not(.sh-order-page) #main-content.sh-main .sh-msg--me { align-self: flex-end; }
body:not(.sh-order-page) #main-content.sh-main .sh-msg--me .sh-msg-body { background: var(--sh-b-pri-soft); color: var(--sh-b-ink); border-bottom-right-radius: 6px; }
body:not(.sh-order-page) #main-content.sh-main .sh-msg--staff { align-self: flex-start; }
body:not(.sh-order-page) #main-content.sh-main .sh-msg--staff .sh-msg-body { background: var(--sh-b-fill); color: var(--sh-b-ink); border-bottom-left-radius: 6px; }
body:not(.sh-order-page) #main-content.sh-main .sh-msg-info { font-size: 13px; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-msg-info .sh-badge { font-size: 12px; }
body:not(.sh-order-page) #main-content.sh-main .sh-d2b-attachment-chip { min-height: 44px; padding: 0 14px; border: 0; border-radius: 12px; background: var(--sh-b-card); font-size: 14px; }
body:not(.sh-order-page) #main-content.sh-main .sh-back { font-size: 15px; font-weight: 600; color: var(--sh-b-ink-2); min-height: 44px; display: inline-flex; align-items: center; }
body:not(.sh-order-page) #main-content.sh-main .sh-reply { margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--sh-b-line); }

body:not(.sh-order-page) #main-content.sh-main .sh-setting-icon { width: 40px; height: 40px; border-radius: 50%; background: var(--sh-b-blue-soft); color: var(--sh-b-blue); }
body:not(.sh-order-page) #main-content.sh-main .sh-setting-head { display: flex; align-items: center; gap: 12px; }
body:not(.sh-order-page) #main-content.sh-main .sh-setting-head :is(b, h3, .sh-h3) { font-size: 18px; }
body:not(.sh-order-page) #main-content.sh-main .sh-setting-desc { font-size: 14px; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-setting-row { padding: 0; border: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-setting-row + .sh-setting-row { margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--sh-b-line); }
body:not(.sh-order-page) #main-content.sh-main .sh-setting-option { min-height: 52px; padding: 0; border: 0; border-bottom: 1px solid var(--sh-b-line); font-size: 16px; font-weight: 500; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-setting-option:last-child { border-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-setting-option :is(span, label) { font-size: 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-d2b-email-confirm { display: flex; flex-direction: column; gap: 12px; }

body:not(.sh-order-page) #main-content.sh-main .sh-code-sample { padding: 14px 16px; border: 0; border-radius: 14px; background: var(--sh-b-fill); font-size: 14px; line-height: 1.7; color: var(--sh-b-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-code-sample * { font-size: 14px; }

body:not(.sh-order-page) #main-content.sh-main .sh-card-head .sh-row-end:has(.sh-seg-item) { display: flex; gap: 4px; padding: 4px; border-radius: 12px; background: var(--sh-b-fill); }
body:not(.sh-order-page) #main-content.sh-main .sh-seg-item { height: 36px; min-height: 36px; padding: 0 12px; border: 0; border-radius: 9px; background: transparent; box-shadow: none; font-size: 14px; font-weight: 600; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-seg-item.active { background: var(--sh-b-card); color: var(--sh-b-ink); box-shadow: 0 1px 3px rgba(0, 0, 0, .08); }
body:not(.sh-order-page) #main-content.sh-main .sh-steps3 { display: flex; flex-direction: column; gap: 0; margin: 0; padding: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-steps3-item { position: relative; display: grid; grid-template-columns: 28px 1fr; column-gap: 16px; align-items: start; margin: 0; padding: 0 0 20px; border: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-steps3-item:not(:last-child)::before { content: ""; position: absolute; left: 13px; top: 32px; bottom: 4px; width: 2px; background: var(--sh-b-line); }
body:not(.sh-order-page) #main-content.sh-main .sh-steps3-head { grid-row: 1 / span 3; display: block; width: 28px; height: auto; }
body:not(.sh-order-page) #main-content.sh-main .sh-steps3-head .sh-effect-icon { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-steps3-head .sh-step-no { display: grid; place-items: center; width: 28px; height: 28px; border: 0; border-radius: 50%; background: var(--sh-b-ink); color: #fff; font-size: 14px; font-weight: 700; }
body:not(.sh-order-page) #main-content.sh-main .sh-steps3-item > .sh-tile-title { grid-column: 2; grid-row: 1; margin: 4px 0; font-size: 17px; font-weight: 700; line-height: 1.45; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-steps3-item > .sh-tile-body { grid-column: 2; grid-row: 2; margin: 0; font-size: 15px; line-height: 1.6; color: var(--sh-b-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-steps3-item > .sh-steps3-go { grid-column: 2; grid-row: 3; position: static; justify-self: start; min-height: 40px; font-size: 15px; font-weight: 600; text-decoration: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-steps3-item > .sh-steps3-go span { font-size: 15px; }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-grid { display: flex; flex-direction: column; gap: var(--sh-b-gap); }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-grid > .sh-card:has(> .sh-faq-nav) { padding: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-nav { display: flex; flex-wrap: nowrap; gap: 4px; overflow-x: auto; }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-navitem { flex: 0 0 auto; height: 40px; min-height: 40px; padding: 0 12px; border: 0; border-radius: 10px; background: transparent; font-size: 15px; font-weight: 600; color: var(--sh-b-ink-3); gap: 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-navitem span { font-size: 15px; }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-navitem b { font-size: 13px; font-weight: 600; opacity: .7; }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-navitem.active { background: var(--sh-b-ink); color: #fff; }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-body { display: flex; flex-direction: column; gap: var(--sh-b-gap); }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-body > .sh-card { margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-search { position: relative; }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-search .sh-input { height: 56px; padding-left: 48px; background: var(--sh-b-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236B7684' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") 16px center / 20px no-repeat; }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-search > svg { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-acc { border: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-acc-item { margin: 0; padding: 0; border: 0; border-bottom: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-acc-item:last-child { border-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-acc-q { min-height: 56px; padding: 14px 0; font-size: 16px; font-weight: 600; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-acc-mark { color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main :is(.sh-acc-a, .sh-acc-body, .sh-acc-panel) { font-size: 15px; line-height: 1.65; color: var(--sh-b-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-guides { display: flex; flex-direction: column; gap: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-guide { min-height: 52px; margin: 0; padding: 12px 0; border: 0; border-bottom: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; box-shadow: none; font-size: 15px; font-weight: 500; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-guide * { font-size: 15px; }
body:not(.sh-order-page) #main-content.sh-main .sh-notice-q { min-height: 64px; padding: 14px 0; font-size: 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--notice #noticeList :is(.sh-notice-q, .sh-notice-titlewrap) { font-weight: 600; }

body:not(.sh-order-page) #main-content.sh-main #noticeList .sh-skeleton-set > .sh-skel--row { --sh-skel-h: 65px; }
#noticeList .sh-skeleton-set > .sh-skel--notice-body {
  --sh-skel-h: 73px;
  width: 100%;
  margin: 0;
  border-radius: 0;
  background: linear-gradient(90deg, var(--sh-surface-alt), var(--sh-line-soft), var(--sh-surface-alt)) 16px 8px / 70% 12px no-repeat,
              linear-gradient(90deg, var(--sh-surface-alt), var(--sh-line-soft), var(--sh-surface-alt)) 16px 32px / 50% 12px no-repeat;
  animation: none;
}
@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main #noticeList .sh-skeleton-set > .sh-skel--row { --sh-skel-h: 77px; }
 #noticeList .sh-skeleton-set > .sh-skel--notice-body { --sh-skel-h: 98px; }
}
body:not(.sh-order-page) #main-content.sh-main .sh-notice-title { font-size: 16px; font-weight: 600; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-notice-badge { font-size: 12px; }

body:not(.sh-order-page) #main-content.sh-main .sh-page--notice .sh-notice-date { font-size: 13px; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--notice #noticeList .sh-acc-item.open .sh-notice-title { overflow: visible; white-space: normal; text-overflow: clip; overflow-wrap: anywhere; }
@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--notice #noticeList .sh-acc-item:not(.open) .sh-notice-title { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; white-space: normal; overflow-wrap: anywhere; line-height: 1.4; }
}
body:not(.sh-order-page) #main-content.sh-main .sh-notice-faqline { font-size: 15px; }
body:not(.sh-order-page) #main-content.sh-main .sh-contact { padding: var(--sh-b-pad); border: 0; border-radius: var(--sh-b-r-card); background: var(--sh-b-card); text-align: left; }

body.sh-auth-page #main-content.sh-auth-main { background: var(--sh-b-canvas); }
body.sh-auth-page #main-content.sh-auth-main .sh-auth-card { border: 0; border-radius: var(--sh-b-r-card); background: var(--sh-b-card); box-shadow: none; padding: 24px var(--sh-b-pad); }
body.sh-auth-page #main-content.sh-auth-main .sh-auth-card :is(h1, .sh-h1, .sh-auth-card-head h2) { font-size: 26px; font-weight: 800; letter-spacing: -.03em; color: var(--sh-b-ink); }
body.sh-auth-page #main-content.sh-auth-main .sh-auth-card :is(.sh-lead, .sh-auth-card-head p) { font-size: 15px; color: var(--sh-b-ink-3); }
body.sh-auth-page #main-content.sh-auth-main .sh-auth-card .sh-label, body #sign-in-modal .sh-label { font-size: 15px; font-weight: 600; color: var(--sh-b-ink-2); }
body.sh-auth-page #main-content.sh-auth-main .sh-auth-card .sh-input, body #sign-in-modal .sh-modal .sh-input { height: 56px; min-height: 56px; padding: 0 16px; border: 0; border-radius: var(--sh-b-r-ctl); background: var(--sh-b-fill); box-shadow: none; font-size: 16px; }
body.sh-auth-page #main-content.sh-auth-main .sh-auth-card .sh-input:focus, body #sign-in-modal .sh-modal .sh-input:focus { background: var(--sh-b-card); box-shadow: inset 0 0 0 2px var(--sh-b-pri); }
body.sh-auth-page #main-content.sh-auth-main .sh-auth-card .sh-btn--lg, body #sign-in-modal .sh-modal .sh-btn--lg { height: 56px; min-height: 56px; border-radius: 16px; font-size: 17px; font-weight: 700; }
body.sh-auth-page #main-content.sh-auth-main .sh-auth-card .sh-btn--solid, body #sign-in-modal .sh-modal .sh-btn--solid { border: 0; background: var(--sh-b-fill); color: var(--sh-b-ink); }
body #sign-in-modal :is(.sh-sub, .sh-divider) { font-size: 14px; color: var(--sh-b-ink-3); }

body.sh-auth-page #main-content.sh-auth-main :is(.sh-auth-fine, .sh-auth-foot, .sh-sub, .sh-divider) { font-size: 14px; color: var(--sh-b-ink-2); }
body.sh-auth-page #main-content.sh-auth-main :is(.sh-auth-foot, .sh-auth-fine) a { font-size: 14px; }
body.sh-auth-page #main-content.sh-auth-main .sh-consent-card { padding: 0; border: 0; border-radius: 0; background: transparent; }
body.sh-auth-page #main-content.sh-auth-main .sh-benefit-row { min-height: 52px; padding: 8px 0; font-size: 16px; }
body.sh-auth-page #main-content.sh-auth-main .sh-consent-card { border-top: 1px solid var(--sh-b-line); margin-top: 8px; padding-top: 4px; }
body.sh-auth-page #main-content.sh-auth-main .sh-consent-row { min-height: 52px; padding: 0; border: 0; border-bottom: 1px solid var(--sh-b-line); font-size: 16px; }
body.sh-auth-page #main-content.sh-auth-main .sh-consent-row:last-child { border-bottom: 0; }
body.sh-auth-page #main-content.sh-auth-main .sh-consent-row--all { font-weight: 700; }
body.sh-auth-page #main-content.sh-auth-main .sh-consent-view { font-size: 14px; min-height: 44px; }
body.sh-auth-page #main-content.sh-auth-main .sh-signup-step-dot + * { font-size: 13px; }
body #sign-in-modal .sh-modal { border: 0; border-radius: 24px; padding: 28px 24px 24px; box-shadow: 0 16px 48px rgba(0, 0, 0, .16); }
body #sign-in-modal .sh-modal-title { font-size: 24px; font-weight: 800; letter-spacing: -.03em; }
body #sign-in-modal .sh-modal-sub { margin: 4px 0 0; padding: 0; border: 0; background: transparent; font-size: 15px; color: var(--sh-b-ink-3); }
body #sign-in-modal .sh-modal-sub::before { display: none; }
body #sign-in-modal .sh-check span { font-size: 15px; }
body #sign-in-modal .sh-sub { font-size: 15px; font-weight: 600; color: var(--sh-b-ink-2); }
@media (max-width: 767px) {
 body #sign-in-modal { align-items: flex-end; padding: 0; }
 body #sign-in-modal .sh-modal { width: 100%; max-width: none; margin: 0; border-radius: 24px 24px 0 0; padding-bottom: calc(24px + env(safe-area-inset-bottom)); }
 body.sh-auth-page #main-content.sh-auth-main { padding-inline: 16px; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-steps3-item::after, body:not(.sh-order-page) #main-content.sh-main .sh-steps3-item > .sh-tile-title::after { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-steps3-item > .sh-tile-title { border: 0; padding: 0; background: none; }
@media (min-width: 768px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-defs .sh-defs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-faq-grid { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 16px; align-items: start; }
 body:not(.sh-order-page) #main-content.sh-main .sh-faq-grid > .sh-card:has(> .sh-faq-nav) { position: sticky; top: 24px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-faq-nav { flex-direction: column; padding: 8px; overflow: visible; }
 body:not(.sh-order-page) #main-content.sh-main .sh-faq-navitem { width: 100%; height: 48px; justify-content: space-between; padding: 0 14px; border-radius: 12px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--tickets { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 16px; align-items: start; max-width: 1184px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--tickets > * { grid-column: 1 / -1; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--tickets > .sh-card:has(#ticketsend) { grid-column: 1; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--tickets > .sh-card:has(.sh-d2b-ticket-row, #history-search) { grid-column: 2; grid-row: span 1; }
}

body.sh-auth-page #main-content.sh-auth-main .sh-signup-step-dot > span { font-size: 14px; }
body.sh-auth-page #main-content.sh-auth-main .sh-signup-step-dot > b { font-size: 13px; }
body.sh-auth-page #main-content.sh-auth-main .sh-signup-mobile-benefit > div > span { font-size: 14px; }
body.sh-auth-page #main-content.sh-auth-main .sh-auth-fine, body.sh-auth-page #main-content.sh-auth-main .sh-auth-fine :is(span, a) { font-size: 14px; line-height: 1.55; }
body.sh-auth-page #main-content.sh-auth-main .sh-signup-legal-links :is(a, button) { font-size: 13px; }
body.sh-auth-page #main-content.sh-auth-main .sh-consent-required { font-size: 12px; font-weight: 700; padding: 2px 6px; border-radius: 6px; background: var(--sh-b-pri-soft); color: var(--sh-b-pri); }
body:not(.sh-order-page) .sh-page--topup .pay-point i { font-size: 13px; font-style: normal; font-weight: 600; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-d4b-first-topup { align-items: stretch; text-align: left; }
@media (min-width: 768px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-d4b-first-topup { flex-direction: row; align-items: center; justify-content: space-between; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-d4b-first-topup .sh-btn--primary { flex: 0 0 auto; padding: 0 24px; }
}
body:not(.sh-order-page) #main-content.sh-main :is(.sh-faq-grid, .sh-faq-body) > * { min-width: 0; max-width: 100%; }
body:not(.sh-order-page) #main-content.sh-main .sh-faq-body { width: auto; min-width: 0; }

@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-order-actions:has(> .sh-btn:nth-child(3)) > .sh-btn:first-child { flex: 1 1 100%; }
}
body:not(.sh-order-page) #main-content.sh-main .sh-order-more { position: relative; }
body:not(.sh-order-page) #main-content.sh-main .sh-order-more-menu { right: 0; left: auto; max-width: min(280px, calc(100vw - 32px)); }
@media (max-width: 359px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-tier-card .sh-benefit-matrix :is(th, td) { padding: 0 2px; font-size: 13px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--account .sh-tier-card .sh-benefit-matrix .sh-tierchip { padding: 0 6px 0 4px; font-size: 12px; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-page-aside { margin: 0; padding: var(--sh-b-pad); text-decoration: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-page-aside > .sh-h2 { margin: 0 0 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-aside-rows { margin: 0; padding: 0; list-style: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-aside-rows > li { margin: 0; padding: 0; border-bottom: 1px solid var(--sh-b-line); }
body:not(.sh-order-page) #main-content.sh-main .sh-aside-rows > li:last-child { border-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-aside-row { display: flex; align-items: center; gap: 12px; min-height: 64px; padding: 12px 0; color: var(--sh-b-ink); text-decoration: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-aside-row > span { display: flex; flex: 1 1 auto; flex-direction: column; gap: 4px; min-width: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-aside-row b { font-size: 16px; font-weight: 600; line-height: 1.4; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-aside-row small { font-size: 14px; line-height: 1.5; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-catrow-arrow { flex: 0 0 20px; width: 20px; height: 20px; color: #B0B8C1; }
@media (hover: hover) and (pointer: fine) {
 body:not(.sh-order-page) #main-content.sh-main :is(.sh-aside-row, .sh-catrow):hover :is(b, .sh-catrow-name) { color: var(--sh-b-pri); }
}

@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--cards { max-width: 1184px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--cards .sh-list:has(> .sh-order) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sh-b-gap); align-items: stretch; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--cards .sh-list > .sh-order { display: flex; flex-direction: column; margin: 0; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--cards .sh-list > .sh-order > .sh-order-actions { margin-top: auto; padding-top: 16px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--cards .sh-order .sh-order-defs .sh-defs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--cards .sh-order .sh-order-defs .sh-defs:has(> .sh-def:nth-child(5)) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-def a.sh-linkbtn { margin: 0 4px 0 0; padding: 0; font-size: inherit; font-weight: inherit; color: var(--sh-b-pri); text-decoration: underline; text-underline-offset: 3px; }

body:not(.sh-order-page) #main-content.sh-main .sh-page--read:has(> .sh-legal-layout) { max-width: 1040px; }
body:not(.sh-order-page) #main-content.sh-main .sh-legal-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sh-b-gap); align-items: start; margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-legal-layout > .sh-legal-card { margin: 0; border: 0; border-radius: var(--sh-b-r-card); box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-legal-card .sh-cms { max-width: 720px; font-size: 16px; line-height: 1.75; color: var(--sh-b-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-legal-card #inner_content > :is(h2, h3) { font-size: 18px; font-weight: 700; color: var(--sh-b-ink); border-top-color: var(--sh-b-line); }
body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc { position: static; margin: 0; padding: 6px; border: 0; border-radius: 16px; background: var(--sh-b-card); box-shadow: none; overflow-x: auto; scrollbar-width: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc > b { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc ol { display: flex; flex-wrap: nowrap; gap: 4px; margin: 0; padding: 0; list-style: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc li { flex: 0 0 auto; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc a { display: inline-flex; align-items: center; min-height: 40px; height: auto; padding: 0 14px; border: 0; border-radius: 10px; background: transparent; box-shadow: none; font-size: 15px; font-weight: 600; line-height: 1.4; color: var(--sh-b-ink-2); white-space: nowrap; text-decoration: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc a:is(:hover, :focus-visible, [aria-current="true"], .active) { background: var(--sh-b-fill); color: var(--sh-b-ink); }
@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-legal-layout > .sh-legal-card { border-radius: var(--sh-b-r-card); }
 body:not(.sh-order-page) #main-content.sh-main .sh-page .sh-legal-toc { padding: 6px; scroll-padding-inline: 6px; }
}
@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-legal-layout { grid-template-columns: minmax(0, 1fr) 340px; column-gap: 24px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-legal-layout > .sh-legal-card { grid-column: 1; grid-row: 1; }
 body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc { grid-column: 2; grid-row: 1; position: sticky; top: 24px; padding: 20px 20px 8px; border-radius: var(--sh-b-r-card); overflow: visible; }
 body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc > b { display: block; margin: 0 0 4px; font-size: 16px; font-weight: 700; color: var(--sh-b-ink); }
 body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc ol { flex-direction: column; flex-wrap: nowrap; gap: 0; }
 body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc li { border-bottom: 1px solid var(--sh-b-line); }
 body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc li:last-child { border-bottom: 0; }
 body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc a { display: flex; min-height: 48px; padding: 12px 0; border-radius: 0; background: transparent; white-space: normal; }
 body:not(.sh-order-page) #main-content.sh-main .sh-legal-toc a:is(:hover, :focus-visible, [aria-current="true"], .active) { background: transparent; color: var(--sh-b-pri); }
}

body:not(.sh-order-page) #main-content.sh-main .sh-page--notice > .sh-notice-faqline { font-size: inherit; }
@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main :is(.sh-guide-page, .sh-page--notice):has(> .sh-page-aside) { display: grid; grid-template-columns: minmax(0, 1fr) 340px; column-gap: 24px; row-gap: var(--sh-b-gap); align-items: start; max-width: 1184px; }
 body:not(.sh-order-page) #main-content.sh-main :is(.sh-guide-page, .sh-page--notice):has(> .sh-page-aside) > * { grid-column: 1 / -1; }
 body:not(.sh-order-page) #main-content.sh-main :is(.sh-guide-page, .sh-page--notice):has(> .sh-page-aside) > .sh-card:not(.sh-page-aside) { grid-column: 1; }
 body:not(.sh-order-page) #main-content.sh-main :is(.sh-guide-page, .sh-page--notice):has(> .sh-page-aside) > .sh-page-aside { grid-column: 2; position: sticky; top: 24px; }
}

@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--read[data-faq-root] { max-width: 1184px; }
}
@media (min-width: 1400px) {
 body:not(.sh-order-page) #main-content.sh-main [data-faq-root] .sh-faq-body { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sh-b-gap); align-items: start; }
 body:not(.sh-order-page) #main-content.sh-main [data-faq-root] .sh-faq-body > * { grid-column: 1 / -1; margin: 0; }
 body:not(.sh-order-page) #main-content.sh-main [data-faq-root] .sh-faq-body > [data-faq-sec="faq"] { grid-column: 1; }
 body:not(.sh-order-page) #main-content.sh-main [data-faq-root] .sh-faq-body > [data-faq-sec="guide"] { grid-column: 2; }
 body:not(.sh-order-page) #main-content.sh-main [data-faq-root] .sh-faq-body > [data-faq-sec][hidden] + [data-faq-sec], body:not(.sh-order-page) #main-content.sh-main [data-faq-root] .sh-faq-body > [data-faq-sec]:has(+ [data-faq-sec][hidden]) { grid-column: 1 / -1; }
}

@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page:has(.sh-catplats) { max-width: 1184px; }

 body:not(.sh-order-page)[data-page="/services"] #main-content.sh-main > .sh-page:not([style*="display: none"]) { max-width: 1184px; }
}
body:not(.sh-order-page) #main-content.sh-main .sh-catalog-browser { display: flex; flex-direction: column; gap: var(--sh-b-gap); margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-catalog-head > .sh-card-head { margin: 0 0 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-catalog-head .sh-sub { margin: 4px 0 0; font-size: 14px; line-height: 1.5; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-catalog-head .sh-catalog-search { width: 100%; max-width: none; margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-catalog-head .sh-catalog-search .sh-input { padding-right: 16px; }
body:not(.sh-order-page) #main-content.sh-main .sh-catalog-filters { display: flex; flex-wrap: nowrap; gap: 4px; margin: 12px 0 0; padding: 4px; border-radius: 14px; background: var(--sh-b-fill); overflow-x: auto; scrollbar-width: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-catalog-filters::-webkit-scrollbar { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-catalog-filter { flex: 0 0 auto; width: auto; display: inline-flex; align-items: center; justify-content: center; min-width: 56px; height: 40px; min-height: 40px; margin: 0; padding: 0 14px; border: 0; border-radius: 10px; background: transparent; box-shadow: none; font-size: 15px; font-weight: 600; color: var(--sh-b-ink-3); white-space: nowrap; }
body:not(.sh-order-page) #main-content.sh-main .sh-catalog-filter.active { background: var(--sh-b-card); color: var(--sh-b-ink); box-shadow: 0 1px 3px rgba(0, 0, 0, .08); }
body:not(.sh-order-page) #main-content.sh-main .sh-catplats { display: flex; flex-direction: column; gap: var(--sh-b-gap); margin: 0; }
@media (min-width: 1200px) {

 body:not(.sh-order-page) #main-content.sh-main .sh-catplats { display: block; columns: 2; column-gap: var(--sh-b-gap); }
 body:not(.sh-order-page) #main-content.sh-main .sh-catplats > .sh-catplat { break-inside: avoid; margin: 0 0 var(--sh-b-gap); }
}
body:not(.sh-order-page) #main-content.sh-main .sh-catplat { margin: 0; padding: var(--sh-b-pad) var(--sh-b-pad) 8px; }
body:not(.sh-order-page) #main-content.sh-main .sh-catplat[hidden] { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-catplat-head { display: flex; flex-wrap: nowrap; align-items: center; gap: 12px; margin: 0 0 8px; padding: 0; border: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-catplat-head .sh-h2 { flex: 1 1 auto; min-width: 0; margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-catplat-logo { --sh-plat-tile: 40px; --sh-plat-glyph: 22px; --sh-plat-radius: 12px; flex: 0 0 40px; width: 40px; height: 40px; border-radius: 12px; box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-catplat-logo svg { width: 22px; height: 22px; }
body:not(.sh-order-page) #main-content.sh-main .sh-catplat-n { flex: 0 0 auto; font-size: 14px; font-weight: 500; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-catplat-rows { display: block; margin: 0; padding: 0; border: 0; list-style: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-catplat-rows > .sh-catgrp { display: block; margin: 0; padding: 0; border: 0; border-bottom: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-catplat-rows > .sh-catgrp:last-child { border-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-catplat-rows > .sh-catgrp[hidden] { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-catrow { display: flex; align-items: center; gap: 12px; min-height: 56px; margin: 0; padding: 12px 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: var(--sh-b-ink); text-decoration: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-catrow-name { flex: 1 1 auto; min-width: 0; font-size: 16px; font-weight: 600; line-height: 1.45; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-catrow > .sh-catrow-name { order: 0; display: block; }
body:not(.sh-order-page) #main-content.sh-main .sh-catrow > .sh-catgrp-n { order: 1; }
body:not(.sh-order-page) #main-content.sh-main .sh-catrow > .sh-catrow-arrow { order: 2; }
body:not(.sh-order-page) #main-content.sh-main .sh-catrow .sh-catgrp-n { flex: 0 0 auto; margin: 0; padding: 0; background: transparent; font-size: 14px; font-weight: 500; color: var(--sh-b-ink-3); }

body:not(.sh-order-page) #main-content.sh-main .sh-catgrp-products { margin: 0 0 8px; padding: 0 0 0 12px; border-left: 2px solid var(--sh-b-line); list-style: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-catgrp-products[hidden], body:not(.sh-order-page) #main-content.sh-main .sh-catgrp-products > li[hidden] { display: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-catgrp-products .sh-row { display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 10px 0; border: 0; border-radius: 0; background: transparent; color: var(--sh-b-ink); text-decoration: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-catgrp-products .sh-row-main { display: flex; flex: 1 1 auto; flex-direction: column; gap: 4px; min-width: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-catgrp-products .sh-row-name { font-size: 15px; font-weight: 600; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-catgrp-products :is(.sh-row-sub, .sh-row-rating, .sh-row-unit) { font-size: 14px; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-catgrp-products .sh-row-rate { display: flex; flex: 0 0 auto; flex-direction: column; align-items: flex-end; gap: 2px; }
body:not(.sh-order-page) #main-content.sh-main .sh-catgrp-products .sh-row-price { font-size: 16px; font-weight: 700; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-catalog-empty { margin: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-catalog-empty[hidden] { display: none; }

body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin: 0 0 24px; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-route { display: block; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-route + .sh-mechanism-route { padding-top: 24px; border-top: 1px solid var(--sh-b-line); }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-route h3 { margin: 0 0 16px; font-size: 17px; font-weight: 700; line-height: 1.4; color: var(--sh-b-ink-2); }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-route--method h3 { color: var(--sh-b-pri); }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-flow { display: flex; flex-direction: column; flex-wrap: nowrap; align-items: stretch; justify-items: stretch; gap: 0; margin: 0; padding: 0; list-style: none; counter-reset: sh-mech; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-flow > li { position: relative; display: flex; flex-direction: row; align-items: center; gap: 12px; min-height: 44px; margin: 0; padding: 0 0 12px; counter-increment: sh-mech; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-flow > li::before { content: counter(sh-mech); flex: 0 0 28px; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--sh-b-fill); color: var(--sh-b-ink-2); font-size: 14px; font-weight: 700; position: relative; z-index: 1; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-route--method .sh-mechanism-flow > li::before { background: var(--sh-b-ink); color: #fff; }

body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-flow > li:not(:last-child)::after { content: ""; position: absolute; left: 13px; top: 28px; bottom: -8px; width: 2px; background: var(--sh-b-line); }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-flow > li > span { max-width: none; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; font-size: 16px; font-weight: 500; line-height: 1.45; color: var(--sh-b-ink); white-space: normal; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-link { display: none; }

body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-flow > .sh-mechanism-result { padding-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-flow > .sh-mechanism-result::before { content: ""; background: var(--sh-danger-bg) no-repeat center / 14px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23D92D20' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E"); }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-route--method .sh-mechanism-flow > .sh-mechanism-result--method::before { background: var(--sh-b-pri) no-repeat center / 14px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E"); }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-flow > .sh-mechanism-result > span { padding: 0; border: 0; background: transparent; box-shadow: none; font-size: 16px; font-weight: 700; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-flow > .sh-mechanism-result--contrast > span { color: var(--sh-danger); background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-route--method .sh-mechanism-flow > .sh-mechanism-result--method > span { color: var(--sh-b-pri); background: transparent; border: 0; box-shadow: none; }
@media (min-width: 768px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; }
 body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-route { padding-right: 24px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-mechanism-route + .sh-mechanism-route { padding: 0 0 0 24px; border-top: 0; border-left: 1px solid var(--sh-b-line); }
}

body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-order-guide { display: block; margin: 0 0 16px; padding: 24px 0 0; border: 0; border-top: 1px solid var(--sh-b-line); border-radius: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-order-guide > p { margin: 0; font-size: 15px; line-height: 1.55; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-steps { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; margin: 0; padding: 0; list-style: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-steps > li { position: relative; display: grid; grid-template-columns: 28px minmax(0, 1fr); align-items: start; gap: 12px; min-height: 0; margin: 0; padding: 0 0 20px; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-steps > li:last-child { padding-bottom: 0; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-steps > li:not(:last-child)::after { content: ""; position: absolute; left: 13px; top: 28px; bottom: 0; width: 2px; background: var(--sh-b-line); }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-step-no { position: relative; z-index: 1; width: 28px; height: 28px; border: 0; border-radius: 50%; background: var(--sh-b-ink); color: #fff; font-size: 14px; font-weight: 700; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-steps h3 { margin: 2px 0 0; font-size: 17px; font-weight: 700; line-height: 1.4; color: var(--sh-b-ink); }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-steps p { margin: 4px 0 0; font-size: 15px; line-height: 1.6; color: var(--sh-b-ink-3); }
@media (min-width: 1200px) {

 body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 24px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-steps > li { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 0; }
 body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-steps > li:not(:last-child)::after { left: 36px; right: -12px; top: 13px; bottom: auto; width: auto; height: 2px; }
}

@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--read:is(:has(> .sh-legal-layout), [data-faq-root], .sh-guide-page) { transform: none; }
}

body:not(.sh-order-page) #main-content.sh-main [data-faq-root] > .sh-card.sh-center { text-align: center; }
body:not(.sh-order-page) #main-content.sh-main [data-faq-root] > .sh-card.sh-center .sh-lead { display: block; max-width: none; margin: 8px 0 0; font-size: 15px; line-height: 1.55; color: var(--sh-b-ink-3); text-align: center; }
body:not(.sh-order-page) #main-content.sh-main [data-faq-root] > .sh-card.sh-center .sh-contact { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; max-width: 560px; margin: 0 auto; padding: 0; border-radius: 0; background: transparent; }
body:not(.sh-order-page) #main-content.sh-main [data-faq-root] > .sh-card.sh-center .sh-contact .sh-btn { width: 100%; margin: 0; }

@media (min-width: 768px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--updates .sh-list.sh-only-mobile { display: none; }
}
@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--updates .sh-table-wrap.sh-only-desktop { display: none; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-page--updates > .sh-card.sh-stack .sh-chips--scroll { display: flex; flex-wrap: nowrap; gap: 4px; margin: 0; padding: 4px; min-height: 0; border-radius: 14px; background: var(--sh-b-fill); overflow-x: auto; scrollbar-width: none; }
body:not(.sh-order-page) #main-content.sh-main .sh-page--updates > .sh-card.sh-stack .sh-chips--scroll > .sh-chip { flex: 0 0 auto; height: 40px; min-height: 40px; padding: 0 12px; border: 0; border-radius: 10px; background: transparent; box-shadow: none; font-size: 15px; font-weight: 600; color: var(--sh-b-ink-3); }
body:not(.sh-order-page) #main-content.sh-main .sh-page--updates > .sh-card.sh-stack .sh-chips--scroll > .sh-chip.active { background: var(--sh-b-card); color: var(--sh-b-ink); box-shadow: 0 1px 3px rgba(0, 0, 0, .08); }

body:not(.sh-order-page) #main-content.sh-main .sh-product-landing :is(.sh-landing-eyebrow, .sh-landing-eyebrow *, .sh-landing-bundle-head > span, .sh-info-row, .sh-review-date, .sh-review-prod) { font-size: 14px; }
body:not(.sh-order-page) #main-content.sh-main .sh-stat-label { font-size: 14px; }
body:not(.sh-order-page)[data-page="/services"] #main-content.sh-main .sh-plats .sh-plat-label { font-size: 13px; }
body:not(.sh-order-page) #main-content.sh-main .sh-product-landing .sh-landing-cta :is(ul span, .sh-landing-cta-action span:not(.sh-btn *)) { font-size: 14px; }
body:not(.sh-order-page) #main-content.sh-main > .sh-landing-sticky div > span { font-size: 14px; }

html:root body .sh-ticker-row {
  height: 44px; min-height: 44px; padding: 0 18px; gap: 16px; align-items: center;
  border: 0; border-radius: 20px; background: var(--sh-tint); background-image: none; box-shadow: none;
}
html:root body .sh-ticker-row > .sh-ticker {
  flex: 1 1 auto; min-width: 0; height: 44px; min-height: 44px; padding: 0; gap: 10px;
  border: 0; border-radius: 0; background: transparent; box-shadow: none;
}
html:root body .sh-ticker-row .sh-ticker-msg,
html:root body .sh-ticker-row .sh-ticker-roll { flex: 1 1 auto; min-width: 0; height: 44px; min-height: 0; }
html:root body .sh-ticker-row .sh-ticker-line { height: 44px; gap: 8px; font-size: 15px; letter-spacing: -0.01em; color: var(--sh-ink); }
html:root body .sh-ticker-row .sh-ticker-txt { font-size: 15px; font-weight: 500; color: var(--sh-ink); }
html:root body .sh-ticker-row .sh-ticker-txt b { font-weight: 700; color: var(--sh-ink); }
html:root body .sh-ticker-row .sh-ticker-ago { font-size: 13px; font-weight: 600; color: var(--sh-muted); }
html:root body .sh-ticker-row .sh-ticker-ico { width: 24px; height: 24px; border-radius: 8px; }
html:root body .sh-ticker-row .sh-ticker-ico svg { width: 15px; height: 15px; }
html:root body .sh-ticker-row .sh-live-pill {
  flex: 0 0 auto; height: 44px; padding: 0; gap: 4px; border: 0; border-radius: 0; background: transparent; box-shadow: none;
  font-size: 13px; font-weight: 500; color: var(--sh-muted); white-space: nowrap;
}
html:root body .sh-ticker-row .sh-live-pill b { font-weight: 600; color: var(--sh-muted); }

html:root body .sh-strip {
  height: 44px; min-height: 44px; margin: 12px 16px 0; padding: 0 14px; gap: 12px; align-items: center;
  border: 0; border-radius: 20px; background: var(--sh-tint); background-image: none; box-shadow: none; color: var(--sh-ink); font-size: 14px;
}

html:root body:not(.sh-order-page) .sh-strip { margin-bottom: 12px; }
html:root body .sh-strip .sh-ticker-msg {
  flex: 1 1 0; min-width: 0; height: 44px; min-height: 0; padding: 0;
  border-radius: 0; background: transparent;
}
html:root body .sh-strip .sh-ticker-roll,
html:root body .sh-strip .sh-ticker-line { width: 100%; height: 44px; min-height: 0; }
html:root body .sh-strip .sh-ticker-line { gap: 8px; font-size: 14px; letter-spacing: -0.01em; color: var(--sh-ink); }
html:root body .sh-strip .sh-ticker-txt { font-size: 14px; font-weight: 500; color: var(--sh-ink); }
html:root body .sh-strip .sh-ticker-txt b { font-weight: 700; color: var(--sh-ink); }
html:root body .sh-strip .sh-ticker-ago { font-size: 13px; color: var(--sh-muted); }
html:root body .sh-strip .sh-ticker-ico { width: 20px; height: 20px; border-radius: 6px; }
html:root body .sh-strip .sh-ticker-ico svg { width: 13px; height: 13px; }

html:root body .sh-ticker-ico[data-brand="threads"] { --sh-plat-mark-bg: #111111; }
html:root body .sh-ticker-ico[data-brand="carrot"] { --sh-plat-mark-bg: #FF6F0F; }
html:root body :is(.sh-ticker-row, .sh-strip) .sh-ticker-ico--topup { --sh-plat-mark-bg: var(--sh-surface); background: var(--sh-surface); color: var(--sh-primary); }
html:root body .sh-strip .sh-ticker-tail {
  display: inline-flex; align-items: center; gap: 0; min-width: 0; padding: 0; border-radius: 0; background: transparent;
  font-size: 13px; font-weight: 500; color: var(--sh-muted);
}
html:root body .sh-strip .sh-ticker-tail b { font-weight: 600; color: var(--sh-muted); }
@media (max-width: 360px) { html:root body .sh-strip .sh-ticker-tail { display: none; } }

html:root body :is(.sh-ticker-row, .sh-strip) .sh-ticker-roll { position: relative; display: block; overflow: hidden; }
html:root body :is(.sh-ticker-row, .sh-strip) .sh-ticker-line {
  display: flex; align-items: center; overflow: hidden; white-space: nowrap;
  transition: transform 420ms cubic-bezier(.2, .8, .2, 1), opacity 320ms ease-out;
}
html:root body :is(.sh-ticker-row, .sh-strip) .sh-ticker-line > .sh-ticker-txt {
  display: block; flex: 0 1 auto; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
  -webkit-line-clamp: unset; line-clamp: unset; line-height: 1.4; overflow-wrap: normal;
}
html:root body :is(.sh-ticker-row, .sh-strip) .sh-ticker-line > :not(.sh-ticker-txt) { flex: 0 0 auto; }
html:root body :is(.sh-ticker-row .sh-live-pill, .sh-strip .sh-ticker-tail)::before { content: none; display: none; }
@media (prefers-reduced-motion: reduce) {
  html:root body :is(.sh-ticker-row, .sh-strip) .sh-ticker-line { transition: none; }
}

html:root body.sh-order-page .sh-rail--main > .sh-ticker-row { order: -2; margin: 0 0 calc(12px - var(--sh-b-gap, 16px)); border-radius: 20px; box-shadow: none; }
html:root body.sh-order-page #main-content.sh-main .sh-grid > .sh-rail--main > .sh-notice-strip {
  order: -1; width: auto; margin: 0; padding: 0; border: 1px solid var(--sh-border); border-radius: 20px; background: var(--sh-b-card); box-shadow: none;
}
html:root body.sh-order-page #main-content.sh-main .sh-grid > .sh-rail--main > .sh-notice-strip .sh-notice-strip-roll { height: 42px; }
html:root body.sh-order-page #main-content.sh-main .sh-grid > .sh-rail--main > .sh-notice-strip .sh-notice-strip-link { gap: 8px; padding: 0 18px; }
html:root body.sh-order-page #main-content.sh-main .sh-grid > .sh-rail--main > .sh-notice-strip .sh-notice-strip-roll:empty::before { top: 15px; left: 18px; }
@media (max-width: 767px) {
  html:root body.sh-order-page #main-content.sh-main .sh-grid > .sh-rail--main > .sh-notice-strip { margin: 8px 0 4px; }
  html:root body.sh-order-page #main-content.sh-main .sh-grid > .sh-rail--main > .sh-notice-strip .sh-notice-strip-link { padding: 0 14px; }
  html:root body.sh-order-page #main-content.sh-main .sh-grid > .sh-rail--main > .sh-notice-strip .sh-notice-strip-roll:empty::before { left: 14px; }
}

@media (min-width: 1200px) {
 body.sh-order-page #main-content.sh-main > .sh-grid { grid-template-columns: minmax(0, 1fr) clamp(380px, calc((100% - 24px) * .44), 1000px); }
}

@media (min-width: 1200px) {
 body.sh-order-page #main-content.sh-main > .sh-grid > .sh-rail--aside { container: sh-order-rail / inline-size; }
}
@container sh-order-rail (min-width: 600px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-know .sh-assure { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 20px; align-items: start; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-know .sh-assure-item { align-items: start; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-review-quote .sh-reviews:has(> .sh-review:nth-of-type(2)) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; align-items: start; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-review-quote .sh-reviews:has(> .sh-review:nth-of-type(2)) > .sh-review { border-bottom: 0; padding-bottom: 2px; }
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-review-quote .sh-reviews:has(> .sh-review:nth-of-type(2)) > .sh-review:nth-of-type(2) { border-left: 1px solid var(--sh-line-hair); padding-left: 24px; }
}

@media (min-width: 1200px) {
 @container sh-order-card (max-width: 679.98px) {
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats { --sh-picker-grid-limit: 7; grid-template-columns: repeat(var(--sh-picker-columns, 7), minmax(0, 1fr)); }
 }
 @container sh-order-card (min-width: 680px) and (max-width: 999.98px) {
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats { --sh-picker-grid-limit: 10; grid-template-columns: repeat(var(--sh-picker-columns, 10), minmax(0, 1fr)); }
 }
 @container sh-order-card (min-width: 1000px) {
  body.sh-order-page #main-content.sh-main .sh-grid .sh-order-card .sh-plats { --sh-picker-grid-limit: 14; grid-template-columns: repeat(var(--sh-picker-columns, 14), minmax(0, 1fr)); }
 }
}

@media (min-width: 1200px) {
 body.sh-order-page #main-content.sh-main .sh-grid .sh-rail-pay-row:has(> dd:is([data-sh-bar-name], [data-sh-order-name])) { min-height: 64px; align-items: center; }
}

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker .sh-picker-body { min-height: 192px; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker .sh-picker-column:has(> #category-container) { display: flex; flex-direction: column; min-height: 0; }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker .sh-picker-column > #category-container { flex: 1 1 auto; }
@media (min-width: 1200px) {
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker .sh-picker-body { height: auto; }
}

@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main:has(> .sh-page--app) { --sh-app-rail: clamp(380px, calc((100% - 24px) * .44), 1000px); padding-left: 32px; padding-right: 32px; }

 body:not(.sh-order-page) #main-content.sh-main > :is(.sh-page, .sh-product-landing).sh-page--app:not([hidden]) { width: auto; max-width: none; margin-left: 0; margin-right: 0; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--app:is(.sh-page--orders, .sh-page--tickets, .sh-page--affiliates, .sh-page--api, .sh-page--child-order:has(> .sh-cms-note), .sh-d2b-page--notifications:has(> .sh-d2b-email-confirm)) {
  display: grid; grid-template-columns: minmax(0, 1fr) clamp(380px, calc((100% - 24px) * .44), 1000px); grid-auto-flow: row dense; column-gap: 24px; row-gap: var(--sh-b-gap); align-items: start;
 }
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--app:is(.sh-page--orders, .sh-page--tickets, .sh-page--affiliates, .sh-page--api, .sh-page--child-order, .sh-d2b-page--notifications) > * { grid-column: 1; }
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--app:is(.sh-page--orders, .sh-page--tickets, .sh-page--affiliates, .sh-page--api, .sh-page--child-order, .sh-d2b-page--notifications) > :is(.sh-eventband, .sh-page-head, .sh-alert) { grid-column: 1 / -1; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--orders.sh-page--app > .sh-d2b-order-stats { grid-column: 2; grid-row: auto; }
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--orders.sh-page--app > .sh-d2b-order-stats .sh-d2b-order-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--orders.sh-page--app .sh-card > .sh-list { container: sh-app-orders / inline-size; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--tickets.sh-page--app > .sh-card:has(.sh-d2b-ticket-row, #history-search) { grid-column: 2; grid-row: auto; }
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--tickets.sh-page--app > .sh-card--flat { grid-column: 1 / -1; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--tickets.sh-page--app > .sh-card .sh-pager { gap: 4px; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--affiliates.sh-page--app > .sh-card:has(.sh-stats) { grid-column: 2; grid-row: span 2; }
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--affiliates.sh-page--app > .sh-card .sh-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--api.sh-page--app > section.sh-card:first-of-type { grid-column: 2; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-d2b-page--notifications.sh-page--app > .sh-d2b-email-confirm { grid-column: 2; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--child-order.sh-page--app > .sh-cms-note { grid-column: 2; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--topup.sh-page--app .sh-topup-flow { grid-template-columns: minmax(0, 1fr) clamp(380px, calc((100% - 24px) * .44), 1000px); }
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--topup.sh-page--app .sh-topup-flow ~ .sh-card { margin-right: calc(clamp(380px, calc((100% - 24px) * .44), 1000px) + 24px); }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--account.sh-page--app .sh-account-panel > .sh-d2b-benefits-host { grid-template-columns: minmax(0, 1fr) clamp(380px, calc((100% - 24px) * .44), 1000px); column-gap: 24px; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--massorder.sh-page--app > .sh-card {
  display: grid; grid-template-columns: minmax(0, 1fr) clamp(380px, calc((100% - 24px) * .44), 1000px); grid-template-areas: "head head" "form box"; column-gap: 24px; align-items: start;
 }
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--massorder.sh-page--app > .sh-card > .sh-card-head { grid-area: head; }
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--massorder.sh-page--app > .sh-card > .sh-box { grid-area: box; margin: 0; }
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--massorder.sh-page--app > .sh-card > form { grid-area: form; margin: 0; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-d2b-page--ticket-detail.sh-page--app > .sh-card:has(> .sh-thread) {
  display: grid; grid-template-columns: minmax(0, 1fr) clamp(380px, calc((100% - 24px) * .44), 1000px); column-gap: 24px; align-items: start;
 }
 body:not(.sh-order-page) #main-content.sh-main > .sh-d2b-page--ticket-detail.sh-page--app > .sh-card:has(> .sh-thread) > * { grid-column: 1 / -1; }
 body:not(.sh-order-page) #main-content.sh-main > .sh-d2b-page--ticket-detail.sh-page--app > .sh-card:has(> .sh-thread) > .sh-thread { grid-column: 1; }
 body:not(.sh-order-page) #main-content.sh-main > .sh-d2b-page--ticket-detail.sh-page--app > .sh-card:has(> .sh-thread) > .sh-thread ~ :is(form, .sh-box) { grid-column: 2; grid-row: 2; margin-top: 0; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--refill.sh-page--app > .sh-card.sh-row-flex { flex-direction: row; align-items: center; justify-content: space-between; gap: 24px; }
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--refill.sh-page--app > .sh-card.sh-row-flex > .sh-btn { flex: 0 0 auto; width: auto; min-width: 240px; padding: 0 24px; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--child-panel.sh-page--app .sh-list.sh-only-mobile { display: none; }

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--app :is(.sh-cms :is(p, li), p.sh-formsec-desc, .sh-card > p.sh-note, .sh-box > p.sh-note) { max-width: 72ch; }
}
@container sh-app-orders (max-width: 899.98px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-list > .sh-order:has(> .sh-facts) { grid-template-columns: minmax(0, 1fr) 180px; grid-template-areas: "top act" "bar act" "facts facts"; column-gap: 24px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-list > .sh-order:has(> .sh-facts) > .sh-facts { margin: 16px 0 0; padding: 16px 0 0; border-left: 0; border-top: 1px solid var(--sh-b-line); grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 12px; }
}
@container sh-app-orders (max-width: 599.98px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-list > .sh-order:has(> .sh-facts) { grid-template-columns: minmax(0, 1fr); grid-template-areas: "top" "bar" "facts" "act"; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-list > .sh-order:has(> .sh-facts) > .sh-order-actions { flex-direction: row; flex-wrap: wrap; margin-top: 16px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--orders .sh-list > .sh-order:has(> .sh-facts) > .sh-order-actions > .sh-btn { flex: 1 1 0; }
}

body:not(.sh-order-page) #main-content.sh-main > .sh-page--affiliates .sh-card:has(> .sh-stats) { container: sh-aff-stats / inline-size; }
body:not(.sh-order-page) #main-content.sh-main > .sh-page--affiliates .sh-stats > .sh-stat { container: sh-aff-stat / inline-size; }
@container sh-aff-stat (max-width: 122.98px) {
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--affiliates .sh-stats > .sh-stat > .sh-stat-num { font-size: 20px; }
}
@container sh-aff-stat (max-width: 111.98px) {
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--affiliates .sh-stats > .sh-stat > .sh-stat-num { font-size: 18px; }
}
@container sh-aff-stat (max-width: 100.98px) {
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--affiliates .sh-stats > .sh-stat > .sh-stat-num { font-size: 16px; }
}
@container sh-aff-stats (min-width: 520px) {
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--affiliates.sh-page--app > .sh-card .sh-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@container sh-aff-stats (max-width: 519.98px) {
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--affiliates.sh-page--app > .sh-card .sh-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

body:not(.sh-order-page) #main-content.sh-main .sh-order .sh-facts:has(> .sh-fact:only-child) { grid-template-columns: minmax(0, 1fr); }

@media (max-width: 479.98px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-tools > .sh-tool-head--hub .sh-tool-lead { min-height: 4.8em; }
}

body:not(.sh-order-page) #main-content.sh-main > .sh-page--tickets .sh-pager { container: sh-ticket-pager / inline-size; }
@container sh-ticket-pager (max-width: 407.98px) {
 body:not(.sh-order-page) #main-content.sh-main .sh-pager a:not(.active, .sh-pager-near):not(:first-child):not(:last-child) { display: none; }
}
@media (min-width: 1600px) {

 body:not(.sh-order-page) #main-content.sh-main > .sh-page--services.sh-page--app .sh-catplats { columns: 3; }
}

.sh-rail--aside .sh-notice-row { border-radius: var(--sh-r-card); }
.sh-rail--aside :is(.sh-static-guide .sh-linkbtn, .sh-rail-review-more, .sh-seo .sh-seo-more, .sh-seo .sh-seo-fold > summary) { border-radius: var(--sh-r-box); }

.sh-mobar .sh-mobar-balance { display: none; }
@media (min-width: 768px) {
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-balance { display: flex; flex: none; flex-direction: column; align-items: flex-end; gap: 2px; font-size: 13px; line-height: 18px; color: var(--sh-b-ink-3); white-space: nowrap; }
 body.sh-order-page[data-route] .sh-mobar .sh-mobar-balance b { font-size: 15px; font-weight: 700; color: var(--sh-b-ink-2); }
}

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--pay { align-items: stretch; }
@media (min-width: 1200px) {
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--input:has(+ .sh-ocard--pay) { padding-bottom: 8px; border-radius: var(--sh-b-r-card) var(--sh-b-r-card) 0 0; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--input + .sh-ocard--pay { margin-top: calc(-1 * var(--sh-b-gap)); padding-top: 16px; border-radius: 0 0 var(--sh-b-r-card) var(--sh-b-r-card); box-shadow: inset 0 1px 0 var(--sh-b-line); }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow > .sh-ocard--input + .sh-alert + .sh-ocard--pay { margin-top: 0; }
}

.sh-d2b-topup-bar .sh-vat-note { margin-left: 4px; font-size: 13px; font-weight: 500; letter-spacing: 0; color: var(--sh-b-ink-3, #6b7684); }
body[data-sh-topup-inline] .sh-d2b-topup-bar { visibility: hidden; opacity: 0; pointer-events: none; transform: translateY(calc(100% + 24px)) !important; }
@media (min-width: 768px) {
 body.sh-has-orderbar:not(.sh-order-page) #main-content.sh-main:has(> .sh-page--topup) { padding-bottom: 120px; }
 body.sh-has-orderbar:not(.sh-order-page) .sh-d2b-topup-bar:not([hidden]) {
  display: flex; left: 256px; right: 0; bottom: 0; justify-content: stretch; border: 0; border-top: 1px solid var(--sh-b-line); border-radius: 0; pointer-events: auto;
  background: var(--sh-b-card); box-shadow: 0 -8px 24px rgba(0, 0, 0, .06); transition: opacity 200ms var(--sh-ease-out), transform 200ms var(--sh-ease-out), visibility 200ms;
 }
 body.sh-has-orderbar:not(.sh-order-page) .sh-d2b-topup-bar .sh-mobar-inner { max-width: none; width: 100%; padding: 12px 32px; border-radius: 0; background: transparent; box-shadow: none; }
 body.sh-has-orderbar:not(.sh-order-page) .sh-d2b-topup-bar .sh-mobar-body { display: flex; align-items: center; min-height: 56px; padding: 0; gap: 24px; border-radius: 0; background: transparent; box-shadow: none; }
 body.sh-has-orderbar:not(.sh-order-page) .sh-d2b-topup-bar .sh-mobar-body > .sh-grow { display: grid; flex: 1 1 auto; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto auto; column-gap: 24px; row-gap: 4px; align-items: center; min-width: 0; overflow: visible; }
 body.sh-has-orderbar:not(.sh-order-page) .sh-d2b-topup-bar .sh-mobar-name { grid-column: 1; grid-row: 1; font-size: 16px; font-weight: 700; line-height: 24px; color: var(--sh-b-ink); }
 body.sh-has-orderbar:not(.sh-order-page) .sh-d2b-topup-bar .sh-mobar-quantity { display: block; grid-column: 1; grid-row: 2; font-size: 14px; line-height: 20px; color: var(--sh-b-ink-3); }
 body.sh-has-orderbar:not(.sh-order-page) .sh-d2b-topup-bar .sh-mobar-quantity[hidden] { display: none; }
 body.sh-has-orderbar:not(.sh-order-page) .sh-d2b-topup-bar .sh-mobar-total { grid-column: 2; grid-row: 1 / span 2; justify-self: end; white-space: nowrap; }
 body.sh-has-orderbar:not(.sh-order-page) .sh-d2b-topup-bar .sh-mobar-total [data-sh-topup-bar-total] { font-size: 22px; font-weight: 800; letter-spacing: -.03em; color: var(--sh-b-ink); }
 body.sh-has-orderbar:not(.sh-order-page) .sh-d2b-topup-bar .sh-btn--primary { flex: none; min-width: 200px; height: 56px; min-height: 56px; padding: 0 24px; border-radius: 16px; font-size: 18px; font-weight: 700; }
}
@media (min-width: 768px) and (prefers-reduced-motion: reduce) {
 body.sh-has-orderbar:not(.sh-order-page) .sh-d2b-topup-bar { transition: none; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-page--topup .sh-topup-pay .sh-step .sh-vat-note { margin-left: 6px; font-size: 13px; font-weight: 500; color: var(--sh-b-ink-3); }
@media (min-width: 1200px) {
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--topup.sh-page--app .sh-topup-flow #payForm > .sh-topup-pay { grid-column: 1; grid-row: auto; position: static; padding: var(--sh-b-pad); box-shadow: none; }
 body:not(.sh-order-page) #main-content.sh-main > .sh-page--topup.sh-page--app .sh-topup-flow #payForm > .sh-coupon-step { grid-column: 2; grid-row: 1 / span 3; align-self: start; }
}

@media (max-width: 767px) {
 body.sh-has-orderbar .sh-mobar.sh-d2b-topup-bar :is(.sh-mobar-name, .sh-mobar-quantity) { font-size: 13px; }
}
html.sh-kb-open body.sh-order-page[data-route] .sh-mobar,
html.sh-kb-open body[data-route=signin] .sh-mobar { display: none !important; }

:is(.sh-row-variant, .sh-list-tag, .sh-row-tag, .sh-svc-tag) { --sh-chip-bg: var(--sh-chip-neutral-bg); --sh-chip-bg-on: var(--sh-chip-neutral-bg-on); --sh-chip-ink: var(--sh-chip-neutral-ink); }
.sh-row-consult { --sh-chip-bg: var(--sh-chip-consult-bg); --sh-chip-bg-on: var(--sh-chip-consult-bg-on); --sh-chip-ink: var(--sh-chip-consult-ink); }
.sh-row-down { --sh-chip-bg: var(--sh-chip-down-bg); --sh-chip-bg-on: var(--sh-chip-down-bg-on); --sh-chip-ink: var(--sh-chip-down-ink); }
:is(.sh-list-tag--refill, .sh-row-tag[data-sh-proof="리필"]) { --sh-chip-bg: var(--sh-chip-ok-bg); --sh-chip-bg-on: var(--sh-chip-ok-bg-on); --sh-chip-ink: var(--sh-chip-ok-ink); }
.sh-list-tag--fast_start { --sh-chip-bg: var(--sh-chip-warn-bg); --sh-chip-bg-on: var(--sh-chip-warn-bg-on); --sh-chip-ink: var(--sh-chip-warn-ink); }
.sh-list-tag--new { --sh-chip-bg: var(--sh-chip-info-bg); --sh-chip-bg-on: var(--sh-chip-info-bg-on); --sh-chip-ink: var(--sh-chip-info-ink); }
.sh-d4-peer-badge { --sh-chip-bg: var(--sh-chip-brand-bg); --sh-chip-bg-on: var(--sh-chip-brand-bg); --sh-chip-ink: var(--sh-chip-brand-ink); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row .sh-row-tags > *,
body.sh-order-page #main-content.sh-main .sh-grid [data-sh-svc-tags] > *,
body.sh-order-page #main-content.sh-main .sh-grid #sh-desc-host .sh-d4-peer-badge,
#main-content.sh-main [data-sh-service-tags] > .sh-row-tag { border: 0; background: var(--sh-chip-bg); color: var(--sh-chip-ink); }
body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row:is(.active, .is-selected, [aria-selected="true"]) .sh-row-tags > * { background: var(--sh-chip-bg-on); }

body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row { flex-shrink: 0; }

@media (min-width: 1200px) and (max-width: 1365px) {
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row { flex-direction: column; align-items: flex-start; justify-content: center; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row .sh-row-main { flex: none; width: 100%; }
 body.sh-order-page #main-content.sh-main .sh-grid :is(#order-form, #sh-guest-order).sh-order-flow .sh-picker #sh-rows > .sh-row .sh-row-price { align-self: flex-start; }
}

:root {
  --sh-grade-basic-bg:      var(--sh-chip-neutral-bg);
  --sh-grade-basic-bg-on:   var(--sh-chip-neutral-bg-on);
  --sh-grade-basic-ink:     var(--sh-chip-neutral-ink);
  --sh-grade-premium-bg:    #EADFFB;
  --sh-grade-premium-bg-on: #DDC9F9;
  --sh-grade-premium-ink:   #5D00C8;
  --sh-grade-real-bg:       #5D00C8;
  --sh-grade-real-bg-on:    #5D00C8;
  --sh-grade-real-ink:      #FFFFFF;
}
.sh-grade--basic   { --sh-grade-bg: var(--sh-grade-basic-bg);   --sh-grade-bg-on: var(--sh-grade-basic-bg-on);   --sh-grade-ink: var(--sh-grade-basic-ink); }
.sh-grade--premium { --sh-grade-bg: var(--sh-grade-premium-bg); --sh-grade-bg-on: var(--sh-grade-premium-bg-on); --sh-grade-ink: var(--sh-grade-premium-ink); }
.sh-grade--real    { --sh-grade-bg: var(--sh-grade-real-bg);    --sh-grade-bg-on: var(--sh-grade-real-bg-on);    --sh-grade-ink: var(--sh-grade-real-ink); }
.sh-grade { display: inline-flex; align-items: center; box-sizing: border-box; height: 20px; padding: 0 6px; border: 0; border-radius: 6px; background: var(--sh-grade-bg); color: var(--sh-grade-ink); font-size: 12px; font-weight: 700; line-height: 20px; letter-spacing: 0; white-space: nowrap; vertical-align: 1px; }
.sh-row:is(.active, .is-selected, [aria-selected="true"], [aria-pressed="true"]) .sh-grade { background: var(--sh-grade-bg-on); }
.sh-grade-chip { --sh-chip-bg: var(--sh-chip-neutral-bg); --sh-chip-bg-on: var(--sh-chip-neutral-bg-on); --sh-chip-ink: var(--sh-chip-neutral-ink); display: inline-flex; align-items: center; box-sizing: border-box; height: 20px; padding: 0 6px; border: 0; border-radius: 6px; background: var(--sh-chip-bg); color: var(--sh-chip-ink); font-size: 12px; font-weight: 600; line-height: 20px; white-space: nowrap; vertical-align: 1px; }
.sh-d4-detail-title > .sh-grade-chip { margin-inline-start: 6px; }
.sh-d4-peer-main > .sh-grade-chip { flex: none; }

.sh-spec { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); column-gap: 24px; margin: 12px 0 0; padding: 0; }
.sh-spec-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; box-sizing: border-box; min-width: 0; min-height: 44px; margin: 0; padding: 10px 0; border-top: 1px solid var(--sh-b-line, #EEF0F3); }
.sh-spec-row > dt { flex: none; margin: 0; font-size: 15px; font-weight: 500; line-height: 1.4; color: var(--sh-b-ink-3, #6B7684); }
.sh-spec-row > dd { min-width: 0; margin: 0; font-size: 16px; font-weight: 700; line-height: 1.4; color: var(--sh-b-ink, #191F28); text-align: right; word-break: keep-all; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }

.sh-row-main > .sh-row-spec { display: flex; align-items: center; gap: 6px; flex: 1 0 100%; order: 9; width: 100%; max-width: 100%; min-width: 0; margin: 0; overflow: hidden; color: var(--sh-muted); font-size: 13px; font-weight: 500; line-height: 1.4; white-space: nowrap; font-variant-numeric: tabular-nums; }

.sh-row-spec > .sh-row-spec-tag { flex: none; display: inline-flex; align-items: center; box-sizing: border-box; height: 20px; padding: 2px 6px; border: 1px solid var(--sh-border-strong); border-radius: 6px; background: transparent; color: var(--sh-chip-neutral-ink); font-size: 12px; font-weight: 600; line-height: 14px; white-space: nowrap; }
.sh-row-spec > .sh-row-spec-text { flex: 0 1 auto; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }

body:not([data-page^="/child_panel"]) .sh-sidebar .sh-user.sh-d2b-balance-card > a.sh-btn.sh-btn--solid { margin-top: calc(var(--sh-space-16) - var(--sh-space-8)); }
.sh-drawer .sh-user.sh-d2b-balance-card > .sh-2col { margin-top: var(--sh-space-16); }

body[data-page] :is(.sh-sidebar, .sh-drawer) .sh-user.sh-d2b-balance-card > .sh-2col > .sh-btn { margin-top: 0; }
body[data-page] :is(.sh-sidebar, .sh-drawer) .sh-user.sh-d2b-balance-card > .sh-user-point,
body[data-page] :is(.sh-sidebar, .sh-drawer) .sh-user.sh-d2b-balance-card > .sh-user-wallet > span { font-size: 13px; }
body[data-page] :is(.sh-sidebar, .sh-drawer) .sh-user.sh-d2b-balance-card > .sh-user-balance { margin-top: var(--sh-space-4); }
body[data-page] .sh-sidebar .sh-user.sh-d2b-balance-card > .sh-user-wallet { height: 32px; min-height: 32px; flex: 0 0 32px; margin: 0; padding-top: 8px; line-height: 20px; }

@media (min-width: 1200px) {
 body:not(.sh-order-page):not(.sh-auth-page) #main-content.sh-main { padding-left: 32px; padding-right: 32px; }
 body:not(.sh-order-page):not(.sh-auth-page) #main-content.sh-main > .sh-page:not(.sh-page--app):not(:has(#pay-redirect-title)):not([hidden]) { width: auto; max-width: none; margin-left: 0; margin-right: 0; }
}

@media (max-width: 767px) {
 body:not(.sh-order-page) #main-content.sh-main :is(.sh-account-tabs, .sh-segtabs, .sh-statustabs, .sh-faq-nav) > :is(a, button) { height: 44px; min-height: 44px; }
 body:not(.sh-order-page) #main-content.sh-main .sh-page--updates > .sh-card.sh-stack .sh-chips--scroll > .sh-chip { height: 44px; min-height: 44px; }
}

body:not(.sh-order-page) #main-content.sh-main .sh-tag { display: inline-flex; align-items: center; height: 24px; padding: 0 8px; border-radius: 6px; font-size: 12px; font-weight: 700; line-height: 1; vertical-align: middle; }

body:not(.sh-order-page) #main-content.sh-main .sh-empty { padding: 28px 20px; }
