.zy-modal-root{z-index:var(--zy-z-modal);padding:var(--zy-space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.zy-modal__backdrop{background:var(--zy-overlay);position:absolute;inset:0}.zy-modal{background:var(--zy-card);border-radius:var(--zy-radius-lg);box-shadow:var(--zy-shadow-lg);outline:none;flex-direction:column;width:100%;max-height:min(90vh,720px);display:flex;position:relative}.zy-modal--sm{max-width:400px}.zy-modal--md{max-width:520px}.zy-modal--lg{max-width:720px}.zy-modal:focus-visible{box-shadow:var(--zy-shadow-lg), var(--zy-focus-ring)}.zy-modal__header{justify-content:space-between;align-items:center;gap:var(--zy-space-3);padding:var(--zy-space-4) var(--zy-space-5);border-bottom:1px solid var(--zy-line);display:flex}.zy-modal__title{font-size:var(--zy-text-lg);font-weight:var(--zy-weight-semibold);margin:0}.zy-modal__close{border-radius:var(--zy-radius-sm);width:32px;height:32px;color:var(--zy-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.zy-modal__close:hover{background:var(--zy-bg);color:var(--zy-text)}.zy-modal__close:focus-visible{box-shadow:var(--zy-focus-ring)}.zy-modal__body{padding:var(--zy-space-5);font-size:var(--zy-text-sm);line-height:var(--zy-leading-relaxed);color:var(--zy-text-secondary);overflow:auto}.zy-modal__footer{justify-content:flex-end;gap:var(--zy-space-2);padding:var(--zy-space-3) var(--zy-space-5) var(--zy-space-4);border-top:1px solid var(--zy-line);display:flex}
.zy-dropdown{display:inline-block;position:relative}.zy-dropdown__trigger{min-height:var(--zy-control-md);padding:0 var(--zy-space-3);border:1px solid var(--zy-line);border-radius:var(--zy-radius-md);background:var(--zy-card);color:var(--zy-text);font-size:var(--zy-text-sm);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.zy-dropdown__trigger:hover{border-color:var(--zy-line-strong);background:var(--zy-bg)}.zy-dropdown__trigger:focus-visible{box-shadow:var(--zy-focus-ring)}.zy-dropdown__menu{z-index:var(--zy-z-dropdown);min-width:160px;padding:var(--zy-space-1);background:var(--zy-card);border:1px solid var(--zy-line);border-radius:var(--zy-radius-md);box-shadow:var(--zy-shadow-md);margin:0;list-style:none;position:absolute;top:calc(100% + 4px)}.zy-dropdown__menu--start{left:0}.zy-dropdown__menu--end{right:0}.zy-dropdown__item{text-align:left;width:100%;padding:var(--zy-space-2) var(--zy-space-3);border-radius:var(--zy-radius-sm);color:var(--zy-text);font-size:var(--zy-text-sm);cursor:pointer;background:0 0;border:none;display:block}.zy-dropdown__item:hover:not(:disabled){background:var(--zy-brand-subtle);color:var(--zy-brand)}.zy-dropdown__item:focus-visible{box-shadow:var(--zy-focus-ring)}.zy-dropdown__item--danger{color:var(--zy-danger)}.zy-dropdown__item--danger:hover:not(:disabled){background:var(--zy-danger-bg);color:var(--zy-danger)}.zy-dropdown__item:disabled{color:var(--zy-text-disabled);cursor:not-allowed}
.zy-tabs__list{gap:var(--zy-space-1);border-bottom:1px solid var(--zy-line);display:flex}.zy-tabs__tab{height:40px;padding:0 var(--zy-space-4);color:var(--zy-muted);font-size:var(--zy-text-sm);font-weight:var(--zy-weight-medium);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;position:relative}.zy-tabs__tab:hover:not(:disabled){color:var(--zy-brand)}.zy-tabs__tab--active{color:var(--zy-brand);border-bottom-color:var(--zy-brand)}.zy-tabs__tab:focus-visible{box-shadow:var(--zy-focus-ring);border-radius:var(--zy-radius-sm) var(--zy-radius-sm) 0 0}.zy-tabs__tab:disabled{opacity:.45;cursor:not-allowed}.zy-tabs__panel{padding:var(--zy-space-4) 0;font-size:var(--zy-text-sm);color:var(--zy-text-secondary);line-height:var(--zy-leading-relaxed)}
.zy-pagination{align-items:center;gap:var(--zy-space-1);flex-wrap:wrap;display:flex}.zy-pagination__btn{min-width:36px;height:36px;padding:0 var(--zy-space-2);border:1px solid var(--zy-line);border-radius:var(--zy-radius-md);background:var(--zy-card);color:var(--zy-text);font-size:var(--zy-text-sm);cursor:pointer}.zy-pagination__btn:hover:not(:disabled):not(.zy-pagination__btn--active){border-color:var(--zy-brand-light);color:var(--zy-brand)}.zy-pagination__btn--active{background:var(--zy-brand);border-color:var(--zy-brand);color:var(--zy-text-inverse);font-weight:var(--zy-weight-medium)}.zy-pagination__btn:focus-visible{box-shadow:var(--zy-focus-ring)}.zy-pagination__btn:disabled{opacity:.45;cursor:not-allowed}.zy-pagination__ellipsis{text-align:center;width:28px;color:var(--zy-muted)}
.zy-state{text-align:center;padding:var(--zy-space-10) var(--zy-space-6);align-items:center;gap:var(--zy-space-2);flex-direction:column;display:flex}.zy-state__icon{border-radius:var(--zy-radius-lg);background:var(--zy-brand-subtle);width:56px;height:56px;color:var(--zy-brand);margin-bottom:var(--zy-space-2);justify-content:center;align-items:center;display:inline-flex}.zy-state__icon--danger{background:var(--zy-danger-bg);color:var(--zy-danger)}.zy-state__title{font-size:var(--zy-text-lg);font-weight:var(--zy-weight-semibold);color:var(--zy-text);margin:0}.zy-state__desc{margin:0 0 var(--zy-space-3);max-width:360px;font-size:var(--zy-text-sm);color:var(--zy-muted);line-height:var(--zy-leading-relaxed)}
.zy-spinner{align-items:center;gap:var(--zy-space-2);color:var(--zy-brand);font-size:var(--zy-text-sm);display:inline-flex}.zy-spinner__circle{border:2px solid var(--zy-brand-subtle);border-top-color:var(--zy-brand);border-radius:50%;animation:.7s linear infinite zy-spin}.zy-spinner--sm .zy-spinner__circle{width:14px;height:14px}.zy-spinner--md .zy-spinner__circle{width:20px;height:20px}.zy-spinner--lg .zy-spinner__circle{width:28px;height:28px}.zy-spinner__text{color:var(--zy-muted)}@keyframes zy-spin{to{transform:rotate(360deg)}}
