.tds-garland{--tds-ink:#26201d;--tds-muted:#746b66;--tds-line:#eadfd9;--tds-paper:#fff;--tds-cream:#fffaf7;--tds-pink:#f7d7e3;--tds-mint:#dcefe9;color:var(--tds-ink);padding:var(--tds-pad-top,60px) 20px var(--tds-pad-bottom,60px);background:var(--tds-cream)}
.tds-garland *{box-sizing:border-box}
.tds-garland__shell{max-width:1240px;margin:0 auto;border:1px solid var(--tds-line);border-radius:28px;overflow:hidden;background:var(--tds-paper);box-shadow:0 18px 60px rgba(67,43,32,.07)}
.tds-garland__head{padding:30px clamp(20px,4vw,52px);background:linear-gradient(120deg,#fff0f5,#edf8f4)}
.tds-garland__eyebrow{margin:0 0 8px;color:#aa496e;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.tds-garland__title{margin:0;font-size:clamp(30px,4.5vw,54px);font-weight:500;line-height:1.02;letter-spacing:-.04em}
.tds-garland__intro{max-width:650px;margin:12px 0 0;color:var(--tds-muted);font-size:15px;line-height:1.6}
.tds-garland__layout{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(440px,1.05fr);gap:30px;padding:30px}
.tds-garland__controls{min-width:0}
.tds-garland__step{display:flex;align-items:center;gap:9px;margin-bottom:13px;font-size:15px;font-weight:650}
.tds-garland__step-number{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--tds-ink);color:#fff;font-size:12px}
.tds-garland__hint{margin:-4px 0 18px;color:var(--tds-muted);font-size:13px}
.tds-garland__selected{display:flex;flex:1;flex-wrap:wrap;gap:8px;min-height:40px;margin:0}
.tds-garland__filters{display:flex;gap:7px;overflow-x:auto;margin:0 0 13px;padding:0 0 4px;scrollbar-width:thin}
.tds-garland__filter{flex:0 0 auto;border:1px solid var(--tds-line);border-radius:999px;padding:8px 12px;background:#fff;color:var(--tds-ink);font:inherit;font-size:12px;cursor:pointer}
.tds-garland__filter.is-active{border-color:var(--tds-ink);background:var(--tds-ink);color:#fff}
.tds-garland__colour[hidden]{display:none}
.tds-garland__chip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--tds-line);border-radius:999px;padding:7px 8px 7px 10px;background:#fff;color:inherit;font:inherit;font-size:12px;line-height:1}
.tds-garland__chip:hover{border-color:var(--tds-ink)}
.tds-garland__chip-link{color:inherit;text-decoration:none}
.tds-garland__chip-link:hover,.tds-garland__chip-link:focus-visible{text-decoration:underline;text-underline-offset:3px}
.tds-garland__chip-remove{display:grid;place-items:center;width:20px;height:20px;margin-left:2px;border:0;border-radius:50%;padding:0;background:#f2f0ed;color:inherit;font:inherit;font-size:16px;line-height:1;cursor:pointer}
.tds-garland__chip-remove:hover,.tds-garland__chip-remove:focus-visible{background:#e7e2de}
.tds-garland__chip-dot{width:13px;height:13px;border:1px solid rgba(0,0,0,.1);border-radius:50%;background:var(--chip-color)}
.tds-garland__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.tds-garland__colour{position:relative;display:block;width:100%;overflow:hidden;border:1px solid transparent;border-radius:16px;padding:9px;background:var(--tile-bg,#f7f3f0);color:var(--tds-ink);text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.tds-garland__colour:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(62,42,33,.09)}
.tds-garland__colour.is-selected{border-color:var(--tds-ink);box-shadow:inset 0 0 0 1px var(--tds-ink)}
.tds-garland__thumb{display:block;width:100%;height:108px;object-fit:contain}
.tds-garland__name{display:block;margin-top:5px;font-size:12px;font-weight:650;line-height:1.25}
.tds-garland__code{display:block;margin-top:2px;color:var(--tds-muted);font-size:11px}
.tds-garland__order{position:absolute;top:8px;right:8px;display:none;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--tds-ink);color:#fff;font-size:12px;font-weight:700}
.tds-garland__colour.is-selected .tds-garland__order{display:grid}
.tds-garland__notice{min-height:20px;margin:10px 0 0;color:#a33e62;font-size:12px}
.tds-garland__actions{display:flex;justify-content:flex-end;gap:9px;margin:0}
.tds-garland__show,.tds-garland__reset{min-height:48px;border-radius:12px;padding:12px 18px;font:inherit;font-weight:650;cursor:pointer}
.tds-garland__show{flex:1;border:1px solid var(--tds-ink);background:var(--tds-ink);color:#fff}
.tds-garland__reset{border:1px solid var(--tds-line);background:#fff;color:var(--tds-ink)}
.tds-garland__preview-wrap{align-self:start;position:sticky;top:24px}
.tds-garland__preview{position:relative;min-height:0;aspect-ratio:1/1;overflow:hidden;border:1px solid var(--tds-line);border-radius:22px;background:linear-gradient(180deg,#fbfaf8,#efe8e1)}
.tds-garland__real-scene{position:absolute;inset:0}
.tds-garland__canvas{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.tds-garland__cluster-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.tds-garland__real-cluster{position:absolute;display:block;width:auto;height:var(--cluster-height);left:var(--cluster-left);top:var(--cluster-top);transform:translate(-50%,-50%) rotate(var(--cluster-rotate));transform-origin:center;filter:drop-shadow(0 7px 9px rgba(58,42,34,.15))}
.tds-garland__preview-controls{margin-top:12px;border:1px solid var(--tds-line);border-radius:16px;padding:12px;background:#fff}
.tds-garland__preview-controls-row{display:flex;align-items:center;gap:10px}
.tds-garland__shop-hint{margin:5px 0 0;color:var(--tds-muted);font-size:11px;line-height:1.35}
.tds-garland__preview-info{position:absolute;right:16px;bottom:16px;left:16px;display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid rgba(234,223,217,.9);border-radius:14px;padding:12px 14px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px)}
.tds-garland__result-title{margin:0;font-size:13px;font-weight:700}
.tds-garland__pattern{margin:3px 0 0;color:var(--tds-muted);font-size:11px}
.tds-garland__legend{display:flex;gap:5px}
.tds-garland__legend-dot{width:19px;height:19px;border:1px solid rgba(0,0,0,.1);border-radius:50%;background:var(--legend-color)}
.tds-garland__shop{display:none;margin-top:14px;border:1px solid var(--tds-line);border-radius:14px;padding:14px;background:#fff}
.tds-garland__shop.is-visible{display:block}
.tds-garland__shop-title{margin:0 0 8px;font-size:13px;font-weight:700}
.tds-garland__shop-links{display:flex;flex-wrap:wrap;gap:7px}
.tds-garland__shop-link{border:1px solid var(--tds-line);border-radius:999px;padding:7px 10px;color:var(--tds-ink);font-size:12px;text-decoration:none}
.tds-garland__fineprint{margin:12px 0 0;color:var(--tds-muted);font-size:11px;line-height:1.45}
@media(max-width:900px){.tds-garland__layout{grid-template-columns:1fr;padding:20px}.tds-garland__preview-wrap{position:static}}
@media(max-width:560px){.tds-garland{padding-right:10px;padding-left:10px}.tds-garland__shell{border-radius:20px}.tds-garland__head{padding:24px 20px}.tds-garland__layout{padding:14px;gap:22px}.tds-garland__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tds-garland__thumb{height:98px}.tds-garland__preview-controls-row{align-items:stretch;flex-direction:column}.tds-garland__actions{flex-direction:column}.tds-garland__reset{order:2}}
@media(prefers-reduced-motion:reduce){.tds-garland__colour,.tds-garland__cluster{transition:none}}
