.ui-card{background-color:var(--card);color:var(--card-foreground);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-normal)var(--ease-default),border-color var(--duration-normal)var(--ease-default);overflow:hidden}.ui-card:focus-within{border-color:var(--border-hover)}.ui-card--flat{box-shadow:none;border-color:var(--border)}.ui-card--bordered{box-shadow:none;border:1px solid var(--border)}.ui-card__header{padding:var(--space-5)var(--space-6);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;display:flex}.ui-card__title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary);line-height:var(--leading-tight);margin:0}.ui-card__content{padding:var(--space-5)var(--space-6)}.ui-card__footer{padding:var(--space-4)var(--space-6);border-top:1px solid var(--border);background-color:var(--surface-0);justify-content:flex-end;align-items:center;gap:.75rem;display:flex}@media (max-width:640px){.ui-card__header,.ui-card__content,.ui-card__footer{padding:1rem}}
.ui-confirm-overlay{z-index:var(--z-popover,9999);background:var(--overlay-bg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn var(--duration-fast)var(--ease-default);padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ui-confirm{text-align:center;align-items:center;gap:var(--space-3);padding:var(--space-8)var(--space-7)var(--space-6);background:var(--card);border-radius:var(--radius-2xl);width:100%;max-width:24rem;box-shadow:var(--shadow-xl);animation:scaleIn var(--duration-normal)var(--ease-default);flex-direction:column;display:flex}.ui-confirm__icon-circle{width:3.5rem;height:3.5rem;margin-bottom:var(--space-1);border-radius:50%;justify-content:center;align-items:center;display:flex}.ui-confirm__icon-circle--danger{background:var(--danger-light);color:var(--danger)}.ui-confirm__icon-circle--warning{background:var(--warning-light);color:var(--warning)}.ui-confirm__icon-circle--info{background:var(--primary-light);color:var(--primary)}.ui-confirm__title{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--text-primary);letter-spacing:var(--tracking-tight);margin:0}.ui-confirm__description{font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-normal);max-width:20rem;margin:0}.ui-confirm__actions{align-items:center;gap:var(--space-2);width:100%;margin-top:var(--space-2);display:flex}.ui-confirm__btn{justify-content:center;align-items:center;gap:var(--space-1-5);padding:var(--space-2-5)var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:all var(--duration-fast)var(--ease-default);border:none;flex:1;display:inline-flex}.ui-confirm__btn:disabled{opacity:.6;cursor:not-allowed}.ui-confirm__btn--cancel{background:var(--muted);color:var(--text-primary)}.ui-confirm__btn--cancel:hover:not(:disabled){background:var(--border)}.ui-confirm__btn--danger{background:var(--danger);color:var(--danger-fg)}.ui-confirm__btn--danger:hover:not(:disabled){background:var(--danger-hover)}.ui-confirm__btn--warning{background:var(--warning);color:var(--warning-fg)}.ui-confirm__btn--warning:hover:not(:disabled){background:var(--warning-hover)}.ui-confirm__btn--info{background:var(--primary);color:var(--primary-fg)}.ui-confirm__btn--info:hover:not(:disabled){background:var(--primary-hover)}.ui-confirm__btn-spinner{animation:.8s linear infinite spin}@media (max-width:768px){.ui-confirm-overlay{align-items:flex-end;padding:0}.ui-confirm{border-radius:var(--bottom-sheet-radius)var(--bottom-sheet-radius)0 0;max-width:100%;padding:var(--space-2)var(--space-5)calc(var(--space-6) + var(--safe-bottom));animation:slideUpSheet var(--duration-slow)cubic-bezier(.32,.72,0,1)}.ui-confirm:before{content:"";background:var(--border-hover);border-radius:var(--radius-full);width:2rem;height:.25rem;margin:var(--space-2)auto var(--space-4);display:block}.ui-confirm__btn{min-height:var(--touch-target-comfortable);font-size:var(--text-md)}}[data-theme=dark] .ui-confirm{background:var(--surface-1);box-shadow:var(--shadow-xl)}[data-theme=dark] .ui-confirm__title{color:var(--text-primary)}[data-theme=dark] .ui-confirm__icon-circle--danger{background:var(--danger-light)}[data-theme=dark] .ui-confirm__icon-circle--warning{background:var(--warning-light)}[data-theme=dark] .ui-confirm__icon-circle--info{background:var(--primary-light)}[data-theme=dark] .ui-confirm__btn--cancel{background:var(--surface-2);color:var(--text-primary)}[data-theme=dark] .ui-confirm__btn--cancel:hover:not(:disabled){background:var(--surface-3)}[data-theme=blue] .ui-confirm{background:var(--card);box-shadow:var(--shadow-xl)}[data-theme=blue] .ui-confirm__title{color:var(--text-primary)}[data-theme=blue] .ui-confirm__icon-circle--danger{background:var(--danger-light)}[data-theme=blue] .ui-confirm__icon-circle--warning{background:var(--warning-light)}[data-theme=blue] .ui-confirm__icon-circle--info{background:var(--primary-light)}[data-theme=blue] .ui-confirm__btn--cancel{background:var(--surface-2);color:var(--text-primary)}[data-theme=blue] .ui-confirm__btn--cancel:hover:not(:disabled){background:var(--surface-3)}
.ui-datatable-wrapper{border:var(--border-width)solid var(--border);border-radius:var(--radius-lg);background-color:var(--card);width:100%;box-shadow:var(--shadow-xs);overflow:hidden}.ui-datatable-container{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.ui-datatable{border-collapse:collapse;text-align:left;width:100%;font-family:var(--font-sans);font-size:var(--text-sm);color:var(--foreground)}.ui-datatable thead{background-color:var(--muted);border-bottom:var(--border-width)solid var(--border)}.ui-datatable th{padding:var(--space-3)var(--space-4);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-table-header);letter-spacing:var(--tracking-caps);text-transform:uppercase;white-space:nowrap}.ui-datatable tbody tr{border-bottom:var(--border-width)solid var(--border);transition:background-color var(--duration-fast)var(--ease-default)}.ui-datatable tbody tr:last-child{border-bottom:none}.ui-datatable tbody td{padding:var(--space-3)var(--space-4);vertical-align:middle;line-height:var(--leading-normal)}.ui-datatable-row--clickable{cursor:pointer}.ui-datatable-row--clickable:hover{background-color:var(--primary-light)}.ui-datatable-empty,.ui-datatable-loading{text-align:center;padding:var(--space-8)var(--space-4);color:var(--text-muted)}
.ui-skeleton{background-color:var(--muted);border-radius:var(--radius-sm);animation:2s cubic-bezier(.4,0,.6,1) infinite ui-skeleton-pulse}.ui-skeleton--text{border-radius:var(--radius-xs);height:.8em}.ui-skeleton--circle{border-radius:var(--radius-full)}@keyframes ui-skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}@media (prefers-reduced-motion:reduce){.ui-skeleton{animation:none}}
.ui-dialog-overlay{background-color:var(--overlay-bg,#0f172a66);z-index:var(--z-modal,1000);padding:var(--space-4);-webkit-backdrop-filter:blur(3px);animation:fadeIn var(--duration-normal)var(--ease-default);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ui-dialog-content{background-color:var(--card);color:var(--card-foreground);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-height:calc(100vh - 2rem);animation:slideUp var(--duration-normal)var(--ease-spring);flex-direction:column;display:flex;position:relative;overflow:hidden}.ui-dialog--sm{max-width:400px}.ui-dialog--md{max-width:500px}.ui-dialog--lg{max-width:700px}.ui-dialog--xl{max-width:900px}.ui-dialog--full{border-radius:0;max-width:100%;height:100vh;max-height:100vh}.ui-dialog-header{padding:var(--space-5)var(--space-6)var(--space-4);border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.ui-dialog-header-content{flex:1}.ui-dialog-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary);line-height:var(--leading-tight);margin:0}.ui-dialog-description{margin:var(--space-1)0 0 0;font-size:var(--text-sm);color:var(--text-muted)}.ui-dialog-close{color:var(--text-muted);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);transition:background-color var(--duration-fast)ease,color var(--duration-fast)ease;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.ui-dialog-close:hover{background-color:var(--hover-bg);color:var(--text-primary)}.ui-dialog-close:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.ui-dialog-footer{padding:var(--space-4)var(--space-6);border-top:1px solid var(--border);background-color:var(--surface-0);justify-content:flex-end;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ui-dialog-body{padding:var(--space-4)var(--space-6);flex:1;min-height:0;overflow-y:auto}@media (max-width:640px){.ui-dialog-overlay{align-items:flex-end;padding:0}.ui-dialog-content{border-radius:var(--radius-xl)var(--radius-xl)0 0;max-height:min(88dvh,44rem)}.ui-dialog-header,.ui-dialog-footer,.ui-dialog-body{padding-inline:var(--space-4)}}
.ui-form-error-summary{gap:var(--space-2);padding:var(--space-3)var(--space-4);background:var(--danger-light);border:var(--border-width)solid var(--danger-soft);border-left:3px solid var(--danger);border-radius:var(--radius-md);color:var(--danger);flex-direction:column;display:flex}.ui-form-error-summary__header{align-items:center;gap:var(--space-2);display:flex}.ui-form-error-summary__icon{flex-shrink:0}.ui-form-error-summary__title{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--danger)}.ui-form-error-summary__list{gap:var(--space-1);flex-direction:column;margin:0;padding-inline-start:var(--space-6);display:flex}.ui-form-error-summary__item{font-size:var(--text-sm);line-height:var(--leading-snug);color:var(--text-secondary)}
.ui-page-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5)0 var(--space-4);flex-wrap:wrap;display:flex}.ui-page-header__left{align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.ui-page-header__back{border-radius:var(--radius-lg);border:1.5px solid var(--border);background:var(--card);width:2.5rem;height:2.5rem;color:var(--text-primary);cursor:pointer;transition:all var(--duration-fast)var(--ease-default);flex-shrink:0;justify-content:center;align-items:center;display:flex}.ui-page-header__back:hover{background:var(--hover-bg);border-color:var(--primary);color:var(--primary);transform:translate(-2px)}.ui-page-header__titles{min-width:0}.ui-page-header__title{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--text-primary);letter-spacing:var(--tracking-tighter);line-height:var(--leading-snug);margin:0}.ui-page-header__subtitle{margin:var(--space-0-5)0 0 0;font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-normal)}.ui-page-header__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;display:flex}@media (max-width:640px){.ui-page-header{padding:var(--space-4)0}.ui-page-header__title{font-size:var(--text-lg)}.ui-page-header__back{width:2.25rem;height:2.25rem}.ui-page-header__actions{justify-content:flex-end;width:100%}}[data-theme=dark] .ui-page-header__back{background:var(--card);border-color:var(--border);color:var(--text-primary)}[data-theme=dark] .ui-page-header__back:hover{background:var(--hover-bg);border-color:var(--primary);color:var(--primary)}[data-theme=dark] .ui-page-header__title{color:var(--text-primary)}[data-theme=dark] .ui-page-header__subtitle{color:var(--text-muted)}[data-theme=blue] .ui-page-header__back{background:var(--card);border-color:var(--border);color:var(--text-primary)}[data-theme=blue] .ui-page-header__back:hover{background:var(--hover-bg);border-color:var(--primary);color:var(--primary)}[data-theme=blue] .ui-page-header__title{color:var(--text-primary)}[data-theme=blue] .ui-page-header__subtitle{color:var(--text-muted)}
.ui-scroll-strip{min-width:0;position:relative}.ui-scroll-strip__scroller{align-items:center;gap:var(--space-2);scrollbar-width:none;-webkit-overflow-scrolling:touch;display:flex;overflow:auto hidden}.ui-scroll-strip__scroller::-webkit-scrollbar{display:none}.ui-scroll-strip__scroller:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.ui-scroll-strip:before,.ui-scroll-strip:after{content:"";pointer-events:none;width:2rem;z-index:var(--z-raised);opacity:0;transition:opacity var(--duration-normal)var(--ease-default);position:absolute;top:0;bottom:0}.ui-scroll-strip:before{background:linear-gradient(to right,var(--background)0%,transparent 100%);left:0}.ui-scroll-strip:after{background:linear-gradient(to left,var(--background)0%,transparent 100%);right:0}.ui-scroll-strip--can-left:before,.ui-scroll-strip--can-right:after{opacity:1}@media (prefers-reduced-motion:reduce){.ui-scroll-strip__scroller{scroll-behavior:auto}}
.ui-searchable-select-wrapper{position:relative}.ui-searchable-select-wrapper--full{width:100%}.ui-searchable-select-label{color:var(--text-primary);margin-bottom:.4rem;font-size:.875rem;font-weight:500;display:block}.ui-searchable-select-container{position:relative}.ui-searchable-select-trigger{border:1px solid var(--border-color);background:var(--card-bg);width:100%;min-height:42px;color:var(--text-primary);cursor:pointer;font:inherit;text-align:left;border-radius:.375rem;justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem .75rem;display:flex}.ui-searchable-select-trigger:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.ui-searchable-select-placeholder{color:var(--gray-500)}.ui-searchable-select-container--error .ui-searchable-select-trigger{border-color:var(--danger)}.ui-searchable-select-container--disabled .ui-searchable-select-trigger{cursor:not-allowed;opacity:.6}.ui-searchable-select-clear{width:1.25rem;height:1.25rem;color:var(--gray-500);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:2.2rem;transform:translateY(-50%)}.ui-searchable-select-clear:hover{background:var(--surface-2);color:var(--text-primary)}.ui-searchable-select-menu{z-index:30;border:1px solid var(--border-color);background:var(--card-bg);border-radius:.5rem;width:100%;min-width:13rem;margin-top:.35rem;position:absolute;overflow:hidden;box-shadow:0 12px 28px #0f172a2e}.ui-searchable-select-search{border-bottom:1px solid var(--border);color:var(--gray-500);align-items:center;gap:.45rem;padding:.6rem;display:flex}.ui-searchable-select-search input{width:100%;color:inherit;font:inherit;background:0 0;border:0;outline:0}.ui-searchable-select-options{max-height:14rem;padding:.25rem;overflow-y:auto}.ui-searchable-select-option{width:100%;color:var(--text-primary);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:.3rem;justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem .6rem;display:flex}.ui-searchable-select-option:hover,.ui-searchable-select-option[aria-selected=true]{background:var(--primary-light);color:var(--primary-hover)}.ui-searchable-select-option:disabled{cursor:not-allowed;opacity:.5}.ui-searchable-select-empty{color:var(--gray-500);text-align:center;margin:0;padding:.75rem;font-size:.875rem}.ui-searchable-select-message{color:var(--danger);margin-top:.35rem;font-size:.75rem;display:block}
.ui-select-wrapper{gap:var(--space-1-5);font-family:var(--font-sans);flex-direction:column;display:flex}.ui-select-wrapper--full{width:100%}.ui-select-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary);align-items:center;gap:var(--space-1);display:flex}.ui-select-required{color:var(--danger)}.ui-select-container{align-items:center;width:100%;display:flex;position:relative}.ui-select{width:100%;height:var(--control-height-md);padding:0 var(--space-10)0 var(--space-3);background-color:var(--input-bg,var(--card));border:var(--border-width)solid var(--border);border-radius:var(--control-radius);color:var(--foreground);font-size:var(--text-sm);appearance:none;transition:border-color var(--duration-fast)var(--ease-default),box-shadow var(--duration-fast)var(--ease-default),background-color var(--duration-fast)var(--ease-default);cursor:pointer}.ui-select:hover:not(:disabled){border-color:var(--border-hover)}.ui-select:focus-visible{border-color:var(--primary);box-shadow:var(--shadow-focus);outline:none}.ui-select-icon{color:var(--text-muted);width:var(--space-10);pointer-events:none;justify-content:center;align-items:center;height:100%;display:flex;position:absolute;right:0}.ui-select-container--error .ui-select{border-color:var(--danger)}.ui-select-container--error .ui-select:focus-visible{box-shadow:var(--shadow-focus-danger)}.ui-select-container--error .ui-select-icon{color:var(--danger)}.ui-select-container--disabled .ui-select{background-color:var(--muted);color:var(--text-disabled);border-color:var(--border);cursor:not-allowed}.ui-select-container--disabled .ui-select-icon{color:var(--text-disabled)}.ui-select-message{font-size:var(--text-xs);display:block}.ui-select-message--hint{color:var(--text-muted)}.ui-select-message--error{color:var(--danger);font-weight:var(--weight-medium)}
.skip-nav-link{z-index:10000;background-color:var(--primary);color:var(--primary-fg);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);transition:top var(--duration-normal)var(--ease-default),opacity var(--duration-normal)var(--ease-default);opacity:0;padding:.75rem 1.5rem;text-decoration:none;position:fixed;top:-100%;left:50%;transform:translate(-50%)}.skip-nav-link:focus{opacity:1;outline:2px solid var(--primary);outline-offset:2px;top:1rem}
.ui-spinner{justify-content:center;align-items:center;gap:var(--space-2);flex-direction:column;display:inline-flex}.ui-spinner__icon{color:var(--primary);animation:.8s linear infinite spin}.ui-spinner--sm .ui-spinner__icon{color:var(--text-muted)}.ui-spinner__label{font-size:var(--text-sm);color:var(--text-muted);font-weight:var(--weight-medium);letter-spacing:-.01em}.ui-spinner--sm .ui-spinner__label{font-size:var(--text-xs)}.ui-spinner--lg .ui-spinner__label{font-size:var(--text-base)}.ui-spinner__fullpage{justify-content:center;align-items:center;width:100%;min-height:50vh;display:flex}[data-theme=dark] .ui-spinner__icon{color:var(--primary)}[data-theme=dark] .ui-spinner--sm .ui-spinner__icon,[data-theme=dark] .ui-spinner__label{color:var(--text-muted)}[data-theme=blue] .ui-spinner__icon{color:var(--primary)}[data-theme=blue] .ui-spinner__label{color:var(--text-muted)}
.ui-badge{align-items:center;gap:var(--space-1);font-weight:var(--weight-semibold);border-radius:var(--radius-full);white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;line-height:var(--leading-none);transition:all var(--duration-fast)var(--ease-default);display:inline-flex}.ui-badge--sm{padding:var(--space-1)var(--space-2);font-size:var(--text-2xs)}.ui-badge--md{padding:.3125rem var(--space-2-5);font-size:var(--text-xs)}.ui-badge--filled.ui-badge--success{background:var(--success-soft);color:var(--success)}.ui-badge--filled.ui-badge--warning{background:var(--warning-soft);color:var(--warning-hover)}.ui-badge--filled.ui-badge--danger,.ui-badge--filled.ui-badge--expired{background:var(--danger-soft);color:var(--danger-hover)}.ui-badge--filled.ui-badge--info{background:var(--primary-soft);color:var(--primary-hover)}.ui-badge--filled.ui-badge--pending{background:var(--warning-soft);color:var(--warning-hover)}.ui-badge--filled.ui-badge--neutral{background:var(--muted);color:var(--gray-500)}.ui-badge--outlined.ui-badge--success{color:var(--success);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--success)45%,transparent);background:0 0}.ui-badge--outlined.ui-badge--warning{color:var(--warning-hover);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--warning)55%,transparent);background:0 0}.ui-badge--outlined.ui-badge--danger,.ui-badge--outlined.ui-badge--expired{color:var(--danger-hover);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--danger)45%,transparent);background:0 0}.ui-badge--outlined.ui-badge--info{color:var(--primary-hover);box-shadow:inset 0 0 0 1.5px var(--primary-muted);background:0 0}.ui-badge--outlined.ui-badge--pending{color:var(--warning-hover);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--warning)55%,transparent);background:0 0}.ui-badge--outlined.ui-badge--neutral{color:var(--gray-500);box-shadow:inset 0 0 0 1.5px var(--gray-300);background:0 0}.ui-badge__icon{flex-shrink:0}[data-theme=dark] .ui-badge--filled.ui-badge--success{background:var(--success-light);color:var(--success)}[data-theme=dark] .ui-badge--filled.ui-badge--warning{background:var(--warning-light);color:var(--warning)}[data-theme=dark] .ui-badge--filled.ui-badge--danger,[data-theme=dark] .ui-badge--filled.ui-badge--expired{background:var(--danger-light);color:var(--danger)}[data-theme=dark] .ui-badge--filled.ui-badge--info{background:var(--primary-light);color:var(--primary)}[data-theme=dark] .ui-badge--filled.ui-badge--pending{background:var(--warning-light);color:var(--warning)}[data-theme=dark] .ui-badge--filled.ui-badge--neutral{color:var(--gray-400);background:#94a3b826}[data-theme=blue] .ui-badge--filled.ui-badge--success{color:var(--success);background:#22c55e1f}[data-theme=blue] .ui-badge--filled.ui-badge--warning{color:var(--warning);background:#f59e0b1f}[data-theme=blue] .ui-badge--filled.ui-badge--danger,[data-theme=blue] .ui-badge--filled.ui-badge--expired{color:var(--danger);background:#ef44441f}[data-theme=blue] .ui-badge--filled.ui-badge--info{color:var(--info);background:#60a5fa1f}[data-theme=blue] .ui-badge--filled.ui-badge--pending{color:var(--warning);background:#f59e0b1f}[data-theme=blue] .ui-badge--filled.ui-badge--neutral{color:var(--gray-400);background:#94a3b81f}
