.soap{background:var(--ui);touch-action:none;-webkit-user-select:none;user-select:none;position:fixed;inset:0;overflow:hidden}.soap-canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.soap-back,.soap-bar button{cursor:pointer;color:#f3f1f6;background:0 0;border:0;border-radius:999px;place-items:center;width:44px;height:44px;display:grid}.soap-back{top:max(14px, env(safe-area-inset-top));left:max(14px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(10px);background:#0a0a0e6b;transition:opacity .6s;position:absolute}.soap-bar{left:50%;bottom:max(18px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);background:#0a0a0e70;border:1px solid #ffffff12;border-radius:999px;align-items:center;gap:6px;padding:6px;transition:opacity .6s;display:flex;position:absolute;transform:translate(-50%)}.soap-bar button[aria-pressed=true]{background:#ffffff2b}.soap-bar button:hover{background:#ffffff1c}.soap-bar .seg{gap:2px;display:flex}.soap-bar .swatches{gap:2px;padding:0 4px;display:flex}.soap-bar .swatch{border:2px solid #ffffff38;width:34px;height:34px;margin:5px 0}.soap-bar .swatch[aria-pressed=true]{border-color:#f3f1f6;box-shadow:0 0 0 2px #0000004d}.soap.is-quiet .soap-bar,.soap.is-quiet .soap-back{opacity:.18}.soap.is-quiet .soap-bar:hover,.soap.is-quiet .soap-back:hover,.soap.is-quiet .soap-bar:focus-within,.soap.is-quiet .soap-back:focus-visible{opacity:1}.soap-hint{text-align:center;pointer-events:none;color:#f8f6fce0;text-shadow:0 1px 12px #000000b3;margin:0;font-size:19px;animation:3.6s ease-in-out infinite breathe;position:absolute;top:42%;left:0;right:0}@media (prefers-reduced-motion:reduce){.soap-hint{animation:none}}.soap-fail{max-width:520px;margin:0 auto;padding:48px 24px}.soap-fail a{color:#d9b8ff}@media (max-width:380px){.soap-bar{gap:2px}.soap-bar .swatch{width:28px;height:28px}}.soap-bar button{-webkit-tap-highlight-color:transparent;transition:background-color .2s,transform .12s}.soap-bar button:active{transform:scale(.92)}.soap-bar button:focus-visible,.soap-back:focus-visible{outline-offset:1px;outline:2px solid #ffffffd9}@media (prefers-reduced-motion:reduce){.soap-bar button{transition:none}.soap-bar button:active{transform:none}}.soap .soap-hint{white-space:nowrap;-webkit-backdrop-filter:blur(6px);background:#08060c5c;border-radius:999px;width:max-content;max-width:calc(100vw - 48px);padding:8px 18px;font-size:clamp(15px,4.4vw,19px);left:50%;right:auto;transform:translate(-50%)}
