.chip-fan{aspect-ratio:1/1.05;justify-self:center;width:min(300px,70vw);position:relative}.chip{aspect-ratio:1/1.55;background:var(--card);width:46%;box-shadow:0 1px 0 var(--line), 0 18px 30px -18px #231c4573;transform-origin:50% 92%;transform:rotate(calc(-36deg + var(--i) * 18deg));border-radius:6px;flex-direction:column;justify-content:flex-end;margin-left:-23%;padding:8px;display:flex;position:absolute;bottom:6%;left:50%}.chip:before{content:"";background:var(--c);border-radius:3px;flex:1}.chip b{font-size:var(--t-12);white-space:nowrap;padding-top:8px;font-weight:600}.chip--you:before{border:2px dashed var(--line);background:0 0}.chip--you b{font:400 var(--t-21)/1 var(--font-display);color:var(--curtain)}@media (prefers-reduced-motion:no-preference){.chip{animation:.8s cubic-bezier(.2,.8,.2,1) both fan-out;animation-delay:calc(.2s + var(--i) * .12s)}}@keyframes fan-out{0%{opacity:0;transform:rotate(0)}}.sample-dots{pointer-events:none;position:absolute}.sample-dot{width:14px;height:14px;box-shadow:0 0 0 2px var(--ink);border:3px solid #fff;border-radius:50%;margin:-7px 0 0 -7px;position:absolute}.sample-dot--skin{background:var(--flash)}.sample-dot--eye{background:#6d7ab8}.sample-dot--lip{background:var(--curtain)}.sample-dot--hair{background:var(--ink)}@media (prefers-reduced-motion:no-preference){.sample-dot{animation:.35s ease-out both pop}}@keyframes pop{0%{transform:scale(0)}}.season-name{font:400 clamp(var(--t-60), 9vw, 5.5rem)/.95 var(--font-display);margin-top:10px}.season-traits{flex-wrap:wrap;gap:8px;margin-top:16px;padding:0;list-style:none;display:flex}.season-traits li{background:var(--paper);font-size:var(--t-14);color:var(--ink-soft);border-radius:999px;padding:6px 12px}.season-traits strong{color:var(--ink)}.palette-results{margin-top:32px;scroll-margin-top:16px}.palette-card{background:var(--card);box-shadow:0 1px 0 var(--line), 0 20px 36px -22px #231c4559;border-radius:20px;gap:32px;padding:24px 16px;display:grid}@media (width>=720px){.palette-card{padding:36px}}@media (prefers-reduced-motion:no-preference){.palette-card{transform-origin:top;animation:.55s cubic-bezier(.2,.8,.2,1) both print}}.palette-group h3{font-size:var(--t-21);flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0;display:flex}.palette-group h3 span{font-size:var(--t-14);color:var(--ink-soft);font-weight:500}.swatch-row{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:14px;margin:14px 0 0;padding:0;list-style:none;display:grid}.swatch{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;gap:8px;padding:0;display:grid}.swatch-chip{aspect-ratio:4/3;background:var(--c);border-radius:12px;transition:transform .15s;display:block}.swatch-chip.is-light{box-shadow:inset 0 0 0 2px var(--line)}.swatch:hover .swatch-chip{transform:translateY(-3px)}.swatch-label{line-height:1.3;display:grid}.swatch-label strong{font-size:var(--t-14)}.swatch-label code{font-size:var(--t-12);color:var(--ink-soft);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.swatch--read .swatch-chip{aspect-ratio:1;border-radius:50%;max-width:88px}.swatch--avoid .swatch-chip{opacity:.8;position:relative}.swatch--avoid .swatch-chip:after{content:"";border-radius:inherit;background:linear-gradient(to top right, transparent calc(50% - 2px), var(--curtain-deep) calc(50% - 2px) calc(50% + 2px), transparent calc(50% + 2px));position:absolute;inset:0}.swatch-row--avoid{grid-template-columns:repeat(auto-fill,minmax(90px,110px))}.palette-actions{border-top:2px dashed var(--line);flex-wrap:wrap;align-items:center;gap:14px 16px;padding-top:24px;display:flex}.copy-status{font-size:var(--t-14);color:var(--ink-soft)}.seasons-section{padding-top:88px;padding-bottom:24px}.seasons-section h2{font-size:clamp(var(--t-36), 5vw, var(--t-48))}.season-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:28px;display:grid}.season-card{background:var(--card);box-shadow:0 1px 0 var(--line);border-radius:16px;padding:18px}.season-card-chips{grid-template-columns:repeat(8,1fr);gap:4px;margin-bottom:16px;display:grid}.season-card-chips span{aspect-ratio:1/1.6;border-radius:4px;box-shadow:inset 0 0 0 1px #231c4514}.season-card h3{font:400 var(--t-24)/1.1 var(--font-display);margin:0}.season-card-tag{color:var(--curtain-deep);font-weight:600;font-size:var(--t-14);margin-top:4px}.season-card p:last-child{color:var(--ink-soft);font-size:var(--t-14);margin-top:8px}
