.bar{align-items:center;display:flex;height:48px;width:100%}.scroll-view{flex:1;min-height:0;overflow-y:scroll;scrollbar-width:none}.scroll-view::-webkit-scrollbar{display:none}.accordion{background:var(--accordion-background, var(--gray-4));border-radius:var(--accordion-border-radius, var(--radius-4));padding:0 var(--accordion-padding, 0px)}.accordion .accordion-header{display:flex;align-items:center;padding:var(--accordion-header-padding, 8px)}.accordion .accordion-header-content{flex:1;min-width:0}button.accordion-header-content{background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.accordion .accordion-header-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.accordion .accordion-controls{display:flex;align-items:center;gap:4px}.accordion .accordion-icon-slot{display:flex;align-items:center}.accordion .accordion-chevron{color:var(--accordion-chevron-color, var(--gray-20))}.accordion .accordion-chevron svg{transform:rotate(-90deg)}.accordion[data-is-expanded=true] .accordion-chevron{color:var(--accordion-chevron-expanded-color, var(--gray-30))}.accordion[data-is-expanded=true] .accordion-chevron svg{transform:rotate(0)}.accordion .accordion-body{display:grid;grid-template-rows:0fr;opacity:0}.accordion[data-is-expanded=true] .accordion-body{grid-template-rows:1fr;opacity:1}.accordion .accordion-body-inner{overflow:hidden;min-height:0}.accordion .accordion-body-content{padding:var(--accordion-body-content-padding, 0 16px 16px)}@media(prefers-reduced-motion:no-preference){.accordion .accordion-chevron{transition:color .15s ease}.accordion .accordion-chevron svg{transition:transform .15s ease}.accordion .accordion-body{transition:grid-template-rows .2s ease-in-out,opacity .15s ease-in-out}}.button{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:500;line-height:1;min-height:48px;min-width:48px;padding:0;text-decoration:none;white-space:nowrap}.button[data-is-disabled=true],.button:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.button:focus{outline:none}.button .button-content{display:inline-flex;align-items:center;justify-content:center;height:32px;min-width:32px;padding:0 8px;border-radius:var(--button-border-radius, var(--radius-4));gap:4px;transition:background .15s ease,color .15s ease,opacity .15s ease,border-color .15s ease}.button:focus-visible .button-content{outline:2px solid var(--button-focus-color, var(--gray-50));outline-offset:2px}.button:active:not(:disabled):not([data-is-disabled=true]) .button-content{transform:scale(.95);filter:brightness(.85)}.button[data-variant=primary] .button-content{background:var(--button-primary-background, var(--gray-50));color:var(--button-primary-color, var(--gray-0))}.button[data-variant=primary]:hover:not(:disabled) .button-content{background:var(--button-primary-hover-background, var(--gray-46))}.button[data-variant=secondary] .button-content{background:var(--button-secondary-background, var(--gray-10));color:var(--button-secondary-color, var(--gray-40))}.button[data-variant=secondary]:hover:not(:disabled) .button-content{background:var(--button-secondary-hover-background, var(--gray-12))}.button[data-variant=bare] .button-content{background:transparent;color:var(--button-bare-color, var(--gray-36))}.button[data-variant=bare]:hover:not(:disabled) .button-content{background:var(--button-bare-hover-background, var(--gray-10))}.button[data-variant=danger] .button-content{background:var(--button-danger-background, rgb(200 50 50 / 15%));border:1px solid var(--button-danger-border-color, rgb(200 50 50 / 40%));color:var(--button-danger-color, rgb(255 90 90 / 90%))}.button[data-variant=danger]:hover:not(:disabled) .button-content{background:var(--button-danger-hover-background, rgb(200 50 50 / 30%));border-color:var(--button-danger-hover-border-color, rgb(200 50 50 / 70%))}.button[data-is-padded=false] .button-content{padding:0}.button[data-shape=circle] .button-content{border-radius:999px;padding:0}.button[data-shape=rounded] .button-content{border-radius:var(--radius-4);padding:0;aspect-ratio:1}.button[data-shape=square] .button-content{border-radius:0;padding:0;aspect-ratio:1}.button[data-size=sm] .button-content{height:24px;min-width:24px}.button[data-size=lg] .button-content{height:48px}.grid{display:grid;grid-template-columns:repeat(16,1fr);gap:var(--grid-gap, 16px)}.col[data-span="1"]{grid-column-end:span 1}.col[data-span="2"]{grid-column-end:span 2}.col[data-span="3"]{grid-column-end:span 3}.col[data-span="4"]{grid-column-end:span 4}.col[data-span="5"]{grid-column-end:span 5}.col[data-span="6"]{grid-column-end:span 6}.col[data-span="7"]{grid-column-end:span 7}.col[data-span="8"]{grid-column-end:span 8}.col[data-span="9"]{grid-column-end:span 9}.col[data-span="10"]{grid-column-end:span 10}.col[data-span="11"]{grid-column-end:span 11}.col[data-span="12"]{grid-column-end:span 12}.col[data-span="13"]{grid-column-end:span 13}.col[data-span="14"]{grid-column-end:span 14}.col[data-span="15"]{grid-column-end:span 15}.col[data-span="16"]{grid-column-end:span 16}.col[data-start="1"]{grid-column-start:1}.col[data-start="2"]{grid-column-start:2}.col[data-start="3"]{grid-column-start:3}.col[data-start="4"]{grid-column-start:4}.col[data-start="5"]{grid-column-start:5}.col[data-start="6"]{grid-column-start:6}.col[data-start="7"]{grid-column-start:7}.col[data-start="8"]{grid-column-start:8}.col[data-start="9"]{grid-column-start:9}.col[data-start="10"]{grid-column-start:10}.col[data-start="11"]{grid-column-start:11}.col[data-start="12"]{grid-column-start:12}.col[data-start="13"]{grid-column-start:13}.col[data-start="14"]{grid-column-start:14}.col[data-start="15"]{grid-column-start:15}.col[data-start="16"]{grid-column-start:16}.anchor{color:inherit;cursor:pointer;text-decoration:none;transition:color .12s ease}.anchor:hover{color:var(--anchor-hover-color, var(--gray-50));text-decoration:underline;text-underline-offset:2px}.card{--card-background: var(--gray-8);--card-hover-background: var(--gray-10);--card-border-radius: var(--radius-8);--card-padding: 16px;background:var(--card-background);border-radius:var(--card-border-radius);color:inherit;cursor:pointer;display:block;padding:var(--card-padding);position:relative;text-align:left;text-decoration:none;transition:background .12s ease;width:100%}.card[data-is-disabled=false]:hover{background:var(--card-hover-background)}.card[data-is-disabled=true]{cursor:not-allowed;opacity:.4}.segmented-button{display:inline-flex;align-items:stretch;border-radius:var(--radius-4);overflow:hidden;padding:0;gap:0;width:auto;align-self:flex-start;height:48px;background:var(--segmented-button-background, var(--gray-8));border:1px solid var(--segmented-button-border-color, var(--gray-12))}.segmented-button[data-is-full-width=true]{width:100%}.segmented-button .button+.button{border-left:1px solid var(--segmented-button-border-color, var(--gray-12))}.segmented-button .button{min-height:unset;align-items:stretch}.segmented-button .button-content{height:auto;min-width:48px;padding:0 12px;font-size:13px;font-weight:500;border-radius:0;color:var(--segmented-button-option-color, var(--gray-30));transition:background var(--duration-base) var(--easing-default),color var(--duration-base) var(--easing-default)}.segmented-button .button:hover:not(:disabled) .button-content{background:var(--segmented-button-option-hover-background, var(--gray-10));color:var(--segmented-button-option-hover-color, var(--gray-38))}.segmented-button .button[data-is-selected=true] .button-content{background:var(--segmented-button-option-selected-background, var(--gray-16));color:var(--segmented-button-option-selected-color, var(--gray-46))}.modal{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:flex-end}.modal-backdrop{position:fixed;inset:0;background:var(--modal-backdrop-background, var(--backdrop))}.modal-content{position:relative;z-index:1;width:100%;overflow:hidden;background:var(--modal-content-background, var(--gray-6));border-top-left-radius:var(--modal-content-border-radius, var(--radius-4));border-top-right-radius:var(--modal-content-border-radius, var(--radius-4));box-shadow:var(--modal-content-shadow, 0 -4px 12px rgb(0 0 0 / 50%));display:flex;flex-direction:column;padding:0 var(--modal-content-padding, 16px) var(--modal-content-padding, 16px)}.modal-header{display:flex;align-items:center;justify-content:space-between;position:relative}.modal-title{font-size:14px;font-weight:600;margin-left:8px}.modal-close{margin-right:-16px}.modal-content[data-is-padded=false]{padding:0}.modal-content[data-is-padded=false] .modal-close{margin-right:0}.modal-header[data-is-draggable=true]{cursor:grab;touch-action:none}.modal-header[data-is-draggable=true]:active{cursor:grabbing}.modal-drag-handle-grip{position:absolute;top:6px;left:50%;transform:translate(-50%);width:36px;height:4px;border-radius:var(--radius-full);background:var(--gray-16)}.modal[data-is-visible=false]{pointer-events:none}.modal[data-is-visible=false] .modal-content{transform:translateY(100%)}.modal[data-is-centered=true][data-is-visible=false] .modal-content{transform:scale(.96);opacity:0}@media(prefers-reduced-motion:no-preference){.modal-backdrop{transition:opacity var(--duration-base) var(--easing-default)}.modal[data-is-visible=false] .modal-backdrop{opacity:0}.modal-content{transition:transform var(--duration-slow) var(--easing-default)}.modal[data-is-centered=true] .modal-content{transition:transform var(--duration-base) var(--easing-default),opacity var(--duration-base) var(--easing-default)}}.modal[data-is-centered=true]{align-items:center;justify-content:center}.modal[data-is-centered=true] .modal-content{width:calc(100% - 32px);border-radius:var(--modal-content-centered-border-radius, var(--radius-4));height:auto;box-shadow:var(--modal-content-centered-shadow, var(--shadow-xl))}@media(min-width:769px){.modal-content{max-width:var(--modal-content-max-width, 480px);margin:0 auto}.modal[data-is-centered=true] .modal-content{width:100%;min-width:400px;max-width:var(--modal-content-max-width, 480px)}}.float-trigger{display:inline-flex;align-items:center}.float-trigger[data-is-disabled=true]{pointer-events:none}.popover-content{--popover-background: var(--gray-12);--popover-border-radius: var(--radius-8);--popover-shadow: var(--shadow-xl);background:var(--popover-background);border-radius:var(--popover-border-radius);box-shadow:var(--popover-shadow);z-index:var(--z-popover);outline:none}.tooltip{background:var(--tooltip-background, var(--gray-8));color:var(--tooltip-color, var(--body-color));font-size:var(--tooltip-font-size, var(--text-11));line-height:1.4;padding:5px 8px;border-radius:var(--tooltip-border-radius, var(--radius-4));border:1px solid var(--tooltip-border-color, var(--gray-6));box-shadow:var(--tooltip-shadow, var(--shadow-md));max-width:var(--tooltip-max-width, 240px);pointer-events:none;white-space:nowrap;z-index:var(--z-tooltip)}.menu-panel{display:flex;flex-direction:column;min-width:var(--menu-panel-min-width, 200px)}.menu-panel .menu-panel-title{font-size:var(--text-14);font-weight:700;color:var(--menu-panel-title-color, var(--gray-34));border-bottom:1px solid var(--menu-panel-divider-color, var(--gray-14));margin-bottom:4px;padding:0 16px}.menu-panel .menu-panel-footer{border-top:1px solid var(--menu-panel-divider-color, var(--gray-14));padding:4px 0 0;margin-top:4px}.menu-list{list-style:none;margin:0;padding:0}.menu-group-label{padding:8px 16px 6px;font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--menu-group-label-color, var(--gray-34));-webkit-user-select:none;user-select:none;pointer-events:none}.menu-group-label:not(:first-child){margin-top:4px;padding-top:12px;border-top:1px solid var(--menu-panel-divider-color, var(--gray-14))}.menu-list li:first-child .menu-item{border-top-left-radius:var(--radius-8);border-top-right-radius:var(--radius-8)}.menu-list li:last-child .menu-item{border-bottom-left-radius:var(--radius-8);border-bottom-right-radius:var(--radius-8)}.menu-item{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:0 16px;border:none;background:transparent;color:var(--menu-item-color, var(--body-color));font-size:var(--text-14);font-family:inherit;line-height:1.4;text-align:left;text-decoration:none;cursor:pointer;transition:background .12s ease,color .12s ease;white-space:nowrap;box-sizing:border-box}.menu-item:hover:not([data-is-disabled=true]):not([disabled]){background:var(--menu-item-hover-background, var(--gray-14));color:var(--menu-item-color, var(--body-color))}.menu-item:focus-visible{outline:2px solid var(--menu-item-focus-color, var(--gray-50));outline-offset:2px}.menu-item[data-is-active=true]{background:var(--menu-item-active-background, var(--gray-16));color:var(--menu-item-active-color, var(--gray-50));font-weight:600}.menu-item[data-is-destructive=true]{color:var(--menu-item-destructive-color, var(--red-400))}.menu-item[data-is-destructive=true]:hover:not([data-is-disabled=true]):not([disabled]){background:var(--menu-item-destructive-hover-background, var(--red-alpha-25));color:var(--menu-item-destructive-color, var(--red-400))}.menu-item[data-is-disabled=true],.menu-item[disabled]{opacity:.4;cursor:not-allowed}.menu-item .menu-item-icon{display:flex;align-items:center;flex-shrink:0;opacity:.75}.menu-item .menu-item-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.avatar-btn{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:50%;min-width:48px;min-height:48px}.avatar{border-radius:50%;object-fit:cover;display:flex;align-items:center;justify-content:center;font-weight:600;text-transform:uppercase;pointer-events:none;background:var(--avatar-background, var(--gray-6));color:var(--avatar-color, var(--gray-36))}img.avatar{background:none}.avatar[data-size=SM]{width:var(--avatar-sm-size, 32px);height:var(--avatar-sm-size, 32px);font-size:var(--avatar-sm-font-size, var(--text-13))}.avatar[data-size=LG]{width:var(--avatar-lg-size, 96px);height:var(--avatar-lg-size, 96px);font-size:var(--avatar-lg-font-size, var(--text-36))}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:48px 24px;text-align:center}.empty-state .empty-state-icon{color:var(--empty-state-icon-color, var(--gray-26));margin-bottom:4px;opacity:.6}.empty-state .empty-state-title{font-size:14px;font-weight:500;color:var(--empty-state-title-color, var(--gray-28));letter-spacing:.03em;margin:0}.empty-state .empty-state-description{font-size:14px;color:var(--empty-state-description-color, var(--gray-26));margin:0;max-width:260px;line-height:1.5}.empty-state .empty-state-action{margin-top:8px}.radio{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;min-width:48px;border:none;background:transparent;padding:0;cursor:pointer;font-family:inherit;font-size:inherit;line-height:1}.radio[data-is-disabled=true]{cursor:not-allowed;opacity:.4}.radio-label{color:var(--radio-label-color, var(--gray-26));white-space:nowrap;-webkit-user-select:none;user-select:none}.radio-dot{display:inline-block;box-sizing:border-box;width:var(--radio-size, 16px);height:var(--radio-size, 16px);border-radius:50%;border:2px solid var(--radio-color, var(--gray-26));background:transparent;flex-shrink:0;transition:background 80ms ease}.radio[data-is-selected=true] .radio-dot{background:var(--radio-color, var(--gray-26))}.radio:focus-visible .radio-dot{outline:2px solid var(--radio-color, var(--gray-26));outline-offset:2px}.status{display:inline-flex;align-items:center;justify-content:center;font-family:inherit;font-weight:500;line-height:1;border-radius:var(--radius-full, 9999px);border:1px solid transparent;white-space:nowrap;box-sizing:border-box;vertical-align:middle;-webkit-user-select:none;user-select:none}.status[data-size=sm]{height:20px;padding:0 6px;font-size:var(--text-11, 11px);gap:4px}.status[data-size=md]{height:24px;padding:0 8px;font-size:var(--text-13, 13px);gap:6px}.status .status-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1}.status[data-size=sm] .status-icon svg{width:11px;height:11px}.status[data-size=md] .status-icon svg{width:13px;height:13px}.status .status-label{display:inline-block;line-height:1}.status[data-variant=neutral]{background:var(--status-neutral-bg, var(--gray-8));color:var(--status-neutral-color, var(--gray-40));border-color:var(--status-neutral-border, var(--gray-14))}.status[data-variant=warning]{background:var(--status-warning-bg, rgba(245, 158, 11, .12));color:var(--status-warning-color, #f59e0b);border-color:var(--status-warning-border, rgba(245, 158, 11, .25))}.status[data-variant=error]{background:var(--status-error-bg, var(--red-tint, rgb(239 68 68 / 12%)));color:var(--status-error-color, var(--red-400, #f87171));border-color:var(--status-error-border, var(--red-tint-border, rgb(239 68 68 / 25%)))}.status[data-variant=success]{background:var(--status-success-bg, var(--green-tint, rgb(34 197 94 / 12%)));color:var(--status-success-color, var(--green-400, #4ade80));border-color:var(--status-success-border, rgb(34 197 94 / 25%))}.status[data-variant=info]{background:var(--status-info-bg, var(--blue-tint, rgb(1 127 230 / 12%)));color:var(--status-info-color, var(--blue-400, #0091ff));border-color:var(--status-info-border, var(--blue-tint-border, rgb(1 127 230 / 40%)))}.banner{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 16px;box-sizing:border-box;font-family:inherit;font-size:var(--text-13, 13px);line-height:1.4;border-bottom:1px solid transparent;gap:12px;-webkit-user-select:none;user-select:none}.banner .banner-body{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.banner .banner-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1}.banner .banner-content{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.banner .banner-title{font-weight:600;letter-spacing:-.01em}.banner .banner-desc{opacity:.9}.banner .banner-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.banner .banner-close{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;padding:4px;border-radius:var(--radius-4, 4px);color:inherit;opacity:.7;transition:opacity .15s ease,background-color .15s ease}.banner .banner-close:hover{opacity:1;background:#ffffff1a}.banner[data-variant=info]{background:var(--blue-tint, rgb(1 127 230 / 12%));color:var(--blue-400, #0091ff);border-bottom-color:var(--blue-tint-border, rgb(1 127 230 / 25%))}.banner[data-variant=warning]{background:#f59e0b1f;color:#f59e0b;border-bottom-color:#f59e0b40}.banner[data-variant=success]{background:var(--green-tint, rgb(34 197 94 / 12%));color:var(--green-400, #4ade80);border-bottom-color:#22c55e40}.banner[data-variant=error]{background:var(--red-tint, rgb(239 68 68 / 12%));color:var(--red-400, #f87171);border-bottom-color:var(--red-tint-border, rgb(239 68 68 / 25%))}.banner[data-variant=neutral]{background:var(--gray-6, #242424);color:var(--gray-44, #e5e5e5);border-bottom-color:var(--gray-12, #333)}.form-field-error{display:block;font-size:14px;color:var(--form-field-error-color, var(--red-500));margin-top:4px}.form-field-hint{display:block;font-size:14px;color:var(--form-field-hint-color, var(--gray-26));margin-top:4px}.form-field label{font-size:14px;color:var(--form-field-label-color, var(--gray-30))}.form-field[data-is-invalid=true] label{color:var(--form-field-error-color, var(--red-500))}.form-field-required{color:var(--form-field-error-color, var(--red-500));margin-left:4px}.input-image .img{object-fit:contain;height:100%;margin:0 auto;width:100%}.input-image .input{display:none}.input-image .button-add-image{align-items:center;display:flex;flex-direction:column;height:calc(100% - 16px);justify-content:center;width:calc(100% - 16px)}.input-image .button-add-image svg{margin-bottom:4px}.input-image{position:relative}.input-image-uploading{align-items:center;background:#0009;color:var(--gray-50);display:flex;font-size:var(--text-13);inset:0;justify-content:center;position:absolute}.input-image-error{color:var(--red-400);font-size:var(--text-13);margin-top:4px}.input-text{display:flex;align-items:center;height:48px;width:100%;box-sizing:border-box}.input-text .input-text-field{height:32px;width:100%;background:var(--text-input-background, var(--gray-10));border:none;border-radius:var(--text-input-border-radius, var(--radius-4));box-sizing:border-box;color:var(--text-input-color, var(--gray-50));font-size:16px;outline:none;padding:0 8px}.input-text .input-text-field:focus-visible{outline:2px solid var(--text-input-focus-color, var(--gray-50));outline-offset:2px}.input-text .input-text-field[data-is-error=true]{outline:2px solid var(--text-input-error-color, var(--red-500));outline-offset:2px}.range{display:flex;align-items:center;gap:8px;min-height:48px}.range .range-label{color:var(--range-label-color, var(--gray-30));line-height:1;white-space:nowrap;-webkit-user-select:none;user-select:none}.range .range-track{-webkit-appearance:none;appearance:none;height:48px;background:transparent;outline:none;cursor:pointer;flex:1;margin:0;padding:0}.range .range-track:focus-visible{outline:2px solid var(--range-focus-color, var(--gray-50));outline-offset:2px;border-radius:2px}.range .range-track::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:var(--range-track-background, var(--gray-14))}.range .range-track::-moz-range-track{height:4px;border-radius:2px;background:var(--range-track-background, var(--gray-14))}.range .range-track::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:8px;height:16px;border-radius:1px;margin-top:-6.5px;background:var(--range-thumb-background, var(--gray-36));cursor:pointer;transition:background .15s ease}.range .range-track::-webkit-slider-thumb:hover{background:var(--range-thumb-hover-background, var(--gray-44))}.range .range-track::-moz-range-thumb{width:2px;height:16px;border:none;border-radius:1px;background:var(--range-thumb-background, var(--gray-36));cursor:pointer;transition:background .15s ease}.range .range-track::-moz-range-thumb:hover{background:var(--range-thumb-hover-background, var(--gray-44))}.range .range-value{color:var(--range-value-color, var(--gray-30));min-width:36px;text-align:right;-webkit-user-select:none;user-select:none}.range[data-is-disabled=true]{opacity:var(--range-disabled-opacity, .35);pointer-events:none}.range[data-is-disabled=true] .range-track{cursor:default}.range[data-is-disabled=true] .range-track::-webkit-slider-thumb{cursor:default}.range[data-is-disabled=true] .range-track::-moz-range-thumb{cursor:default}.input-number{display:flex;align-items:center;gap:8px}.input-number .input-number-label{color:var(--input-number-label-color, var(--gray-30));white-space:nowrap;-webkit-user-select:none;user-select:none;line-height:1}.input-number .input-number-control{display:flex;align-items:center;gap:4px}.input-number .input-number-control[data-is-disabled=true]{opacity:.4;pointer-events:none}.input-number .input-number-value{width:48px}.input-number .input-text-field{text-align:center}.dual-range{--dual-range-fill: rgb(160 160 160 / 22%);--dual-range-handle: rgb(200 200 200 / 85%);display:block;width:100%;height:48px}.dual-range-canvas{display:block;width:100%;height:100%;cursor:col-resize;touch-action:none;-webkit-user-select:none;user-select:none}.dual-range[data-is-disabled=true]{cursor:default;opacity:.4;pointer-events:none}.dual-range[data-is-disabled=true] .dual-range-canvas{cursor:default}.input-select{display:flex;align-items:center;height:48px}.input-select .select-trigger{display:inline-flex;align-items:center;gap:4px;padding:0 8px;min-height:32px;border-radius:var(--radius-4);background:transparent;border:none;cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;white-space:nowrap}.input-select .select-trigger:hover:not(:disabled){background:var(--gray-10)}.input-select .select-trigger:focus-visible{outline:2px solid var(--lavender-400);outline-offset:2px}.input-select .select-trigger:disabled{opacity:.4;cursor:not-allowed}.input-select .select-label{color:var(--gray-30);white-space:nowrap;-webkit-user-select:none;user-select:none}.input-select .select-value{color:var(--gray-40);white-space:nowrap}.input-select .select-chevron{flex-shrink:0;color:var(--gray-30)}.select-menu-scroll{max-height:280px;overflow-y:auto;scrollbar-width:none}.select-menu-scroll::-webkit-scrollbar{display:none}.input-textarea{background:var(--textarea-background, var(--gray-10));border:none;color:var(--textarea-color, var(--body-color));padding:8px;box-sizing:border-box;font-family:inherit;font-size:14px;width:100%;outline:none;resize:none;line-height:1.5em}.input-textarea:focus-visible{outline:2px solid var(--textarea-focus-color, var(--gray-50));outline-offset:2px}.input-textarea[data-is-edit-mode=true]{border:1px solid var(--textarea-border-color, var(--gray-10));border-radius:var(--textarea-edit-border-radius, var(--radius-16))}:has(>.input-textarea[data-is-edit-mode=true]){padding:20px}.toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;min-width:48px;min-height:48px;outline:none}.toggle:focus-visible .toggle-track{outline:2px solid var(--toggle-focus-color, var(--gray-50));outline-offset:2px}.toggle[data-is-disabled=true]{opacity:.4;cursor:not-allowed}.toggle .toggle-track{position:relative;display:inline-flex;align-items:center;width:28px;height:16px;border-radius:9999px;background:var(--toggle-track-background, var(--gray-8));transition:background .15s ease,border-color .15s ease;outline:none;flex-shrink:0}.toggle .toggle-track[data-is-checked=true]{background:var(--toggle-track-checked-background, var(--gray-20))}.toggle .toggle-thumb{position:absolute;left:2px;width:12px;height:12px;border-radius:50%;background:var(--toggle-thumb-background, var(--gray-26));transition:left .15s ease,background .15s ease;pointer-events:none}.toggle .toggle-thumb[data-is-checked=true]{left:14px;background:var(--toggle-thumb-checked-background, var(--gray-50))}.toggle .toggle-label{color:var(--toggle-label-color, var(--gray-26));line-height:1;white-space:nowrap;-webkit-user-select:none;user-select:none}.curve-editor{display:flex;flex-direction:column;gap:4px;width:100%;padding-bottom:16px}.curve-editor-label{color:var(--curve-editor-label-color, var(--gray-26));line-height:1;white-space:nowrap;-webkit-user-select:none;user-select:none}.curve-editor-canvas{display:block;cursor:crosshair;border-radius:4px;background:transparent}.inline-edit-wrap{display:flex;align-items:center;min-height:48px}.inline-edit-wrap[data-is-multiline=true]{align-items:flex-start}.inline-edit{background:none;border:1px solid var(--inline-edit-border-color, transparent);border-radius:4px;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;outline:none;height:32px;width:100%;cursor:pointer;transition:background .15s ease}.inline-edit[data-is-disabled=true]{opacity:.4;cursor:default;pointer-events:none}.inline-edit:focus-visible{outline:2px solid var(--inline-edit-focus-color, var(--gray-50));outline-offset:2px}.inline-edit[data-is-editing=true]{background:var(--inline-edit-focus-background, var(--gray-4));cursor:text}.inline-edit[data-is-error=true]{outline:2px solid var(--inline-edit-error-border-color, var(--red-500));outline-offset:2px}.inline-edit[data-variant=underline]{--inline-edit-underline-border-color: var(--gray-20);--inline-edit-underline-editing-border-color: var(--lavender-400);border-radius:0;border-bottom:1px solid var(--inline-edit-underline-border-color);padding:0 2px}.inline-edit[data-variant=underline][data-is-editing=true]{background:none;border-bottom-color:var(--inline-edit-underline-editing-border-color)}.inline-edit[data-is-multiline=true]{field-sizing:content;height:auto;line-height:1.5;min-height:32px;padding:4px 8px;resize:none}.app-header{display:flex;align-items:center;justify-content:space-between;background:var(--app-header-background, var(--gray-0));flex-shrink:0}.app-header-avatar-button .button-content{overflow:hidden}.app-header-avatar-img{width:28px;height:28px;border-radius:50%;object-fit:cover}.logo{height:24px;width:24px}.add-layer-modal-container{--modal-content-max-width: 920px}.add-layer-picker-label{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.preset-columns{--preset-columns-divider-color: var(--gray-14);display:flex;flex-direction:row;gap:12px;align-items:stretch}.preset-columns .add-layer-category{flex:1;min-width:0}.preset-columns .add-layer-category+.add-layer-category{border-left:1px solid var(--preset-columns-divider-color);padding-left:12px}@media(max-width:768px){.preset-columns{flex-direction:column;gap:20px}.preset-columns .add-layer-category+.add-layer-category{border-left:none;padding-left:0;border-top:1px solid var(--preset-columns-divider-color);padding-top:20px}}.add-layer-category:first-of-type{margin-top:0}.add-layer-category-label{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;text-align:center}.add-layer-picker-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.add-layer-preset.button{width:100%}.add-layer-preset .button-content{flex-direction:column;align-items:center;justify-content:center;padding:8px 10px;border-radius:6px;width:100%;font-weight:500;color:var(--body-color)}.create-song-modal-container{--modal-content-max-width: 920px}.create-song .form-body{padding:16px;align-items:center;display:flex;flex-direction:column}.create-song .actions{justify-content:center;margin-top:32px}.create-song-presets{padding:16px}.create-song-back{margin-top:16px;background:none;border:none;color:var(--fg-muted);cursor:pointer;font-size:var(--text-13);padding:0}.create-song-back:hover{color:var(--body-color)}.install-ios-instructions{display:flex;flex-direction:column;gap:12px;padding:24px}.install-ios-instructions h3{margin:0}.install-ios-instructions ol{display:flex;flex-direction:column;gap:8px;margin:0;padding-left:20px}.install-ios-instructions li{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.avatar-menu-panel{min-width:260px;max-width:300px}.menu-sync-card{margin:10px 12px 12px;padding:12px;background:var(--gray-4);border:1px solid var(--gray-12);border-radius:8px;display:flex;flex-direction:column;gap:10px}.menu-sync-header{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--gray-46)}.menu-sync-desc{font-size:12px;line-height:1.45;color:var(--gray-30);margin:0}.menu-sync-cta{width:100%;margin-top:2px}.u-text-green{color:var(--green-400)}.u-text-red{color:var(--red-400)}.u-text-amber{color:#f59e0b}.u-text-blue{color:var(--blue-400, #38bdf8)}.menu-update-available{color:var(--blue-400, #38bdf8)!important;font-weight:600}.pwa-update-spin{animation:pwa-spin 1s linear infinite}@keyframes pwa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sync-indicator-status-wrap{display:inline-flex;align-items:center;line-height:1;-webkit-user-select:none;user-select:none}.sync-indicator-status-wrap.is-clickable{cursor:pointer;transition:opacity .15s ease,transform .1s ease}.sync-indicator-status-wrap.is-clickable:hover{opacity:.88}.sync-indicator-status-wrap.is-clickable:active{transform:scale(.97)}.sync-indicator-status-wrap:focus-visible{outline:2px solid var(--gray-30);outline-offset:2px;border-radius:var(--radius-full, 9999px)}.sync-indicator-icon-wrap{display:inline-flex;align-items:center;justify-content:center;padding:4px;line-height:1;cursor:default;-webkit-user-select:none;user-select:none;transition:color .15s ease,opacity .15s ease}.sync-indicator-icon-wrap:focus-visible{outline:2px solid var(--gray-30);outline-offset:2px;border-radius:4px}.sync-indicator-icon-wrap.is-local{color:var(--gray-26);opacity:.7}.sync-indicator-icon-wrap.is-synced{color:var(--green-400);opacity:.85}.sync-indicator-icon-wrap.is-saving{color:var(--sky-400)}.sync-indicator-icon-wrap.is-error{color:var(--red-400)}.sync-spin{animation:sync-spin 1.2s linear infinite}@keyframes sync-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.share-modal-body{display:flex;flex-direction:column;gap:16px;min-width:min(100%,420px);padding:4px 0}.discord-preview-card{display:flex;background:#2b2d31;border-radius:var(--radius-8, 8px);overflow:hidden;box-shadow:0 4px 12px #0006}.discord-preview-bar{width:4px;background:#5865f2;flex-shrink:0}.discord-preview-inner{display:flex;flex-direction:column;gap:8px;padding:12px 14px;flex:1;min-width:0}.discord-preview-header{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:#949ba4;text-transform:uppercase;letter-spacing:.04em}.discord-brand-icon{color:#5865f2}.discord-preview-body{display:flex;align-items:center;justify-content:space-between;gap:12px}.discord-preview-details{display:flex;flex-direction:column;gap:2px;min-width:0}.discord-preview-title{font-size:15px;font-weight:600;color:#00a8fc;text-decoration:underline;text-underline-offset:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.discord-preview-desc{font-size:12px;color:#dbdee1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.discord-preview-thumb{width:44px;height:44px;border-radius:6px;object-fit:cover;flex-shrink:0}.discord-preview-placeholder{width:44px;height:44px;border-radius:6px;background:#1e1f22;display:flex;align-items:center;justify-content:center;color:#949ba4;flex-shrink:0}.discord-preview-footer{font-size:11px;color:#949ba4;padding-top:4px;border-top:1px solid rgba(255,255,255,.06)}.share-actions-container{display:flex;flex-direction:column;gap:12px}.share-main-buttons{display:flex;gap:8px}.share-copy-discord-btn{flex:1.3}.share-open-discord-btn{flex:1}.share-url-row{display:flex;align-items:center;gap:8px;background:var(--gray-4);border:1px solid var(--gray-12);border-radius:var(--radius-8, 8px);padding:4px 6px 4px 10px}.share-url-field{flex:1;background:transparent;border:none;color:var(--gray-40);font-size:12px;font-family:inherit;outline:none;min-width:0;cursor:text}.share-local-warning{display:flex;flex-direction:column;align-items:center;text-align:center;padding:16px 8px;gap:10px}.share-local-badge-wrap{margin-bottom:4px}.share-local-title{margin:0;font-size:16px;font-weight:600;color:var(--gray-50)}.share-local-desc{margin:0;font-size:13px;color:var(--gray-34);line-height:1.45;max-width:360px}.share-discord-connect-btn{margin-top:8px}.layout{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.layout-outlet{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.song-bar{display:flex;align-items:center;gap:4px}.global-header .button.song-name-link .button-content{align-items:flex-start;flex-direction:column;font-size:14px;gap:1px;height:auto;max-width:280px}.global-header .button.song-name-link .button-content>*{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.song-name-handle{color:var(--gray-26);font-size:14px}.song-name-display{align-items:flex-start;color:var(--gray-40);display:flex;flex-direction:column;font-size:14px;gap:1px;max-width:280px;padding:0 4px}.song-name-display>*{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.song-rename-modal{display:flex;flex-direction:column;gap:16px;padding:24px;min-width:280px}.song-rename-modal-actions{display:flex;justify-content:flex-end}.conflict-modal-content{display:flex;flex-direction:column;gap:12px;padding:20px;min-width:300px;max-width:460px}.conflict-modal-content p{margin:0;line-height:1.5}.conflict-modal-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;margin-top:12px}.song-menu-actions{border-top:1px solid var(--gray-14);display:flex;flex-direction:column;padding:4px 0}.song-menu-action{align-items:center;background:none;border:none;color:var(--gray-40);cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 12px;text-align:left;width:100%}.song-menu-action:hover{background:var(--gray-10);color:var(--gray-50)}.song-menu-error{color:var(--red-400);font-size:14px;padding:4px 12px 8px}.song-header-artwork-thumb{width:28px;height:28px;border-radius:4px;object-fit:cover;flex-shrink:0}.song-header-artwork-placeholder{width:28px;height:28px;border-radius:4px;background:var(--gray-14, #222);color:var(--gray-30, #888);display:flex;align-items:center;justify-content:center;flex-shrink:0}.song-artwork-btn-bare{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center}.track-details-modal{--modal-content-max-width: 440px}.track-details-modal-body{padding:20px;display:flex;flex-direction:column;gap:16px}.track-artwork-editor{display:flex;flex-direction:column;align-items:center;gap:8px}.track-artwork-label{font-size:13px;font-weight:500;color:var(--gray-30, #888);align-self:flex-start}.track-artwork-picker-box{width:140px;height:140px;border-radius:8px;overflow:hidden;background:var(--gray-10, #181818);border:1px dashed var(--gray-18, #333)}.track-artwork-picker-box .input-image{width:100%;height:100%}.song-artwork-preview-modal{display:flex;justify-content:center;align-items:center;padding:16px}.song-artwork-preview-img{max-width:100%;max-height:65vh;border-radius:8px;object-fit:contain}.track-artwork-guest-gate{width:100%;padding:16px 12px;background:var(--gray-10, #181818);border:1px dashed var(--gray-18, #333);border-radius:8px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}.track-artwork-guest-icon{width:38px;height:38px;border-radius:50%;background:var(--gray-14, #222);color:var(--gray-30, #888);display:flex;align-items:center;justify-content:center}.track-artwork-guest-desc{margin:0;font-size:13px;color:var(--gray-30, #888);line-height:1.4;max-width:260px}.harmonics-modal-container{--modal-content-max-width: 560px}.harmonics-modal{display:flex;flex-direction:column;gap:16px}.sound-controller .harmonics-preview{position:relative;cursor:pointer;border-radius:0;border:1px solid var(--gray-10);overflow:hidden;transition:border-color .15s ease}.sound-controller .harmonics-preview:hover{border-color:var(--gray-18)}.sound-controller .harmonics-preview .curve-editor{pointer-events:none}.sound-controller .harmonics-preview-hint{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:transparent;background:transparent;pointer-events:none;transition:color .15s ease,background .15s ease}.sound-controller .harmonics-preview:hover .harmonics-preview-hint{color:var(--gray-46);background:#0000007f}.sound-controller .layer-controls,.sound-controller .control-section{display:flex;flex-direction:column}.sound-controller .control-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.sound-controller .layer-controls .range{--range-thumb-background: var(--layer-color);--range-thumb-hover-background: var(--layer-color);--range-focus-color: var(--layer-color)}.sound-controller .layer-controls .toggle{--toggle-track-checked-background: color-mix( in srgb, var(--layer-color) 22%, transparent );--toggle-track-checked-border-color: color-mix( in srgb, var(--layer-color) 50%, transparent );--toggle-thumb-checked-background: #fff;--toggle-focus-color: var(--layer-color)}.sound-controller .control-group{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.sound-controller .section-label{letter-spacing:.06em;text-transform:uppercase;color:var(--gray-24)}.sound-controller .layer-presets{display:flex;flex-direction:column;gap:8px}.sound-controller .preset-actions{display:flex;flex-direction:column;gap:4px;width:100%}.sound-controller .preset-update-btn{display:flex;align-items:center;gap:4px;background:var(--blue-tint);border:1px solid var(--blue-tint-border);border-radius:0;color:var(--blue-500);padding:4px 8px;cursor:pointer;width:100%;transition:background .15s ease,border-color .15s ease}.sound-controller .preset-update-btn:hover{background:#017fe638;border-color:var(--blue-500)}.sound-controller .preset-save-btn{display:flex;align-items:center;gap:4px;background:none;border:1px solid var(--gray-12);border-radius:0;color:var(--gray-36);padding:4px 8px;cursor:pointer;width:100%;transition:border-color .15s ease,color .15s ease}.sound-controller .preset-save-btn:hover{border-color:var(--gray-22);color:var(--gray-46)}.sound-controller .preset-confirm-btn{background:var(--blue-500);border:none;border-radius:0;color:var(--gray-50);padding:3px 8px;cursor:pointer;white-space:nowrap}.sound-controller .preset-toggle-btn{display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--gray-30);font-size:14px;padding:2px 0;cursor:pointer;width:100%;text-align:left}.sound-controller .preset-toggle-btn:hover{color:var(--gray-42)}.sound-controller .preset-list{display:flex;flex-direction:column;gap:3px}.sound-controller .preset-entry{display:flex;align-items:center;gap:4px}.sound-controller .preset-load-btn{flex:1;min-width:0;background:var(--gray-4);border:1px solid var(--gray-10);border-radius:0;color:var(--gray-40);padding:3px 6px;cursor:pointer;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .15s ease,border-color .15s ease,color .15s ease}.sound-controller .preset-load-btn:hover{background:var(--blue-tint);border-color:var(--blue-500);color:var(--gray-46)}.confirm-dialog-title{margin:0;font-size:15px;font-weight:600;color:#ffffffe5}.confirm-dialog-message{margin:0;font-size:14px;color:#ffffff7f;line-height:1.5}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.sound-controller .sortable-layer{border-bottom:1px solid var(--gray-8)}.sound-controller .layer.accordion{border-radius:0;--accordion-header-padding: 0px}.sound-controller .layer[data-is-muted=true]{opacity:.55}.sound-controller .layer-header{display:flex;align-items:center;gap:6px}.sound-controller .layer-drag-handle{display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:stretch;min-width:48px;color:var(--gray-22);cursor:grab;touch-action:none}.sound-controller .layer-drag-handle:hover{color:var(--gray-36)}.sound-controller .layer-drag-handle:active{cursor:grabbing}.sound-controller .layer-header-actions{display:flex;align-items:center;flex-shrink:0;margin-left:auto}.sound-controller .layer-header-actions button[data-is-muted=true]{color:#ffb400e5}.sound-controller .layer-name{font-weight:600;letter-spacing:.1em;color:var(--gray-36);flex:1;cursor:default}.control-grid{--control-grid-background: transparent;--control-grid-node-background: var(--gray-8);--control-grid-active-background: var(--gray-6);--control-grid-active-fill: var(--gray-26);--control-grid-active-playing: var(--gray-36);--control-grid-label-text: var(--gray-50);--control-grid-header-text: var(--gray-50);--control-grid-font-size: 14;--control-grid-label-background: var(--gray-4);--control-grid-header-background: var(--gray-4);--control-grid-loop-range: rgb(160 160 160 / 22%);--control-grid-loop-range-handle: rgb(200 200 200 / 85%);overflow:auto;height:100%;scrollbar-width:none;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}.control-grid::-webkit-scrollbar{display:none}.control-grid .inner{display:flex;flex-direction:column;width:fit-content}.control-grid .grid-sticky-header{position:sticky;top:0;z-index:10;display:flex;background:var( --control-grid-header-background, var(--control-grid-background, #000) )}.control-grid .sticky-label-spacer{width:48px;flex-shrink:0;position:sticky;left:0;background:var( --control-grid-label-background, var(--control-grid-background, #000) );border-bottom:1px solid var(--gray-8);border-right:1px solid var(--gray-8);z-index:999}.control-grid .header-canvas{display:block;pointer-events:none;position:relative;z-index:1}.control-grid .grid-row{display:flex;align-items:flex-start}.control-grid .label-col{position:sticky;left:0;z-index:2;width:48px;flex-shrink:0;background:var( --control-grid-label-background, var(--control-grid-background, #000) );border-right:1px solid var(--gray-8)}.control-grid .labels-canvas{display:block}.control-grid .canvas{display:block;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:none}.loop-range{border-bottom:solid 1px var(--gray-8)}.song-file-io{display:flex;align-items:center;gap:2px}.song-file-io-error{font-size:14px;color:var(--red-400);white-space:nowrap;padding:0 6px}.sequencer-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-left:8px}.sequencer-header .button.play-button .button-content{width:36px;height:36px;border-radius:50%;flex-shrink:0;transition:background .15s ease,transform .15s ease;background:var(--blue-500);color:var(--gray-50)}.sequencer-header .button.play-button:hover .button-content{background:var(--blue-400);transform:scale(1.06)}.sequencer-header .button.play-button[data-is-playing=true] .button-content{background:var(--green-500)}.sequencer-header .button.play-button[data-is-playing=true]:hover .button-content{background:var(--green-400)}.layer-col{width:360px}.sequence-bar{height:auto}.sound-controller-page{height:100%;grid-auto-rows:1fr}.sound-controller-page>.col{display:flex;flex-direction:column;min-height:0}.sound-controller{display:flex;flex-direction:column;flex:1;min-height:0}.sound-controller .scroll-area{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;background:#000;width:100%;scrollbar-width:none}.sound-controller .scroll-area::-webkit-scrollbar{display:none}.sound-controller .sound-controller-body{display:flex;flex-direction:row;flex:1;min-height:0;background:#000}.sound-controller .shared-grid-area{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.sound-controller .shared-grid-canvas{flex:1;min-height:0;min-width:0;overflow:hidden}.sound-controller .layers-column{width:360px;flex-shrink:0;display:flex;flex-direction:column;min-height:0;border-left:1px solid var(--gray-8);background:#000}.sound-controller .layers-column-mobile{width:100%;flex:1;border-left:none}.sound-controller .layers-panel{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:none}.sound-controller .layers-panel::-webkit-scrollbar{display:none}.drag-overlay-layer{background:var(--gray-6);border:1px solid var(--gray-14);box-shadow:0 4px 20px #0009;cursor:grabbing}.drag-overlay-header{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.drag-overlay-handle{display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:stretch;min-width:48px;color:var(--gray-22);cursor:grabbing}.drag-overlay-name{font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gray-36);flex:1;min-width:0}.drag-overlay-actions{display:flex;align-items:center;flex-shrink:0;margin-left:auto}.drag-overlay-chevron{color:var(--gray-20);flex-shrink:0;margin-right:-8px}.sound-controller .loop-range-control{justify-content:space-between;background:var(--gray-4);display:flex;align-items:center;padding:4px 0 4px 16px;flex-shrink:0;border-bottom:1px solid var(--gray-8)}.sound-controller .loop-range-label{font-size:14px;color:var(--gray-30)}.sound-controller .loop-range-sep{color:var(--gray-24);flex-shrink:0}.sound-controller .loop-range-steps{height:auto;flex-shrink:0}.sound-controller .loop-range-input{border-radius:0;color:var(--gray-46);font-size:14px;height:auto;padding:4px 0;width:44px;appearance:textfield}.loop-range-input input{text-align:center}.profile-view{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;scroll-snap-align:start;scroll-snap-stop:always;margin-bottom:32px;margin-top:48px}.profile-view .name{font-size:24px;font-weight:700;margin:16px}.profile-view .bio{font-size:14px;line-height:1.5em;width:100%}.profile-view .bio{--inline-edit-border-color: var(--gray-20)}.profile-view .bio .inline-edit[data-is-multiline=true]{margin:0 auto;min-height:80px;min-width:280px}.song-list-status{color:#888;font-size:14px}.song-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.song-item{border-radius:8px;display:flex;align-items:center;gap:4px;background:#1a1a1a;padding-right:4px;transition:background .15s}.song-item:hover{background:#222}.song-link{display:flex;align-items:center;padding:10px 14px;color:inherit;text-decoration:none;flex:1;min-width:0}.song-item-lead{display:flex;align-items:center;gap:12px;width:100%;min-width:0}.song-artwork-thumb{width:44px;height:44px;border-radius:6px;object-fit:cover;flex-shrink:0;background:#111}.song-artwork-placeholder{width:44px;height:44px;border-radius:6px;flex-shrink:0;background:#252525;color:#777;display:flex;align-items:center;justify-content:center}.song-item-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.song-name{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song-meta{display:flex;align-items:center;gap:8px}.song-author{font-size:14px;color:#888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.song-date{font-size:14px;color:#666;flex-shrink:0;margin-left:auto}.song-delete{flex-shrink:0;opacity:.4;transition:opacity .15s}.song-delete:hover{opacity:1}.profile-page{padding:16px 0}.profile-page .section{margin-top:32px}.profile-page .section-title{font-size:16px;font-weight:600;margin:0 0 12px;color:#888;text-transform:uppercase;letter-spacing:.08em}.home-page .heading{font-size:24px;font-weight:700;margin:0 0 16px}.signin-form{display:flex;flex-direction:column;gap:12px;width:100%;max-width:320px;margin:0 auto}.discord-signin-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;height:48px;padding:0 16px;background-color:#5865f2;color:#fff;border:none;border-radius:24px;font-size:15px;font-weight:600;cursor:pointer;transition:background-color .15s ease,transform .05s ease}.discord-signin-button:hover:not(:disabled){background-color:#4752c4}.discord-signin-button:active:not(:disabled){transform:scale(.98)}.discord-signin-button:disabled{opacity:.65;cursor:not-allowed}.signin-divider{display:flex;align-items:center;text-align:center;color:#ffffff59;font-size:13px;margin:6px 0}.signin-divider:before,.signin-divider:after{content:"";flex:1;border-bottom:1px solid rgb(255 255 255 / 12%)}.signin-divider span{padding:0 10px;text-transform:uppercase;letter-spacing:.5px;font-size:11px}.guest-signin-button{width:100%;height:48px;color:var(--color-text-muted, #aaa)}.guest-signin-button:hover{color:var(--color-white, #fff)}.sign-in-page{min-height:100dvh;align-content:center;padding:24px 0}.sign-in-page .card{display:flex;flex-direction:column;align-items:center;width:100%;max-width:360px;padding:40px 32px 36px;background:#ffffff0a;border:1px solid rgb(255 255 255 / 8%);border-radius:16px;gap:0}.sign-in-page .logo-wrap{width:48px;height:48px;margin-bottom:20px}.sign-in-page .logo{width:100%;height:100%}.sign-in-page .heading{font-size:22px;font-weight:700;margin:0 0 8px;text-align:center}.sign-in-page .subheading{font-size:14px;color:#ffffff7f;margin:0 0 28px;text-align:center}.sign-in-page .buttons{display:flex;flex-direction:column;width:100%;gap:4px}.sso-callback-page{display:flex;align-items:center;justify-content:center;height:100dvh}.sso-callback-label{color:var(--gray-30);font-size:var(--text-14)}.sso-callback-error{color:var(--red-400);font-size:var(--text-14)}.discord-callback-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:var(--color-background, #1f1f1f);color:var(--color-white, #ffffff);padding:1rem}.discord-callback-card{text-align:center;max-width:400px;padding:2rem;background:var(--color-surface, #2a2a2a);border-radius:8px}.discord-callback-label{font-size:1.1rem;margin:0;color:var(--color-white, #ffffff)}.discord-callback-error{color:var(--color-error, #ff5555);margin-bottom:1rem}.discord-callback-retry{color:#5865f2;text-decoration:underline;font-weight:500}:root{--lavender-600: #7c6ee6;--lavender-500: #9b8bf0;--lavender-400: #b3a6f4;--lavender-sky: #c8c0f8;--blue-500: #017fe6;--blue-400: #0091ff;--blue-tint: rgb(1 127 230 / 12%);--blue-tint-border: rgb(1 127 230 / 40%);--green-500: #22c55e;--green-400: #4ade80;--green-tint: rgb(34 197 94 / 12%);--orange-500: #f97316;--orange-tint: rgb(249 115 22 / 12%);--sky-400: #38bdf8;--sky-tint: rgb(56 189 248 / 12%);--red-500: #ef4444;--red-400: #f87171;--red-tint: rgb(239 68 68 / 12%);--red-tint-border: rgb(239 68 68 / 25%);--red-alpha-25: rgb(239 68 68 / 25%);--red-alpha-50: rgb(239 68 68 / 50%);--red-alpha-60: rgb(239 68 68 / 60%);--red-alpha-90: rgb(239 68 68 / 90%);--backdrop: rgb(0 0 0 / 60%);--gray-0: #000000;--gray-2: #0a0a0a;--gray-4: #141414;--gray-6: #1f1f1f;--gray-8: #292929;--gray-10: #333333;--gray-12: #3d3d3d;--gray-14: #474747;--gray-16: #525252;--gray-18: #5c5c5c;--gray-20: #666666;--gray-22: #707070;--gray-24: #7a7a7a;--gray-26: #858585;--gray-28: #8f8f8f;--gray-30: #999999;--gray-32: #a3a3a3;--gray-34: #adadad;--gray-36: #b8b8b8;--gray-38: #c2c2c2;--gray-40: #cccccc;--gray-42: #d6d6d6;--gray-44: #e0e0e0;--gray-46: #ebebeb;--gray-48: #f5f5f5;--gray-50: #ffffff;--size-4: 4px;--size-8: 8px;--size-12: 12px;--size-16: 16px;--size-20: 20px;--size-24: 24px;--size-28: 28px;--size-32: 32px;--size-36: 36px;--size-40: 40px;--size-44: 44px;--size-48: 48px;--size-56: 56px;--size-64: 64px;--size-80: 80px;--radius-0: 0;--radius-2: 2px;--radius-4: 4px;--radius-8: 8px;--radius-16: 16px;--radius-24: 24px;--radius-full: 9999px;--text-10: 10px;--text-11: 11px;--text-13: 13px;--text-14: 14px;--text-16: 16px;--text-18: 18px;--text-20: 20px;--text-24: 24px;--text-30: 30px;--text-36: 36px;--layer-color: #808080;--duration-fast: .1s;--duration-base: .15s;--duration-slow: .25s;--easing-default: ease;--shadow-sm: 0 1px 2px rgb(0 0 0 / 40%);--shadow-md: 0 2px 6px rgb(0 0 0 / 40%);--shadow-lg: 0 4px 6px -1px rgb(0 0 0 / 40%), 0 2px 4px -2px rgb(0 0 0 / 30%);--shadow-xl: 0 10px 15px -3px rgb(0 0 0 / 50%), 0 4px 6px -4px rgb(0 0 0 / 40%);--z-base: 0;--z-raised: 10;--z-sticky: 100;--z-overlay: 200;--z-dropdown: 400;--z-popover: 1100;--z-tooltip: 1150;--z-modal: 1050}:root{--body-background: var(--gray-2);--body-color: var(--gray-50);--body-font-family: "Lexend", sans-serif;--body-font-size: var(--text-14);--body-font-weight: 400}html,body{background:var(--body-background);color:var(--body-color);font-family:var(--body-font-family);font-size:var(--body-font-size);font-weight:var(--body-font-weight)}.u-flex{display:flex}.u-inline-flex{display:inline-flex}.u-grid{display:grid}.u-block{display:block}.u-hidden{display:none}.u-flex-row{flex-direction:row}.u-flex-col{flex-direction:column}.u-justify-start{justify-content:flex-start}.u-justify-end{justify-content:flex-end}.u-justify-center{justify-content:center}.u-justify-between{justify-content:space-between}.u-justify-around{justify-content:space-around}.u-justify-evenly{justify-content:space-evenly}.u-items-start{align-items:flex-start}.u-items-end{align-items:flex-end}.u-items-center{align-items:center}.u-items-baseline{align-items:baseline}.u-items-stretch{align-items:stretch}.u-self-start{align-self:flex-start}.u-self-end{align-self:flex-end}.u-self-center{align-self:center}.u-self-stretch{align-self:stretch}.u-flex-wrap{flex-wrap:wrap}.u-flex-nowrap{flex-wrap:nowrap}.u-flex-1{flex:1}.u-flex-auto{flex:auto}.u-flex-none{flex:none}.u-grow{flex-grow:1}.u-shrink-0{flex-shrink:0}.u-gap-2{gap:2px}.u-gap-4{gap:4px}.u-gap-6{gap:6px}.u-gap-8{gap:8px}.u-gap-10{gap:10px}.u-gap-12{gap:12px}.u-gap-14{gap:14px}.u-gap-16{gap:16px}.u-gap-20{gap:20px}.u-gap-24{gap:24px}.u-gap-32{gap:32px}.u-gap-48{gap:48px}.u-w-full{width:100%}.u-h-full{height:100%}.u-w-auto{width:auto}.u-h-auto{height:auto}.u-overflow-hidden{overflow:hidden}.u-overflow-auto{overflow:auto}.u-overflow-scroll{overflow:scroll}.u-relative{position:relative}.u-absolute{position:absolute}.u-sticky{position:sticky}.u-p-2{padding:2px}.u-p-4{padding:4px}.u-p-6{padding:6px}.u-p-8{padding:8px}.u-p-10{padding:10px}.u-p-12{padding:12px}.u-p-14{padding:14px}.u-p-16{padding:16px}.u-p-20{padding:20px}.u-p-24{padding:24px}.u-p-32{padding:32px}.u-p-48{padding:48px}.u-p-56{padding:56px}.u-p-96{padding:96px}.u-p-x-2{padding-inline:2px}.u-p-x-4{padding-inline:4px}.u-p-x-6{padding-inline:6px}.u-p-x-8{padding-inline:8px}.u-p-x-10{padding-inline:10px}.u-p-x-12{padding-inline:12px}.u-p-x-14{padding-inline:14px}.u-p-x-16{padding-inline:16px}.u-p-x-20{padding-inline:20px}.u-p-x-24{padding-inline:24px}.u-p-x-32{padding-inline:32px}.u-p-x-48{padding-inline:48px}.u-p-x-56{padding-inline:56px}.u-p-x-96{padding-inline:96px}.u-p-y-2{padding-block:2px}.u-p-y-4{padding-block:4px}.u-p-y-6{padding-block:6px}.u-p-y-8{padding-block:8px}.u-p-y-10{padding-block:10px}.u-p-y-12{padding-block:12px}.u-p-y-14{padding-block:14px}.u-p-y-16{padding-block:16px}.u-p-y-20{padding-block:20px}.u-p-y-24{padding-block:24px}.u-p-y-32{padding-block:32px}.u-p-y-48{padding-block:48px}.u-p-y-56{padding-block:56px}.u-p-y-96{padding-block:96px}.u-p-t-2{padding-top:2px}.u-p-t-4{padding-top:4px}.u-p-t-6{padding-top:6px}.u-p-t-8{padding-top:8px}.u-p-t-10{padding-top:10px}.u-p-t-12{padding-top:12px}.u-p-t-14{padding-top:14px}.u-p-t-16{padding-top:16px}.u-p-t-20{padding-top:20px}.u-p-t-24{padding-top:24px}.u-p-t-32{padding-top:32px}.u-p-t-48{padding-top:48px}.u-p-t-56{padding-top:56px}.u-p-t-96{padding-top:96px}.u-p-r-2{padding-right:2px}.u-p-r-4{padding-right:4px}.u-p-r-6{padding-right:6px}.u-p-r-8{padding-right:8px}.u-p-r-10{padding-right:10px}.u-p-r-12{padding-right:12px}.u-p-r-14{padding-right:14px}.u-p-r-16{padding-right:16px}.u-p-r-20{padding-right:20px}.u-p-r-24{padding-right:24px}.u-p-r-32{padding-right:32px}.u-p-r-48{padding-right:48px}.u-p-r-56{padding-right:56px}.u-p-r-96{padding-right:96px}.u-p-b-2{padding-bottom:2px}.u-p-b-4{padding-bottom:4px}.u-p-b-6{padding-bottom:6px}.u-p-b-8{padding-bottom:8px}.u-p-b-10{padding-bottom:10px}.u-p-b-12{padding-bottom:12px}.u-p-b-14{padding-bottom:14px}.u-p-b-16{padding-bottom:16px}.u-p-b-20{padding-bottom:20px}.u-p-b-24{padding-bottom:24px}.u-p-b-32{padding-bottom:32px}.u-p-b-48{padding-bottom:48px}.u-p-b-56{padding-bottom:56px}.u-p-b-96{padding-bottom:96px}.u-p-l-2{padding-left:2px}.u-p-l-4{padding-left:4px}.u-p-l-6{padding-left:6px}.u-p-l-8{padding-left:8px}.u-p-l-10{padding-left:10px}.u-p-l-12{padding-left:12px}.u-p-l-14{padding-left:14px}.u-p-l-16{padding-left:16px}.u-p-l-20{padding-left:20px}.u-p-l-24{padding-left:24px}.u-p-l-32{padding-left:32px}.u-p-l-48{padding-left:48px}.u-p-l-56{padding-left:56px}.u-p-l-96{padding-left:96px}.u-m-auto{margin:auto}.u-m-x-auto{margin-inline:auto}.u-m-y-auto{margin-block:auto}.u-m-l-auto{margin-left:auto}.u-m-r-auto{margin-right:auto}.u-m-t-auto{margin-top:auto}.u-m-b-auto{margin-bottom:auto}.u-m-0{margin:0}.u-m-2{margin:2px}.u-m-4{margin:4px}.u-m-6{margin:6px}.u-m-8{margin:8px}.u-m-10{margin:10px}.u-m-12{margin:12px}.u-m-14{margin:14px}.u-m-16{margin:16px}.u-m-20{margin:20px}.u-m-24{margin:24px}.u-m-32{margin:32px}.u-m-48{margin:48px}.u-m-56{margin:56px}.u-m-96{margin:96px}.u-m-x-0{margin-inline:0}.u-m-x-2{margin-inline:2px}.u-m-x-4{margin-inline:4px}.u-m-x-6{margin-inline:6px}.u-m-x-8{margin-inline:8px}.u-m-x-10{margin-inline:10px}.u-m-x-12{margin-inline:12px}.u-m-x-14{margin-inline:14px}.u-m-x-16{margin-inline:16px}.u-m-x-20{margin-inline:20px}.u-m-x-24{margin-inline:24px}.u-m-x-32{margin-inline:32px}.u-m-x-48{margin-inline:48px}.u-m-x-56{margin-inline:56px}.u-m-x-96{margin-inline:96px}.u-m-y-0{margin-block:0}.u-m-y-2{margin-block:2px}.u-m-y-4{margin-block:4px}.u-m-y-6{margin-block:6px}.u-m-y-8{margin-block:8px}.u-m-y-10{margin-block:10px}.u-m-y-12{margin-block:12px}.u-m-y-14{margin-block:14px}.u-m-y-16{margin-block:16px}.u-m-y-20{margin-block:20px}.u-m-y-24{margin-block:24px}.u-m-y-32{margin-block:32px}.u-m-y-48{margin-block:48px}.u-m-y-56{margin-block:56px}.u-m-y-96{margin-block:96px}.u-m-t-0{margin-top:0}.u-m-t-2{margin-top:2px}.u-m-t-4{margin-top:4px}.u-m-t-6{margin-top:6px}.u-m-t-8{margin-top:8px}.u-m-t-10{margin-top:10px}.u-m-t-12{margin-top:12px}.u-m-t-14{margin-top:14px}.u-m-t-16{margin-top:16px}.u-m-t-20{margin-top:20px}.u-m-t-24{margin-top:24px}.u-m-t-32{margin-top:32px}.u-m-t-48{margin-top:48px}.u-m-t-56{margin-top:56px}.u-m-t-96{margin-top:96px}.u-m-r-0{margin-right:0}.u-m-r-2{margin-right:2px}.u-m-r-4{margin-right:4px}.u-m-r-6{margin-right:6px}.u-m-r-8{margin-right:8px}.u-m-r-10{margin-right:10px}.u-m-r-12{margin-right:12px}.u-m-r-14{margin-right:14px}.u-m-r-16{margin-right:16px}.u-m-r-20{margin-right:20px}.u-m-r-24{margin-right:24px}.u-m-r-32{margin-right:32px}.u-m-r-48{margin-right:48px}.u-m-r-56{margin-right:56px}.u-m-r-96{margin-right:96px}.u-m-b-0{margin-bottom:0}.u-m-b-2{margin-bottom:2px}.u-m-b-4{margin-bottom:4px}.u-m-b-6{margin-bottom:6px}.u-m-b-8{margin-bottom:8px}.u-m-b-10{margin-bottom:10px}.u-m-b-12{margin-bottom:12px}.u-m-b-14{margin-bottom:14px}.u-m-b-16{margin-bottom:16px}.u-m-b-20{margin-bottom:20px}.u-m-b-24{margin-bottom:24px}.u-m-b-32{margin-bottom:32px}.u-m-b-48{margin-bottom:48px}.u-m-b-56{margin-bottom:56px}.u-m-b-96{margin-bottom:96px}.u-m-l-0{margin-left:0}.u-m-l-2{margin-left:2px}.u-m-l-4{margin-left:4px}.u-m-l-6{margin-left:6px}.u-m-l-8{margin-left:8px}.u-m-l-10{margin-left:10px}.u-m-l-12{margin-left:12px}.u-m-l-14{margin-left:14px}.u-m-l-16{margin-left:16px}.u-m-l-20{margin-left:20px}.u-m-l-24{margin-left:24px}.u-m-l-32{margin-left:32px}.u-m-l-48{margin-left:48px}.u-m-l-56{margin-left:56px}.u-m-l-96{margin-left:96px}.u-m-n-8{margin:-8px}.u-m-n-16{margin:-16px}.u-m-x-n-8{margin-inline:-8px}.u-m-x-n-16{margin-inline:-16px}.u-m-y-n-8{margin-block:-8px}.u-m-y-n-16{margin-block:-16px}.u-m-t-n-8{margin-top:-8px}.u-m-t-n-16{margin-top:-16px}.u-m-r-n-8{margin-right:-8px}.u-m-r-n-16{margin-right:-16px}.u-m-b-n-8{margin-bottom:-8px}.u-m-b-n-16{margin-bottom:-16px}.u-m-l-n-8{margin-left:-8px}.u-m-l-n-16{margin-left:-16px}.u-text-left{text-align:left}.u-text-center{text-align:center}.u-text-right{text-align:right}*{box-sizing:border-box}html,body{margin:0;padding:0;overflow:hidden;overscroll-behavior:none}body{font-family:Lexend,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal;font-size:14px}p{margin:0;padding:0}
