.vv-sidebar{position:fixed;left:0;top:0;height:100vh;width:var(--vv-sidebar-width);background-color:var(--vv-color-white);border-right:1px solid var(--vv-color-gray-200);z-index:var(--vv-z-sidebar);display:flex;flex-direction:column;font-family:var(--vv-font-family)}.vv-sidebar__nav{display:flex;flex-direction:column;padding:var(--vv-space-2);gap:var(--vv-space-1);margin-top:60px;overflow-y:auto;flex:1;scrollbar-width:none;-ms-overflow-style:none}.vv-sidebar__nav::-webkit-scrollbar{width:0;height:0}.vv-sidebar__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 4px;border:none;background:transparent;cursor:pointer;transition:var(--vv-transition-fast);width:100%;text-align:center;position:relative;min-height:56px}.vv-sidebar__item:hover .vv-sidebar__icon{background-color:var(--vv-color-gray-100)}.vv-sidebar__item:focus-visible{outline:none}.vv-sidebar__item:focus-visible .vv-sidebar__icon{outline:2px solid var(--vv-color-primary);outline-offset:2px}.vv-sidebar__item--active{background-color:transparent;color:var(--vv-color-primary)}.vv-sidebar__icon{display:flex;align-items:center;justify-content:center;color:var(--vv-color-gray-500);width:36px;height:36px;border-radius:16px;transition:all .2s ease}.vv-sidebar__icon svg{width:24px;height:24px}.vv-sidebar__item--active .vv-sidebar__icon{color:var(--vv-color-primary);background-color:#e8f0fe}.vv-sidebar__label{font-size:11px;font-weight:var(--vv-font-weight-medium);color:var(--vv-color-gray-500);margin-top:4px}.vv-sidebar__item--active .vv-sidebar__label{color:var(--vv-color-primary);font-weight:var(--vv-font-weight-semibold)}@media (max-width: 768px){.vv-sidebar{display:none}}.vv-editor-header{position:fixed;top:0;left:var(--vv-sidebar-width);right:0;height:var(--vv-header-height, 60px);background-color:var(--vv-color-white);border-bottom:1px solid var(--vv-color-gray-200);box-shadow:0 1px 2px #0000000a;display:flex;align-items:center;justify-content:space-between;padding:0 var(--vv-space-4);z-index:var(--vv-z-fixed);font-family:var(--vv-font-family)}.vv-editor-header__left{display:flex;align-items:center;gap:var(--vv-space-3)}.vv-editor-header__logo{display:flex;align-items:center;gap:var(--vv-space-2)}.vv-editor-header__app-name{font-size:var(--vv-font-size-lg);font-weight:var(--vv-font-weight-bold);color:var(--vv-color-gray-900)}.vv-editor-header__right{display:flex;align-items:center;gap:var(--vv-space-2)}.vv-editor-header__action{width:36px;height:36px;border:none;background:transparent;cursor:pointer;border-radius:var(--vv-radius-full);color:var(--vv-color-gray-600);display:inline-flex;align-items:center;justify-content:center;transition:var(--vv-transition-fast)}.vv-editor-header__action:hover:not(:disabled){background-color:var(--vv-color-gray-100);color:var(--vv-color-gray-800)}.vv-editor-header__action:disabled{opacity:.35;cursor:not-allowed}.vv-editor-header__unsaved{font-size:var(--vv-font-size-sm);color:var(--vv-color-gray-500);white-space:nowrap;-webkit-user-select:none;user-select:none}.vv-editor-header__save{color:var(--vv-color-gray-600)}.vv-editor-header__save:not(:disabled){color:var(--vv-color-primary, #2563eb)}.vv-editor-header__save:not(:disabled):hover{background-color:color-mix(in srgb,var(--vv-color-primary, #2563eb) 10%,transparent);color:var(--vv-color-primary, #2563eb)}.vv-editor-header__version-indicator{font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-medium);padding:4px 12px;border-radius:var(--vv-radius-full);white-space:nowrap;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:var(--vv-space-2)}.vv-editor-header__version-indicator--previewing{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.vv-editor-header__version-indicator--active{background:var(--vv-color-primary-light);color:var(--vv-color-primary);border:1px solid color-mix(in srgb,var(--vv-color-primary) 30%,transparent)}.vv-editor-header__version-indicator--loading{background:var(--vv-color-gray-100);color:var(--vv-color-gray-500);border:1px solid var(--vv-color-gray-200);font-style:italic}.vv-editor-header__version-name{font-weight:var(--vv-font-weight-bold)}.vv-editor-header__version-status{opacity:.8;font-size:10px;text-transform:uppercase;letter-spacing:.02em;padding-left:var(--vv-space-2);border-left:1px solid currentColor}@media (max-width: 768px){.vv-editor-header{left:0;padding:0 var(--vv-space-3)}}.vv-toast-container{position:fixed;right:var(--vv-space-4);bottom:var(--vv-space-8);display:flex;flex-direction:column;gap:var(--vv-space-2);z-index:var(--vv-z-toast)}.vv-toast{min-width:500px;padding:var(--vv-space-3) var(--vv-space-6);border-radius:var(--vv-radius-xl);box-shadow:var(--vv-shadow-card);font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-medium);color:var(--vv-color-white);background-color:var(--vv-color-gray-800)}.vv-toast--success{background-color:var(--vv-color-success)}.vv-toast--error{background-color:var(--vv-color-error)}.vv-toast--info{background-color:var(--vv-color-info)}.vv-toast--loading{background-color:var(--vv-color-gray-800);display:flex;align-items:center;gap:10px}.vv-toast--loading:before{content:"";display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:vv-spin .7s linear infinite;flex-shrink:0}.vv-confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;display:flex;align-items:center;justify-content:center;z-index:var(--vv-z-modal)}.vv-confirm{width:min(420px,90vw);background:var(--vv-color-white);border-radius:var(--vv-radius-2xl);padding:var(--vv-space-6);box-shadow:var(--vv-shadow-panel);display:flex;flex-direction:column;gap:var(--vv-space-3)}.vv-confirm__title{margin:0;font-size:var(--vv-font-size-lg);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-900)}.vv-confirm__message{margin:0;color:var(--vv-color-gray-600);font-size:var(--vv-font-size-sm)}.vv-confirm__input{display:flex;flex-direction:column;gap:var(--vv-space-2)}.vv-confirm__actions{display:flex;justify-content:flex-end;gap:var(--vv-space-2)}.vv-detail-panel{position:fixed;background-color:var(--vv-color-white);z-index:var(--vv-z-modal);display:flex;flex-direction:column;box-shadow:var(--vv-shadow-panel);font-family:var(--vv-font-family);overflow:hidden}.vv-detail-panel--left{left:calc(var(--vv-sidebar-width) + var(--vv-space-3));top:calc(var(--vv-header-height, 60px) + var(--vv-space-3));height:calc(100vh - var(--vv-header-height, 60px) - var(--vv-space-6));width:var(--vv-panel-width);border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-radius-2xl)}.vv-detail-panel--right{right:var(--vv-space-3);top:calc(var(--vv-header-height, 60px) + var(--vv-space-3));height:calc(100vh - var(--vv-header-height, 60px) - var(--vv-space-6));width:var(--vv-panel-width);border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-radius-2xl)}.vv-detail-panel--bottom{left:0;right:0;bottom:0;max-height:80vh;border-radius:var(--vv-radius-2xl) var(--vv-radius-2xl) 0 0;border-top:1px solid var(--vv-color-gray-200)}.vv-detail-panel__header{display:flex;align-items:center;justify-content:space-between;padding:var(--vv-space-4);border-bottom:1px solid var(--vv-color-gray-100);flex-shrink:0}.vv-detail-panel__title{font-size:var(--vv-font-size-lg);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-900);margin:0}.vv-detail-panel__close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--vv-color-gray-500);cursor:pointer;border-radius:var(--vv-radius-md);transition:var(--vv-transition-fast)}.vv-detail-panel__close:hover{background-color:var(--vv-color-gray-100);color:var(--vv-color-gray-700)}.vv-detail-panel__close svg{width:20px;height:20px}.vv-detail-panel__header-actions{display:flex;align-items:center;gap:var(--vv-space-1)}.vv-detail-panel__delete{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--vv-color-gray-500);cursor:pointer;border-radius:var(--vv-radius-md);transition:var(--vv-transition-fast)}.vv-detail-panel__delete:hover{background-color:#fef2f2;color:#ef4444}.vv-detail-panel__delete svg{width:18px;height:18px}.vv-detail-panel__content{flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}.vv-detail-panel__content::-webkit-scrollbar{width:0;height:0}.vv-panel-tabs{display:flex;flex-wrap:wrap;gap:var(--vv-space-2);padding:var(--vv-space-3) var(--vv-space-4);border-bottom:1px solid var(--vv-color-gray-100);background-color:var(--vv-color-white);position:sticky;top:0;z-index:1}.vv-panel-tab{border:1px solid var(--vv-color-gray-200);background-color:var(--vv-color-white);color:var(--vv-color-gray-600);border-radius:var(--vv-radius-full);padding:6px 14px;font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-semibold);cursor:pointer;transition:var(--vv-transition-fast)}.vv-panel-tab--active{border-color:var(--vv-color-primary);color:var(--vv-color-primary);background-color:var(--vv-color-primary-light)}.vv-panel-tab-content{padding:0}@media (max-width: 768px){.vv-detail-panel--left,.vv-detail-panel--right{left:0;right:0;width:100%;border:none}.vv-detail-panel--bottom{max-height:70vh}}.vv-detail-panel--bottom:before{content:"";display:block;width:40px;height:4px;background-color:var(--vv-color-gray-300);border-radius:var(--vv-radius-full);margin:var(--vv-space-2) auto var(--vv-space-4);flex-shrink:0}.vv-panel-section{padding:var(--vv-space-4);border-bottom:1px solid var(--vv-color-gray-100)}.vv-panel-title{font-size:var(--vv-font-size-base);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-900);margin:0 0 var(--vv-space-2) 0}.vv-panel-description{font-size:var(--vv-font-size-sm);color:var(--vv-color-gray-500);margin:0}.vv-spotlight-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;border:1px solid var(--vv-color-gray-200);background:var(--vv-color-gray-50);transition:background .1s,border-color .1s}.vv-spotlight-row:hover{background:var(--vv-color-gray-100);border-color:var(--vv-color-gray-300)}.vv-spotlight-row--selected{background:var(--vv-color-primary-light);border-color:var(--vv-color-primary)}.vv-spotlight-row--off{background:var(--vv-color-white);border-color:var(--vv-color-gray-200);opacity:.55}.vv-spotlight-row--selected.vv-spotlight-row--off{background:var(--vv-color-primary-light);border-color:var(--vv-color-primary);border-style:dashed;opacity:.8}.vv-spotlight-row__name{flex:1;font-size:13px;display:flex;align-items:center;gap:6px}.vv-spotlight-row__name--off{color:var(--vv-color-gray-400)}.vv-spotlight-row__name--selected{font-weight:600}.vv-spotlight-row__badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:1px 5px;border-radius:3px;background:var(--vv-color-gray-200);color:var(--vv-color-gray-500)}.vv-spotlight-toggle{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:5px;border:1px solid var(--vv-color-gray-300);background:var(--vv-color-gray-100);color:var(--vv-color-gray-400);cursor:pointer;flex-shrink:0;transition:background .1s,border-color .1s,color .1s}.vv-spotlight-toggle:hover{background:var(--vv-color-gray-200)}.vv-spotlight-toggle--on{background:#fefce8;border-color:#fde047;color:#ca8a04}.vv-spotlight-toggle--on:hover{background:#fef9c3}.vv-form{display:flex;flex-direction:column;gap:var(--vv-space-6);padding:var(--vv-space-4)}.vv-form__section{display:flex;flex-direction:column;gap:var(--vv-space-3)}.vv-form__section-title{font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-700);margin:0}.vv-form__row{display:flex;flex-direction:column;gap:var(--vv-space-2)}.vv-form__label{font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-medium);color:var(--vv-color-gray-700)}.vv-form__input,.vv-form__textarea,.vv-form__select{width:100%;min-height:var(--vv-input-height);padding:0 var(--vv-space-3);border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-input-radius);font-size:var(--vv-font-size-sm);font-family:var(--vv-font-family);color:var(--vv-color-gray-900);background-color:var(--vv-color-white);transition:var(--vv-transition-fast)}.vv-form__textarea{min-height:96px;padding:var(--vv-space-3);resize:vertical}.vv-form__input:focus,.vv-form__textarea:focus,.vv-form__select:focus{outline:none;border-color:var(--vv-color-primary);box-shadow:0 0 0 2px var(--vv-color-primary-light)}.vv-form__hint{font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-500)}.vv-form__range-field{display:flex;flex-direction:column;gap:var(--vv-space-2)}.vv-form__range-row{display:grid;grid-template-columns:1fr 96px;gap:var(--vv-space-3);align-items:center}.vv-form__range-row--with-action{grid-template-columns:1fr 96px 120px}.vv-form__range{width:100%;accent-color:var(--vv-color-primary)}.vv-form__range-input{min-height:calc(var(--vv-input-height) - 4px);text-align:center;padding:0 var(--vv-space-2)}.vv-form__range-meta{display:flex;justify-content:space-between;align-items:center;font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-500)}.vv-form__range-meta strong{font-size:var(--vv-font-size-sm);color:var(--vv-color-gray-700)}.vv-form__actions{display:flex;gap:var(--vv-space-2);justify-content:flex-end}.vv-form__action-list{display:flex;flex-direction:column;gap:var(--vv-space-4)}.vv-form__action-item{display:grid;grid-template-columns:minmax(140px,170px) 1fr;gap:var(--vv-space-3);align-items:center}.vv-form__action-item .vv-button{width:100%;justify-self:start;padding:0 var(--vv-space-3);font-size:var(--vv-font-size-xs)}.vv-form__action-description{margin:0;font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-500);line-height:1.4}@media (max-width: 520px){.vv-form__range-row,.vv-form__range-row--with-action{grid-template-columns:1fr}.vv-form__range-input{width:100%}.vv-form__action-item{grid-template-columns:1fr}.vv-form__action-item .vv-button{justify-self:stretch}}.vv-button{height:var(--vv-button-height-md);padding:0 var(--vv-space-4);border-radius:var(--vv-radius-full);font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-semibold);border:none;cursor:pointer;transition:var(--vv-transition-fast)}.vv-button--primary{background-color:var(--vv-color-primary);color:var(--vv-color-white)}.vv-button--primary:hover{background-color:var(--vv-color-primary-hover)}.vv-button--ghost{background-color:transparent;color:var(--vv-color-gray-600)}.vv-button--ghost:hover{background-color:var(--vv-color-gray-100)}.vv-button--secondary{background-color:var(--vv-color-gray-100);color:var(--vv-color-gray-700);border:1px solid var(--vv-color-gray-200)}.vv-button--secondary:hover{background-color:var(--vv-color-gray-200)}.vv-button--danger{background-color:var(--vv-color-error-light);color:var(--vv-color-error);border:1px solid transparent}.vv-button--danger:hover{background-color:var(--vv-color-error);color:var(--vv-color-white)}.vv-button--icon{height:28px;width:28px;padding:0;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--vv-font-size-sm)}.vv-accordion__header--with-action{display:flex;align-items:center}.vv-accordion__header--with-action .vv-accordion__trigger{flex:1;min-width:0}.vv-accordion__header--with-action .vv-button--icon{margin-right:var(--vv-space-2)}.vv-form__divider{height:1px;background-color:var(--vv-color-gray-100)}.vv-form__file{display:flex;align-items:center;gap:var(--vv-space-2)}.vv-form__file input[type=file]{display:none}.vv-form__file-preview{font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-500)}.vv-form__file-button{display:inline-flex;align-items:center;gap:var(--vv-space-2);border:1px solid var(--vv-color-gray-200);background-color:var(--vv-color-white)}.vv-form__checkbox{display:flex;align-items:center;gap:var(--vv-space-2);font-size:var(--vv-font-size-sm);color:var(--vv-color-gray-700)}.vv-form__checkbox input{width:16px;height:16px}.vv-form__select:disabled,.vv-form__select--disabled{background-color:var(--vv-color-gray-100);color:var(--vv-color-gray-400);cursor:not-allowed}.vv-accordion{display:flex;flex-direction:column;gap:var(--vv-space-3)}.vv-accordion__item{border:1px solid var(--vv-color-gray-100);border-radius:var(--vv-radius-2xl);background-color:var(--vv-color-white);overflow:hidden;box-shadow:var(--vv-shadow-soft)}.vv-accordion__header{margin:0}.vv-accordion__trigger{width:100%;border:none;background:transparent;padding:var(--vv-space-3) var(--vv-space-4);display:flex;align-items:center;justify-content:space-between;font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-800);cursor:pointer}.vv-accordion__trigger--nested{padding:var(--vv-space-2) var(--vv-space-3);font-size:var(--vv-font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--vv-color-gray-500)}.vv-accordion__chevron{transition:transform .2s ease;color:var(--vv-color-gray-500)}.vv-accordion__item[data-state=open]>.vv-accordion__header .vv-accordion__chevron{transform:rotate(180deg)}.vv-overrides-full{margin-left:calc(-2 * var(--vv-space-4));margin-right:calc(-2 * var(--vv-space-4))}.vv-overrides-full .vv-accordion__trigger,.vv-overrides-full .vv-accordion__content,.vv-overrides-full .vv-accordion__trigger--nested,.vv-overrides-full .vv-accordion__item--nested .vv-accordion__content{padding-left:var(--vv-space-4);padding-right:var(--vv-space-4)}.vv-overrides-full .vv-accordion__item{border:none;border-radius:0;box-shadow:none;background:transparent}.vv-overrides-full .vv-accordion__item+.vv-accordion__item{border-top:1px solid var(--vv-color-gray-100)}.vv-overrides-full .vv-accordion--nested .vv-accordion__item{border:none;border-radius:0;box-shadow:none;background:transparent}.vv-overrides-full .vv-accordion--nested .vv-accordion__item+.vv-accordion__item{border-top:1px solid var(--vv-color-gray-100)}.vv-accordion__content{overflow:hidden;padding:0 var(--vv-space-4) var(--vv-space-4)}.vv-accordion__content[data-state=open]{animation:vv-accordion-open .2s ease}.vv-accordion__content[data-state=closed]{animation:vv-accordion-close .2s ease}.vv-accordion--nested .vv-accordion__item{border:1px solid var(--vv-color-gray-100);box-shadow:none}.vv-accordion__item--nested .vv-accordion__content{padding:0 var(--vv-space-3) var(--vv-space-3)}@keyframes vv-accordion-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes vv-accordion-close{0%{opacity:1}to{opacity:0}}.vv-collapse-card{border:1px solid var(--vv-color-gray-100);border-radius:var(--vv-radius-2xl);background-color:var(--vv-color-white);overflow:hidden;box-shadow:var(--vv-shadow-soft)}.vv-collapse-trigger{width:100%;border:none;background:transparent;padding:var(--vv-space-3) var(--vv-space-4);display:flex;align-items:center;justify-content:space-between;font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-800);cursor:pointer}.vv-collapse-trigger--nested{padding:var(--vv-space-2) var(--vv-space-3);font-size:var(--vv-font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--vv-color-gray-500)}.vv-collapse-chevron{transition:transform .2s ease;color:var(--vv-color-gray-500)}.vv-collapse-card.is-open .vv-collapse-chevron{transform:rotate(180deg)}.vv-collapse-content{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.vv-collapse-card.is-open>.vv-collapse-content{grid-template-rows:1fr}.vv-collapse-inner{overflow:hidden;padding:0 var(--vv-space-4) var(--vv-space-4)}.vv-collapse-card--nested{border:1px solid var(--vv-color-gray-100);box-shadow:none;margin-bottom:var(--vv-space-3)}.vv-collapse-card--nested .vv-collapse-inner{padding:0 var(--vv-space-3) var(--vv-space-3)}@media (max-width: 520px){.vv-form__override-vector{grid-template-columns:1fr}}.vv-form__override-list{display:flex;flex-direction:column;gap:var(--vv-space-3)}.vv-form__override-row{display:flex;flex-direction:column;gap:var(--vv-space-2);padding:var(--vv-space-3);border:1px solid var(--vv-color-gray-100);border-radius:var(--vv-radius-xl);background-color:var(--vv-color-gray-50)}.vv-form__override-header{display:flex;align-items:center;justify-content:space-between;gap:var(--vv-space-2)}.vv-form__override-type{font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-500)}.vv-form__override-input{display:flex;gap:var(--vv-space-2);flex-wrap:wrap}.vv-form__override-input.is-disabled{opacity:.6}.vv-form__override-vector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--vv-space-2);width:100%}.vv-form__override-axis{display:flex;flex-direction:column;gap:var(--vv-space-1);font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-500)}.vv-form__group{display:flex;flex-direction:column;gap:var(--vv-space-2);padding-bottom:var(--vv-space-2)}.vv-form__group-title{margin:0;font-size:var(--vv-font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--vv-color-gray-500)}.vv-form__section-header,.vv-form__group-header{display:flex;align-items:center;justify-content:space-between;gap:var(--vv-space-2)}.vv-form__collapse{border:none;background:transparent;color:var(--vv-color-primary);font-size:var(--vv-font-size-xs);cursor:pointer;padding:0}.vv-form__input--color{width:48px;min-height:var(--vv-input-height);padding:0;border-radius:var(--vv-input-radius)}@media (max-width: 520px){.vv-form__override-row{grid-template-columns:1fr}}@keyframes vv-spin{to{transform:rotate(360deg)}}.vv-form-model-library{padding-right:0;padding-left:0}.vv-model-library__search{position:relative;flex:1;display:flex;align-items:center}.vv-model-library__search .vv-form__input{flex:1;padding-right:32px}.vv-model-library__spinner{position:absolute;right:10px;top:50%;width:14px;height:14px;margin-top:-7px;border:2px solid var(--vv-color-gray-200);border-top-color:var(--vv-color-primary);border-radius:50%;animation:vv-model-library-spin .7s linear infinite}@keyframes vv-model-library-spin{to{transform:rotate(360deg)}}.vv-model-library__chips{display:flex;flex-wrap:wrap;gap:var(--vv-space-2);margin-top:var(--vv-space-2)}.vv-model-library__chip-wrap{position:relative;display:inline-flex;align-items:stretch;border:1px solid var(--vv-color-gray-200);border-radius:999px;background:var(--vv-color-white);transition:var(--vv-transition-fast)}.vv-model-library__chip-wrap>.vv-model-library__chip{border-top-left-radius:999px;border-bottom-left-radius:999px}.vv-model-library__chip-wrap>.vv-model-library__chip-kebab{border-top-right-radius:999px;border-bottom-right-radius:999px}.vv-model-library__chip-wrap:hover{border-color:var(--vv-color-primary)}.vv-model-library__chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--vv-color-gray-200);background:var(--vv-color-white);color:var(--vv-color-gray-700);padding:var(--vv-space-1) var(--vv-space-3);border-radius:999px;font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-medium);cursor:pointer;transition:var(--vv-transition-fast)}.vv-model-library__chip-wrap .vv-model-library__chip{border:none;background:transparent;border-radius:0;padding-right:var(--vv-space-2)}.vv-model-library__chip:hover{color:var(--vv-color-primary)}.vv-model-library__chip--active{background:var(--vv-color-primary);color:var(--vv-color-white)}.vv-model-library__chip-wrap:has(.vv-model-library__chip--active){background:var(--vv-color-primary);border-color:var(--vv-color-primary)}.vv-model-library__chip-wrap:has(.vv-model-library__chip--active) .vv-model-library__chip,.vv-model-library__chip-wrap:has(.vv-model-library__chip--active) .vv-model-library__chip-kebab{color:var(--vv-color-white)}.vv-model-library__chip-wrap:has(.vv-model-library__chip--active) .vv-model-library__chip:hover{color:var(--vv-color-white)}.vv-model-library__chip-count{font-size:10px;font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-500);background:var(--vv-color-gray-100, #f3f4f6);padding:1px 6px;border-radius:999px;line-height:1.4}.vv-model-library__chip--active .vv-model-library__chip-count{background:#ffffff40;color:var(--vv-color-white)}.vv-model-library__chip--ghost{border-style:dashed;color:var(--vv-color-gray-500);border:1px dashed var(--vv-color-gray-200)}.vv-model-library__chip-kebab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--vv-color-gray-500);padding:0 var(--vv-space-2);font-size:var(--vv-font-size-sm);cursor:pointer;border-left:1px solid transparent;transition:var(--vv-transition-fast);display:inline-flex;align-items:center;justify-content:center}.vv-model-library__chip-wrap .vv-model-library__chip-kebab{border-left-color:var(--vv-color-gray-200)}.vv-model-library__chip-kebab:hover:not(:disabled){color:var(--vv-color-primary);background:var(--vv-color-gray-100, #f3f4f6)}.vv-model-library__chip-kebab:disabled{opacity:.4;cursor:not-allowed}.vv-model-library__menu{position:absolute;top:calc(100% + 4px);right:0;z-index:50;min-width:140px;background:var(--vv-color-white);border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-input-radius);box-shadow:0 6px 20px #00000014;padding:4px;display:flex;flex-direction:column;max-height:240px;overflow-y:auto;font-size:var(--vv-font-size-xs)}.vv-model-library__menu-heading{padding:var(--vv-space-1) var(--vv-space-2);font-size:10px;font-weight:var(--vv-font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--vv-color-gray-500)}.vv-model-library__menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;text-align:left;padding:6px 10px;font-family:var(--vv-font-family);font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-medium);color:var(--vv-color-gray-900);cursor:pointer;border-radius:4px}.vv-model-library__menu-item:hover{background:var(--vv-color-gray-100, #f3f4f6);color:var(--vv-color-primary)}.vv-model-library__menu-item--danger{color:#b91c1c}.vv-model-library__menu-item--danger:hover{background:#fee2e2;color:#b91c1c}.vv-model-library__menu-divider{height:1px;background:var(--vv-color-gray-200);margin:4px 0}.vv-model-library__upload{display:flex;flex-direction:column;gap:var(--vv-space-3);margin-top:var(--vv-space-3);padding:var(--vv-space-3);border:1px dashed var(--vv-color-gray-200);border-radius:var(--vv-input-radius)}.vv-model-library__file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.vv-model-library__dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:var(--vv-space-4) var(--vv-space-3);border:2px dashed var(--vv-color-gray-200);border-radius:var(--vv-input-radius);background:var(--vv-color-gray-100, #f9fafb);cursor:pointer;text-align:center;transition:var(--vv-transition-fast);outline:none}.vv-model-library__dropzone:hover,.vv-model-library__dropzone:focus-visible{border-color:var(--vv-color-primary);background:var(--vv-color-primary-light, #eef2ff)}.vv-model-library__dropzone--active{border-color:var(--vv-color-primary);background:var(--vv-color-primary-light, #eef2ff);transform:scale(1.01)}.vv-model-library__dropzone--filled{border-style:solid;background:var(--vv-color-white)}.vv-model-library__dropzone-title{font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-900)}.vv-model-library__dropzone-sub{font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-500)}.vv-model-library__dropzone-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;font:inherit;color:var(--vv-color-primary);cursor:pointer;text-decoration:underline}.vv-model-library__upload-submit{width:100%}.vv-model-library__progress{width:100%;height:6px;margin-top:8px;background:var(--vv-color-gray-200);border-radius:999px;overflow:hidden}.vv-model-library__progress-bar{height:100%;background:var(--vv-color-primary);border-radius:999px;transition:width .15s linear}.vv-model-library__progress-bar--done{background:#16a34a}.vv-model-library__count{margin:0 0 var(--vv-space-2) 0}.vv-model-library__load-more{margin-top:var(--vv-space-2);width:100%}.vv-model-library__panel .vv-form__range-row{grid-template-columns:1fr 72px;gap:var(--vv-space-2);align-items:center}.vv-model-library__panel .vv-form__range-input{width:100%;min-height:32px;height:32px;text-align:center;padding:0 var(--vv-space-1);font-size:var(--vv-font-size-xs)}.vv-model-library__list-wrap{position:relative}.vv-model-library__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--vv-space-2);max-height:320px;overflow-y:auto;transition:opacity var(--vv-transition-fast)}.vv-model-library__list-wrap:has(.vv-model-library__list-overlay) .vv-model-library__list{opacity:.5;pointer-events:none}.vv-model-library__list-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#fff6;border-radius:var(--vv-input-radius);pointer-events:none}.vv-model-library__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--vv-space-2);padding:var(--vv-space-4) 0}.vv-model-library__spinner--lg{position:static;width:24px;height:24px;margin:0;border-width:3px}.vv-model-library__item{display:flex;align-items:stretch;gap:var(--vv-space-2);border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-input-radius);background:var(--vv-color-white);transition:var(--vv-transition-fast);min-width:0}.vv-model-library__item:hover .vv-model-library__item-menu-host .vv-model-library__chip-kebab{opacity:1}.vv-model-library__item--active{border-color:var(--vv-color-primary);box-shadow:0 0 0 2px var(--vv-color-primary-light)}.vv-model-library__item-main{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:var(--vv-space-2);background:transparent;border:none;padding:var(--vv-space-2) var(--vv-space-3);cursor:pointer;text-align:left;font:inherit;color:var(--vv-color-gray-900)}.vv-model-library__item-name{font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-medium);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vv-model-library__item-badge{font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-500);background:var(--vv-color-gray-100, #f3f4f6);padding:2px 8px;border-radius:999px;flex-shrink:0;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vv-model-library__item-menu-host{position:relative;display:flex;align-items:stretch;padding-right:var(--vv-space-2);flex-shrink:0}.vv-model-library__item-menu-host .vv-model-library__chip-kebab{opacity:.5;border-radius:4px;padding:4px 8px}.vv-model-library__item--active .vv-model-library__item-menu-host .vv-model-library__chip-kebab{opacity:1}.vv-style-mode-banner{position:fixed;top:var(--vv-header-height, 60px);left:var(--vv-sidebar-width);right:0;height:40px;background-color:var(--vv-color-primary);color:var(--vv-color-white);display:flex;align-items:center;justify-content:space-between;padding:0 var(--vv-space-4);z-index:var(--vv-z-sticky);font-family:var(--vv-font-family);font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-semibold)}.vv-style-mode-banner__label{display:flex;align-items:center;gap:var(--vv-space-2);overflow:hidden}.vv-style-mode-banner__tag{background-color:#fff3;border-radius:var(--vv-radius-full);padding:2px 8px;font-size:var(--vv-font-size-xs);white-space:nowrap}.vv-style-mode-banner__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vv-style-mode-banner__actions{display:flex;align-items:center;gap:var(--vv-space-2);flex-shrink:0}.vv-style-mode-banner__dirty{font-size:var(--vv-font-size-xs);opacity:.8}.vv-style-mode-banner__btn{border:1px solid rgba(255,255,255,.4);background:transparent;color:var(--vv-color-white);border-radius:var(--vv-radius-full);padding:3px 12px;font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-semibold);cursor:pointer;font-family:var(--vv-font-family);transition:var(--vv-transition-fast)}.vv-style-mode-banner__btn:hover{background:#ffffff26}.vv-style-mode-banner__btn--save{background:#fff3}.vv-style-mode-banner__btn--save:hover{background:#ffffff59}.vv-sidebar--disabled{pointer-events:none;opacity:.35}.vv-editor-layout--style-mode .vv-detail-panel--left,.vv-editor-layout--style-mode .vv-detail-panel--right{top:calc(var(--vv-header-height, 60px) + 40px + var(--vv-space-3));height:calc(100vh - var(--vv-header-height, 60px) - 40px - var(--vv-space-6))}.vv-style-list__actions-secondary{margin-top:var(--vv-space-2);padding-top:var(--vv-space-2);border-top:1px solid var(--vv-color-gray-100)}.vv-style-list__new{padding:var(--vv-space-4);border-top:1px solid var(--vv-color-gray-100)}.vv-style-list__new-trigger{width:100%;border-style:dashed}.vv-style-list__create-form{display:flex;flex-direction:column;gap:var(--vv-space-3)}.vv-style-overview{display:flex;flex-direction:column;height:100%}.vv-style-overview__name-row{display:flex;align-items:center;gap:var(--vv-space-2);padding:var(--vv-space-4);border-bottom:1px solid var(--vv-color-gray-100)}.vv-style-overview__name-input{flex:1;font-size:var(--vv-font-size-base);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-900);border:none;outline:none;background:transparent;font-family:var(--vv-font-family);padding:var(--vv-space-1) var(--vv-space-2);border-radius:var(--vv-radius-md);transition:var(--vv-transition-fast)}.vv-style-overview__name-input:hover,.vv-style-overview__name-input:focus{background-color:var(--vv-color-gray-50);outline:none}.vv-style-overview__layers{flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.vv-style-overview__layers::-webkit-scrollbar{width:0}.vv-style-overview__layers-header{display:flex;align-items:center;justify-content:space-between;padding:var(--vv-space-3) var(--vv-space-4) var(--vv-space-2)}.vv-style-overview__layers-title{font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--vv-color-gray-400)}.vv-style-overview__empty{padding:var(--vv-space-6) var(--vv-space-4);text-align:center;color:var(--vv-color-gray-400);font-size:var(--vv-font-size-sm)}.vv-style-overview__json-section{border-top:1px solid var(--vv-color-gray-100);flex-shrink:0}.vv-style-overview__json-toggle{display:flex;align-items:center;gap:var(--vv-space-2);width:100%;padding:var(--vv-space-3) var(--vv-space-4);border:none;background:transparent;cursor:pointer;font-family:var(--vv-font-family);font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--vv-color-gray-400);text-align:left;transition:var(--vv-transition-fast)}.vv-style-overview__json-toggle:hover{color:var(--vv-color-gray-600)}.vv-style-overview__json-body{padding:0 var(--vv-space-4) var(--vv-space-4);display:flex;flex-direction:column;gap:var(--vv-space-2)}.vv-form__json-textarea{width:100%;min-height:240px;font-family:Courier New,Consolas,monospace;font-size:11px;line-height:1.5;color:var(--vv-color-gray-800);background-color:var(--vv-color-gray-50);border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-radius-md);padding:var(--vv-space-3);resize:vertical;outline:none;transition:var(--vv-transition-fast);box-sizing:border-box}.vv-form__json-textarea:focus{border-color:var(--vv-color-primary);background-color:var(--vv-color-white)}.vv-layer-row{display:flex;align-items:center;gap:var(--vv-space-2);padding:var(--vv-space-2) var(--vv-space-4);cursor:pointer;transition:var(--vv-transition-fast);border-left:3px solid transparent}.vv-layer-row:hover{background-color:var(--vv-color-gray-50)}.vv-layer-row--active{background-color:var(--vv-color-primary-light);border-left-color:var(--vv-color-primary)}.vv-layer-row__drag{color:var(--vv-color-gray-300);cursor:grab;flex-shrink:0;display:flex;align-items:center;padding:4px;border-radius:var(--vv-radius-sm)}.vv-layer-row__drag:hover{color:var(--vv-color-gray-500)}.vv-layer-row__drag:active{cursor:grabbing}.vv-layer-row__drag svg{width:14px;height:14px}.vv-layer-type-badge{flex-shrink:0;font-size:10px;font-weight:var(--vv-font-weight-semibold);padding:2px 6px;border-radius:var(--vv-radius-full);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.vv-layer-type-badge--fill{background-color:#dbeafe;color:#1d4ed8}.vv-layer-type-badge--fill-extrusion{background-color:#e0e7ff;color:#4338ca}.vv-layer-type-badge--line{background-color:#fce7f3;color:#be185d}.vv-layer-type-badge--symbol{background-color:#d1fae5;color:#065f46}.vv-layer-type-badge--raster{background-color:#fef3c7;color:#92400e}.vv-layer-type-badge--model{background-color:#ede9fe;color:#5b21b6}.vv-layer-row__id{flex:1;min-width:0;font-size:var(--vv-font-size-sm);color:var(--vv-color-gray-700);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vv-layer-row__actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.vv-layer-row__icon-btn{width:28px;height:28px;border:none;background:transparent;color:var(--vv-color-gray-400);cursor:pointer;border-radius:var(--vv-radius-sm);display:flex;align-items:center;justify-content:center;transition:var(--vv-transition-fast)}.vv-layer-row__icon-btn:hover{background-color:var(--vv-color-gray-100);color:var(--vv-color-gray-600)}.vv-layer-row__icon-btn--hidden{color:var(--vv-color-gray-300)}.vv-layer-row__icon-btn svg{width:14px;height:14px}.vv-style-overview__footer{padding:var(--vv-space-3) var(--vv-space-4);border-top:1px solid var(--vv-color-gray-100);display:flex;align-items:center;gap:var(--vv-space-2)}.vv-add-layer-select{flex:1;height:36px;font-family:var(--vv-font-family);font-size:var(--vv-font-size-sm);border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-radius-md);padding:0 var(--vv-space-2);background-color:var(--vv-color-white);color:var(--vv-color-gray-700);outline:none}.vv-add-layer-btn{height:36px;padding:0 var(--vv-space-3);border:1px solid var(--vv-color-primary);background-color:var(--vv-color-primary);color:var(--vv-color-white);border-radius:var(--vv-radius-md);font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-semibold);cursor:pointer;font-family:var(--vv-font-family);transition:var(--vv-transition-fast);white-space:nowrap}.vv-add-layer-btn:hover{background-color:var(--vv-color-primary-hover);border-color:var(--vv-color-primary-hover)}.vv-layer-editor{display:flex;flex-direction:column;height:100%}.vv-layer-editor__back{display:flex;align-items:center;gap:var(--vv-space-2);padding:var(--vv-space-3) var(--vv-space-4);border-bottom:1px solid var(--vv-color-gray-100);flex-shrink:0}.vv-layer-editor__back-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--vv-color-gray-500);cursor:pointer;border-radius:var(--vv-radius-sm);transition:var(--vv-transition-fast)}.vv-layer-editor__back-btn:hover{background-color:var(--vv-color-gray-100);color:var(--vv-color-gray-700)}.vv-layer-editor__back-btn svg{width:16px;height:16px}.vv-layer-editor__breadcrumb{display:flex;align-items:center;gap:var(--vv-space-1);font-size:var(--vv-font-size-sm);color:var(--vv-color-gray-500);flex:1;min-width:0}.vv-layer-editor__breadcrumb-current{font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-800);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vv-layer-editor__id-row{padding:var(--vv-space-3) var(--vv-space-4);border-bottom:1px solid var(--vv-color-gray-100);display:flex;flex-direction:column;gap:var(--vv-space-2)}.vv-layer-editor__id-input{font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-900);border:1px solid transparent;border-radius:var(--vv-radius-md);padding:var(--vv-space-1) var(--vv-space-2);background:var(--vv-color-gray-50);font-family:var(--vv-font-family);outline:none;transition:var(--vv-transition-fast);width:100%}.vv-layer-editor__id-input:focus{border-color:var(--vv-color-primary);background:var(--vv-color-white)}.vv-layer-editor__tabs{display:flex;flex-wrap:wrap;gap:var(--vv-space-2);padding:var(--vv-space-3) var(--vv-space-4);border-bottom:1px solid var(--vv-color-gray-100);flex-shrink:0}.vv-layer-editor__tab{border:1px solid var(--vv-color-gray-200);background-color:var(--vv-color-white);color:var(--vv-color-gray-600);border-radius:var(--vv-radius-full);padding:5px 12px;font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-semibold);cursor:pointer;transition:var(--vv-transition-fast);font-family:var(--vv-font-family)}.vv-layer-editor__tab:hover{border-color:var(--vv-color-gray-300);background-color:var(--vv-color-gray-50)}.vv-layer-editor__tab--active{border-color:var(--vv-color-primary);color:var(--vv-color-primary);background-color:var(--vv-color-primary-light)}.vv-layer-editor__content{flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.vv-layer-editor__content::-webkit-scrollbar{width:0}.vv-filter-editor{padding:var(--vv-space-4);display:flex;flex-direction:column;gap:var(--vv-space-4)}.vv-filter-editor__label{font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--vv-color-gray-400);margin-bottom:var(--vv-space-2)}.vv-filter-editor__no-filter{display:flex;flex-direction:column;gap:var(--vv-space-3)}.vv-filter-editor__no-filter p{font-size:var(--vv-font-size-sm);color:var(--vv-color-gray-500);margin:0}.vv-filter-editor__row{display:flex;flex-direction:column;gap:var(--vv-space-2)}.vv-filter-editor__tags{display:flex;flex-wrap:wrap;gap:var(--vv-space-1);min-height:36px;padding:var(--vv-space-1);border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-radius-md);background-color:var(--vv-color-white);align-items:flex-start;align-content:flex-start}.vv-filter-editor__tag{display:flex;align-items:center;gap:4px;background-color:var(--vv-color-primary-light);color:var(--vv-color-primary);border-radius:var(--vv-radius-full);padding:2px 8px;font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-semibold)}.vv-filter-editor__tag-remove{width:14px;height:14px;border:none;background:transparent;color:var(--vv-color-primary);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--vv-transition-fast);flex-shrink:0}.vv-filter-editor__tag-remove:hover{background-color:#4f6bf633}.vv-filter-editor__tag-remove svg{width:10px;height:10px}.vv-filter-editor__tag-input{border:none;outline:none;font-size:var(--vv-font-size-xs);font-family:var(--vv-font-family);color:var(--vv-color-gray-700);min-width:80px;flex:1;padding:2px 4px;background:transparent}.vv-field-row{display:flex;flex-direction:column;gap:var(--vv-space-1);padding:var(--vv-space-2) 0}.vv-field-row__label{font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-600)}.vv-field-row__vector{display:flex;gap:var(--vv-space-2)}.vv-field-row__vector-axis{display:flex;align-items:center;gap:var(--vv-space-1);flex:1}.vv-field-row__vector-axis span{font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-400);font-weight:var(--vv-font-weight-semibold);width:14px;flex-shrink:0}.vv-expr{display:flex;flex-direction:column;gap:var(--vv-space-2);width:100%}.vv-expr__header{display:flex;align-items:center;justify-content:space-between;gap:var(--vv-space-2)}.vv-expr__mode-select{flex-shrink:0;width:auto;min-height:unset;height:24px;padding:0 var(--vv-space-2);font-size:var(--vv-font-size-xs);border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-radius-full);background:var(--vv-color-white);color:var(--vv-color-gray-700);cursor:pointer;font-family:var(--vv-font-family)}.vv-expr__body,.vv-expr__prop{display:flex;flex-direction:column;gap:var(--vv-space-2)}.vv-expr__chips{display:flex;flex-wrap:wrap;gap:var(--vv-space-1)}.vv-expr__chip{border:1px solid var(--vv-color-gray-200);background:var(--vv-color-gray-50);border-radius:var(--vv-radius-full);padding:1px 8px;font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-600);cursor:pointer;font-family:var(--vv-font-family);transition:var(--vv-transition-fast)}.vv-expr__chip:hover{border-color:var(--vv-color-primary);color:var(--vv-color-primary)}.vv-expr__chip--active{border-color:var(--vv-color-primary);background:var(--vv-color-primary-light);color:var(--vv-color-primary)}.vv-expr__list{display:flex;flex-direction:column;gap:var(--vv-space-2)}.vv-expr__list-label{font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-400)}.vv-expr__list-row{display:flex;align-items:center;gap:var(--vv-space-1)}.vv-expr__list-idx{font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-400);width:14px;flex-shrink:0;text-align:center}.vv-expr__list-remove{border:none;background:transparent;color:var(--vv-color-gray-400);cursor:pointer;font-size:var(--vv-font-size-xs);padding:2px 4px;border-radius:var(--vv-radius-sm);flex-shrink:0;transition:var(--vv-transition-fast)}.vv-expr__list-remove:hover{color:var(--vv-color-error);background:var(--vv-color-error-light)}.vv-expr__add-btn{border:1px dashed var(--vv-color-gray-200);background:transparent;color:var(--vv-color-primary);border-radius:var(--vv-radius-lg);padding:var(--vv-space-1) var(--vv-space-3);font-size:var(--vv-font-size-xs);font-family:var(--vv-font-family);cursor:pointer;width:100%;text-align:center;transition:var(--vv-transition-fast)}.vv-expr__add-btn:hover{background:var(--vv-color-primary-light);border-color:var(--vv-color-primary)}.vv-expr__sv{display:flex;align-items:center;gap:var(--vv-space-1);flex:1;min-width:0}.vv-expr__sv-toggle{display:flex;border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-radius-md);overflow:hidden;flex-shrink:0}.vv-expr__sv-btn{border:none;background:transparent;padding:2px 5px;font-size:10px;font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-400);cursor:pointer;font-family:var(--vv-font-family);line-height:1.4;transition:var(--vv-transition-fast)}.vv-expr__sv-btn--active{background:var(--vv-color-primary);color:var(--vv-color-white)}.vv-expr__sv-input{flex:1;min-width:0;min-height:30px;font-size:var(--vv-font-size-xs);padding:0 var(--vv-space-2)}.vv-expr__cond{display:flex;flex-direction:column;gap:var(--vv-space-2)}.vv-expr__cond-row{display:flex;align-items:center;gap:var(--vv-space-1)}.vv-expr__cond-kw{font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-500);flex-shrink:0;width:28px}.vv-expr__cond-branch{display:flex;align-items:center;gap:var(--vv-space-1)}.vv-expr__raw{display:flex;flex-direction:column;gap:var(--vv-space-1)}.vv-expr__raw-warning{font-size:var(--vv-font-size-xs);color:var(--vv-color-gray-400);background:var(--vv-color-gray-50);border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-radius-md);padding:2px var(--vv-space-2)}.vv-expr__raw-textarea{font-family:monospace;font-size:var(--vv-font-size-xs);min-height:120px;resize:vertical}.vv-expr__raw-textarea--error{border-color:var(--vv-color-error);box-shadow:0 0 0 2px var(--vv-color-error-light)}.vv-expr__raw-error{font-size:var(--vv-font-size-xs);color:var(--vv-color-error)}.vv-style-accordion{padding:0}.vv-style-accordion__item{border-bottom:1px solid var(--vv-color-gray-100)}.vv-style-accordion__trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--vv-space-3) var(--vv-space-4);border:none;background:transparent;cursor:pointer;font-family:var(--vv-font-family);font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-800);text-align:left;transition:var(--vv-transition-fast)}.vv-style-accordion__trigger:hover{background-color:var(--vv-color-gray-50)}.vv-style-accordion__trigger-icon{width:16px;height:16px;color:var(--vv-color-gray-400);transition:transform var(--vv-transition-fast);flex-shrink:0}.vv-style-accordion__trigger[data-state=open] .vv-style-accordion__trigger-icon{transform:rotate(180deg)}.vv-style-accordion__content{overflow:hidden}.vv-style-accordion__content[data-state=open]{animation:slideDown .15s ease}.vv-style-accordion__content[data-state=closed]{animation:slideUp .15s ease}@keyframes slideDown{0%{height:0;opacity:0}to{height:var(--radix-accordion-content-height);opacity:1}}@keyframes slideUp{0%{height:var(--radix-accordion-content-height);opacity:1}to{height:0;opacity:0}}.vv-style-accordion__inner{padding:var(--vv-space-2) var(--vv-space-4) var(--vv-space-4)}.vv-style-accordion__group{margin-bottom:var(--vv-space-3)}.vv-style-accordion__group:last-child{margin-bottom:0}.vv-style-accordion__group-title{font-size:var(--vv-font-size-xs);font-weight:var(--vv-font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--vv-color-gray-400);padding-bottom:var(--vv-space-2);margin-bottom:var(--vv-space-2);border-bottom:1px solid var(--vv-color-gray-100)}.vv-context-menu{position:fixed;background:var(--vv-color-white);border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-radius-lg);box-shadow:var(--vv-shadow-panel);padding:var(--vv-space-1);z-index:var(--vv-z-popover);min-width:140px;font-family:var(--vv-font-family)}.vv-context-menu__item{display:flex;align-items:center;gap:var(--vv-space-2);width:100%;padding:var(--vv-space-2) var(--vv-space-3);border:none;background:transparent;font-size:var(--vv-font-size-sm);color:var(--vv-color-gray-700);cursor:pointer;border-radius:var(--vv-radius-md);text-align:left;font-family:var(--vv-font-family);transition:var(--vv-transition-fast)}.vv-context-menu__item:hover{background-color:var(--vv-color-gray-50)}.vv-context-menu__item--danger{color:var(--vv-color-error)}.vv-context-menu__item--danger:hover{background-color:var(--vv-color-error-light)}.vv-context-menu__item svg{width:14px;height:14px;flex-shrink:0}.vv-versions{display:flex;flex-direction:column;height:100%}.vv-versions__header{display:flex;align-items:center;justify-content:space-between;padding:var(--vv-space-4);border-bottom:1px solid var(--vv-color-gray-100)}.vv-versions__title{font-size:var(--vv-font-size-base);font-weight:var(--vv-font-weight-semibold);color:var(--vv-color-gray-900);margin:0}.vv-versions__list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--vv-space-2);padding:var(--vv-space-3)}.vv-version-item{display:flex;flex-direction:column;gap:var(--vv-space-1);padding:var(--vv-space-3);border-radius:var(--vv-radius-md);border:1px solid var(--vv-color-gray-200);background:var(--vv-color-white);transition:border-color .1s}.vv-version-item--active{border-color:var(--vv-color-primary);background:var(--vv-color-primary-light)}.vv-version-item--previewing{border-color:#f59e0b;background:#fffbeb}.vv-version-item__top{display:flex;align-items:center;gap:var(--vv-space-2)}.vv-version-item__name-input{flex:1;border:none;background:transparent;font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-medium);color:var(--vv-color-gray-900);font-family:var(--vv-font-family);padding:0;outline:none;cursor:default;min-width:0}.vv-version-item__name-input:not([readonly]){cursor:text;border-bottom:1px dashed var(--vv-color-gray-300)}.vv-version-item__name-input:focus{border-bottom-color:var(--vv-color-primary)}.vv-version-item__name-static{flex:1;font-size:var(--vv-font-size-sm);font-weight:var(--vv-font-weight-medium);color:var(--vv-color-gray-900);display:flex;align-items:center;gap:var(--vv-space-1);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vv-version-item__badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:1px 5px;border-radius:3px;flex-shrink:0}.vv-version-item__badge--active{background:var(--vv-color-primary);color:var(--vv-color-white)}.vv-version-item__badge--previewing{background:#f59e0b;color:var(--vv-color-white)}.vv-version-item__badge--default{background:var(--vv-color-gray-200);color:var(--vv-color-gray-500)}.vv-version-item__meta{font-size:11px;color:var(--vv-color-gray-400)}.vv-version-item__actions{display:flex;gap:var(--vv-space-2);margin-top:var(--vv-space-1)}.vv-version-item__btn{font-size:var(--vv-font-size-xs);padding:3px 10px;border-radius:var(--vv-radius-sm);border:1px solid var(--vv-color-gray-300);background:var(--vv-color-white);color:var(--vv-color-gray-700);cursor:pointer;transition:background .1s,border-color .1s;font-family:var(--vv-font-family);font-weight:var(--vv-font-weight-medium)}.vv-version-item__btn:hover:not(:disabled){background:var(--vv-color-gray-100);border-color:var(--vv-color-gray-400)}.vv-version-item__btn:disabled{opacity:.45;cursor:not-allowed}.vv-version-item__btn--danger{border-color:#fca5a5;color:#dc2626}.vv-version-item__btn--danger:hover:not(:disabled){background:#fee2e2;border-color:#dc2626}.vv-versions__save-form{display:flex;align-items:center;gap:var(--vv-space-3);padding:var(--vv-space-4);border-top:1px solid var(--vv-color-gray-100);background:var(--vv-color-white)}.vv-versions__save-input{flex:1;min-width:0;min-height:var(--vv-input-height);padding:0 var(--vv-space-3);border:1px solid var(--vv-color-gray-200);border-radius:var(--vv-input-radius);font-size:var(--vv-font-size-sm);font-family:var(--vv-font-family);color:var(--vv-color-gray-900);background-color:var(--vv-color-white)}.vv-versions__save-input:focus{outline:none;border-color:var(--vv-color-primary)}.vv-versions__save-btn{display:flex;align-items:center;justify-content:center;flex-shrink:0}.vv-versions__empty{padding:var(--vv-space-6) var(--vv-space-4);text-align:center;color:var(--vv-color-gray-400);font-size:var(--vv-font-size-sm)}:root{--vv-color-primary: #4F6BF6;--vv-color-primary-hover: #3D56D4;--vv-color-primary-light: #EEF1FE;--vv-color-accent: #2a404e;--vv-color-accent-hover: #1e3340;--vv-color-rose: #b0064a;--vv-color-success: #22C55E;--vv-color-success-light: #DCFCE7;--vv-color-warning: #F59E0B;--vv-color-warning-light: #FEF3C7;--vv-color-error: #EF4444;--vv-color-error-light: #FEE2E2;--vv-color-info: #3B82F6;--vv-color-info-light: #DBEAFE;--vv-color-open: #22C55E;--vv-color-closed: #EF4444;--vv-color-busy: #F59E0B;--vv-color-available: #22C55E;--vv-color-cleaning: #8B5CF6;--vv-color-cleaning-light: #EDE9FE;--vv-color-white: #FFFFFF;--vv-color-gray-50: #F9FAFB;--vv-color-gray-100: #F3F4F6;--vv-color-gray-200: #E5E7EB;--vv-color-gray-300: #D1D5DB;--vv-color-gray-400: #9CA3AF;--vv-color-gray-500: #6B7280;--vv-color-gray-600: #4B5563;--vv-color-gray-700: #374151;--vv-color-gray-800: #1F2937;--vv-color-gray-900: #111827;--vv-bg-primary: #FFFFFF;--vv-bg-secondary: #F9FAFB;--vv-bg-overlay: rgba(0, 0, 0, .5);--vv-bg-gradient-start: #ffffff;--vv-bg-gradient-end: #f0f5ff;--vv-category-music: #7C3AED;--vv-category-tech: #3B82F6;--vv-category-kids: #F97316;--vv-category-wellness: #14B8A6;--vv-category-food: #EF4444;--vv-category-shopping: #EC4899;--vv-badge-discount: #EF4444;--vv-badge-bogo: #22C55E;--vv-badge-trade: #3B82F6;--vv-badge-limited: #F59E0B;--vv-font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--vv-font-size-xs: .75rem;--vv-font-size-sm: .875rem;--vv-font-size-base: 1rem;--vv-font-size-lg: 1.125rem;--vv-font-size-xl: 1.25rem;--vv-font-size-2xl: 1.5rem;--vv-font-size-3xl: 1.875rem;--vv-font-size-4xl: 2.25rem;--vv-font-weight-regular: 400;--vv-font-weight-medium: 500;--vv-font-weight-semibold: 600;--vv-font-weight-bold: 700;--vv-line-height-tight: 1.25;--vv-line-height-normal: 1.5;--vv-line-height-relaxed: 1.625;--vv-space-0: 0;--vv-space-1: .25rem;--vv-space-2: .5rem;--vv-space-3: .75rem;--vv-space-4: 1rem;--vv-space-5: 1.25rem;--vv-space-6: 1.5rem;--vv-space-8: 2rem;--vv-space-10: 2.5rem;--vv-space-12: 3rem;--vv-space-16: 4rem;--vv-radius-sm: .25rem;--vv-radius-md: .5rem;--vv-radius-lg: .75rem;--vv-radius-xl: 1rem;--vv-radius-2xl: 1.5rem;--vv-radius-full: 9999px;--vv-shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--vv-shadow-sm: 0 2px 4px rgba(0, 0, 0, .06);--vv-shadow-md: 0 4px 8px rgba(0, 0, 0, .08);--vv-shadow-lg: 0 8px 16px rgba(0, 0, 0, .1);--vv-shadow-xl: 0 16px 32px rgba(0, 0, 0, .12);--vv-shadow-card: 0 4px 12px rgba(0, 0, 0, .08);--vv-shadow-panel: 0 8px 24px rgba(0, 0, 0, .12);--vv-shadow-float: 0 12px 40px rgba(0, 0, 0, .15);--vv-transition-fast: .15s ease;--vv-transition-normal: .2s ease;--vv-transition-slow: .3s ease;--vv-transition-smooth: .3s cubic-bezier(.4, 0, .2, 1);--vv-z-base: 0;--vv-z-dropdown: 100;--vv-z-sticky: 200;--vv-z-fixed: 300;--vv-z-fab: 400;--vv-z-sidebar: 500;--vv-z-modal-backdrop: 600;--vv-z-modal: 700;--vv-z-popover: 800;--vv-z-toast: 900;--vv-z-tooltip: 1000;--vv-sidebar-width: 72px;--vv-sidebar-width-expanded: 240px;--vv-tab-bar-height: 64px;--vv-panel-width: 360px;--vv-panel-width-lg: 420px;--vv-card-padding: var(--vv-space-4);--vv-card-radius: var(--vv-radius-xl);--vv-card-shadow: var(--vv-shadow-card);--vv-button-height-sm: 32px;--vv-button-height-md: 40px;--vv-button-height-lg: 48px;--vv-input-height: 44px;--vv-input-radius: var(--vv-radius-lg);--vv-fab-size: 48px;--vv-fab-size-sm: 40px}.vv-editor-layout{position:relative;width:100vw;height:100vh;overflow:hidden;font-family:var(--vv-font-family);background:var(--vv-bg-secondary);--vv-header-height: 60px}.vv-editor-layout__map{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--vv-z-base)}.vv-editor-layout__viewport-toolbar{position:absolute;top:calc(var(--vv-header-height) + 12px);right:12px;z-index:var(--vv-z-modal);pointer-events:none}.vv-viewport-toolbar{display:flex;flex-direction:row;align-items:center;gap:8px;pointer-events:auto;background:#fffc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:4px;border-radius:12px;border:1px solid rgba(0,0,0,.08);box-shadow:0 4px 12px #00000014}.vv-viewport-toolbar__group{display:flex;flex-direction:row;gap:4px}.vv-viewport-toolbar__separator{width:1px;height:24px;background:#0000001a;margin:0 4px}.vv-viewport-toolbar--no-selection .vv-viewport-toolbar__group:first-child{opacity:.6}.vv-viewport-toggle{position:relative;width:32px;height:32px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--vv-color-gray-500);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.vv-viewport-toggle:hover{background:#0000000a;color:var(--vv-color-gray-700)}.vv-viewport-toggle--active{color:var(--vv-color-primary);background:var(--vv-color-primary-light)}.vv-viewport-toggle--active:hover{background:var(--vv-color-primary-light);opacity:.8}.vv-editor-layout__ui{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--vv-z-modal);pointer-events:none}.vv-editor-layout__ui>*{pointer-events:auto}/*! tailwindcss v4.0.14 | MIT License | https://tailwindcss.com */@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(.971 .013 17.38);--color-red-100:oklch(.936 .032 17.717);--color-red-500:oklch(.637 .237 25.331);--color-red-700:oklch(.505 .213 27.518);--color-emerald-500:oklch(.696 .17 162.48);--color-blue-50:oklch(.97 .014 254.604);--color-rose-50:oklch(.969 .015 12.422);--color-rose-200:oklch(.892 .058 10.001);--color-rose-500:oklch(.645 .246 16.439);--color-rose-700:oklch(.514 .222 16.935);--color-rose-800:oklch(.455 .188 13.697);--color-gray-50:oklch(.985 .002 247.839);--color-gray-100:oklch(.967 .003 264.542);--color-gray-200:oklch(.928 .006 264.531);--color-gray-300:oklch(.872 .01 258.338);--color-gray-400:oklch(.707 .022 261.325);--color-gray-500:oklch(.551 .027 264.364);--color-gray-700:oklch(.373 .034 259.733);--color-gray-800:oklch(.278 .033 256.848);--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wider:.05em;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-font-feature-settings:var(--font-sans--font-feature-settings);--default-font-variation-settings:var(--font-sans--font-variation-settings);--default-mono-font-family:var(--font-mono);--default-mono-font-feature-settings:var(--font-mono--font-feature-settings);--default-mono-font-variation-settings:var(--font-mono--font-variation-settings)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1;color:color-mix(in oklab,currentColor 50%,transparent)}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:calc(var(--spacing)*0)}.top-1\/2{top:50%}.right-3{right:calc(var(--spacing)*3)}.left-0{left:calc(var(--spacing)*0)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-6{margin-top:calc(var(--spacing)*6)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.block{display:block}.flex{display:flex}.grid{display:grid}.inline{display:inline}.table{display:table}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-7{height:calc(var(--spacing)*7)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-14{height:calc(var(--spacing)*14)}.h-20{height:calc(var(--spacing)*20)}.max-h-0{max-height:calc(var(--spacing)*0)}.max-h-20{max-height:calc(var(--spacing)*20)}.max-h-32{max-height:calc(var(--spacing)*32)}.min-h-screen{min-height:100vh}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-7{width:calc(var(--spacing)*7)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-14{width:calc(var(--spacing)*14)}.w-20{width:calc(var(--spacing)*20)}.w-full{width:100%}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.flex-shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x)var(--tw-rotate-y)var(--tw-rotate-z)var(--tw-skew-x)var(--tw-skew-y)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*5)*calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-gray-200{border-color:var(--color-gray-200)}.border-red-100{border-color:var(--color-red-100)}.border-rose-200{border-color:var(--color-rose-200)}.border-rose-700{border-color:var(--color-rose-700)}.border-t-transparent{border-top-color:#0000}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.bg-rose-700{background-color:var(--color-rose-700)}.bg-white{background-color:var(--color-white)}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-rose-50{--tw-gradient-from:var(--color-rose-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.via-white{--tw-gradient-via:var(--color-white);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-blue-50{--tw-gradient-to:var(--color-blue-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.p-4{padding:calc(var(--spacing)*4)}.p-8{padding:calc(var(--spacing)*8)}.p-10{padding:calc(var(--spacing)*10)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-3\.5{padding-block:calc(var(--spacing)*3.5)}.py-8{padding-block:calc(var(--spacing)*8)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-all{word-break:break-all}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-red-500{color:var(--color-red-500)}.text-red-700{color:var(--color-red-700)}.text-rose-700{color:var(--color-rose-700)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentColor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-emerald-500\/30{--tw-shadow-color:color-mix(in oklab,var(--color-emerald-500)30%,transparent)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.hover\:border-gray-300:hover{border-color:var(--color-gray-300)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-rose-800:hover{background-color:var(--color-rose-800)}}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentColor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-rose-500:focus{--tw-ring-color:var(--color-rose-500)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}}:root{--vv-color-primary:#4f6bf6;--vv-color-primary-hover:#3d56d4;--vv-color-primary-light:#eef1fe;--vv-color-accent:#2a404e;--vv-color-accent-hover:#1e3340;--vv-color-rose:#b0064a;--vv-color-success:#22c55e;--vv-color-success-light:#dcfce7;--vv-color-warning:#f59e0b;--vv-color-warning-light:#fef3c7;--vv-color-error:#ef4444;--vv-color-error-light:#fee2e2;--vv-color-info:#3b82f6;--vv-color-info-light:#dbeafe;--vv-color-open:#22c55e;--vv-color-closed:#ef4444;--vv-color-busy:#f59e0b;--vv-color-available:#22c55e;--vv-color-cleaning:#8b5cf6;--vv-color-cleaning-light:#ede9fe;--vv-color-white:#fff;--vv-color-gray-50:#f9fafb;--vv-color-gray-100:#f3f4f6;--vv-color-gray-200:#e5e7eb;--vv-color-gray-300:#d1d5db;--vv-color-gray-400:#9ca3af;--vv-color-gray-500:#6b7280;--vv-color-gray-600:#4b5563;--vv-color-gray-700:#374151;--vv-color-gray-800:#1f2937;--vv-color-gray-900:#111827;--vv-bg-primary:#fff;--vv-bg-secondary:#f9fafb;--vv-bg-overlay:#00000080;--vv-bg-gradient-start:#fff;--vv-bg-gradient-end:#f0f5ff;--vv-category-music:#7c3aed;--vv-category-tech:#3b82f6;--vv-category-kids:#f97316;--vv-category-wellness:#14b8a6;--vv-category-food:#ef4444;--vv-category-shopping:#ec4899;--vv-badge-discount:#ef4444;--vv-badge-bogo:#22c55e;--vv-badge-trade:#3b82f6;--vv-badge-limited:#f59e0b;--vv-font-family:"Open Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--vv-font-size-xs:.75rem;--vv-font-size-sm:.875rem;--vv-font-size-base:1rem;--vv-font-size-lg:1.125rem;--vv-font-size-xl:1.25rem;--vv-font-size-2xl:1.5rem;--vv-font-size-3xl:1.875rem;--vv-font-size-4xl:2.25rem;--vv-font-weight-regular:400;--vv-font-weight-medium:500;--vv-font-weight-semibold:600;--vv-font-weight-bold:700;--vv-line-height-tight:1.25;--vv-line-height-normal:1.5;--vv-line-height-relaxed:1.625;--vv-space-0:0;--vv-space-1:.25rem;--vv-space-2:.5rem;--vv-space-3:.75rem;--vv-space-4:1rem;--vv-space-5:1.25rem;--vv-space-6:1.5rem;--vv-space-8:2rem;--vv-space-10:2.5rem;--vv-space-12:3rem;--vv-space-16:4rem;--vv-radius-sm:.25rem;--vv-radius-md:.5rem;--vv-radius-lg:.75rem;--vv-radius-xl:1rem;--vv-radius-2xl:1.5rem;--vv-radius-full:9999px;--vv-shadow-xs:0 1px 2px #0000000d;--vv-shadow-sm:0 2px 4px #0000000f;--vv-shadow-md:0 4px 8px #00000014;--vv-shadow-lg:0 8px 16px #0000001a;--vv-shadow-xl:0 16px 32px #0000001f;--vv-shadow-card:0 4px 12px #00000014;--vv-shadow-panel:0 8px 24px #0000001f;--vv-shadow-float:0 12px 40px #00000026;--vv-transition-fast:.15s ease;--vv-transition-normal:.2s ease;--vv-transition-slow:.3s ease;--vv-transition-smooth:.3s cubic-bezier(.4,0,.2,1);--vv-z-base:0;--vv-z-dropdown:100;--vv-z-sticky:200;--vv-z-fixed:300;--vv-z-fab:400;--vv-z-sidebar:500;--vv-z-modal-backdrop:600;--vv-z-modal:700;--vv-z-popover:800;--vv-z-toast:900;--vv-z-tooltip:1000;--vv-sidebar-width:72px;--vv-sidebar-width-expanded:240px;--vv-tab-bar-height:64px;--vv-panel-width:360px;--vv-panel-width-lg:420px;--vv-card-padding:var(--vv-space-4);--vv-card-radius:var(--vv-radius-xl);--vv-card-shadow:var(--vv-shadow-card);--vv-button-height-sm:32px;--vv-button-height-md:40px;--vv-button-height-lg:48px;--vv-input-height:44px;--vv-input-radius:var(--vv-radius-lg);--vv-fab-size:48px;--vv-fab-size-sm:40px}[data-tooltip]{position:relative}[data-tooltip]:before{content:attr(data-tooltip);white-space:normal;overflow-wrap:break-word;background:var(--vv-color-gray-900);color:#fff;width:max-content;max-width:300px;font-size:11px;font-weight:500;font-family:var(--vv-font-family);pointer-events:none;opacity:0;z-index:var(--vv-z-tooltip,1000);text-align:center;border-radius:6px;padding:6px 12px;line-height:1.4;transition:opacity .1s,transform .1s;position:absolute;box-shadow:0 3px 10px #0000004d}[data-tooltip]:after{content:"";pointer-events:none;opacity:0;z-index:var(--vv-z-tooltip,1000);border:4px solid #0000;transition:opacity .1s;position:absolute}[data-tooltip]:hover:not(:disabled):before,[data-tooltip]:hover:not(:disabled):after{opacity:1}[data-tooltip]:not([data-tooltip-position]):before,[data-tooltip][data-tooltip-position=left]:before{top:50%;right:calc(100% + 8px);transform:translateY(-50%)translate(4px)}[data-tooltip]:not([data-tooltip-position]):after,[data-tooltip][data-tooltip-position=left]:after{border-left-color:var(--vv-color-gray-900);top:50%;right:calc(100% + 2px);transform:translateY(-50%)}[data-tooltip]:not([data-tooltip-position]):hover:before,[data-tooltip][data-tooltip-position=left]:hover:before{transform:translateY(-50%)translate(0)}[data-tooltip][data-tooltip-position=right]:before{top:50%;left:calc(100% + 8px);transform:translateY(-50%)translate(-4px)}[data-tooltip][data-tooltip-position=right]:after{border-right-color:var(--vv-color-gray-900);top:50%;left:calc(100% + 2px);transform:translateY(-50%)}[data-tooltip][data-tooltip-position=right]:hover:before{transform:translateY(-50%)translate(0)}[data-tooltip][data-tooltip-position=top]:before{bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(4px)}[data-tooltip][data-tooltip-position=top]:after{border-top-color:var(--vv-color-gray-900);bottom:calc(100% + 2px);left:50%;transform:translate(-50%)}[data-tooltip][data-tooltip-position=top]:hover:before{transform:translate(-50%)translateY(0)}[data-tooltip][data-tooltip-position=bottom]:before{top:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(-4px)}[data-tooltip][data-tooltip-position=bottom]:after{border-bottom-color:var(--vv-color-gray-900);top:calc(100% + 2px);left:50%;transform:translate(-50%)}[data-tooltip][data-tooltip-position=bottom]:hover:before{transform:translate(-50%)translateY(0)}[data-tooltip][data-tooltip-align=end]:before{left:auto;right:0;transform:translateY(-4px)}[data-tooltip][data-tooltip-align=end]:after{left:auto;right:14px;transform:none}[data-tooltip][data-tooltip-align=end]:hover:before{transform:translateY(0)}[data-tooltip=""]:before,[data-tooltip=""]:after{display:none!important}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes bounce-in{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.1)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes check-draw{0%{stroke-dashoffset:24px}to{stroke-dashoffset:0}}.animate-fade-in{animation:.3s ease-out fade-in}.animate-scale-in{animation:.3s ease-out scale-in}.animate-bounce-in{animation:.5s ease-out bounce-in}.animate-check-draw{stroke-dasharray:24;stroke-dashoffset:24px;animation:.4s ease-out .2s forwards check-draw}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false;initial-value:rotateX(0)}@property --tw-rotate-y{syntax:"*";inherits:false;initial-value:rotateY(0)}@property --tw-rotate-z{syntax:"*";inherits:false;initial-value:rotateZ(0)}@property --tw-skew-x{syntax:"*";inherits:false;initial-value:skewX(0)}@property --tw-skew-y{syntax:"*";inherits:false;initial-value:skewY(0)}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
