@charset "UTF-8";/* -------------------------------- 

File#: _1_drawer
Title: Drawer
Descr: A slide-in panel used to display critical content
Usage: codyhouse.co/license

-------------------------------- */:root{--drawer-width:400px}.drawer{position:fixed;z-index:var(--z-index-overlay, 15);height:100%;width:100%;max-width:var(--drawer-width);top:0;right:0;visibility:hidden;transition:visibility 0s 0.3s}.drawer:focus{outline:none}.drawer--is-visible{visibility:visible;transition:none}.drawer--open-left{right:auto;left:0}.drawer__content{width:100%;height:100%;position:absolute;top:0;right:0;transform:translateX(100%);transition:transform 0.3s;transition-timing-function:var(--ease-in-out)}.drawer--open-left .drawer__content{transform:translateX(-100%)}.drawer--is-visible .drawer__content{transform:translateX(0)}.drawer__body{height:100%;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.drawer__close-btn{--size:32px;width:var(--size);height:var(--size);flex-shrink:0;display:flex;justify-content:center;align-items:center;border-radius:50%;background-color:hsla(var(--color-bg-light-h), var(--color-bg-light-s), var(--color-bg-light-l), 0.95);box-shadow:var(--inner-glow),var(--shadow-sm);transition:0.2s}.drawer__close-btn:hover{background-color:var(--color-bg-lighter);box-shadow:var(--inner-glow),var(--shadow-md)}.drawer__close-btn .icon{display:block;color:var(--color-contrast-high)}.drawer--modal{max-width:none;background-color:hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0);transition:background-color 0.3s,visibility 0s 0.3s}.drawer--modal.drawer--is-visible{background-color:hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.75);transition:background-color 0.3s}.drawer--modal.drawer--open-left .drawer__content{right:auto;left:0}.drawer--modal .drawer__content{max-width:var(--drawer-width)}/* -------------------------------- 

File#: _1_custom-select
Title: Custom Select
Descr: Custom Select Control
Usage: codyhouse.co/license

-------------------------------- */:root{/* --default variation only 👇 */--select-icon-size:16px;--select-icon-right-margin:var(--space-sm);/* icon margin right */--select-text-icon-gap:var(--space-3xs)/* gap between text and icon */}.select{position:relative}.select__input{width:100%;height:100%;padding-right:calc(var(--select-icon-size) + var(--select-icon-right-margin) + var(--select-text-icon-gap)) !important;-webkit-user-select:none;user-select:none}.select__icon{width:var(--select-icon-size);height:var(--select-icon-size);pointer-events:none;position:absolute;right:var(--select-icon-right-margin);top:50%;transform:translateY(-50%)}/* --custom-dropdown */:root{--select-dropdown-gap:4px/* distance between select control and custom dropdown */}.select__button{/* created in JS - custom select control */width:100%}.select__button[aria-expanded=true]{/* custom select control if dropdown = visible */}.select__dropdown{/* created in JS - custom select dropdown */position:absolute;left:0;top:100%;min-width:200px;max-height:1px;/* updated in JS */background-color:var(--color-bg-light);box-shadow:var(--inner-glow),var(--shadow-md);padding:var(--space-3xs) 0;border-radius:var(--radius-md);z-index:var(--z-index-popover, 5);margin-top:var(--select-dropdown-gap);margin-bottom:var(--select-dropdown-gap);overflow:auto;font-size:1rem;visibility:hidden;opacity:0;transition:visibility 0s 0.2s,opacity 0.2s}.select__dropdown--right{/* change dropdown position based on the available space */right:0;left:auto}.select__dropdown--up{bottom:100%;top:auto}.select__button[aria-expanded=true] + .select__dropdown{visibility:visible;opacity:1;transition:visibility 0s,opacity 0.2s}/* custom <optgroup> list - include all <option>s if no <optgroup> available  */.select__list{list-style:none !important}.select__list:not(:first-of-type){padding-top:var(--space-2xs)}.select__list:not(:last-of-type){border-bottom:1px solid hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.1);padding-bottom:var(--space-2xs)}.select__item{/* single item inside .select__list */display:flex;align-items:center;padding:var(--space-2xs) var(--space-sm);color:var(--color-contrast-high);width:100%;text-align:left;/* truncate text */white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.select__item--optgroup{/* custom <optgroup> label */font-size:0.8125rem;color:var(--color-contrast-medium)}.select__item--option{/* custom <option> label */cursor:pointer;transition:0.2s}.select__item--option:hover{background-color:hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.075)}.select__item--option:focus{outline:none;background-color:hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.15)}.select__item--option[aria-selected=true]{/* selected option */background-color:var(--color-primary);color:var(--color-white);position:relative}.select__item--option[aria-selected=true]::after{/* check icon next to the selected language */content:"";display:block;height:1em;width:1em;margin-left:auto;background-color:currentColor;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpolyline stroke-width='2' stroke='%23ffffff' fill='none' stroke-linecap='round' stroke-linejoin='round' points='1,9 5,13 15,3 '/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpolyline stroke-width='2' stroke='%23ffffff' fill='none' stroke-linecap='round' stroke-linejoin='round' points='1,9 5,13 15,3 '/%3E%3C/svg%3E")}.select__item--option[aria-selected=true]:focus{box-shadow:inset 0 0 0 2px var(--color-primary-dark)}.select__item--option[disabled]{opacity:0.5;cursor:not-allowed}/* -------------------------------- 

File#: _2_cart-drawer
Title: Cart Drawer
Descr: A cart template in a drawer panel
Usage: codyhouse.co/license

-------------------------------- */.dr-cart__product{display:grid;grid-template-columns:80px 1fr auto;grid-gap:var(--space-xs);align-items:start;padding:var(--space-sm) 0}.dr-cart__product:not(:last-child){border-bottom:1px solid var(--color-contrast-lower)}.dr-cart__img{display:block;overflow:hidden;border-radius:var(--radius-md);transition:0.2s}.dr-cart__img img{display:block}.dr-cart__img:hover{opacity:0.85}.dr-cart__select{--select-icon-size:0.85em;--select-icon-right-margin:var(--space-2xs);font-size:0.875em;width:3.6em}.dr-cart__select .select__input{padding:var(--space-4xs) var(--space-3xs)}.dr-cart__remove-btn{font-size:var(--text-sm);color:var(--color-primary);cursor:pointer}.dr-cart__remove-btn:hover{text-decoration:underline}.dr-cart__remove-btn:focus{outline:2px solid hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.2);outline-offset:2px}