.viewer:where(.astro-7mkru7qn){border-radius:var(--r-xl);background:var(--bg);border:0;width:min(920px,100vw - 24px);max-height:calc(100dvh - 24px);padding:0;overflow:auto;box-shadow:0 30px 80px -20px #00000073}.viewer:where(.astro-7mkru7qn)::backdrop{background:#0f0f0fa8}.viewer:where(.astro-7mkru7qn)[open]{animation:dlg-in .35s var(--ease-out)}@keyframes dlg-in{0%{opacity:0;transform:translateY(16px)scale(.98)}}.v-head:where(.astro-7mkru7qn){justify-content:space-between;align-items:center;gap:12px;padding:16px 16px 12px 24px;display:flex}.v-title:where(.astro-7mkru7qn){font-size:20px;font-weight:800}.v-actions:where(.astro-7mkru7qn){align-items:center;gap:10px;display:flex}.v-close:where(.astro-7mkru7qn){background:var(--bg-soft);cursor:pointer;border:0;border-radius:50%;place-items:center;width:46px;height:46px;display:grid}.v-close:where(.astro-7mkru7qn) svg:where(.astro-7mkru7qn){width:22px;height:22px}.v-stage:where(.astro-7mkru7qn){border-radius:var(--r-lg);place-items:center;max-height:58dvh;margin:0 16px;display:grid;overflow:hidden}.v-stage:where(.astro-7mkru7qn) canvas{width:auto;max-width:100%;height:auto;max-height:58dvh}.v-codes:where(.astro-7mkru7qn){flex-wrap:wrap;gap:8px 16px;margin:0;padding:12px 24px 0;list-style:none;display:flex}.v-codes:where(.astro-7mkru7qn) li{color:var(--ink-2);font-variant-numeric:tabular-nums;-webkit-user-select:all;user-select:all;align-items:center;gap:8px;font-size:14.5px;font-weight:600;display:inline-flex}.v-codes:where(.astro-7mkru7qn) i{border-radius:50%;width:22px;height:22px;box-shadow:inset 0 0 0 1px #0000001f}.v-looks-head:where(.astro-7mkru7qn){flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px 10px;display:flex}.v-looks-head:where(.astro-7mkru7qn) h3:where(.astro-7mkru7qn){font-size:17px;font-weight:750}.v-looks-head:where(.astro-7mkru7qn) p:where(.astro-7mkru7qn){color:var(--ink-3);font-size:14.5px}.v-looks:where(.astro-7mkru7qn){grid-template-columns:repeat(5,1fr);gap:10px;padding:0 16px 20px;display:grid}.v-looks:where(.astro-7mkru7qn) .v-look{border-radius:var(--r-md);cursor:pointer;text-align:center;background:0 0;border:2px solid #0000;gap:6px;padding:6px;font-size:14px;font-weight:600;transition:border-color .2s,background-color .2s;display:grid}.v-looks:where(.astro-7mkru7qn) .v-look:hover{background:var(--bg-soft)}.v-looks:where(.astro-7mkru7qn) .v-look[aria-pressed=true]{border-color:var(--accent);background:#fff4f6}.v-looks:where(.astro-7mkru7qn) .v-thumb{aspect-ratio:1;border-radius:10px;display:block;overflow:hidden}.v-looks:where(.astro-7mkru7qn) .v-thumb canvas{object-fit:cover;width:100%;height:100%}@media (width<=560px){.v-looks:where(.astro-7mkru7qn){grid-template-columns:repeat(3,1fr)}.v-head:where(.astro-7mkru7qn){flex-wrap:wrap}.v-actions:where(.astro-7mkru7qn){width:100%}.v-actions:where(.astro-7mkru7qn) .v-dl:where(.astro-7mkru7qn){flex:1}}.source-bar{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-soft);flex-wrap:wrap;align-items:center;gap:16px;padding:14px;display:flex}.source-thumb{object-fit:cover;border-radius:var(--r-sm);border:1px solid var(--line);width:72px;height:72px}.source-info{flex:1;min-width:180px}.source-info h2{font-size:18px;font-weight:750}.summary{color:var(--ink-3);font-size:15px}.palette{gap:6px;display:flex}.palette i{width:26px;height:26px;box-shadow:0 0 0 2px #fff, 0 0 0 3px var(--line);animation:pop .4s var(--spring) both;border-radius:50%}@keyframes pop{0%{transform:scale(0)}}.groups .group{margin-top:var(--sp-6)}.groups .group-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.groups .group-title{align-items:center;gap:14px;display:flex}.groups .group-title h2{font-size:22px;font-weight:800}.groups .group-title p{color:var(--ink-3);font-size:15px}.groups .tone-dot{border-radius:50%;flex:none;width:18px;height:18px;box-shadow:inset 0 0 0 1px #0000001f}.groups .tone-light{background:#f9e8c9}.groups .tone-medium{background:#b8918a}.groups .tone-dark{background:#2b2433}.groups .group-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.groups .shade{color:var(--ink-2);align-items:center;gap:10px;font-size:15px;font-weight:600;display:flex}.groups .shade input{--p:60%;appearance:none;cursor:pointer;background:linear-gradient(90deg, var(--accent) var(--p), var(--bg-sunk) var(--p));border-radius:8px;width:160px;height:8px}.groups .shade input::-webkit-slider-thumb{-webkit-appearance:none;border:2px solid var(--accent);width:26px;height:26px;box-shadow:var(--shadow-1);background:#fff;border-radius:50%}.groups .shade input::-moz-range-thumb{border:2px solid var(--accent);background:#fff;border-radius:50%;width:24px;height:24px}.groups .refresh svg{transition:transform .6s var(--ease-out)}.groups .refresh.spinning svg{transform:rotate(360deg)}.groups .grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.groups .cw-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg);box-shadow:var(--shadow-1);opacity:0;transition:opacity .35s var(--ease), transform .45s var(--spring), box-shadow .25s;flex-direction:column;display:flex;overflow:hidden;transform:translateY(12px)scale(.98)}.groups .cw-card.in{opacity:1;transform:none}.groups .cw-card:hover{box-shadow:var(--shadow-2)}.groups .cw-view{cursor:zoom-in;aspect-ratio:1;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.groups .cw-view canvas{object-fit:contain;width:100%;height:100%}.groups .cw-zoom{color:#fff;opacity:0;width:38px;height:38px;transition:opacity .2s, transform .25s var(--spring);background:#141414b8;border-radius:50%;place-items:center;display:grid;position:absolute;top:10px;right:10px;transform:scale(.8)}.groups .cw-zoom svg{width:18px;height:18px}.groups .cw-view:hover .cw-zoom,.groups .cw-view:focus-visible .cw-zoom{opacity:1;transform:none}@media (hover:none){.groups .cw-zoom{opacity:1;transform:none}}.groups .cw-meta{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 8px;padding:12px 14px 0;display:flex}.groups .cw-name{color:var(--ink);font-size:16px;font-weight:750}.groups .cw-hex{color:var(--ink-3);font-variant-numeric:tabular-nums;-webkit-user-select:all;user-select:all;font-size:13.5px;font-weight:600}.groups .cw-foot{justify-content:space-between;align-items:center;gap:8px;padding:8px 10px 10px 14px;display:flex}.groups .swatches{display:flex}.groups .swatches i{border-radius:50%;width:20px;height:20px;margin-left:-5px;box-shadow:0 0 0 2px #fff}.groups .swatches i:first-child{margin-left:0}.groups .cw-dl{border-radius:var(--r-pill);background:var(--ink);color:#fff;cursor:pointer;border:0;align-items:center;gap:6px;min-height:44px;padding:0 14px;font-size:14.5px;font-weight:700;transition:background-color .2s;display:inline-flex}.groups .cw-dl:hover{background:#333}.groups .cw-dl svg{width:18px;height:18px}.groups .cw-dl.busy svg{animation:.8s ease-in-out infinite bob}@keyframes bob{50%{transform:translateY(3px)}}@media (width<=1080px){.groups .grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.groups .group-controls{justify-content:space-between;width:100%}.groups .shade input{width:120px}.groups .cw-dl span{display:none}}.tool:where(.astro-q2y4d3aq){padding-bottom:var(--sp-6);scroll-margin-top:88px}.upload-wrap:where(.astro-q2y4d3aq){position:relative}.working:where(.astro-q2y4d3aq){z-index:2;border-radius:var(--r-xl);background:color-mix(in srgb, var(--bg) 82%, transparent);color:var(--ink);flex-direction:column;justify-content:center;align-items:center;gap:14px;font-size:18px;font-weight:700;display:flex;position:absolute;inset:0}.working:where(.astro-q2y4d3aq) .spinner:where(.astro-q2y4d3aq){width:36px;height:36px;color:var(--accent)}
