@layer theme,base;@layer components{@keyframes ctl-pop{0%{opacity:0;transform:scale(.5)}}@keyframes ctl-check-pop{0%{transform:scale(.98)}}@keyframes ctl-spin{to{transform:rotate(1turn)}}@keyframes ctl-march{to{stroke-dashoffset:-20px}}@keyframes ctl-enter{0%{opacity:0;transform:translateY(6px)scale(.98)}}@keyframes ctl-exit{to{opacity:0;transform:translateY(-2px)scale(.98)}}.ctl-foot{align-items:flex-start;gap:12px;display:flex}.ctl-msg{min-width:0;transition:grid-template-rows var(--spring-smooth-duration) var(--spring-smooth);flex:1;grid-template-rows:0fr;display:grid}.ctl-msg[data-open]{grid-template-rows:1fr}.ctl-hint,.ctl-error{min-height:0;transition:opacity var(--duration-base) var(--ease-standard), transform var(--spring-smooth-duration) var(--spring-smooth);grid-area:1/1;padding-top:6px;font-size:12px;line-height:16px;overflow:hidden}.ctl-hint{color:var(--muted-foreground)}.ctl-error{color:var(--destructive);opacity:0;pointer-events:none;align-items:flex-start;gap:6px;display:flex;transform:translateY(-4px)}.ctl-error svg{flex:none;width:14px;height:14px;margin-top:1px}.ctl-msg[data-invalid] .ctl-error{opacity:1;pointer-events:auto;transform:none}.ctl-msg[data-invalid] .ctl-hint{opacity:0;transform:translateY(4px)}.ctl-counter{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;transition:color var(--duration-base) var(--ease-standard);flex:none;padding-top:6px;font-size:12px;line-height:16px}.ctl-counter[data-state=near]{color:var(--status-due-soon-foreground)}.ctl-counter[data-state=over]{color:var(--destructive)}.ctl-pop{animation:ctl-pop var(--spring-snappy-duration) var(--spring-bouncy) both}.ctl-check,.ctl-radio,.ctl-switch{--_tone:var(--primary);--_on:var(--primary-foreground);min-height:24px;color:var(--foreground);cursor:default;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:8px;max-width:100%;padding:2px 0;font-size:14px;line-height:20px;display:inline-flex;position:relative}.ctl-check[data-tone=done]{--_tone:var(--status-done-mark);--_on:var(--background)}.ctl-check__input,.ctl-radio__input,.ctl-switch__input{opacity:0;cursor:inherit;appearance:none;margin:0;position:absolute;top:2px;left:0}.ctl-check__input,.ctl-radio__input{width:var(--size-check);height:var(--size-check);margin-block:2px}.ctl-switch__input{width:var(--size-switch-w);height:var(--size-switch-h);margin-block:2px}.ctl-check__box,.ctl-radio__box{width:var(--size-check);height:var(--size-check);color:var(--_on);background:var(--field);box-shadow:inset 0 0 0 1.5px var(--border-strong);transition:background-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--spring-snappy);flex:none;place-items:center;margin-block:2px;display:grid;position:relative}.ctl-check__box{border-radius:4px}.ctl-radio__box{border-radius:50%}.ctl-check__box svg{grid-area:1/1;width:12px;height:12px;overflow:visible}.ctl-check__box path{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset var(--duration-base) var(--ease-standard) 30ms}.ctl-check__text,.ctl-radio__text,.ctl-switch__text{min-width:0;display:grid}.ctl-switch__text{padding-top:2px}.ctl-check__label{display:block}.ctl-check__desc{color:var(--muted-foreground);margin-top:2px;font-size:12px;line-height:16px}.ctl-check:hover .ctl-check__input:not(:checked,:indeterminate,:disabled)+.ctl-check__box,.ctl-radio:hover .ctl-radio__input:not(:checked,:disabled)+.ctl-radio__box{box-shadow:inset 0 0 0 1.5px var(--foreground)}.ctl-check:hover .ctl-check__input:is(:checked,:indeterminate):not(:disabled)+.ctl-check__box{background:color-mix(in oklab, var(--_tone), var(--foreground) 10%);box-shadow:inset 0 0 0 1.5px color-mix(in oklab, var(--_tone), var(--foreground) 10%)}.ctl-radio:hover .ctl-radio__input:checked:not(:disabled)+.ctl-radio__box{background:var(--primary-hover);box-shadow:inset 0 0 0 1.5px var(--primary-hover)}.ctl-check__input:active:not(:disabled)+.ctl-check__box,.ctl-radio__input:active:not(:disabled)+.ctl-radio__box{transform:scale(var(--scale-press))}.ctl-check__input:is(:checked,:indeterminate)+.ctl-check__box{background:var(--_tone);box-shadow:inset 0 0 0 1.5px var(--_tone)}.ctl-check__input:checked+.ctl-check__box .tick,.ctl-check__input:indeterminate+.ctl-check__box .dash{stroke-dashoffset:0}.ctl-check__input:indeterminate+.ctl-check__box .tick{stroke-dashoffset:1px}.ctl-check__box[data-pop],.ctl-radio__box[data-pop]{animation:ctl-check-pop var(--spring-bouncy-duration) var(--spring-bouncy) both}.ctl-check__input:focus-visible+.ctl-check__box,.ctl-radio__input:focus-visible+.ctl-radio__box{outline:var(--ring-width) solid var(--ring);outline-offset:var(--ring-offset)}.ctl-radio__box:after{content:"";background:var(--_on);width:6px;height:6px;transition:transform var(--spring-bouncy-duration) var(--spring-bouncy);border-radius:50%;transform:scale(0)}.ctl-radio__input:checked+.ctl-radio__box{background:var(--primary);box-shadow:inset 0 0 0 1.5px var(--primary)}.ctl-radio__input:checked+.ctl-radio__box:after{transform:scale(1)}.ctl-check[data-invalid] .ctl-check__input:not(:checked,:indeterminate)+.ctl-check__box,.ctl-radio[data-invalid] .ctl-radio__input:not(:checked)+.ctl-radio__box{box-shadow:inset 0 0 0 1.5px var(--destructive);background:var(--destructive-tint)}.ctl-check[data-invalid] .ctl-check__input:focus-visible+.ctl-check__box,.ctl-radio[data-invalid] .ctl-radio__input:focus-visible+.ctl-radio__box{outline-color:var(--destructive)}:is(.ctl-check:has(:disabled),.ctl-radio:has(:disabled),.ctl-switch:has(:disabled)){color:var(--muted-foreground);cursor:not-allowed}:is(.ctl-check:has(:disabled) .ctl-check__box,.ctl-radio:has(:disabled) .ctl-radio__box){background:var(--muted);box-shadow:inset 0 0 0 1.5px var(--border);--_on:var(--muted-foreground)}.ctl-check__input:disabled:is(:checked,:indeterminate)+.ctl-check__box,.ctl-radio__input:disabled:checked+.ctl-radio__box{background:var(--control-disabled-fill);box-shadow:none;--_on:var(--muted)}.ctl-choices{border:0;gap:4px;min-width:0;margin:0;padding:0;display:grid}.ctl-choices[data-dir=row]{flex-wrap:wrap;gap:4px 20px;display:flex}.ctl-choices__legend{color:var(--foreground);margin-bottom:8px;padding:0;font-size:13px;font-weight:500;line-height:18px}.ctl-switch__track{--_thumb:calc(var(--size-switch-h) - 6px);width:var(--size-switch-w);height:var(--size-switch-h);background:var(--control-off);box-shadow:inset 0 0 0 1.5px var(--border-strong);transition:background-color var(--duration-base) var(--ease-in-out-soft), box-shadow var(--duration-base) var(--ease-in-out-soft);border-radius:9999px;flex:none;margin-block:2px;position:relative}.ctl-switch__thumb{width:var(--_thumb);height:var(--_thumb);background:var(--border-strong);transform:translateX(var(--_x,0)) scaleX(var(--_sx,1));transform-origin:var(--_ox,left center);transition:transform var(--spring-bouncy-duration) var(--spring-bouncy), background-color var(--duration-base) var(--ease-in-out-soft);border-radius:50%;place-items:center;display:grid;position:absolute;top:3px;left:3px}.ctl-switch__input:checked+.ctl-switch__track{background:var(--primary);box-shadow:inset 0 0 0 1.5px var(--primary)}.ctl-switch__input:checked+.ctl-switch__track .ctl-switch__thumb{--_x:calc(var(--size-switch-w) - var(--size-switch-h));--_ox:right center;background:var(--primary-foreground)}.ctl-switch:hover .ctl-switch__input:not(:checked,:disabled)+.ctl-switch__track{box-shadow:inset 0 0 0 1.5px var(--foreground)}.ctl-switch:hover .ctl-switch__input:not(:checked,:disabled)+.ctl-switch__track .ctl-switch__thumb{background:var(--foreground)}.ctl-switch:hover .ctl-switch__input:checked:not(:disabled)+.ctl-switch__track{background:var(--primary-hover);box-shadow:inset 0 0 0 1.5px var(--primary-hover)}.ctl-switch__input:active:not(:disabled)+.ctl-switch__track .ctl-switch__thumb{--_sx:1.18}.ctl-switch__input:focus-visible+.ctl-switch__track{outline:var(--ring-width) solid var(--ring);outline-offset:var(--ring-offset)}.ctl-switch__input:disabled+.ctl-switch__track{background:var(--muted);box-shadow:inset 0 0 0 1.5px var(--border)}.ctl-switch__input:disabled+.ctl-switch__track .ctl-switch__thumb{background:var(--control-disabled-fill)}.ctl-switch__input:disabled:checked+.ctl-switch__track{background:var(--control-disabled-fill);box-shadow:none}.ctl-switch__input:disabled:checked+.ctl-switch__track .ctl-switch__thumb{background:var(--muted)}.ctl-switch[data-busy] .ctl-switch__thumb:after{content:"";border:1.5px solid color-mix(in oklch, var(--control-off) 85%, transparent);border-top-color:#0000;border-radius:50%;width:8px;height:8px;animation:.8s linear infinite ctl-spin}.ctl-switch[data-busy] .ctl-switch__input:checked+.ctl-switch__track .ctl-switch__thumb:after{border-color:color-mix(in oklch, var(--primary) 85%, transparent);border-top-color:#0000}.ctl-switch[data-busy]{cursor:progress}.ctl-switch--lead{flex-direction:row-reverse;justify-content:space-between;width:100%}.ctl-seg{--_bh:26px;background:var(--muted);border:1px solid var(--border);border-radius:var(--radius);gap:2px;width:fit-content;max-width:100%;padding:2px;display:inline-flex;position:relative}.ctl-seg[data-size=sm]{--_bh:22px}.ctl-seg[data-size=lg]{--_bh:30px}.ctl-seg[data-block]{width:100%;display:flex}.ctl-seg[data-block]>.ctl-seg__btn{flex:1 1 0;justify-content:center}.ctl-seg__thumb{height:var(--_bh);pointer-events:none;background:var(--background);width:0;box-shadow:0 0 0 1px var(--border), var(--elevation-1);transition:transform var(--spring-snappy-duration) var(--spring-snappy), width var(--spring-snappy-duration) var(--spring-snappy);border-radius:4px;position:absolute;top:2px;left:0}.ctl-seg:not([data-placed]) .ctl-seg__btn[aria-checked=true]{background:var(--background);box-shadow:0 0 0 1px var(--border)}.ctl-seg__btn{z-index:1;height:var(--_bh);color:var(--muted-foreground);white-space:nowrap;cursor:default;transition:color var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--spring-snappy);border-radius:4px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;line-height:18px;display:inline-flex;position:relative}.ctl-seg[data-size=sm] .ctl-seg__btn{padding:0 8px;font-size:12px;line-height:16px}.ctl-seg__btn svg{flex:none;width:14px;height:14px}.ctl-seg__btn:hover:not([aria-disabled=true]),.ctl-seg__btn[aria-checked=true]{color:var(--foreground)}.ctl-seg__btn:active:not([aria-disabled=true]){transform:scale(var(--scale-press))}.ctl-seg__btn:focus-visible{outline-offset:0}.ctl-seg__btn[aria-disabled=true]{color:var(--control-disabled-fill);cursor:not-allowed}.ctl-seg[data-disabled]{background:0 0}.ctl-slider{height:var(--size-hit);touch-action:none;cursor:default;-webkit-user-select:none;user-select:none;margin-inline:calc(var(--size-thumb) / 2);display:block;position:relative}.ctl-slider[data-bubble]{margin-top:24px}.ctl-slider__rail{height:var(--size-track);margin-top:calc(var(--size-track) / -2);background:var(--control-off);box-shadow:inset 0 0 0 1px var(--border);border-radius:9999px;position:absolute;top:50%;left:0;right:0}.ctl-slider:before{content:"";left:calc(var(--size-thumb) / -2);right:calc(var(--size-thumb) / -2);position:absolute;top:0;bottom:0}.ctl-slider__fill{border-radius:inherit;background:var(--primary);transform-origin:0;transform:translateX(calc(var(--p0,0) * 100%)) scaleX(calc(var(--p1,0) - var(--p0,0)));transition:transform var(--spring-snappy-duration) var(--spring-snappy), background-color var(--duration-base) var(--ease-in-out-soft);position:absolute;inset:0}.ctl-slider[data-tone=ai] .ctl-slider__fill{background:var(--ai-mark)}.ctl-slider__thumb{--_ring:var(--primary);left:calc(var(--p) * 100%);width:var(--size-thumb);height:var(--size-thumb);margin:calc(var(--size-thumb) / -2) 0 0 calc(var(--size-thumb) / -2);background:var(--background);box-shadow:inset 0 0 0 2px var(--_ring), 0 0 0 0 var(--primary-tint);transform:scale(var(--_s,1));transition:left var(--spring-snappy-duration) var(--spring-snappy), transform var(--spring-snappy-duration) var(--spring-snappy), box-shadow var(--duration-fast) var(--ease-standard);border-radius:50%;outline:none;position:absolute;top:50%}.ctl-slider[data-tone=ai] .ctl-slider__thumb{--_ring:var(--ai-mark)}.ctl-slider__thumb:hover{box-shadow:inset 0 0 0 2px var(--_ring), 0 0 0 6px color-mix(in oklch, var(--_ring) 14%, transparent)}.ctl-slider__thumb:focus-visible{outline:var(--ring-width) solid var(--ring);outline-offset:var(--ring-offset)}.ctl-slider[data-dragging] .ctl-slider__thumb,.ctl-slider[data-dragging] .ctl-slider__fill{transition:none}.ctl-slider[data-dragging] .ctl-slider__thumb[data-active]{--_s:var(--scale-thumb);box-shadow:inset 0 0 0 2px var(--_ring), var(--elevation-1)}.ctl-slider__bubble{pointer-events:none;white-space:nowrap;background:var(--foreground);min-width:28px;height:20px;color:var(--background);font-variant-numeric:tabular-nums;opacity:0;translate:-50%;transform:translateY(4px) scale(var(--scale-enter));transform-origin:bottom;transition:opacity var(--duration-fast) var(--ease-standard), transform var(--spring-snappy-duration) var(--spring-snappy);border-radius:4px;place-items:center;padding:0 6px;font-size:11px;font-weight:600;line-height:1;display:grid;position:absolute;bottom:calc(100% + 8px);left:50%}.ctl-slider__bubble:after{content:"";background:inherit;border-radius:1px;width:6px;height:6px;position:absolute;bottom:-3px;left:50%;transform:translate(-50%)rotate(45deg)}.ctl-slider__thumb:is(:hover,:focus-visible) .ctl-slider__bubble,.ctl-slider[data-dragging] .ctl-slider__thumb[data-active] .ctl-slider__bubble,.ctl-slider[data-bubble] .ctl-slider__bubble{opacity:1;transform:none}.ctl-slider[data-disabled]{cursor:not-allowed}.ctl-slider[data-disabled] .ctl-slider__fill{background:var(--control-disabled-fill)}.ctl-slider[data-disabled] .ctl-slider__thumb{background:var(--muted);box-shadow:inset 0 0 0 2px var(--control-disabled-fill);pointer-events:none}.ctl-slider__scale{color:var(--muted-foreground);font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:-4px;font-size:12px;line-height:16px;display:flex}.ctl-slider-field{gap:4px;min-width:0;display:grid}.ctl-slider-field__head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.ctl-slider-field__value{font-variant-numeric:tabular-nums;font-size:13px;font-weight:500;line-height:18px}.ctl-drop{text-align:center;color:var(--foreground);transition:background-color var(--duration-base) var(--ease-standard), transform var(--spring-snappy-duration) var(--spring-snappy);border-radius:8px;justify-items:center;gap:4px;padding:24px 16px 20px;display:grid;position:relative}.ctl-drop__border{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ctl-drop__border rect{x:.75px;y:.75px;rx:8px;ry:8px;fill:none;width:calc(100% - 1.5px);height:calc(100% - 1.5px);stroke:var(--input);stroke-width:1.5px;stroke-dasharray:5 5;stroke-linecap:round;transition:stroke var(--duration-base) var(--ease-standard)}.ctl-drop:hover .ctl-drop__border rect{stroke:var(--border-hover)}.ctl-drop__icon{background:var(--muted);width:36px;height:36px;color:var(--muted-foreground);box-shadow:inset 0 0 0 1px var(--border);transition:background-color var(--duration-base) var(--ease-standard), color var(--duration-base) var(--ease-standard), transform var(--spring-snappy-duration) var(--spring-bouncy), box-shadow var(--duration-base) var(--ease-standard);border-radius:8px;place-items:center;margin-bottom:8px;display:grid}.ctl-drop__icon svg{width:18px;height:18px}.ctl-drop__title{font-size:13px;font-weight:500;line-height:18px}.ctl-drop__hint{color:var(--muted-foreground);font-size:12px;line-height:16px}.ctl-drop>button{margin-top:12px}.ctl-drop[data-state=dragover]{background:var(--primary-tint)}.ctl-drop[data-state=dragover] .ctl-drop__border rect{stroke:var(--primary);animation:1.2s linear infinite ctl-march}.ctl-drop[data-state=dragover] .ctl-drop__icon{background:var(--primary);color:var(--primary-foreground);box-shadow:none;transform:translateY(-4px)scale(1.06)}.ctl-drop[data-invalid] .ctl-drop__border rect{stroke:var(--destructive)}.ctl-drop[data-invalid] .ctl-drop__icon{background:var(--destructive-tint);color:var(--destructive)}.ctl-drop[data-invalid] .ctl-drop__hint{color:var(--destructive)}.ctl-drop[aria-disabled=true]{background:var(--muted);color:var(--muted-foreground);cursor:not-allowed}.ctl-drop[aria-disabled=true] .ctl-drop__border rect{stroke:var(--border)}.ctl-drop[aria-disabled=true] .ctl-drop__icon{color:var(--control-disabled-fill);background:0 0}@media (prefers-reduced-motion:reduce){.ctl-drop[data-state=dragover] .ctl-drop__border rect{animation:none}.ctl-switch[data-busy] .ctl-switch__thumb:after{animation-duration:1.6s}}.ctl-files{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.ctl-files:empty{display:none}.ctl-file{background:var(--card);box-shadow:inset 0 0 0 1px var(--border);transition:box-shadow var(--duration-base) var(--ease-standard), background-color var(--duration-base) var(--ease-standard);animation:ctl-enter var(--spring-smooth-duration) var(--spring-smooth) both;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:12px;padding:8px 8px 8px 12px;display:grid}.ctl-file[data-leaving]{animation:ctl-exit calc(var(--duration-base) * var(--exit-factor)) var(--ease-exit) both;pointer-events:none}.ctl-file__icon{border-radius:var(--radius);background:var(--muted);width:32px;height:32px;color:var(--muted-foreground);transition:background-color var(--duration-base) var(--ease-in-out-soft), color var(--duration-base) var(--ease-in-out-soft);place-items:center;display:grid;position:relative}.ctl-file__icon svg{width:16px;height:16px;transition:opacity var(--duration-fast) var(--ease-standard), transform var(--spring-snappy-duration) var(--spring-bouncy);grid-area:1/1}.ctl-file__icon svg[data-state]{opacity:0;transform:scale(.5)}.ctl-file[data-state=done] .ctl-file__icon{background:var(--done-tint);color:var(--status-done-foreground)}.ctl-file[data-state=done] .ctl-file__icon svg[data-state=done]{opacity:1;transform:none}.ctl-file[data-state=done] .ctl-file__icon svg:not([data-state]){opacity:0;transform:scale(.5)}.ctl-file[data-state=error] .ctl-file__icon{background:var(--destructive-tint);color:var(--destructive)}.ctl-file[data-state=error] .ctl-file__icon svg[data-state=error]{opacity:1;transform:none}.ctl-file[data-state=error] .ctl-file__icon svg:not([data-state]){opacity:0;transform:scale(.5)}.ctl-file[data-state=error]{box-shadow:inset 0 0 0 1px color-mix(in oklch, var(--destructive) 45%, transparent)}.ctl-file__main{gap:2px;min-width:0;display:grid}.ctl-file__name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:18px;overflow:hidden}.ctl-file__meta{color:var(--muted-foreground);font-variant-numeric:tabular-nums;align-items:center;gap:6px;min-width:0;font-size:12px;line-height:16px;display:flex}.ctl-file__meta svg{flex:none;width:14px;height:14px}.ctl-file[data-state=error] .ctl-file__meta{color:var(--destructive)}.ctl-file[data-state=done] .ctl-file__meta{color:var(--status-done-foreground)}.ctl-file__prog{transition:grid-template-rows var(--spring-smooth-duration) var(--spring-smooth);grid-column:2/-1;grid-template-rows:1fr;display:grid}.ctl-file__prog>div{min-height:0;padding-top:8px;overflow:hidden}.ctl-file:not([data-state=uploading]) .ctl-file__prog{grid-template-rows:0fr}.ctl-progress{background:var(--muted);height:4px;box-shadow:inset 0 0 0 1px var(--border);border-radius:9999px;overflow:hidden}.ctl-progress>i{border-radius:inherit;background:var(--status-progress-mark);transform-origin:0;height:100%;transform:scaleX(var(--p,0));transition:transform var(--spring-smooth-duration) var(--spring-smooth), background-color var(--duration-base) var(--ease-in-out-soft);display:block}.ctl-file[data-state=done] .ctl-progress>i{background:var(--status-done-mark)}.ctl-iconbtn{width:24px;height:24px;color:var(--muted-foreground);transition:color var(--duration-instant) var(--ease-standard), background-color var(--duration-instant) var(--ease-standard), transform var(--duration-fast) var(--spring-snappy);border-radius:4px;flex:none;place-items:center;display:inline-grid}.ctl-iconbtn:hover:not(:disabled){background:var(--state-hover);color:var(--foreground)}.ctl-iconbtn:active:not(:disabled){transform:scale(var(--scale-press))}.ctl-iconbtn:focus-visible{outline-offset:0}.ctl-iconbtn svg{width:16px;height:16px}@media (forced-colors:active){.ctl-check__box,.ctl-radio__box,.ctl-switch__track{border:1px solid canvastext}.ctl-slider__thumb{border:2px solid canvastext}}}@layer utilities;:root{--spring-bouncy:linear(0, .015 2%, .07 4.5%, .169 7.5%, .594 18%, .731 22%, .841 26%, .923 30%, .986 34.5%, 1.026 39.5%, 1.045 46%, 1.035 57.5%, 1.002 79.5%, 1);--spring-bouncy-duration:.36s}@supports not (transition-timing-function:linear(0, 1)){:root{--spring-bouncy:cubic-bezier(.34, 1.3, .64, 1)}}@media (prefers-reduced-motion:reduce){:root{--spring-bouncy:var(--ease-standard);--spring-bouncy-duration:var(--duration-fast)}}
