.ds-icon{width: var(--icon-md);height: var(--icon-md);flex-shrink: 0;fill: none;stroke: currentColor;stroke-width: var(--icon-stroke);stroke-linecap: round;stroke-linejoin: round}.ds-focus:focus-visible{outline: none;background: var(--color-bg-subtle)}button.btn{-webkit-appearance: none;appearance: none;border: 0;background: transparent;cursor: pointer}.btn:active.btn-blue::before{background: var(--color-action-pressed);border-color: var(--color-action-pressed);box-shadow: none}.btn:focus-visible{outline: none}.btn[disabled],.btn[aria-disabled="true"]{cursor: not-allowed;color: var(--color-text-disabled);pointer-events: none}.btn[disabled]::before,.btn[aria-disabled="true"]::before{background: var(--color-bg-disabled);border-color: var(--color-bg-disabled);box-shadow: none}.btn-sm{--btn-h: var(--btn-sm-h);padding: 0 var(--space-3);font-size: var(--fs-xs)}.btn-block{width: 100%}.btn.is-loading{color: transparent;pointer-events: none}.btn.is-loading::after{content: "";position: absolute;left: 50%;top: 50%;width: var(--icon-sm);height: var(--icon-sm);margin: calc(var(--icon-sm) / -2) 0 0 calc(var(--icon-sm) / -2);border-radius: var(--radius-circle);border: 2px solid var(--color-on-action);border-right-color: transparent;animation: ds-spin .7s linear infinite}.btn-ghost-dark.is-loading::after{border-color: var(--color-action);border-right-color: transparent}@keyframes ds-spin{to{transform: rotate(360deg)}}.ds-icon-btn{position: relative;isolation: isolate;display: inline-grid;place-items: center;width: var(--tap-min);height: var(--tap-min);padding: 0;border: 0;background: transparent;color: var(--color-text);cursor: pointer}.ds-icon-btn::before{content: "";position: absolute;z-index: var(--z-behind);inset: var(--space-0_5);border-radius: var(--radius-circle);border: var(--border-hairline) solid var(--color-border);background: var(--color-surface);transition: background-color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.ds-icon-btn:hover::before,.ds-icon-btn:focus-visible::before{border-color: var(--color-border-hover)}.ds-icon-btn:active::before{background: var(--color-bg-subtle)}.ds-icon-btn:focus-visible{outline: none}.ds-icon-btn:focus-visible::before{border-color: var(--color-border-active)}.ds-icon-btn[disabled]{color: var(--color-text-disabled);cursor: not-allowed}.ds-icon-btn[disabled]::before{background: var(--color-bg-disabled);border-color: var(--color-bg-disabled)}.ds-icon-btn .ds-icon{width: var(--icon-sm);height: var(--icon-sm)}.ds-link{color: var(--color-link);font-weight: var(--fw-semibold);text-decoration: underline;text-decoration-thickness: var(--border-hairline);text-underline-offset: var(--underline-offset);transition: text-decoration-color var(--dur-fast) var(--ease)}.ds-link:hover,.ds-link:focus-visible{text-decoration-color: transparent}.ds-link:focus-visible{outline: none;text-decoration-color: currentColor;text-decoration-thickness: 2px}.ds-field{display: flex;flex-direction: column;gap: var(--space-1_5);min-width: 0}.ds-label{font: var(--fw-semibold) var(--fs-sm)/var(--lh-ui) var(--text);color: var(--color-text)}.ds-label .opt{font-weight: var(--fw-regular);color: var(--color-text-body)}.ds-hint{font-size: var(--fs-xs);line-height: var(--lh-ui);color: var(--color-text-body)}.ds-input,.ds-textarea{width: 100%;min-height: var(--field-h);padding: 0 var(--space-3_5);border: var(--border-hairline) solid var(--color-border);border-radius: var(--field-radius);background: var(--color-surface);color: var(--color-text);font: var(--fw-regular) var(--fs-field)/var(--lh-ui) var(--text);transition: border-color var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease)}.ds-textarea{min-height: calc(var(--field-h) * 2.5);padding: var(--space-3) var(--space-3_5);resize: vertical}.ds-input::placeholder,.ds-textarea::placeholder{color: var(--color-text-body);opacity: 1}.ds-input:hover,.ds-textarea:hover,.ds-input:focus-visible,.ds-textarea:focus-visible{border-color: var(--color-border-hover)}.ds-input:focus,.ds-textarea:focus{outline: none;border-color: var(--color-border-active)}.ds-input::-webkit-search-cancel-button,.ds-input::-webkit-search-decoration{-webkit-appearance: none;appearance: none;display: none}.ds-input:disabled,.ds-textarea:disabled{background: var(--color-bg-disabled);border-color: var(--color-bg-disabled);color: var(--color-text-disabled);cursor: not-allowed}.ds-field.is-invalid .ds-input,.ds-field.is-invalid .ds-textarea,.ds-input[aria-invalid="true"],.ds-textarea[aria-invalid="true"]{border-color: var(--color-error);box-shadow: inset 0 0 0 var(--border-hairline) var(--color-error)}.ds-field.is-invalid .ds-label{color: var(--color-error)}.ds-field.is-invalid .ds-select-btn,.ds-select-btn[aria-invalid="true"]{border-color: var(--color-error);box-shadow: inset 0 0 0 var(--border-hairline) var(--color-error)}.ds-msg{display: none;align-items: flex-start;gap: var(--space-1_5);font: var(--fw-semibold) var(--fs-xs)/var(--lh-ui) var(--text);color: var(--color-error)}.ds-field.is-invalid .ds-msg{display: flex}.ds-msg .ds-icon{width: var(--icon-sm);height: var(--icon-sm);margin-top: var(--border-hairline)}.ds-search{position: relative}.ds-search .ds-input{padding-left: calc(var(--space-3_5) + var(--icon-md) + var(--space-2));padding-right: var(--tap-min);border-radius: var(--radius-full)}.ds-search>.ds-icon{position: absolute;left: var(--space-3_5);top: 50%;transform: translateY(-50%);color: var(--color-text-body);pointer-events: none}.ds-search .ds-clear{position: absolute;right: 0;top: 0}.ds-search .ds-input:placeholder-shown + .ds-clear{display: none}.ds-select{position: relative;display: inline-block;min-width: 0}.ds-select-btn{display: inline-flex;align-items: center;justify-content: space-between;gap: var(--space-2);width: 100%;min-height: var(--field-h);padding: 0 var(--space-3) 0 var(--space-4);border: var(--border-hairline) solid var(--color-border);border-radius: var(--radius-full);background: var(--color-surface);color: var(--color-text);font: var(--fw-medium) var(--fs-ui)/var(--lh-heading) var(--text);text-align: left;cursor: pointer;transition: border-color var(--dur-fast) var(--ease)}.ds-select.is-square .ds-select-btn{border-radius: var(--radius-md);font-size: var(--fs-sm);padding-left: var(--space-3)}.ds-select-btn:hover,.ds-select-btn:focus-visible{border-color: var(--color-border-hover)}.ds-select-btn:focus-visible{outline: none;border-color: var(--color-border-active)}.ds-select-btn .ds-icon{width: var(--icon-sm);height: var(--icon-sm);color: var(--color-text-body);transition: transform var(--dur-fast) var(--ease)}.ds-select-btn[aria-expanded="true"]{border-color: var(--color-border-active)}.ds-select-btn[aria-expanded="true"] .ds-icon{transform: rotate(180deg)}.ds-select-btn>span{overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.ds-listbox{position: absolute;z-index: var(--z-raised);left: 0;top: calc(100% + var(--space-1_5));min-width: 100%;max-height: min(var(--listbox-max-h),60vh);overflow-y: auto;margin: 0;padding: var(--space-1_5);list-style: none;border: var(--border-hairline) solid var(--color-border);border-radius: var(--radius-lg);background: var(--color-surface);box-shadow: var(--shadow-lift)}.ds-listbox[hidden]{display: none}.ds-listbox:focus,.ds-listbox:focus-visible{outline: none}.ds-select.is-up .ds-listbox{top: auto;bottom: calc(100% + var(--space-1_5))}.ds-option{display: flex;align-items: center;justify-content: space-between;gap: var(--space-3);min-height: var(--tap-min);padding: 0 var(--space-3);border-radius: var(--radius-sm);color: var(--color-text);font: var(--fw-regular) var(--fs-ui)/var(--lh-snug) var(--text);white-space: nowrap;cursor: pointer}.ds-option .ds-icon{width: var(--icon-sm);height: var(--icon-sm);color: var(--color-action);visibility: hidden}.ds-option[aria-selected="true"]{font-weight: var(--fw-semibold)}.ds-option[aria-selected="true"] .ds-icon{visibility: visible}.ds-option.is-active,.ds-option:hover,.ds-option:focus-visible{background: var(--color-bg-subtle)}.ds-option[aria-disabled="true"]{color: var(--color-text-disabled);cursor: not-allowed;background: transparent}.ds-check,.ds-radio,.ds-switch{position: relative;display: flex;align-items: center;gap: var(--space-2_5);min-height: var(--tap-min);color: var(--color-text);font: var(--fw-regular) var(--fs-ui)/var(--lh-ui) var(--text);cursor: pointer}.ds-check input,.ds-radio input,.ds-switch input{position: absolute;opacity: 0;width: var(--tap-min);height: var(--tap-min);left: calc((var(--tap-min) - var(--control-box)) / -2);margin: 0;cursor: inherit}.ds-box{flex-shrink: 0;display: grid;place-items: center;width: var(--control-box);height: var(--control-box);border: var(--border-hairline) solid var(--color-border-strong);border-radius: var(--radius-xs);background: var(--color-surface);color: var(--color-on-action);transition: background-color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.ds-radio .ds-box{border-radius: var(--radius-circle)}.ds-box svg{width: 70%;height: 70%;opacity: 0;fill: none;stroke: currentColor;stroke-width: 3;stroke-linecap: round;stroke-linejoin: round}.ds-radio .ds-box::after{content: "";width: 40%;height: 40%;border-radius: var(--radius-circle);background: var(--color-on-action);opacity: 0}.ds-check:hover .ds-box,.ds-radio:hover .ds-box,.ds-check:focus-visible .ds-box,.ds-radio:focus-visible .ds-box{border-color: var(--color-border-active)}.ds-check input:checked + .ds-box,.ds-radio input:checked + .ds-box{background: var(--color-action);border-color: var(--color-action)}.ds-check input:checked + .ds-box svg,.ds-radio input:checked + .ds-box::after{opacity: 1}.ds-check input:focus-visible + .ds-box,.ds-radio input:focus-visible + .ds-box{border-color: var(--color-border-active)}.ds-check input:checked:focus-visible + .ds-box,.ds-radio input:checked:focus-visible + .ds-box,.ds-switch input:checked:focus-visible + .ds-track{background: var(--color-action-pressed);border-color: var(--color-action-pressed)}.ds-switch input:focus-visible + .ds-track{background: var(--color-border-active)}.ds-check input:disabled ~ *,.ds-radio input:disabled ~ *,.ds-switch input:disabled ~ *{opacity: .45}.ds-check:has(input:disabled),.ds-radio:has(input:disabled),.ds-switch:has(input:disabled){cursor: not-allowed}.ds-track{position: relative;flex-shrink: 0;width: var(--switch-w);height: var(--switch-h);border-radius: var(--radius-full);background: var(--color-border-strong);transition: background-color var(--dur-fast) var(--ease)}.ds-track::after{content: "";position: absolute;left: var(--space-0_5);top: var(--space-0_5);width: calc(var(--switch-h) - var(--space-1));height: calc(var(--switch-h) - var(--space-1));border-radius: var(--radius-circle);background: var(--color-surface);transition: transform var(--dur-fast) var(--ease-out)}.ds-switch input:checked + .ds-track{background: var(--color-action)}.ds-switch input:checked + .ds-track::after{transform: translateX(calc(var(--switch-w) - var(--switch-h)))}.ds-tiles{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: var(--space-2);margin: 0;padding: 0;border: 0}.ds-tiles legend{margin-bottom: var(--space-2);font: var(--fw-semibold) var(--fs-xs)/1 var(--text);letter-spacing: var(--ls-label);text-transform: uppercase;color: var(--color-text)}.ds-tile{position: relative;display: flex;flex-direction: column;gap: var(--space-0_5);min-height: var(--tile-h);padding: var(--space-2_5) var(--space-3_5);border: var(--border-hairline) solid var(--color-border);border-radius: var(--radius-lg);background: var(--color-surface);cursor: pointer;transition: border-color var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease)}.ds-tile input{position: absolute;opacity: 0;inset: 0;margin: 0;cursor: inherit}.ds-tile b{font: var(--fw-semibold) var(--fs-ui)/var(--lh-snug) var(--head);color: var(--color-text)}.ds-tile span{font-size: var(--fs-xs);line-height: var(--lh-ui);color: var(--color-text-body)}.ds-tile:hover,.ds-tile:focus-visible{border-color: var(--color-border-hover)}.ds-tile:has(input:checked){border-color: var(--color-action);background: var(--color-bg-subtle);box-shadow: inset 0 0 0 var(--border-hairline) var(--color-action)}.ds-tile:has(input:focus-visible){border-color: var(--color-border-active)}.ds-tile:has(input:checked):has(input:focus-visible){border-color: var(--color-action-pressed);box-shadow: inset 0 0 0 var(--border-hairline) var(--color-action-pressed)}.ds-tile:has(input:disabled){background: var(--color-bg-disabled);border-color: var(--color-bg-disabled);cursor: not-allowed}.ds-tile:has(input:disabled) b,.ds-tile:has(input:disabled) span{color: var(--color-text-disabled)}.ds-badge{display: inline-flex;align-items: center;gap: var(--space-1);min-height: var(--badge-h);padding: 0 var(--space-2);border-radius: var(--radius-xs);background: var(--color-bg-subtle);color: var(--color-text-accent);font: var(--fw-semibold) var(--fs-xs)/1 var(--text);white-space: nowrap}.ds-badge.is-outline{background: var(--color-surface);color: var(--color-text);box-shadow: inset 0 0 0 var(--border-hairline) var(--color-border);font-weight: var(--fw-medium)}.ds-badge.is-inverse{background: var(--color-bg-inverse);color: var(--color-text-inverse)}.ds-badge.is-label{letter-spacing: var(--ls-label);text-transform: uppercase;font-size: var(--fs-2xs)}.ds-grade{display: inline-grid;place-items: center;width: var(--grade-d);height: var(--grade-d);border-radius: var(--radius-circle);font: var(--fw-bold) var(--fs-sm)/1 var(--head)}.ds-grade.g-a{background: var(--color-action);color: var(--color-on-action)}.ds-grade.g-b{background: var(--color-surface);color: var(--color-action);box-shadow: inset 0 0 0 var(--border-hairline) var(--color-action)}.ds-grade.g-c{background: var(--color-bg-subtle);color: var(--color-action)}.ds-tabs{display: flex;gap: var(--space-1);overflow-x: auto;scrollbar-width: none;border-bottom: var(--border-hairline) solid var(--color-border)}.ds-tabs::-webkit-scrollbar{display: none}.ds-tab{position: relative;flex-shrink: 0;min-height: var(--tap-min);padding: 0 var(--space-3_5);border: 0;background: transparent;color: var(--color-text-body);font: var(--fw-medium) var(--fs-ui)/1 var(--text);cursor: pointer;transition: color var(--dur-fast) var(--ease)}.ds-tab::after{content: "";position: absolute;left: var(--space-3_5);right: var(--space-3_5);bottom: calc(var(--border-hairline) * -1);height: 2px;border-radius: var(--radius-2xs);background: var(--color-action);transform: scaleX(0);transition: transform var(--dur-fast) var(--ease-out)}.ds-tab:hover,.ds-tab:focus-visible{color: var(--color-text)}.ds-tab[aria-selected="true"]{color: var(--color-text);font-weight: var(--fw-semibold)}.ds-tab[aria-selected="true"]::after{transform: none}.ds-tab:focus-visible{outline: none;background: var(--color-bg-subtle);border-radius: var(--radius-sm) var(--radius-sm) 0 0}.ds-tabpanel{padding: var(--space-5) 0 0}.ds-tabpanel:focus-visible{outline: none}.ds-tabpanel[hidden]{display: none}.ds-notice{display: flex;align-items: flex-start;gap: var(--space-3);padding: var(--space-3_5) var(--space-4);border-radius: var(--radius-lg);background: var(--color-bg-subtle);color: var(--color-text);font-size: var(--fs-sm);line-height: var(--lh-ui)}.ds-notice[hidden]{display: none}.ds-notice .ds-icon{color: var(--color-action);margin-top: var(--border-hairline)}.ds-notice b{display: block;font: var(--fw-semibold) var(--fs-ui)/var(--lh-snug) var(--head);margin-bottom: var(--space-0_5)}.ds-notice.is-strong{background: var(--color-bg-inverse);color: var(--color-text-inverse)}.ds-notice.is-strong .ds-icon{color: var(--color-text-inverse)}.ds-notice.is-outline{background: var(--color-surface);box-shadow: inset 0 0 0 var(--border-hairline) var(--color-border)}.ds-notice.is-error{background: var(--color-error-subtle);box-shadow: inset 0 0 0 var(--border-hairline) var(--color-error)}.ds-notice.is-error .ds-icon{color: var(--color-error)}.ds-toast-region{position: fixed;z-index: var(--z-skip);left: 50%;bottom: var(--space-6);transform: translateX(-50%);display: flex;flex-direction: column;align-items: center;gap: var(--space-2);width: max-content;max-width: calc(100% - 2 * var(--gutter));pointer-events: none}.ds-toast{display: flex;align-items: center;gap: var(--space-2_5);min-height: var(--tap-min);padding: var(--space-2) var(--space-4);border-radius: var(--radius-full);background: var(--color-bg-inverse);color: var(--color-text-inverse);font: var(--fw-medium) var(--fs-ui)/var(--lh-snug) var(--text);box-shadow: var(--shadow-lift);pointer-events: auto;animation: ds-toast-in var(--dur-base) var(--ease-out) both}.ds-toast .ds-icon{width: var(--icon-sm);height: var(--icon-sm);color: var(--color-text-inverse)}@keyframes ds-toast-in{from{opacity: 0;transform: translateY(var(--space-3))}to{opacity: 1;transform: none}}.ds-tip{position: relative;display: inline-flex}.ds-tip [role="tooltip"]{position: absolute;z-index: var(--z-raised);left: 50%;bottom: calc(100% + var(--space-2));transform: translate(-50%,var(--space-1));width: max-content;max-width: 240px;padding: var(--space-1_5) var(--space-2_5);border-radius: var(--radius-sm);background: var(--color-bg-inverse);color: var(--color-text-inverse);font: var(--fw-regular) var(--fs-xs)/var(--lh-ui) var(--text);opacity: 0;visibility: hidden;pointer-events: none;transition: opacity var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease-out),visibility var(--dur-fast)}.ds-tip:hover [role="tooltip"],.ds-tip:focus-within [role="tooltip"]{opacity: 1;visibility: visible;transform: translate(-50%,0)}.ds-dialog{width: min(520px,calc(100% - 2 * var(--gutter)));max-height: calc(100% - 2 * var(--gutter));padding: 0;border: 0;border-radius: var(--radius-xl);background: var(--color-surface);color: var(--color-text-body);box-shadow: var(--shadow-lift)}.ds-dialog::backdrop{background: var(--color-overlay)}.ds-dialog-head{display: flex;align-items: center;justify-content: space-between;gap: var(--space-4);padding: var(--space-3) var(--space-3) var(--space-3) var(--space-6);border-bottom: var(--border-hairline) solid var(--color-border)}.ds-dialog-head h2{font: var(--fw-semibold) var(--fs-h4)/var(--lh-snug) var(--head)}.ds-dialog-body{padding: var(--space-5) var(--space-6);font-size: var(--fs-sm);line-height: var(--lh-body)}.ds-dialog-foot{display: flex;justify-content: flex-end;gap: var(--space-2);padding: 0 var(--space-6) var(--space-5)}.ds-dialog[open]{animation: ds-toast-in var(--dur-base) var(--ease-out)}.ds-skel{display: block;border-radius: var(--radius-sm);background: linear-gradient(90deg,var(--color-bg-subtle) 0%,var(--color-surface) 50%,var(--color-bg-subtle) 100%) 0 0 / 200% 100%;animation: ds-shimmer 1.4s var(--ease) infinite}.ds-skel.is-text{height: 0.9em;margin: 0.35em 0}.ds-skel.is-block{aspect-ratio: 1;border-radius: var(--card-radius-fluid)}@keyframes ds-shimmer{to{background-position: -200% 0}}.ds-spinner{display: inline-block;width: var(--icon-md);height: var(--icon-md);border-radius: var(--radius-circle);border: 2px solid var(--color-border-strong);border-top-color: var(--color-action);animation: ds-spin .7s linear infinite}@media (prefers-reduced-motion: reduce){.ds-skel{animation: none}.ds-spinner,.btn.is-loading::after{animation-duration: 2.4s}.ds-toast,.ds-dialog[open]{animation: none}}.ds-empty{display: flex;flex-direction: column;align-items: center;gap: var(--space-3);padding: var(--space-12) var(--space-5);border: var(--border-hairline) dashed var(--color-border-hover);border-radius: var(--radius-xl);text-align: center}.ds-empty .ico{width: var(--space-12);height: var(--space-12)}.ds-empty :is(h1,h2,h3){font: var(--fw-semibold) var(--fs-h4)/var(--lh-ui) var(--head)}.ds-empty p{max-width: var(--measure-note);font-size: var(--fs-sm)}.ds-divider{height: var(--border-hairline);margin: var(--space-6) 0;border: 0;background: var(--color-border)}.ds-more{display: flex;flex-direction: column;align-items: center;gap: var(--space-2);margin-top: var(--space-8);font-size: var(--fs-xs);color: var(--color-text-body)}.ds-pagination{display: flex;flex-wrap: wrap;align-items: center;justify-content: center;gap: var(--space-2);margin-top: var(--space-10)}.ds-pagination[hidden]{display: none}.ds-page{display: inline-grid;place-items: center;min-width: var(--tap-min);height: var(--tap-min);padding: 0 var(--space-3);border: var(--border-hairline) solid var(--color-border);border-radius: var(--radius-full);background: var(--color-surface);color: var(--color-text);font: var(--fw-semibold) var(--fs-ui)/1 var(--head);text-decoration: none;transition: border-color var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease)}a.ds-page:hover,a.ds-page:focus-visible{border-color: var(--color-border-hover);outline: none}.ds-page[aria-current="page"]{border-color: var(--color-bg-inverse);background: var(--color-bg-inverse);color: var(--color-text-on-dark)}.ds-page svg{width: var(--icon-sm);height: var(--icon-sm);fill: none;stroke: currentColor}.ds-page[aria-disabled="true"]{color: var(--color-text-disabled);background: var(--color-bg-disabled);border-color: transparent}.ds-page-gap{display: inline-grid;place-items: center;min-width: var(--space-6);height: var(--tap-min);color: var(--color-text-body)}.ds-pagination-info{flex-basis: 100%;margin: var(--space-1) 0 0;text-align: center;font-size: var(--fs-sm);color: var(--color-text-body)}.ds-pill .ds-icon{width: var(--icon-sm);height: var(--icon-sm);color: currentColor;transition: transform var(--dur-fast) var(--ease)}.ds-pill[aria-expanded="true"]>.ds-icon:last-child{transform: rotate(180deg)}.ds-pill[aria-expanded="true"]::before{border-color: var(--color-border-active)}.ds-pill.is-set{color: var(--color-on-action)}.ds-pill.is-set::before{background: var(--color-action);border-color: var(--color-action)}.ds-pill.is-set:hover::before,.ds-pill.is-set:focus-visible::before{background: var(--color-action-pressed);border-color: var(--color-action-pressed)}.ds-pill b{display: inline-block;max-width: 16ch;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;vertical-align: bottom;font-weight: var(--fw-semibold)}.ds-pill.is-set small{color: var(--paper-a80)}.ds-pop{position: relative}.ds-popover{position: absolute;z-index: var(--z-raised);left: 0;top: calc(100% + var(--space-1));width: max(100%,var(--popover-w));max-height: min(var(--menu-max-h),70vh);display: flex;flex-direction: column;border: var(--border-hairline) solid var(--color-border);border-radius: var(--radius-xl);background: var(--color-surface);box-shadow: var(--shadow-lift)}.ds-popover[hidden]{display: none}.ds-pop.is-right .ds-popover{left: auto;right: 0}.ds-pop-list{flex: 1;min-height: 0;overflow-y: auto;margin: 0;padding: var(--space-2) var(--space-4);border: 0}.ds-pop-list .ds-radio,.shop-group .ds-radio{gap: var(--space-3);border-bottom: var(--border-hairline) solid var(--color-border)}.ds-pop-list .ds-radio:last-child,.shop-group .ds-radio:last-child{border-bottom: 0}.ds-radio small{margin-left: auto;font-size: var(--fs-xs);color: var(--color-text-body)}.ds-pop-foot{padding: var(--space-3) var(--space-4) var(--space-4);border-top: var(--border-hairline) solid var(--color-border)}.ds-grid{display: grid;grid-template-columns: repeat(var(--cols),minmax(0,1fr));column-gap: var(--grid-gap);row-gap: var(--grid-gap)}.ds-grid.is-dense{row-gap: var(--space-3)}.ds-span-full{grid-column: 1 / -1}.ds-span-1{grid-column-end: span 1}.ds-span-2{grid-column-end: span 2}.ds-span-3{grid-column-end: span 3}.ds-span-4{grid-column-end: span 4}.ds-span-5{grid-column-end: span 5}.ds-span-6{grid-column-end: span 6}.ds-span-7{grid-column-end: span 7}.ds-span-8{grid-column-end: span 8}.ds-span-9{grid-column-end: span 9}.ds-span-10{grid-column-end: span 10}.ds-span-11{grid-column-end: span 11}.ds-span-12{grid-column-end: span 12}.ds-start-1{grid-column-start: 1}.ds-start-2{grid-column-start: 2}.ds-start-3{grid-column-start: 3}.ds-start-4{grid-column-start: 4}.ds-start-5{grid-column-start: 5}.ds-start-6{grid-column-start: 6}.ds-start-7{grid-column-start: 7}.ds-start-8{grid-column-start: 8}.ds-start-9{grid-column-start: 9}.ds-start-10{grid-column-start: 10}.ds-start-11{grid-column-start: 11}.ds-start-12{grid-column-start: 12}.ds-cards{display: grid;grid-template-columns: repeat(5,minmax(0,1fr));gap: var(--grid-gap)}.ds-cards-4{display: grid;grid-template-columns: repeat(4,minmax(0,1fr));gap: var(--grid-gap)}@media (max-width: 1080px){.ds-span-9,.ds-span-10,.ds-span-11,.ds-span-12{grid-column: 1 / -1}[class*="ds-start-"]{grid-column-start: auto}.ds-md-span-1{grid-column-end: span 1}.ds-md-span-2{grid-column-end: span 2}.ds-md-span-3{grid-column-end: span 3}.ds-md-span-4{grid-column-end: span 4}.ds-md-span-5{grid-column-end: span 5}.ds-md-span-6{grid-column-end: span 6}.ds-md-span-7{grid-column-end: span 7}.ds-md-span-8{grid-column-end: span 8}.ds-cards{grid-template-columns: repeat(3,minmax(0,1fr))}.ds-cards-4{grid-template-columns: repeat(2,minmax(0,1fr))}}@media (max-width: 640px){[class*="ds-span-"]:not([class*="ds-sm-span-"]){grid-column: 1 / -1}.ds-sm-span-1{grid-column-end: span 1}.ds-sm-span-2{grid-column-end: span 2}.ds-sm-span-3{grid-column-end: span 3}.ds-sm-span-4{grid-column-end: span 4}.ds-cards{grid-template-columns: repeat(2,minmax(0,1fr))}.ds-cards-4{grid-template-columns: minmax(0,1fr)}}[data-ds="scroller"]{overscroll-behavior-x: contain;scrollbar-width: none}[data-ds="scroller"]::-webkit-scrollbar{display: none}@media (hover: hover) and (pointer: fine){[data-ds="scroller"].can-scroll{cursor: grab}}[data-ds="scroller"].is-dragging{cursor: grabbing;user-select: none}.ds-suggest{position: absolute;z-index: var(--z-raised);left: 0;right: 0;top: calc(100% + var(--space-1_5));max-height: var(--menu-max-h);overflow-y: auto;margin: 0;padding: var(--space-1_5);list-style: none;border: var(--border-hairline) solid var(--color-border);border-radius: var(--radius-xl);background: var(--color-surface);box-shadow: var(--shadow-lift)}.ds-suggest[hidden]{display: none}.ds-suggest-opt{display: grid;grid-template-columns: var(--space-12) minmax(0,1fr) auto;align-items: center;gap: var(--space-3);min-height: var(--space-16);padding: var(--space-1_5) var(--space-2_5);border-radius: var(--radius-lg);color: var(--color-text);cursor: pointer}.ds-suggest-opt .th{display: grid;place-items: center;width: var(--space-12);height: var(--space-12);overflow: hidden;border: var(--border-hairline) solid var(--color-border);border-radius: var(--radius-sm);background: var(--color-surface)}.ds-suggest-opt .th img{width: 100%;height: 100%;object-fit: contain}.ds-suggest-opt .t{display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;font: var(--fw-medium) var(--fs-sm)/var(--lh-snug) var(--head)}.ds-suggest-opt mark{background: transparent;color: var(--color-action);font-weight: var(--fw-semibold)}.ds-suggest-opt .m{display: block;margin-top: var(--space-0_5);font-size: var(--fs-xs);line-height: var(--lh-ui);color: var(--color-text-body)}.ds-suggest-opt .p{font: var(--fw-semibold) var(--fs-ui)/var(--lh-heading) var(--head);color: var(--color-action);white-space: nowrap;text-align: right}.ds-suggest-opt .p small{display: block;font: var(--fw-regular) var(--fs-2xs)/var(--lh-heading) var(--text);color: var(--color-text-body)}.ds-suggest-opt.is-active,.ds-suggest-opt:hover{background: var(--color-bg-subtle)}.ds-suggest-all{display: flex;align-items: center;justify-content: space-between;gap: var(--space-3);min-height: var(--tap-min);margin-top: var(--space-1);padding: 0 var(--space-2_5);border-top: var(--border-hairline) solid var(--color-border);border-radius: 0 0 var(--radius-lg) var(--radius-lg);color: var(--color-action);font: var(--fw-semibold) var(--fs-ui)/var(--lh-heading) var(--head);cursor: pointer}.ds-suggest-all svg{width: var(--icon-sm);height: var(--icon-sm);flex-shrink: 0;fill: none;stroke: currentColor;stroke-width: 2;stroke-linecap: round;stroke-linejoin: round}.ds-suggest-all.is-active,.ds-suggest-all:hover{background: var(--color-bg-subtle)}.ds-suggest-group{padding: var(--space-2_5) var(--space-2_5) var(--space-1);font: var(--fw-semibold) var(--fs-2xs)/1 var(--text);letter-spacing: var(--ls-label);text-transform: uppercase;color: var(--color-text-body)}.ds-suggest-group:not(:first-child){margin-top: var(--space-1);border-top: var(--border-hairline) solid var(--color-border);padding-top: var(--space-3)}.ds-suggest.is-text .ds-suggest-opt,.ds-suggest-opt.is-text{grid-template-columns: var(--icon-md) minmax(0,1fr);min-height: var(--tap-min);padding: var(--space-2) var(--space-2_5)}.ds-suggest-opt .ic{display: grid;place-items: center;color: var(--color-text-accent)}.ds-suggest-opt .ic svg{width: var(--icon-md);height: var(--icon-md);fill: none;stroke: currentColor;stroke-width: var(--icon-stroke);stroke-linecap: round;stroke-linejoin: round}.ds-suggest-none{padding: var(--space-3) var(--space-2_5);font-size: var(--fs-sm);color: var(--color-text-body)}[data-ds="scroller"].can-scroll{-webkit-mask-image: linear-gradient(90deg,transparent 0,var(--ink) var(--space-8),var(--ink) calc(100% - var(--space-8)),transparent 100%);mask-image: linear-gradient(90deg,transparent 0,var(--ink) var(--space-8),var(--ink) calc(100% - var(--space-8)),transparent 100%)}[data-ds="scroller"].can-scroll.at-start{-webkit-mask-image: linear-gradient(90deg,var(--ink) calc(100% - var(--space-8)),transparent 100%);mask-image: linear-gradient(90deg,var(--ink) calc(100% - var(--space-8)),transparent 100%)}[data-ds="scroller"].can-scroll.at-end{-webkit-mask-image: linear-gradient(90deg,transparent 0,var(--ink) var(--space-8));mask-image: linear-gradient(90deg,transparent 0,var(--ink) var(--space-8))}[data-ds="scroller"].can-scroll:has(.ds-popover:not([hidden])){-webkit-mask-image: none;mask-image: none}@media (max-width: 640px){.ds-popover{position: fixed;left: 0;right: 0;top: auto;bottom: 0;width: auto;max-height: calc(100% - var(--space-16));border-radius: var(--radius-xl) var(--radius-xl) 0 0;box-shadow: 0 0 0 100vmax var(--color-scrim)}.ds-pop.is-right .ds-popover{left: 0;right: 0}.ds-tiles{grid-template-columns: minmax(0,1fr)}}
